diff --git a/assets/FileSaver.min-140bd2ce.js b/assets/FileSaver.min-9b7fd58c.js similarity index 97% rename from assets/FileSaver.min-140bd2ce.js rename to assets/FileSaver.min-9b7fd58c.js index e82786f3b1..612a1381ca 100644 --- a/assets/FileSaver.min-140bd2ce.js +++ b/assets/FileSaver.min-9b7fd58c.js @@ -1 +1 @@ -import{aA as A,c as d}from"./index-ebfaca73.js";function O(u,v){for(var l=0;lr[c]})}}}return Object.freeze(Object.defineProperty(u,Symbol.toStringTag,{value:"Module"}))}var E={exports:{}};(function(u,v){(function(l,r){r()})(d,function(){function l(e,t){return typeof t>"u"?t={autoBom:!1}:typeof t!="object"&&(t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function r(e,t,i){var o=new XMLHttpRequest;o.open("GET",e),o.responseType="blob",o.onload=function(){p(o.response,t,i)},o.onerror=function(){},o.send()}function c(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function s(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof d=="object"&&d.global===d?d:void 0,y=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),p=a.saveAs||(typeof window!="object"||window!==a?function(){}:"download"in HTMLAnchorElement.prototype&&!y?function(e,t,i){var o=a.URL||a.webkitURL,n=document.createElement("a");t=t||e.name||"download",n.download=t,n.rel="noopener",typeof e=="string"?(n.href=e,n.origin===location.origin?s(n):c(n.href)?r(e,t,i):s(n,n.target="_blank")):(n.href=o.createObjectURL(e),setTimeout(function(){o.revokeObjectURL(n.href)},4e4),setTimeout(function(){s(n)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,i){if(t=t||e.name||"download",typeof e!="string")navigator.msSaveOrOpenBlob(l(e,i),t);else if(c(e))r(e,t,i);else{var o=document.createElement("a");o.href=e,o.target="_blank",setTimeout(function(){s(o)})}}:function(e,t,i,o){if(o=o||open("","_blank"),o&&(o.document.title=o.document.body.innerText="downloading..."),typeof e=="string")return r(e,t,i);var n=e.type==="application/octet-stream",g=/constructor/i.test(a.HTMLElement)||a.safari,b=/CriOS\/[\d]+/.test(navigator.userAgent);if((b||n&&g||y)&&typeof FileReader<"u"){var m=new FileReader;m.onloadend=function(){var f=m.result;f=b?f:f.replace(/^data:[^;]*;/,"data:attachment/file;"),o?o.location.href=f:location=f,o=null},m.readAsDataURL(e)}else{var j=a.URL||a.webkitURL,w=j.createObjectURL(e);o?o.location=w:location.href=w,o=null,setTimeout(function(){j.revokeObjectURL(w)},4e4)}});a.saveAs=p.saveAs=p,u.exports=p})})(E);var h=E.exports;const L=A(h),S=O({__proto__:null,default:L},[h]);export{S as F}; +import{aA as A,c as d}from"./index-9c4167ba.js";function O(u,v){for(var l=0;lr[c]})}}}return Object.freeze(Object.defineProperty(u,Symbol.toStringTag,{value:"Module"}))}var E={exports:{}};(function(u,v){(function(l,r){r()})(d,function(){function l(e,t){return typeof t>"u"?t={autoBom:!1}:typeof t!="object"&&(t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function r(e,t,i){var o=new XMLHttpRequest;o.open("GET",e),o.responseType="blob",o.onload=function(){p(o.response,t,i)},o.onerror=function(){},o.send()}function c(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function s(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof d=="object"&&d.global===d?d:void 0,y=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),p=a.saveAs||(typeof window!="object"||window!==a?function(){}:"download"in HTMLAnchorElement.prototype&&!y?function(e,t,i){var o=a.URL||a.webkitURL,n=document.createElement("a");t=t||e.name||"download",n.download=t,n.rel="noopener",typeof e=="string"?(n.href=e,n.origin===location.origin?s(n):c(n.href)?r(e,t,i):s(n,n.target="_blank")):(n.href=o.createObjectURL(e),setTimeout(function(){o.revokeObjectURL(n.href)},4e4),setTimeout(function(){s(n)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,i){if(t=t||e.name||"download",typeof e!="string")navigator.msSaveOrOpenBlob(l(e,i),t);else if(c(e))r(e,t,i);else{var o=document.createElement("a");o.href=e,o.target="_blank",setTimeout(function(){s(o)})}}:function(e,t,i,o){if(o=o||open("","_blank"),o&&(o.document.title=o.document.body.innerText="downloading..."),typeof e=="string")return r(e,t,i);var n=e.type==="application/octet-stream",g=/constructor/i.test(a.HTMLElement)||a.safari,b=/CriOS\/[\d]+/.test(navigator.userAgent);if((b||n&&g||y)&&typeof FileReader<"u"){var m=new FileReader;m.onloadend=function(){var f=m.result;f=b?f:f.replace(/^data:[^;]*;/,"data:attachment/file;"),o?o.location.href=f:location=f,o=null},m.readAsDataURL(e)}else{var j=a.URL||a.webkitURL,w=j.createObjectURL(e);o?o.location=w:location.href=w,o=null,setTimeout(function(){j.revokeObjectURL(w)},4e4)}});a.saveAs=p.saveAs=p,u.exports=p})})(E);var h=E.exports;const L=A(h),S=O({__proto__:null,default:L},[h]);export{S as F}; diff --git a/assets/dexie-export-import-eb8b5240.js b/assets/dexie-export-import-04671891.js similarity index 99% rename from assets/dexie-export-import-eb8b5240.js rename to assets/dexie-export-import-04671891.js index ac433c8aa8..af52642db2 100644 --- a/assets/dexie-export-import-eb8b5240.js +++ b/assets/dexie-export-import-04671891.js @@ -1,4 +1,4 @@ -import{aB as Ce}from"./index-ebfaca73.js";/*! ***************************************************************************** +import{aB as Ce}from"./index-9c4167ba.js";/*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any diff --git a/assets/index-ebfaca73.js b/assets/index-9c4167ba.js similarity index 94% rename from assets/index-ebfaca73.js rename to assets/index-9c4167ba.js index c066463a87..f7894c1bdc 100644 --- a/assets/index-ebfaca73.js +++ b/assets/index-9c4167ba.js @@ -34,7 +34,7 @@ From previous: `);return this._state!==null&&(this._stack=e),e}finally{L_=!1}}}, `+d+"]":"["+h.join(",")+"]",i=d,f}for(u in g)g0.call(g,u)&&(f=n(u,g),f&&h.push(r(u)+(i?": ":":")+f));return f=h.length===0?"{}":i?"{"+h.join(",")+d+"}":"{"+h.join(",")+"}",i=d,f}};return n("",{"":t})}}();T.JSONDecode=function(){var e,t,r={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` `,r:"\r",t:" "},n,a=function(h){var g=new SyntaxError(h);throw g.at=e,g.text=n,g},o=function(h){return h&&h!==t&&a("Expected '"+h+"' instead of '"+t+"'"),t=n.charAt(e),e+=1,t},i=function(){var h,g="";for(t==="-"&&(g="-",o("-"));t>="0"&&t<="9";)g+=t,o();if(t===".")for(g+=".";o()&&t>="0"&&t<="9";)g+=t;if(t==="e"||t==="E")for(g+=t,o(),(t==="-"||t==="+")&&(g+=t,o());t>="0"&&t<="9";)g+=t,o();if(h=+g,!isFinite(h))a("Bad number");else return h},s=function(){var h,g,m="",w;if(t==='"')for(;o();){if(t==='"')return o(),m;if(t==="\\")if(o(),t==="u"){for(w=0,g=0;g<4&&(h=parseInt(o(),16),!!isFinite(h));g+=1)w=w*16+h;m+=String.fromCharCode(w)}else if(typeof r[t]=="string")m+=r[t];else break;else m+=t}a("Bad string")},l=function(){for(;t&&t<=" ";)o()},u=function(){switch(t){case"t":return o("t"),o("r"),o("u"),o("e"),!0;case"f":return o("f"),o("a"),o("l"),o("s"),o("e"),!1;case"n":return o("n"),o("u"),o("l"),o("l"),null}a('Unexpected "'+t+'"')},f,c=function(){var h=[];if(t==="["){if(o("["),l(),t==="]")return o("]"),h;for(;t;){if(h.push(f()),l(),t==="]")return o("]"),h;o(","),l()}}a("Bad array")},d=function(){var h,g={};if(t==="{"){if(o("{"),l(),t==="}")return o("}"),g;for(;t;){if(h=s(),l(),o(":"),Object.hasOwnProperty.call(g,h)&&a('Duplicate key "'+h+'"'),g[h]=f(),l(),t==="}")return o("}"),g;o(","),l()}}a("Bad object")};return f=function(){switch(l(),t){case"{":return d();case"[":return c();case'"':return s();case"-":return i();default:return t>="0"&&t<="9"?i():u()}},function(h){var g;return n=h,e=0,t=" ",g=f(),l(),t&&a("Syntax error"),g}}();T.base64Encode=function(e){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",r,n,a,o,i,s,l,u,f=0,c=0,d="",h=[];if(!e)return e;e=T.utf8Encode(e);do r=e.charCodeAt(f++),n=e.charCodeAt(f++),a=e.charCodeAt(f++),u=r<<16|n<<8|a,o=u>>18&63,i=u>>12&63,s=u>>6&63,l=u&63,h[c++]=t.charAt(o)+t.charAt(i)+t.charAt(s)+t.charAt(l);while(f127&&i<2048?s=String.fromCharCode(i>>6|192,i&63|128):s=String.fromCharCode(i>>12|224,i>>6&63|128,i&63|128),s!==null&&(n>r&&(t+=e.substring(r,n)),t+=s,r=n=o+1)}return n>r&&(t+=e.substring(r,e.length)),t};T.UUID=function(){var e=function(){var n=1*new Date,a;if(dt.performance&&dt.performance.now)a=dt.performance.now();else for(a=0;n==1*new Date;)a++;return n.toString(16)+Math.floor(a).toString(16)},t=function(){return Math.random().toString(16).replace(".","")},r=function(){var n=ga,a,o,i=[],s=0;function l(u,f){var c,d=0;for(c=0;c=4&&(s=l(s,i),i=[]);return i.length>0&&(s=l(s,i)),s.toString(16)};return function(){var n=(Mv.height*Mv.width).toString(16);return e()+"-"+t()+"-"+r()+"-"+n+"-"+e()}}();var r4=["ahrefsbot","baiduspider","bingbot","bingpreview","facebookexternal","petalbot","pinterest","screaming frog","yahoo! slurp","yandexbot","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleweblight","mediapartners-google","storebot-google"];T.isBlockedUA=function(e){var t;for(e=e.toLowerCase(),t=0;t=0}function n(a){if(!qe.getElementsByTagName)return[];var o=a.split(" "),i,s,l,u,f,c,d,h,g,m,w=[qe];for(c=0;c-1){s=i.split("#"),l=s[0];var v=s[1],b=qe.getElementById(v);if(!b||l&&b.nodeName.toLowerCase()!=l)return[];w=[b];continue}if(i.indexOf(".")>-1){s=i.split("."),l=s[0];var _=s[1];for(l||(l="*"),u=[],f=0,d=0;d-1};break;default:S=function(A){return A.getAttribute(C)}}for(w=[],m=0,d=0;d=3?t[2]:""},properties:function(){return T.extend(T.strip_empty_properties({$os:T.info.os(),$browser:T.info.browser(ga,ii.vendor,Ap),$referrer:qe.referrer,$referring_domain:T.info.referringDomain(qe.referrer),$device:T.info.device(ga)}),{$current_url:dt.location.href,$browser_version:T.info.browserVersion(ga,ii.vendor,Ap),$screen_height:Mv.height,$screen_width:Mv.width,mp_lib:"web",$lib_version:oo.LIB_VERSION,$insert_id:CS(),time:T.timestamp()/1e3})},people_properties:function(){return T.extend(T.strip_empty_properties({$os:T.info.os(),$browser:T.info.browser(ga,ii.vendor,Ap)}),{$browser_version:T.info.browserVersion(ga,ii.vendor,Ap)})},mpPageViewProperties:function(){return T.strip_empty_properties({current_page_title:qe.title,current_domain:dt.location.hostname,current_url_path:dt.location.pathname,current_url_protocol:dt.location.protocol,current_url_search:dt.location.search})}};var CS=function(e){var t=Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10);return e?t.substring(0,e):t},DG=/[a-z0-9][a-z0-9-]*\.[a-z]+$/i,jG=/[a-z0-9][a-z0-9-]+\.[a-z.]{2,6}$/i,n4=function(e){var t=jG,r=e.split("."),n=r[r.length-1];(n.length>4||n==="com"||n==="org")&&(t=DG);var a=e.match(t);return a?a[0]:""},jv=null,Fv=null;typeof JSON<"u"&&(jv=JSON.stringify,Fv=JSON.parse);jv=jv||T.JSONEncode;Fv=Fv||T.JSONDecode;T.toArray=T.toArray;T.isObject=T.isObject;T.JSONEncode=T.JSONEncode;T.JSONDecode=T.JSONDecode;T.isBlockedUA=T.isBlockedUA;T.isEmptyObject=T.isEmptyObject;T.info=T.info;T.info.device=T.info.device;T.info.browser=T.info.browser;T.info.browserVersion=T.info.browserVersion;T.info.properties=T.info.properties;var Ao=function(){};Ao.prototype.create_properties=function(){};Ao.prototype.event_handler=function(){};Ao.prototype.after_track_handler=function(){};Ao.prototype.init=function(e){return this.mp=e,this};Ao.prototype.track=function(e,t,r,n){var a=this,o=T.dom_query(e);if(o.length===0){Ge.error("The DOM query ("+e+") returned 0 elements");return}return T.each(o,function(i){T.register_event(i,this.override_event,function(s){var l={},u=a.create_properties(r,this),f=a.mp.get_config("track_links_timeout");a.event_handler(s,this,l),window.setTimeout(a.track_callback(n,u,l,!0),f),a.mp.track(t,u,a.track_callback(n,u,l))})},this),!0};Ao.prototype.track_callback=function(e,t,r,n){n=n||!1;var a=this;return function(){r.callback_fired||(r.callback_fired=!0,!(e&&e(n,t)===!1)&&a.after_track_handler(t,r,n))}};Ao.prototype.create_properties=function(e,t){var r;return typeof e=="function"?r=e(t):r=T.extend({},e),r};var jc=function(){this.override_event="click"};T.inherit(jc,Ao);jc.prototype.create_properties=function(e,t){var r=jc.superclass.create_properties.apply(this,arguments);return t.href&&(r.url=t.href),r};jc.prototype.event_handler=function(e,t,r){r.new_tab=e.which===2||e.metaKey||e.ctrlKey||t.target==="_blank",r.href=t.href,r.new_tab||e.preventDefault()};jc.prototype.after_track_handler=function(e,t){t.new_tab||setTimeout(function(){window.location=t.href},0)};var v0=function(){this.override_event="submit"};T.inherit(v0,Ao);v0.prototype.event_handler=function(e,t,r){r.element=t,e.preventDefault()};v0.prototype.after_track_handler=function(e,t){setTimeout(function(){t.element.submit()},0)};var FG=ES("lock"),V8=function(e,t){t=t||{},this.storageKey=e,this.storage=t.storage||window.localStorage,this.pollIntervalMS=t.pollIntervalMS||100,this.timeoutMS=t.timeoutMS||2e3};V8.prototype.withLock=function(e,t,r){!r&&typeof t!="function"&&(r=t,t=null);var n=r||new Date().getTime()+"|"+Math.random(),a=new Date().getTime(),o=this.storageKey,i=this.pollIntervalMS,s=this.timeoutMS,l=this.storage,u=o+":X",f=o+":Y",c=o+":Z",d=function(b){t&&t(b)},h=function(b){if(new Date().getTime()-a>s){FG.error("Timeout waiting for mutex on "+o+"; clearing lock. ["+n+"]"),l.removeItem(c),l.removeItem(f),w();return}setTimeout(function(){try{b()}catch(_){d(_)}},i*(Math.random()+.1))},g=function(b,_){b()?_():h(function(){g(b,_)})},m=function(){var b=l.getItem(f);if(b&&b!==n)return!1;if(l.setItem(f,n),l.getItem(f)===n)return!0;if(!Dv(l,!0))throw new Error("localStorage support dropped while acquiring lock");return!1},w=function(){l.setItem(u,n),g(m,function(){if(l.getItem(u)===n){v();return}h(function(){if(l.getItem(f)!==n){w();return}g(function(){return!l.getItem(c)},v)})})},v=function(){l.setItem(c,"1");try{e()}finally{l.removeItem(c),l.getItem(f)===n&&l.removeItem(f),l.getItem(u)===n&&l.removeItem(u)}};try{if(Dv(l,!0))w();else throw new Error("localStorage support check failed")}catch(b){d(b)}};var a4=ES("batch"),Ki=function(e,t){t=t||{},this.storageKey=e,this.storage=t.storage||window.localStorage,this.reportError=t.errorReporter||T.bind(a4.error,a4),this.lock=new V8(e,{storage:this.storage}),this.pid=t.pid||null,this.memQueue=[]};Ki.prototype.enqueue=function(e,t,r){var n={id:CS(),flushAfter:new Date().getTime()+t*2,payload:e};this.lock.withLock(T.bind(function(){var o;try{var i=this.readFromStorage();i.push(n),o=this.saveToStorage(i),o&&this.memQueue.push(n)}catch{this.reportError("Error enqueueing item",e),o=!1}r&&r(o)},this),T.bind(function(o){this.reportError("Error acquiring storage lock",o),r&&r(!1)},this),this.pid)};Ki.prototype.fillBatch=function(e){var t=this.memQueue.slice(0,e);if(t.lengtho.flushAfter&&!n[o.id]&&(o.orphaned=!0,t.push(o),t.length>=e))break}}}return t};var o4=function(e,t){var r=[];return T.each(e,function(n){n.id&&!t[n.id]&&r.push(n)}),r};Ki.prototype.removeItemsByID=function(e,t){var r={};T.each(e,function(a){r[a]=!0}),this.memQueue=o4(this.memQueue,r);var n=T.bind(function(){var a;try{var o=this.readFromStorage();if(o=o4(o,r),a=this.saveToStorage(o),a){o=this.readFromStorage();for(var i=0;i5&&(this.reportError("[dupe] item ID sent too many times, not sending",{item:u,batchSize:a.length,timesSent:this.itemIdsSentSuccessfully[d]}),c=!1):this.reportError("[dupe] found item with no ID",{item:u}),c&&o.push(f)}i[u.id]=f},this),o.length<1){this.resetFlush();return}this.requestInProgress=!0;var s=T.bind(function(u){this.requestInProgress=!1;try{var f=!1;if(e.unloading)this.queue.updatePayloads(i);else if(T.isObject(u)&&u.error==="timeout"&&new Date().getTime()-r>=t)this.reportError("Network timeout; retrying"),this.flush();else if(T.isObject(u)&&u.xhr_req&&(u.xhr_req.status>=500||u.xhr_req.status===429||u.error==="timeout")){var c=this.flushInterval*2,d=u.xhr_req.responseHeaders;if(d){var h=d["Retry-After"];h&&(c=parseInt(h,10)*1e3||c)}c=Math.min(BG,c),this.reportError("Error; retry in "+c+" ms"),this.scheduleFlush(c)}else if(T.isObject(u)&&u.xhr_req&&u.xhr_req.status===413)if(a.length>1){var g=Math.max(1,Math.floor(n/2));this.batchSize=Math.min(this.batchSize,g,a.length-1),this.reportError("413 response; reducing batch size to "+this.batchSize),this.resetFlush()}else this.reportError("Single-event request too large; dropping",a),this.resetBatchSize(),f=!0;else f=!0;f&&(this.queue.removeItemsByID(T.map(a,function(m){return m.id}),T.bind(function(m){m?(this.consecutiveRemovalFailures=0,this.flush()):(this.reportError("Failed to remove items from queue"),++this.consecutiveRemovalFailures>5?(this.reportError("Too many queue failures; disabling batching system."),this.stopAllBatching()):this.resetFlush())},this)),T.each(a,T.bind(function(m){var w=m.id;w?(this.itemIdsSentSuccessfully[w]=this.itemIdsSentSuccessfully[w]||0,this.itemIdsSentSuccessfully[w]++,this.itemIdsSentSuccessfully[w]>5&&this.reportError("[dupe] item ID sent too many times",{item:m,batchSize:a.length,timesSent:this.itemIdsSentSuccessfully[w]})):this.reportError("[dupe] found item with no ID while removing",{item:m})},this)))}catch(m){this.reportError("Error handling API response",m),this.resetFlush()}},this),l={method:"POST",verbose:!0,ignore_json_errors:!0,timeout_ms:t};e.unloading&&(l.transport="sendBeacon"),Kd.log("MIXPANEL REQUEST:",o),this.sendRequest(o,l,s)}catch(u){this.reportError("Error flushing request queue",u),this.resetFlush()}};ka.prototype.reportError=function(e,t){if(Kd.error.apply(Kd.error,arguments),this.errorReporter)try{t instanceof Error||(t=new Error(e)),this.errorReporter(e,t)}catch(r){Kd.error(r)}};var UG="__mp_opt_in_out_";function zG(e,t){G8(!0,e,t)}function VG(e,t){G8(!1,e,t)}function WG(e,t){return H8(e,t)==="1"}function W8(e,t){if(GG(t))return Ge.warn('This browser has "Do Not Track" enabled. This will prevent the Mixpanel SDK from sending any data. To ignore the "Do Not Track" browser setting, initialize the Mixpanel instance with the config "ignore_dnt: true"'),!0;var r=H8(e,t)==="0";return r&&Ge.warn("You are opted out of Mixpanel tracking. This will prevent the Mixpanel SDK from sending any data."),r}function hu(e){return RS(e,function(t){return this.get_config(t)})}function qi(e){return RS(e,function(t){return this._get_config(t)})}function pu(e){return RS(e,function(t){return this._get_config(t)})}function HG(e,t){t=t||{},TS(t).remove(AS(e,t),!!t.crossSubdomainCookie,t.cookieDomain)}function TS(e){return e=e||{},e.persistenceType==="localStorage"?T.localStorage:T.cookie}function AS(e,t){return t=t||{},(t.persistencePrefix||UG)+e}function H8(e,t){return TS(t).get(AS(e,t))}function GG(e){if(e&&e.ignoreDnt)return!1;var t=e&&e.window||dt,r=t.navigator||{},n=!1;return T.each([r.doNotTrack,r.msDoNotTrack,t.doNotTrack],function(a){T.includes([!0,1,"1","yes"],a)&&(n=!0)}),n}function G8(e,t,r){if(!T.isString(t)||!t.length){Ge.error("gdpr."+(e?"optIn":"optOut")+" called with an invalid token");return}r=r||{},TS(r).set(AS(t,r),e?1:0,T.isNumber(r.cookieExpiration)?r.cookieExpiration:null,!!r.crossSubdomainCookie,!!r.secureCookie,!!r.crossSiteCookie,r.cookieDomain),r.track&&e&&r.track(r.trackEventName||"$opt_in",r.trackProperties,{send_immediately:!0})}function RS(e,t){return function(){var r=!1;try{var n=t.call(this,"token"),a=t.call(this,"ignore_dnt"),o=t.call(this,"opt_out_tracking_persistence_type"),i=t.call(this,"opt_out_tracking_cookie_prefix"),s=t.call(this,"window");n&&(r=W8(n,{ignoreDnt:a,persistenceType:o,persistencePrefix:i,window:s}))}catch(u){Ge.error("Unexpected error when checking tracking opt-out status: "+u)}if(!r)return e.apply(this,arguments);var l=arguments[arguments.length-1];typeof l=="function"&&l(0)}}var Pi="$set",Fc="$set_once",Yn="$unset",Zs="$add",fo="$append",Xs="$union",Ii="$remove",KG="$delete",K8={set_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=a)},this):n[e]=t,r[Pi]=n,r},unset_action:function(e){var t={},r=[];return T.isArray(e)||(e=[e]),T.each(e,function(n){this._is_reserved_property(n)||r.push(n)},this),t[Yn]=r,t},set_once_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=a)},this):n[e]=t,r[Fc]=n,r},union_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=T.isArray(a)?a:[a])},this):n[e]=T.isArray(t)?t:[t],r[Xs]=n,r},append_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=a)},this):n[e]=t,r[fo]=n,r},remove_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=a)},this):n[e]=t,r[Ii]=n,r},delete_action:function(){var e={};return e[KG]="",e}},nt=function(){};T.extend(nt.prototype,K8);nt.prototype._init=function(e,t,r){this._mixpanel=e,this._group_key=t,this._group_id=r};nt.prototype.set=pu(function(e,t,r){var n=this.set_action(e,t);return T.isObject(e)&&(r=t),this._send_request(n,r)});nt.prototype.set_once=pu(function(e,t,r){var n=this.set_once_action(e,t);return T.isObject(e)&&(r=t),this._send_request(n,r)});nt.prototype.unset=pu(function(e,t){var r=this.unset_action(e);return this._send_request(r,t)});nt.prototype.union=pu(function(e,t,r){T.isObject(e)&&(r=t);var n=this.union_action(e,t);return this._send_request(n,r)});nt.prototype.delete=pu(function(e){var t=this.delete_action();return this._send_request(t,e)});nt.prototype.remove=pu(function(e,t,r){var n=this.remove_action(e,t);return this._send_request(n,r)});nt.prototype._send_request=function(e,t){e.$group_key=this._group_key,e.$group_id=this._group_id,e.$token=this._get_config("token");var r=T.encodeDates(e);return this._mixpanel._track_or_batch({type:"groups",data:r,endpoint:this._get_config("api_host")+"/groups/",batcher:this._mixpanel.request_batchers.groups},t)};nt.prototype._is_reserved_property=function(e){return e==="$group_key"||e==="$group_id"};nt.prototype._get_config=function(e){return this._mixpanel.get_config(e)};nt.prototype.toString=function(){return this._mixpanel.toString()+".group."+this._group_key+"."+this._group_id};nt.prototype.remove=nt.prototype.remove;nt.prototype.set=nt.prototype.set;nt.prototype.set_once=nt.prototype.set_once;nt.prototype.union=nt.prototype.union;nt.prototype.unset=nt.prototype.unset;nt.prototype.toString=nt.prototype.toString;var pe=function(){};T.extend(pe.prototype,K8);pe.prototype._init=function(e){this._mixpanel=e};pe.prototype.set=qi(function(e,t,r){var n=this.set_action(e,t);return T.isObject(e)&&(r=t),this._get_config("save_referrer")&&this._mixpanel.persistence.update_referrer_info(document.referrer),n[Pi]=T.extend({},T.info.people_properties(),this._mixpanel.persistence.get_referrer_info(),n[Pi]),this._send_request(n,r)});pe.prototype.set_once=qi(function(e,t,r){var n=this.set_once_action(e,t);return T.isObject(e)&&(r=t),this._send_request(n,r)});pe.prototype.unset=qi(function(e,t){var r=this.unset_action(e);return this._send_request(r,t)});pe.prototype.increment=qi(function(e,t,r){var n={},a={};return T.isObject(e)?(T.each(e,function(o,i){if(!this._is_reserved_property(i))if(isNaN(parseFloat(o))){Ge.error("Invalid increment value passed to mixpanel.people.increment - must be a number");return}else a[i]=o},this),r=t):(T.isUndefined(t)&&(t=1),a[e]=t),n[Zs]=a,this._send_request(n,r)});pe.prototype.append=qi(function(e,t,r){T.isObject(e)&&(r=t);var n=this.append_action(e,t);return this._send_request(n,r)});pe.prototype.remove=qi(function(e,t,r){T.isObject(e)&&(r=t);var n=this.remove_action(e,t);return this._send_request(n,r)});pe.prototype.union=qi(function(e,t,r){T.isObject(e)&&(r=t);var n=this.union_action(e,t);return this._send_request(n,r)});pe.prototype.track_charge=qi(function(e,t,r){if(!T.isNumber(e)&&(e=parseFloat(e),isNaN(e))){Ge.error("Invalid value passed to mixpanel.people.track_charge - must be a number");return}return this.append("$transactions",T.extend({$amount:e},t),r)});pe.prototype.clear_charges=function(e){return this.set("$transactions",[],e)};pe.prototype.delete_user=function(){if(!this._identify_called()){Ge.error("mixpanel.people.delete_user() requires you to call identify() first");return}var e={$delete:this._mixpanel.get_distinct_id()};return this._send_request(e)};pe.prototype.toString=function(){return this._mixpanel.toString()+".people"};pe.prototype._send_request=function(e,t){e.$token=this._get_config("token"),e.$distinct_id=this._mixpanel.get_distinct_id();var r=this._mixpanel.get_property("$device_id"),n=this._mixpanel.get_property("$user_id"),a=this._mixpanel.get_property("$had_persisted_distinct_id");r&&(e.$device_id=r),n&&(e.$user_id=n),a&&(e.$had_persisted_distinct_id=a);var o=T.encodeDates(e);return this._identify_called()?this._mixpanel._track_or_batch({type:"people",data:o,endpoint:this._get_config("api_host")+"/engage/",batcher:this._mixpanel.request_batchers.people},t):(this._enqueue(e),T.isUndefined(t)||(this._get_config("verbose")?t({status:-1,error:null}):t(-1)),T.truncate(o,255))};pe.prototype._get_config=function(e){return this._mixpanel.get_config(e)};pe.prototype._identify_called=function(){return this._mixpanel._flags.identify_called===!0};pe.prototype._enqueue=function(e){Pi in e?this._mixpanel.persistence._add_to_people_queue(Pi,e):Fc in e?this._mixpanel.persistence._add_to_people_queue(Fc,e):Yn in e?this._mixpanel.persistence._add_to_people_queue(Yn,e):Zs in e?this._mixpanel.persistence._add_to_people_queue(Zs,e):fo in e?this._mixpanel.persistence._add_to_people_queue(fo,e):Ii in e?this._mixpanel.persistence._add_to_people_queue(Ii,e):Xs in e?this._mixpanel.persistence._add_to_people_queue(Xs,e):Ge.error("Invalid call to _enqueue():",e)};pe.prototype._flush_one_queue=function(e,t,r,n){var a=this,o=T.extend({},this._mixpanel.persistence._get_queue(e)),i=o;!T.isUndefined(o)&&T.isObject(o)&&!T.isEmptyObject(o)&&(a._mixpanel.persistence._pop_from_people_queue(e,o),n&&(i=n(o)),t.call(a,i,function(s,l){s===0&&a._mixpanel.persistence._add_to_people_queue(e,o),T.isUndefined(r)||r(s,l)}))};pe.prototype._flush=function(e,t,r,n,a,o,i){var s=this,l=this._mixpanel.persistence._get_queue(fo),u=this._mixpanel.persistence._get_queue(Ii);if(this._flush_one_queue(Pi,this.set,e),this._flush_one_queue(Fc,this.set_once,n),this._flush_one_queue(Yn,this.unset,o,function(w){return T.keys(w)}),this._flush_one_queue(Zs,this.increment,t),this._flush_one_queue(Xs,this.union,a),!T.isUndefined(l)&&T.isArray(l)&&l.length){for(var f,c=function(w,v){w===0&&s._mixpanel.persistence._add_to_people_queue(fo,f),T.isUndefined(r)||r(w,v)},d=l.length-1;d>=0;d--)f=l.pop(),T.isEmptyObject(f)||s.append(f,c);s._mixpanel.persistence.save()}if(!T.isUndefined(u)&&T.isArray(u)&&u.length){for(var h,g=function(w,v){w===0&&s._mixpanel.persistence._add_to_people_queue(Ii,h),T.isUndefined(i)||i(w,v)},m=u.length-1;m>=0;m--)h=u.pop(),T.isEmptyObject(h)||s.remove(h,g);s._mixpanel.persistence.save()}};pe.prototype._is_reserved_property=function(e){return e==="$distinct_id"||e==="$token"||e==="$device_id"||e==="$user_id"||e==="$had_persisted_distinct_id"};pe.prototype.set=pe.prototype.set;pe.prototype.set_once=pe.prototype.set_once;pe.prototype.unset=pe.prototype.unset;pe.prototype.increment=pe.prototype.increment;pe.prototype.append=pe.prototype.append;pe.prototype.remove=pe.prototype.remove;pe.prototype.union=pe.prototype.union;pe.prototype.track_charge=pe.prototype.track_charge;pe.prototype.clear_charges=pe.prototype.clear_charges;pe.prototype.delete_user=pe.prototype.delete_user;pe.prototype.toString=pe.prototype.toString;var OS="__mps",kS="__mpso",PS="__mpus",IS="__mpa",NS="__mpap",LS="__mpr",MS="__mpu",q8="$people_distinct_id",Bv="__alias",xf="__timers",qG=[OS,kS,PS,IS,NS,LS,MS,q8,Bv,xf],be=function(e){this.props={},this.campaign_params_saved=!1,e.persistence_name?this.name="mp_"+e.persistence_name:this.name="mp_"+e.token+"_mixpanel";var t=e.persistence;t!=="cookie"&&t!=="localStorage"&&(Ge.critical("Unknown persistence type "+t+"; falling back to cookie"),t=e.persistence="cookie"),t==="localStorage"&&T.localStorage.is_supported()?this.storage=T.localStorage:this.storage=T.cookie,this.load(),this.update_config(e),this.upgrade(e),this.save()};be.prototype.properties=function(){var e={};return T.each(this.props,function(t,r){T.include(qG,r)||(e[r]=t)}),e};be.prototype.load=function(){if(!this.disabled){var e=this.storage.parse(this.name);e&&(this.props=T.extend({},e))}};be.prototype.upgrade=function(e){var t=e.upgrade,r,n;t&&(r="mp_super_properties",typeof t=="string"&&(r=t),n=this.storage.parse(r),this.storage.remove(r),this.storage.remove(r,!0),n&&(this.props=T.extend(this.props,n.all,n.events))),!e.cookie_name&&e.name!=="mixpanel"&&(r="mp_"+e.token+"_"+e.name,n=this.storage.parse(r),n&&(this.storage.remove(r),this.storage.remove(r,!0),this.register_once(n))),this.storage===T.localStorage&&(n=T.cookie.parse(this.name),T.cookie.remove(this.name),T.cookie.remove(this.name,!0),n&&this.register_once(n))};be.prototype.save=function(){this.disabled||this.storage.set(this.name,T.JSONEncode(this.props),this.expire_days,this.cross_subdomain,this.secure,this.cross_site,this.cookie_domain)};be.prototype.remove=function(){this.storage.remove(this.name,!1,this.cookie_domain),this.storage.remove(this.name,!0,this.cookie_domain)};be.prototype.clear=function(){this.remove(),this.props={}};be.prototype.register_once=function(e,t,r){return T.isObject(e)?(typeof t>"u"&&(t="None"),this.expire_days=typeof r>"u"?this.default_expiry:r,T.each(e,function(n,a){(!this.props.hasOwnProperty(a)||this.props[a]===t)&&(this.props[a]=n)},this),this.save(),!0):!1};be.prototype.register=function(e,t){return T.isObject(e)?(this.expire_days=typeof t>"u"?this.default_expiry:t,T.extend(this.props,e),this.save(),!0):!1};be.prototype.unregister=function(e){e in this.props&&(delete this.props[e],this.save())};be.prototype.update_search_keyword=function(e){this.register(T.info.searchInfo(e))};be.prototype.update_referrer_info=function(e){this.register_once({$initial_referrer:e||"$direct",$initial_referring_domain:T.info.referringDomain(e)||"$direct"},"")};be.prototype.get_referrer_info=function(){return T.strip_empty_properties({$initial_referrer:this.props.$initial_referrer,$initial_referring_domain:this.props.$initial_referring_domain})};be.prototype.safe_merge=function(e){return T.each(this.props,function(t,r){r in e||(e[r]=t)}),e};be.prototype.update_config=function(e){this.default_expiry=this.expire_days=e.cookie_expiration,this.set_disabled(e.disable_persistence),this.set_cookie_domain(e.cookie_domain),this.set_cross_site(e.cross_site_cookie),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie)};be.prototype.set_disabled=function(e){this.disabled=e,this.disabled?this.remove():this.save()};be.prototype.set_cookie_domain=function(e){e!==this.cookie_domain&&(this.remove(),this.cookie_domain=e,this.save())};be.prototype.set_cross_site=function(e){e!==this.cross_site&&(this.cross_site=e,this.remove(),this.save())};be.prototype.set_cross_subdomain=function(e){e!==this.cross_subdomain&&(this.cross_subdomain=e,this.remove(),this.save())};be.prototype.get_cross_subdomain=function(){return this.cross_subdomain};be.prototype.set_secure=function(e){e!==this.secure&&(this.secure=!!e,this.remove(),this.save())};be.prototype._add_to_people_queue=function(e,t){var r=this._get_queue_key(e),n=t[e],a=this._get_or_create_queue(Pi),o=this._get_or_create_queue(Fc),i=this._get_or_create_queue(Yn),s=this._get_or_create_queue(Zs),l=this._get_or_create_queue(Xs),u=this._get_or_create_queue(Ii,[]),f=this._get_or_create_queue(fo,[]);r===OS?(T.extend(a,n),this._pop_from_people_queue(Zs,n),this._pop_from_people_queue(Xs,n),this._pop_from_people_queue(Yn,n)):r===kS?(T.each(n,function(c,d){d in o||(o[d]=c)}),this._pop_from_people_queue(Yn,n)):r===PS?T.each(n,function(c){T.each([a,o,s,l],function(d){c in d&&delete d[c]}),T.each(f,function(d){c in d&&delete d[c]}),i[c]=!0}):r===IS?(T.each(n,function(c,d){d in a?a[d]+=c:(d in s||(s[d]=0),s[d]+=c)},this),this._pop_from_people_queue(Yn,n)):r===MS?(T.each(n,function(c,d){T.isArray(c)&&(d in l||(l[d]=[]),l[d]=l[d].concat(c))}),this._pop_from_people_queue(Yn,n)):r===LS?(u.push(n),this._pop_from_people_queue(fo,n)):r===NS&&(f.push(n),this._pop_from_people_queue(Yn,n)),Ge.log("MIXPANEL PEOPLE REQUEST (QUEUED, PENDING IDENTIFY):"),Ge.log(t),this.save()};be.prototype._pop_from_people_queue=function(e,t){var r=this._get_queue(e);T.isUndefined(r)||(T.each(t,function(n,a){e===fo||e===Ii?T.each(r,function(o){o[a]===n&&delete o[a]}):delete r[a]},this),this.save())};be.prototype._get_queue_key=function(e){if(e===Pi)return OS;if(e===Fc)return kS;if(e===Yn)return PS;if(e===Zs)return IS;if(e===fo)return NS;if(e===Ii)return LS;if(e===Xs)return MS;Ge.error("Invalid queue:",e)};be.prototype._get_queue=function(e){return this.props[this._get_queue_key(e)]};be.prototype._get_or_create_queue=function(e,t){var r=this._get_queue_key(e);return t=T.isUndefined(t)?{}:t,this.props[r]||(this.props[r]=t)};be.prototype.set_event_timer=function(e,t){var r=this.props[xf]||{};r[e]=t,this.props[xf]=r,this.save()};be.prototype.remove_event_timer=function(e){var t=this.props[xf]||{},r=t[e];return T.isUndefined(r)||(delete this.props[xf][e],this.save()),r};var DS,ar,Y8=0,YG=1,ZG=function(e){return e},Sf=function(){},Sn="mixpanel",Z8="base64",XG="json",jS="$device:",vc=dt.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest,X8=!vc&&ga.indexOf("MSIE")===-1&&ga.indexOf("Mozilla")===-1,Uv=null;ii.sendBeacon&&(Uv=function(){return ii.sendBeacon.apply(ii,arguments)});var s4={api_host:"https://api-js.mixpanel.com",api_method:"POST",api_transport:"XHR",api_payload_format:Z8,app_host:"https://mixpanel.com",cdn:"https://cdn.mxpnl.com",cross_site_cookie:!1,cross_subdomain_cookie:!0,error_reporter:Sf,persistence:"cookie",persistence_name:"",cookie_domain:"",cookie_name:"",loaded:Sf,track_marketing:!0,track_pageview:!1,skip_first_touch_marketing:!1,store_google:!0,save_referrer:!0,test:!1,verbose:!1,img:!1,debug:!1,track_links_timeout:300,cookie_expiration:365,upgrade:!1,disable_persistence:!1,disable_cookie:!1,secure_cookie:!1,ip:!0,opt_out_tracking_by_default:!1,opt_out_persistence_by_default:!1,opt_out_tracking_persistence_type:"localStorage",opt_out_tracking_cookie_prefix:null,property_blacklist:[],xhr_headers:{},ignore_dnt:!1,batch_requests:!0,batch_size:50,batch_flush_interval_ms:5e3,batch_request_timeout_ms:9e4,batch_autostart:!0,hooks:{}},Q8=!1,W=function(){},r$=function(e,t,r){var n,a=r===Sn?ar:ar[r];if(a&&DS===Y8)n=a;else{if(a&&!T.isArray(a)){Ge.error("You have already initialized "+r);return}n=new W}if(n._cached_groups={},n._init(e,t,r),n.people=new pe,n.people._init(n),!n.get_config("skip_first_touch_marketing")){var o=T.info.campaignParams(null),i={},s=!1;T.each(o,function(l,u){i["initial_"+u]=l,l&&(s=!0)}),s&&n.people.set_once(i)}return oo.DEBUG=oo.DEBUG||n.get_config("debug"),!T.isUndefined(a)&&T.isArray(a)&&(n._execute_array.call(n.people,a.people),n._execute_array(a)),n};W.prototype.init=function(e,t,r){if(T.isUndefined(r)){this.report_error("You must name your new library: init(token, config, name)");return}if(r===Sn){this.report_error("You must initialize the main mixpanel object right after you include the Mixpanel js snippet");return}var n=r$(e,t,r);return ar[r]=n,n._loaded(),n};W.prototype._init=function(e,t,r){t=t||{},this.__loaded=!0,this.config={};var n={};if(!("api_payload_format"in t)){var a=t.api_host||s4.api_host;a.match(/\.mixpanel\.com/)&&(n.api_payload_format=XG)}if(this.set_config(T.extend({},s4,n,t,{name:r,token:e,callback_fn:(r===Sn?r:Sn+"."+r)+"._jsc"})),this._jsc=Sf,this.__dom_loaded_queue=[],this.__request_queue=[],this.__disabled_events=[],this._flags={disable_all_events:!1,identify_called:!1},this.request_batchers={},this._batch_requests=this.get_config("batch_requests"),this._batch_requests){if(!T.localStorage.is_supported(!0)||!vc)this._batch_requests=!1,Ge.log("Turning off Mixpanel request-queueing; needs XHR and localStorage support");else if(this.init_batchers(),Uv&&dt.addEventListener){var o=T.bind(function(){this.request_batchers.events.stopped||this.request_batchers.events.flush({unloading:!0})},this);dt.addEventListener("pagehide",function(s){s.persisted&&o()}),dt.addEventListener("visibilitychange",function(){qe.visibilityState==="hidden"&&o()})}}this.persistence=this.cookie=new be(this.config),this.unpersisted_superprops={},this._gdpr_init();var i=T.UUID();this.get_distinct_id()||this.register_once({distinct_id:jS+i,$device_id:i},""),this.get_config("track_pageview")&&this.track_pageview()};W.prototype._loaded=function(){this.get_config("loaded")(this),this._set_default_superprops()};W.prototype._set_default_superprops=function(){this.persistence.update_search_keyword(qe.referrer),this.get_config("store_google")&&this.register(T.info.campaignParams(),{persistent:!1}),this.get_config("save_referrer")&&this.persistence.update_referrer_info(qe.referrer)};W.prototype._dom_loaded=function(){T.each(this.__dom_loaded_queue,function(e){this._track_dom.apply(this,e)},this),this.has_opted_out_tracking()||T.each(this.__request_queue,function(e){this._send_request.apply(this,e)},this),delete this.__dom_loaded_queue,delete this.__request_queue};W.prototype._track_dom=function(e,t){if(this.get_config("img"))return this.report_error("You can't use DOM tracking functions with img = true."),!1;if(!Q8)return this.__dom_loaded_queue.push([e,t]),!1;var r=new e().init(this);return r.track.apply(r,t)};W.prototype._prepare_callback=function(e,t){if(T.isUndefined(e))return null;if(vc){var r=function(i){e(i,t)};return r}else{var n=this._jsc,a=""+Math.floor(Math.random()*1e8),o=this.get_config("callback_fn")+"["+a+"]";return n[a]=function(i){delete n[a],e(i,t)},o}};W.prototype._send_request=function(e,t,r,n){var a=!0;if(X8)return this.__request_queue.push(arguments),a;var o={method:this.get_config("api_method"),transport:this.get_config("api_transport"),verbose:this.get_config("verbose")},i=null;!n&&(T.isFunction(r)||typeof r=="string")&&(n=r,r=null),r=T.extend(o,r||{}),vc||(r.method="GET");var s=r.method==="POST",l=Uv&&s&&r.transport.toLowerCase()==="sendbeacon",u=r.verbose;t.verbose&&(u=!0),this.get_config("test")&&(t.test=1),u&&(t.verbose=1),this.get_config("img")&&(t.img=1),vc||(n?t.callback=n:(u||this.get_config("test"))&&(t.callback="(function(){})")),t.ip=this.get_config("ip")?1:0,t._=new Date().getTime().toString(),s&&(i="data="+encodeURIComponent(t.data),delete t.data),e+="?"+T.HTTPBuildQuery(t);var f=this;if("img"in t){var c=qe.createElement("img");c.src=e,qe.body.appendChild(c)}else if(l){try{a=Uv(e,i)}catch(v){f.report_error(v),a=!1}try{n&&n(a?1:0)}catch(v){f.report_error(v)}}else if(vc)try{var d=new XMLHttpRequest;d.open(r.method,e,!0);var h=this.get_config("xhr_headers");if(s&&(h["Content-Type"]="application/x-www-form-urlencoded"),T.each(h,function(v,b){d.setRequestHeader(b,v)}),r.timeout_ms&&typeof d.timeout<"u"){d.timeout=r.timeout_ms;var g=new Date().getTime()}d.withCredentials=!0,d.onreadystatechange=function(){if(d.readyState===4)if(d.status===200){if(n)if(u){var v;try{v=T.JSONDecode(d.responseText)}catch(_){if(f.report_error(_),r.ignore_json_errors)v=d.responseText;else return}n(v)}else n(Number(d.responseText))}else{var b;d.timeout&&!d.status&&new Date().getTime()-g>=d.timeout?b="timeout":b="Bad HTTP status: "+d.status+" "+d.statusText,f.report_error(b),n&&n(u?{status:0,error:b,xhr_req:d}:0)}},d.send(i)}catch(v){f.report_error(v),a=!1}else{var m=qe.createElement("script");m.type="text/javascript",m.async=!0,m.defer=!0,m.src=e;var w=qe.getElementsByTagName("script")[0];w.parentNode.insertBefore(m,w)}return a};W.prototype._execute_array=function(e){var t,r=[],n=[],a=[];T.each(e,function(i){i&&(t=i[0],T.isArray(t)?a.push(i):typeof i=="function"?i.call(this):T.isArray(i)&&t==="alias"?r.push(i):T.isArray(i)&&t.indexOf("track")!==-1&&typeof this[t]=="function"?a.push(i):n.push(i))},this);var o=function(i,s){T.each(i,function(l){if(T.isArray(l[0])){var u=s;T.each(l,function(f){u=u[f[0]].apply(u,f.slice(1))})}else this[l[0]].apply(this,l.slice(1))},s)};o(r,this),o(n,this),o(a,this)};W.prototype.are_batchers_initialized=function(){return!!this.request_batchers.events};W.prototype.init_batchers=function(){var e=this.get_config("token");if(!this.are_batchers_initialized()){var t=T.bind(function(r){return new ka("__mpq_"+e+r.queue_suffix,{libConfig:this.config,sendRequestFunc:T.bind(function(n,a,o){this._send_request(this.get_config("api_host")+r.endpoint,this._encode_data_for_request(n),a,this._prepare_callback(o,n))},this),beforeSendHook:T.bind(function(n){return this._run_hook("before_send_"+r.type,n)},this),errorReporter:this.get_config("error_reporter"),stopAllBatchingFunc:T.bind(this.stop_batch_senders,this)})},this);this.request_batchers={events:t({type:"events",endpoint:"/track/",queue_suffix:"_ev"}),people:t({type:"people",endpoint:"/engage/",queue_suffix:"_pp"}),groups:t({type:"groups",endpoint:"/groups/",queue_suffix:"_gr"})}}this.get_config("batch_autostart")&&this.start_batch_senders()};W.prototype.start_batch_senders=function(){this.are_batchers_initialized()&&(this._batch_requests=!0,T.each(this.request_batchers,function(e){e.start()}))};W.prototype.stop_batch_senders=function(){this._batch_requests=!1,T.each(this.request_batchers,function(e){e.stop(),e.clear()})};W.prototype.push=function(e){this._execute_array([e])};W.prototype.disable=function(e){typeof e>"u"?this._flags.disable_all_events=!0:this.__disabled_events=this.__disabled_events.concat(e)};W.prototype._encode_data_for_request=function(e){var t=T.JSONEncode(e);return this.get_config("api_payload_format")===Z8&&(t=T.base64Encode(t)),{data:t}};W.prototype._track_or_batch=function(e,t){var r=T.truncate(e.data,255),n=e.endpoint,a=e.batcher,o=e.should_send_immediately,i=e.send_request_options||{};t=t||Sf;var s=!0,l=T.bind(function(){return i.skip_hooks||(r=this._run_hook("before_send_"+e.type,r)),r?(Ge.log("MIXPANEL REQUEST:"),Ge.log(r),this._send_request(n,this._encode_data_for_request(r),i,this._prepare_callback(t,r))):null},this);return this._batch_requests&&!o?a.enqueue(r,function(u){u?t(1,r):l()}):s=l(),s&&r};W.prototype.track=hu(function(e,t,r,n){!n&&typeof r=="function"&&(n=r,r=null),r=r||{};var a=r.transport;a&&(r.transport=a);var o=r.send_immediately;if(typeof n!="function"&&(n=Sf),T.isUndefined(e)){this.report_error("No event name provided to mixpanel.track");return}if(this._event_is_disabled(e)){n(0);return}t=t||{},t.token=this.get_config("token");var i=this.persistence.remove_event_timer(e);if(!T.isUndefined(i)){var s=new Date().getTime()-i;t.$duration=parseFloat((s/1e3).toFixed(3))}this._set_default_superprops();var l=this.get_config("track_marketing")?T.info.marketingParams():{};t=T.extend({},T.info.properties(),l,this.persistence.properties(),this.unpersisted_superprops,t);var u=this.get_config("property_blacklist");T.isArray(u)?T.each(u,function(d){delete t[d]}):this.report_error("Invalid value for property_blacklist config: "+u);var f={event:e,properties:t},c=this._track_or_batch({type:"events",data:f,endpoint:this.get_config("api_host")+"/track/",batcher:this.request_batchers.events,should_send_immediately:o,send_request_options:r},n);return c});W.prototype.set_group=hu(function(e,t,r){T.isArray(t)||(t=[t]);var n={};return n[e]=t,this.register(n),this.people.set(e,t,r)});W.prototype.add_group=hu(function(e,t,r){var n=this.get_property(e);if(n===void 0){var a={};a[e]=[t],this.register(a)}else n.indexOf(t)===-1&&(n.push(t),this.register(a));return this.people.union(e,t,r)});W.prototype.remove_group=hu(function(e,t,r){var n=this.get_property(e);if(n!==void 0){var a=n.indexOf(t);a>-1&&(n.splice(a,1),this.register({group_key:n})),n.length===0&&this.unregister(e)}return this.people.remove(e,t,r)});W.prototype.track_with_groups=hu(function(e,t,r,n){var a=T.extend({},t||{});return T.each(r,function(o,i){o!=null&&(a[i]=o)}),this.track(e,a,n)});W.prototype._create_map_key=function(e,t){return e+"_"+JSON.stringify(t)};W.prototype._remove_group_from_cache=function(e,t){delete this._cached_groups[this._create_map_key(e,t)]};W.prototype.get_group=function(e,t){var r=this._create_map_key(e,t),n=this._cached_groups[r];return(n===void 0||n._group_key!==e||n._group_id!==t)&&(n=new nt,n._init(this,e,t),this._cached_groups[r]=n),n};W.prototype.track_pageview=hu(function(e,t){typeof e!="object"&&(e={}),t=t||{};var r=t.event_name||"$mp_web_page_view",n=T.extend(T.info.mpPageViewProperties(),T.info.campaignParams(),T.info.clickParams()),a=T.extend({},n,e);return this.track(r,a)});W.prototype.track_links=function(){return this._track_dom.call(this,jc,arguments)};W.prototype.track_forms=function(){return this._track_dom.call(this,v0,arguments)};W.prototype.time_event=function(e){if(T.isUndefined(e)){this.report_error("No event name provided to mixpanel.time_event");return}this._event_is_disabled(e)||this.persistence.set_event_timer(e,new Date().getTime())};var QG={persistent:!0},FS=function(e){var t;return T.isObject(e)?t=e:T.isUndefined(e)?t={}:t={days:e},T.extend({},QG,t)};W.prototype.register=function(e,t){var r=FS(t);r.persistent?this.persistence.register(e,r.days):T.extend(this.unpersisted_superprops,e)};W.prototype.register_once=function(e,t,r){var n=FS(r);n.persistent?this.persistence.register_once(e,t,n.days):(typeof t>"u"&&(t="None"),T.each(e,function(a,o){(!this.unpersisted_superprops.hasOwnProperty(o)||this.unpersisted_superprops[o]===t)&&(this.unpersisted_superprops[o]=a)},this))};W.prototype.unregister=function(e,t){t=FS(t),t.persistent?this.persistence.unregister(e):delete this.unpersisted_superprops[e]};W.prototype._register_single=function(e,t){var r={};r[e]=t,this.register(r)};W.prototype.identify=function(e,t,r,n,a,o,i,s){var l=this.get_distinct_id();if(e&&l!==e){if(typeof e=="string"&&e.indexOf(jS)===0)return this.report_error("distinct_id cannot have $device: prefix"),-1;this.register({$user_id:e})}if(!this.get_property("$device_id")){var u=l;this.register_once({$had_persisted_distinct_id:!0,$device_id:u},"")}e!==l&&e!==this.get_property(Bv)&&(this.unregister(Bv),this.register({distinct_id:e})),this._flags.identify_called=!0,this.people._flush(t,r,n,a,o,i,s),e!==l&&this.track("$identify",{distinct_id:e,$anon_distinct_id:l},{skip_hooks:!0})};W.prototype.reset=function(){this.persistence.clear(),this._flags.identify_called=!1;var e=T.UUID();this.register_once({distinct_id:jS+e,$device_id:e},"")};W.prototype.get_distinct_id=function(){return this.get_property("distinct_id")};W.prototype.alias=function(e,t){if(e===this.get_property(q8))return this.report_error("Attempting to create alias for existing People user - aborting."),-2;var r=this;return T.isUndefined(t)&&(t=this.get_distinct_id()),e!==t?(this._register_single(Bv,e),this.track("$create_alias",{alias:e,distinct_id:t},{skip_hooks:!0},function(){r.identify(e)})):(this.report_error("alias matches current distinct_id - skipping api call."),this.identify(e),-1)};W.prototype.name_tag=function(e){this._register_single("mp_name_tag",e)};W.prototype.set_config=function(e){if(T.isObject(e)){T.extend(this.config,e);var t=e.batch_size;t&&T.each(this.request_batchers,function(r){r.resetBatchSize()}),this.get_config("persistence_name")||(this.config.persistence_name=this.config.cookie_name),this.get_config("disable_persistence")||(this.config.disable_persistence=this.config.disable_cookie),this.persistence&&this.persistence.update_config(this.config),oo.DEBUG=oo.DEBUG||this.get_config("debug")}};W.prototype.get_config=function(e){return this.config[e]};W.prototype._run_hook=function(e){var t=(this.config.hooks[e]||ZG).apply(this,oi.call(arguments,1));return typeof t>"u"&&(this.report_error(e+" hook did not return a value"),t=null),t};W.prototype.get_property=function(e){return this.persistence.props[e]};W.prototype.toString=function(){var e=this.get_config("name");return e!==Sn&&(e=Sn+"."+e),e};W.prototype._event_is_disabled=function(e){return T.isBlockedUA(ga)||this._flags.disable_all_events||T.include(this.__disabled_events,e)};W.prototype._gdpr_init=function(){var e=this.get_config("opt_out_tracking_persistence_type")==="localStorage";e&&T.localStorage.is_supported()&&(!this.has_opted_in_tracking()&&this.has_opted_in_tracking({persistence_type:"cookie"})&&this.opt_in_tracking({enable_persistence:!1}),!this.has_opted_out_tracking()&&this.has_opted_out_tracking({persistence_type:"cookie"})&&this.opt_out_tracking({clear_persistence:!1}),this.clear_opt_in_out_tracking({persistence_type:"cookie",enable_persistence:!1})),this.has_opted_out_tracking()?this._gdpr_update_persistence({clear_persistence:!0}):!this.has_opted_in_tracking()&&(this.get_config("opt_out_tracking_by_default")||T.cookie.get("mp_optout"))&&(T.cookie.remove("mp_optout"),this.opt_out_tracking({clear_persistence:this.get_config("opt_out_persistence_by_default")}))};W.prototype._gdpr_update_persistence=function(e){var t;if(e&&e.clear_persistence)t=!0;else if(e&&e.enable_persistence)t=!1;else return;!this.get_config("disable_persistence")&&this.persistence.disabled!==t&&this.persistence.set_disabled(t),t&&T.each(this.request_batchers,function(r){r.clear()})};W.prototype._gdpr_call_func=function(e,t){return t=T.extend({track:T.bind(this.track,this),persistence_type:this.get_config("opt_out_tracking_persistence_type"),cookie_prefix:this.get_config("opt_out_tracking_cookie_prefix"),cookie_expiration:this.get_config("cookie_expiration"),cross_site_cookie:this.get_config("cross_site_cookie"),cross_subdomain_cookie:this.get_config("cross_subdomain_cookie"),cookie_domain:this.get_config("cookie_domain"),secure_cookie:this.get_config("secure_cookie"),ignore_dnt:this.get_config("ignore_dnt")},t),T.localStorage.is_supported()||(t.persistence_type="cookie"),e(this.get_config("token"),{track:t.track,trackEventName:t.track_event_name,trackProperties:t.track_properties,persistenceType:t.persistence_type,persistencePrefix:t.cookie_prefix,cookieDomain:t.cookie_domain,cookieExpiration:t.cookie_expiration,crossSiteCookie:t.cross_site_cookie,crossSubdomainCookie:t.cross_subdomain_cookie,secureCookie:t.secure_cookie,ignoreDnt:t.ignore_dnt})};W.prototype.opt_in_tracking=function(e){e=T.extend({enable_persistence:!0},e),this._gdpr_call_func(zG,e),this._gdpr_update_persistence(e)};W.prototype.opt_out_tracking=function(e){e=T.extend({clear_persistence:!0,delete_user:!0},e),e.delete_user&&this.people&&this.people._identify_called()&&(this.people.delete_user(),this.people.clear_charges()),this._gdpr_call_func(VG,e),this._gdpr_update_persistence(e)};W.prototype.has_opted_in_tracking=function(e){return this._gdpr_call_func(WG,e)};W.prototype.has_opted_out_tracking=function(e){return this._gdpr_call_func(W8,e)};W.prototype.clear_opt_in_out_tracking=function(e){e=T.extend({enable_persistence:!0},e),this._gdpr_call_func(HG,e),this._gdpr_update_persistence(e)};W.prototype.report_error=function(e,t){Ge.error.apply(Ge.error,arguments);try{!t&&!(e instanceof Error)&&(e=new Error(e)),this.get_config("error_reporter")(e,t)}catch(r){Ge.error(r)}};W.prototype.init=W.prototype.init;W.prototype.reset=W.prototype.reset;W.prototype.disable=W.prototype.disable;W.prototype.time_event=W.prototype.time_event;W.prototype.track=W.prototype.track;W.prototype.track_links=W.prototype.track_links;W.prototype.track_forms=W.prototype.track_forms;W.prototype.track_pageview=W.prototype.track_pageview;W.prototype.register=W.prototype.register;W.prototype.register_once=W.prototype.register_once;W.prototype.unregister=W.prototype.unregister;W.prototype.identify=W.prototype.identify;W.prototype.alias=W.prototype.alias;W.prototype.name_tag=W.prototype.name_tag;W.prototype.set_config=W.prototype.set_config;W.prototype.get_config=W.prototype.get_config;W.prototype.get_property=W.prototype.get_property;W.prototype.get_distinct_id=W.prototype.get_distinct_id;W.prototype.toString=W.prototype.toString;W.prototype.opt_out_tracking=W.prototype.opt_out_tracking;W.prototype.opt_in_tracking=W.prototype.opt_in_tracking;W.prototype.has_opted_out_tracking=W.prototype.has_opted_out_tracking;W.prototype.has_opted_in_tracking=W.prototype.has_opted_in_tracking;W.prototype.clear_opt_in_out_tracking=W.prototype.clear_opt_in_out_tracking;W.prototype.get_group=W.prototype.get_group;W.prototype.set_group=W.prototype.set_group;W.prototype.add_group=W.prototype.add_group;W.prototype.remove_group=W.prototype.remove_group;W.prototype.track_with_groups=W.prototype.track_with_groups;W.prototype.start_batch_senders=W.prototype.start_batch_senders;W.prototype.stop_batch_senders=W.prototype.stop_batch_senders;be.prototype.properties=be.prototype.properties;be.prototype.update_search_keyword=be.prototype.update_search_keyword;be.prototype.update_referrer_info=be.prototype.update_referrer_info;be.prototype.get_cross_subdomain=be.prototype.get_cross_subdomain;be.prototype.clear=be.prototype.clear;var Hl={},JG=function(){T.each(Hl,function(e,t){t!==Sn&&(ar[t]=e)}),ar._=T},eK=function(){ar.init=function(e,t,r){if(r)return ar[r]||(ar[r]=Hl[r]=r$(e,t,r),ar[r]._loaded()),ar[r];var n=ar;Hl[Sn]?n=Hl[Sn]:e&&(n=r$(e,t,Sn),n._loaded(),Hl[Sn]=n),ar=n,DS===YG&&(dt[Sn]=ar),JG()}},tK=function(){function e(){e.done||(e.done=!0,Q8=!0,X8=!1,T.each(Hl,function(n){n._dom_loaded()}))}function t(){try{qe.documentElement.doScroll("left")}catch{setTimeout(t,1);return}e()}if(qe.addEventListener)qe.readyState==="complete"?e():qe.addEventListener("DOMContentLoaded",e,!1);else if(qe.attachEvent){qe.attachEvent("onreadystatechange",e);var r=!1;try{r=dt.frameElement===null}catch{}qe.documentElement.doScroll&&r&&t()}T.register_event(dt,"load",e,!0)};function rK(){return DS=Y8,ar=new W,eK(),ar.init(),tK(),ar}var nK=rK(),aK=nK;const Pa=lu(aK);globalThis.jotaiAtomCache=globalThis.jotaiAtomCache||{cache:new Map,get(e,t){return this.cache.has(e)?this.cache.get(e):(this.cache.set(e,t),t)}};function l4(e){const t={action:e};Pa.track("star",t)}function J8(e,t){const r={type:e,location:t};Pa.track("openInfoPanel",r)}function eN(e){Pa.track("share",{type:e})}function oK(e){const t={type:e};Pa.track("analysis",t)}function tN(e){const t={type:e};Pa.track("error-book",t)}function c4(e){const t={...e};Pa.track("donate-card",t)}function iK(e){const t=oe(In),{name:r}=oe(wr),n=oe(bh),a=oe(Dc),o=oe(yh),i=oe(To),s=oe(fu);return p.useCallback(u=>{const f={...u,order:e.chapterData.index+1,chapter:(t+1).toString(),wordlist:r,modeDictation:!e.isWordVisible,modeDark:n,modeShuffle:s.isOpen,enabledKeyboardSound:a.isOpen,enabledPhotonicsSymbol:o.isOpen,enabledSingleWordLoop:e.isLoopSingleWord,pronunciationAuto:i.isOpen,pronunciationOption:i.isOpen===!1?"none":i.type};Pa.track("Word",f)},[e,t,r,n,a.isOpen,o.isOpen,i.isOpen,i.type,s.isOpen])}function sK(e){const t=oe(In),{name:r}=oe(wr),n=oe(bh),a=oe(Dc),o=oe(yh),i=oe(To),s=oe(fu);return p.useCallback(()=>{const u={timeEnd:n$(),duration:e.timerData.time,countInput:e.chapterData.correctCount+e.chapterData.wrongCount,countTypo:e.chapterData.wrongCount,countCorrect:e.chapterData.correctCount,chapter:(t+1).toString(),wordlist:r,modeDictation:!e.isWordVisible,modeDark:n,modeShuffle:s.isOpen,enabledKeyboardSound:a.isOpen,enabledPhotonicsSymbol:o.isOpen,enabledSingleWordLoop:e.isLoopSingleWord,pronunciationAuto:i.isOpen,pronunciationOption:i.isOpen===!1?"none":i.type};Pa.track("Chapter",u)},[e,t,r,n,a.isOpen,o.isOpen,i.isOpen,i.type,s.isOpen])}function rN({type:e,size:t,wordCount:r,chapterCount:n}){const a={type:e,size:t,wordCount:r,chapterCount:n};Pa.track("dataAction",a)}function n$(){return new Date().toISOString().substring(0,19).replace("T"," ")}globalThis.jotaiAtomCache=globalThis.jotaiAtomCache||{cache:new Map,get(e,t){return this.cache.has(e)?this.cache.get(e):(this.cache.set(e,t),t)}};const lK=["Enter","Backspace","Delete","Tab","CapsLock","Shift","Control","Alt","Meta","Escape","Fn","FnLock","Hyper","Super","OS","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","AudioVolumeUp","AudioVolumeDown","AudioVolumeMute","End","PageDown","PageUp","Clear","Home"],nN=e=>!lK.includes(e),cK=e=>/[\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/.test(e),uK=()=>{const e=navigator.userAgent,t=["Android","iPhone","SymbianOS","Windows Phone","iPad","iPod"];let r=!0;for(let n=0;n0){r=!1;break}return r},aN=navigator.userAgent.indexOf("Macintosh")!==-1,Fs=aN?"Control":"Ctrl";function Rp(e,...t){return e.on(...t),()=>e.off(...t)}function dK(...e){const t=[];for(const r of e)r&&t.push(r.trim());return t.join(" ")}function fK(){const e=new Date,t=e.getFullYear(),r=("0"+(e.getMonth()+1)).slice(-2),n=("0"+e.getDate()).slice(-2);return`${t}${r}${n}`}function hK(e){return Math.ceil(e/A_)}function hje(e,t){const r=new Set(t);return e.filter(n=>r.has(n))}function pK(e,t){return Number((e??0).toFixed(t))}function BS(){const e=new Date;return Math.floor(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds())/1e3)}function pje(e){const t=new Date(e*1e3),r=t.toLocaleDateString("zh-CN",{month:"2-digit",day:"2-digit"}),n=t.toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit",hour12:!1});return`${r} ${n}`}globalThis.jotaiAtomCache=globalThis.jotaiAtomCache||{cache:new Map,get(e,t){return this.cache.has(e)?this.cache.get(e):(this.cache.set(e,t),t)}};const gK=[{id:"cet4",name:"CET-4",description:"大学英语四级词库",category:"中国考试",tags:["大学英语"],url:"/dicts/CET4_T.json",length:2607,language:"en",languageCategory:"en"},{id:"cet6",name:"CET-6",description:"大学英语六级词库",category:"中国考试",tags:["大学英语"],url:"/dicts/CET6_T.json",length:2345,language:"en",languageCategory:"en"},{id:"xinghuoqiaoji_4",name:"四级巧记速记",description:"四级巧记速记",category:"中国考试",tags:["大学英语"],url:"/dicts/xinghuoqiaoji_4.json",length:2522,language:"en",languageCategory:"en"},{id:"xinghuoqiaoji_6",name:"六级巧记速记",description:"六级巧记速记",category:"中国考试",tags:["大学英语"],url:"/dicts/xinghuoqiaoji_6.json",length:7520,language:"en",languageCategory:"en"},{id:"cet4-sub",name:"CET-4-Sub",description:"单词的减法-四级",category:"中国考试",tags:["大学英语"],url:"/dicts/DanCiDeJianFa_4.json",length:1957,language:"en",languageCategory:"en"},{id:"cet6-sub",name:"CET-6-Sub",description:"单词的减法-六级",category:"中国考试",tags:["大学英语"],url:"/dicts/DanCiDeJianFa_6.json",length:1949,language:"en",languageCategory:"en"},{id:"kaoyan",name:"考研",description:"研究生英语入学考试词库",category:"中国考试",tags:["考研"],url:"/dicts/KaoYan_3_T.json",length:3728,language:"en",languageCategory:"en"},{id:"kaoyan_2024",name:"考研 2024",description:"研究生英语入学考试词库 2024",category:"中国考试",tags:["考研"],url:"/dicts/KaoYan_2024.json",length:3731,language:"en",languageCategory:"en"},{id:"kaoyanshanguo_2023",name:"考研闪过 2023",description:"高中低频词2023",category:"中国考试",tags:["考研"],url:"/dicts/KaoYanShanGuo_2023.json",length:1771,language:"en",languageCategory:"en"},{id:"dancimimi_1",name:"单词的秘密-英语一",description:"单词的秘密英语(一)",category:"中国考试",tags:["考研"],url:"/dicts/DanCiDeMimi_1.json",length:5657,language:"en",languageCategory:"en"},{id:"dancimimi_2",name:"单词的秘密-英语二",description:"单词的秘密英语(二)",category:"中国考试",tags:["考研"],url:"/dicts/DanCiDeMimi_2.json",length:3827,language:"en",languageCategory:"en"},{id:"2024HongBao T1",name:"2024考研英语hongbaoshu(上)",description:"2024考研英语hongbaoshu必考词(上)",category:"中国考试",tags:["考研"],url:"/dicts/2024HongBao_T1.json",length:997,language:"en",languageCategory:"en"},{id:"2024HongBao T2",name:"2024考研英语hongbaoshu(下)",description:"2024考研英语hongbaoshu必考词(下)",category:"中国考试",tags:["考研"],url:"/dicts/2024HongBao_T2.json",length:854,language:"en",languageCategory:"en"},{id:"English_II",name:"英语二单词书",description:"考研英语二单词书",category:"中国考试",tags:["考研"],url:"/dicts/English_II.json",length:4559,language:"en",languageCategory:"en"},{id:"level4",name:"专四",description:"英语专业四级词库",category:"中国考试",tags:["大学英语"],url:"/dicts/Level4luan_2_T.json",length:4025,language:"en",languageCategory:"en"},{id:"level8",name:"专八",description:"英语专业八级词库",category:"中国考试",tags:["大学英语"],url:"/dicts/Level8luan_2_T.json",length:12197,language:"en",languageCategory:"en"},{id:"archVocabulary",name:"建筑专业英语",description:"大学建筑专业英语词汇",category:"中国考试",tags:["专业英语"],url:"/dicts/archVocabulary.json",length:630,language:"en",languageCategory:"en"},{id:"itVocabulary",name:"计算机专用英语",description:"大学计算机专业英语词汇",category:"中国考试",tags:["专业英语"],url:"/dicts/itVocabulary.json",length:1665,language:"en",languageCategory:"en"},{id:"pets3",name:"PETS",description:"全国英语等级考试常考词汇",category:"中国考试",tags:["PET"],url:"/dicts/PETS_3.json",length:1942,language:"en",languageCategory:"en"},{id:"pets3-2023",name:"PETS-2023",description:"全国英语等级考试常考词汇",category:"中国考试",tags:["PET"],url:"/dicts/PETS3-2023.json",length:4449,language:"en",languageCategory:"en"},{id:"self-study_English1",name:"自考1800高频单词",description:"自考1800高频单词",category:"中国考试",tags:["自考英语二"],url:"/dicts/self-study_English1.json",length:1800,language:"en",languageCategory:"en"},{id:"self-study_English2",name:"自考英语二高频悠悠单词",description:"自考英语二高频悠悠单词",category:"中国考试",tags:["自考英语二"],url:"/dicts/self-study_English2.json",length:2181,language:"en",languageCategory:"en"},{id:"self-study_English3",name:"自考英语二完整单词",description:"00015自考英语二完整单词书",category:"中国考试",tags:["自考英语二"],url:"/dicts/self-study_English3.json",length:4603,language:"en",languageCategory:"en"},{id:"coca_20000",name:"COCA20000词",description:"COCA20000词",category:"中国考试",tags:["其他"],url:"/dicts/coca20000.json",length:20199,language:"en",languageCategory:"en"},{id:"4000_Essential_English_Words1",name:"Essential Words",description:"4000 Essential English Words meaning",category:"中国考试",tags:["其他"],url:"/dicts/4000_Essential_English_Words-meaning.json",length:3600,language:"en",languageCategory:"en"},{id:"4000_Essential_English_Words2",name:"Essential Words",description:"4000 Essential English Words sentence",category:"中国考试",tags:["其他"],url:"/dicts/4000_Essential_English_Words-sentence.json",length:3600,language:"en",languageCategory:"en"},{id:"longman_communication_3000_words",name:"Longman Communication 3000",description:"Most frequent words in both spoken and written English",category:"中国考试",tags:["其他"],url:"/dicts/Longman_Communication_3000.json",length:3168,language:"en",languageCategory:"en"},{id:"top_2000_English_Words",name:"Top 2000 words",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/top2000words.json",length:1867,language:"en",languageCategory:"en"},{id:"top_1500_nouns_Words",name:"Top 1500 Nouns",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top1500NounWords.json",length:1525,language:"en",languageCategory:"en"},{id:"top_1000_verb_Words",name:"Top 1000 Verbs",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top1000VerbWords.json",length:1011,language:"en",languageCategory:"en"},{id:"top_500_Adj_Words",name:"Top 500 adj.",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top500AdjectiveWords.json",length:527,language:"en",languageCategory:"en"},{id:"top_250_Adv_Words",name:"Top 250 adv.",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top250AdverbWords.json",length:255,language:"en",languageCategory:"en"},{id:"top_60_Pronouns",name:"Top 60 pron.",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top60Pronouns.json",length:59,language:"en",languageCategory:"en"},{id:"top_50_Prepositions",name:"Top 50 prep.",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top50Prepositions.json",length:46,language:"en",languageCategory:"en"},{id:"suffix word",name:"suffix word",description:"common suffix",category:"中国考试",tags:["其他"],url:"/dicts/suffix_word.json",length:126,language:"en",languageCategory:"en"},{id:"word roots1",name:"word roots1",description:"common roots",category:"中国考试",tags:["其他"],url:"/dicts/word_roots1.json",length:369,language:"en",languageCategory:"en"},{id:"adult self-study examination",name:"专升本词汇",description:"专升本词汇",category:"中国考试",tags:["其他"],url:"/dicts/adult-self-study-examination.json",length:3692,language:"en",languageCategory:"en"},{id:"zhuan-cha-ben-ying-yu",name:"专插本英语词汇",description:"专插本英语词汇",category:"中国考试",tags:["其他"],url:"/dicts/zhuan-cha-ben.json",length:3217,language:"en",languageCategory:"en"},{id:"zhuan-sheng-ben-xue-shi",name:"专升本学士学位的英语",description:"专升本学士学位的英语",category:"中国考试",tags:["其他"],url:"/dicts/xueshiyingyu.json",length:897,language:"en",languageCategory:"en"},{id:"Oxford5000",name:"牛津5000词",description:"牛津5000词",category:"中国考试",tags:["其他"],url:"/dicts/Oxford5000.json",length:5836,language:"en",languageCategory:"en"},{id:"Merriam_Webster_sVocabularyBuilder",name:"韦氏词根词典",description:"韦氏词根词典",category:"中国考试",tags:["其他"],url:"/dicts/Merriam_Webster_sVocabularyBuilder.json",length:1191,language:"en",languageCategory:"en"},{id:"tingshuokaoshi",name:"听说考试常见词汇",description:"听说考试16个场景常见词汇量",category:"中国考试",tags:["其他"],url:"/dicts/tingshuokaoshi.json",length:557,language:"en",languageCategory:"en"},{id:"TOEFL_ZhangHongYan",name:"ZhangHongYan的TOEFL词汇书",description:"ZhangHongYan的TOEFL词汇书-词以类记",category:"国际考试",tags:["TOEFL"],url:"/dicts/TOEFL_ZhangHongYan.json",length:4035,language:"en",languageCategory:"en"}],vK=[{id:"gmat",name:"GMAT",description:"GMAT 词库",category:"国际考试",tags:["GMAT"],url:"/dicts/GMAT_3_T.json",length:3047,language:"en",languageCategory:"en"},{id:"gre",name:"GRE",description:"GRE 词库",category:"国际考试",tags:["GRE"],url:"/dicts/GRE_3_T.json",length:6515,language:"en",languageCategory:"en"},{id:"gre3000",name:"GRE3000",description:"GRE3000 词库",category:"国际考试",tags:["GRE"],url:"/dicts/GRE3000_3_T.json",length:3041,language:"en",languageCategory:"en"},{id:"GRE-computer-based-test",name:"GRE机经词汇",description:"GRE机经词汇",category:"国际考试",tags:["GRE"],url:"/dicts/GRE-computer-based-test.json",length:1451,language:"en",languageCategory:"en"},{id:"ZaiYaoNiMing_GRE3000",name:"再要你命GRE3000",description:"再要你命GRE3000词库-有词性新版",category:"国际考试",tags:["GRE"],url:"/dicts/ZaiYaoNiMing_GRE3000.json",length:3041,language:"en",languageCategory:"en"},{id:"GRE_equivalent",name:"GRE等价词",description:"GRE等价词",category:"国际考试",tags:["GRE"],url:"/dicts/GRE_equivalent.json",length:827,language:"en",languageCategory:"en"},{id:"GRE_ciyileiji",name:"GRE词以类记",description:"GRE词以类记",category:"国际考试",tags:["GRE"],url:"/dicts/gre-ciyileiji.json",length:8355,language:"en",languageCategory:"en"},{id:"IELTS_tinglichangjing",name:"雅思听力场景词汇",description:"雅思听力场景词汇",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_tinglichangjing.json",length:1204,language:"en",languageCategory:"en"},{id:"ielts_disorder",name:"IELTS乱序完整版",description:"IELTS乱序完整版",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_disorder.json",length:9389,language:"en",languageCategory:"en"},{id:"ielts_order",name:"IELTS顺序完整版",description:"IELTS顺序完整版",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_order.json",length:9389,language:"en",languageCategory:"en"},{id:"ielts",name:"IELTS",description:"雅思词库",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_3_T.json",length:3575,language:"en",languageCategory:"en"},{id:"heqiong",name:"heQiong雅思听力必考词汇",description:"综合测试",category:"国际考试",tags:["IELTS"],url:"/dicts/HeQiong_IELTS.json",length:2532,language:"en",languageCategory:"en"},{id:"ieltsWang3",name:"雅思wang C3",description:"雅思听力特别名词语料库",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_WANG_3.json",length:1135,language:"en",languageCategory:"en"},{id:"ieltsWang4",name:"雅思wang C4",description:"雅思听力形容词副词语料库",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_WANG_4.json",length:346,language:"en",languageCategory:"en"},{id:"ieltsWang5",name:"雅思wang C5",description:"吞音连读混合训练语料库",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_WANG_5.json",length:1569,language:"en",languageCategory:"en"},{id:"ieltsWang11",name:"雅思wang C11",description:"综合测试",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_WANG_11.json",length:1738,language:"en",languageCategory:"en"},{id:"DuckCircle_IELTS",name:"鸭圈雅思核心词",description:"鸭圈雅思核心词",category:"国际考试",tags:["IELTS"],url:"/dicts/DuckCircle_IELTS.json",length:2644,language:"en",languageCategory:"en"},{id:"IELTSVocabularyBible",name:"雅思词汇真经",description:"雅思词汇真经",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTSVocabularyBible.json",length:3673,language:"en",languageCategory:"en"},{id:"IELTS-807",name:"雅思 wanglu 807",description:"雅思 wanglu 807",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-807.json",length:4340,language:"en",languageCategory:"en"},{id:"ielts-real-high",name:"雅思 real 词汇 高频",description:"雅思 real 词汇(高频词汇)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-high.json",length:524,language:"en",languageCategory:"en"},{id:"ielts-real-5",name:"雅思 real 词汇 5",description:"雅思 real 词汇 (5频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-5.json",length:183,language:"en",languageCategory:"en"},{id:"ielts-real-4",name:"雅思 real 词汇 4",description:"雅思 real 词汇 (4频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-4.json",length:201,language:"en",languageCategory:"en"},{id:"ielts-real-3",name:"雅思 real 词汇 3",description:"雅思 real 词汇 (3频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-3.json",length:256,language:"en",languageCategory:"en"},{id:"ielts-real-2",name:"雅思 real 词汇 2",description:"雅思 real 词汇 (2频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-2.json",length:402,language:"en",languageCategory:"en"},{id:"ielts-real-1",name:"雅思 real 词汇 1",description:"雅思 real 词汇 (1频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-1.json",length:737,language:"en",languageCategory:"en"},{id:"IELTS9988wangyong",name:"雅思9988wangyong",description:"雅思9988wangyong",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS9988wangyong.json",length:3663,language:"en",languageCategory:"en"},{id:"IELTSLiuHongbo538",name:"雅思阅读 liuhongbo 538考点词",description:"雅思阅读 liuhongbo 538考点词",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTSLiuHongbo538.json",length:376,language:"en",languageCategory:"en"},{id:"IELTSKingLu807",name:"wanglu807雅思词汇听力第2版",description:"wanglu807雅思词汇听力第2版",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTSKingLu807.json",length:1916,language:"en",languageCategory:"en"},{id:"IELTSXDF7000",name:"100个句子记完7000个雅思单词",description:"新东方 100个句子记完7000个雅思单词 词汇表",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_XDF_7000.json",length:5567,language:"en",languageCategory:"en"},{id:"ket",name:"KET",description:"KET 2021单词",category:"国际考试",tags:["KET"],url:"./dicts/ket2021.json",length:1147,language:"en",languageCategory:"en"},{id:"sat",name:"SAT",description:"美国 SAT 考试词库",category:"国际考试",tags:["SAT"],url:"/dicts/SAT_3_T.json",length:4464,language:"en",languageCategory:"en"},{id:"SATen",name:"SAT en-en",description:"SAT英英",category:"国际考试",tags:["SAT"],url:"/dicts/SATen.json",length:2681,language:"en",languageCategory:"en"},{id:"toefl",name:"TOEFL",description:"托福考试常见词",category:"国际考试",tags:["TOEFL"],url:"/dicts/TOEFL_3_T.json",length:4264,language:"en",languageCategory:"en"},{id:"bec2",name:"商务英语",description:"商务英语常见词",category:"国际考试",tags:["BEC"],url:"/dicts/BEC_2_T.json",length:2753,language:"en",languageCategory:"en"},{id:"bec3",name:"BEC",description:"BEC考试常见词",category:"国际考试",tags:["BEC"],url:"/dicts/BEC_3_T.json",length:2825,language:"en",languageCategory:"en"},{id:"PTE_junior",name:"PTE 基础词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_junior.json",length:2651,language:"en",languageCategory:"en"},{id:"PTE_senior",name:"PTE 高阶词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_senior.json",length:3170,language:"en",languageCategory:"en"},{id:"PTE_FIB_R_junior",name:"阅读 FIB 基础机经词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_FIB_R_junior.json",length:941,language:"en",languageCategory:"en"},{id:"PTE_FIB_R_senior",name:"阅读 FIB 高阶机经词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_FIB_R_senior.json",length:1272,language:"en",languageCategory:"en"},{id:"PTE_WFD",name:"WFD 机经词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_WFD.json",length:1212,language:"en",languageCategory:"en"},{id:"PTE_FIB_L",name:"听力 FIB 机经词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_FIB_L.json",length:646,language:"en",languageCategory:"en"},{id:"PTE_Basic_apeuni",name:"PTE 基础词汇 xingji",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_Basic_apeuni.json",length:2652,language:"en",languageCategory:"en"},{id:"PTE_Advanced_apeuni.json",name:"PTE 高阶词汇 xingji",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_Advanced_apeuni.json",length:3169,language:"en",languageCategory:"en"},{id:"PTE_Read_apeuni.json",name:"PTE 阅读FIB机经词汇 xingji",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_Read_apeuni.json",length:630,language:"en",languageCategory:"en"},{id:"PTE_Listening_apeuni.json",name:"PTE 听力FIB机经词汇 xingji",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_Listening_apeuni.json",length:674,language:"en",languageCategory:"en"},{id:"TOEIC",name:"TOEIC 词汇",description:"",category:"国际考试",tags:["TOEIC"],url:"/dicts/TOEIC.json",length:1694,language:"en",languageCategory:"en"},{id:"Duolingo_Vocabulary_B1",name:"多邻国分级词汇B1",description:"多邻国分级词汇B1",category:"国际考试",tags:["CEFR"],url:"/dicts/Duolingo_Vocabulary_B1.json",length:801,language:"en",languageCategory:"en"},{id:"Duolingo_Vocabulary_B2",name:"多邻国分级词汇B2",description:"多邻国分级词汇B2",category:"国际考试",tags:["CEFR"],url:"/dicts/Duolingo_Vocabulary_B2.json",length:1423,language:"en",languageCategory:"en"},{id:"Duolingo_Vocabulary_C1",name:"多邻国分级词汇C1",description:"多邻国分级词汇C1",category:"国际考试",tags:["CEFR"],url:"/dicts/Duolingo_Vocabulary_C1.json",length:1314,language:"en",languageCategory:"en"},{id:"Oxford3000",name:"牛津3000词",description:"牛津3000词",category:"国际考试",tags:["牛津版"],url:"/dicts/Oxford3000.json",length:1342,language:"en",languageCategory:"en"},{id:"Oxford5000",name:"牛津5000词",description:"牛津5000词",category:"国际考试",tags:["牛津版"],url:"/dicts/Oxford5000.json",length:5836,language:"en",languageCategory:"en"},{id:"voa",name:"VOA 基础词库",description:"VOA 基础词库",category:"国际考试",tags:["其他"],url:"/dicts/voa.json",length:1505,language:"en",languageCategory:"en"}],mK=[{id:"gaokao3500",name:"高考 3500 词",description:"高考常见词 3500",category:"青少年英语",tags:["通用"],url:"/dicts/GaoKao_3500.json",length:3893,language:"en",languageCategory:"en"},{id:"gaokaozhentihexin",name:"高考历年真题核心高频",description:"高考历年真题核心高频",category:"青少年英语",tags:["通用"],url:"/dicts/GaoKaoZhenTiHeXinGaoPin.json",length:799,language:"en",languageCategory:"en"},{id:"gaokao-yuedu-gaopin",name:"高考英语阅读高频词汇",description:"高考英语阅读高频词汇",category:"青少年英语",tags:["通用"],url:"/dicts/gaokao-yuedu-gaopin.json",length:688,language:"en",languageCategory:"en"},{id:"zhongkaohexin",name:"中考核心词",description:"中考核心词",category:"青少年英语",tags:["通用"],url:"/dicts/ZhongKaoHeXin.json",length:2140,language:"en",languageCategory:"en"},{id:"nce1",name:"新概念英语-1",description:"新概念英语第一册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/NCE_1.json",length:900,language:"en",languageCategory:"en"},{id:"nce2",name:"新概念英语-2",description:"新概念英语第二册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/NCE_2.json",length:858,language:"en",languageCategory:"en"},{id:"nce3",name:"新概念英语-3",description:"新概念英语第三册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/NCE_3.json",length:1052,language:"en",languageCategory:"en"},{id:"nce4",name:"新概念英语-4",description:"新概念英语第四册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/NCE_4.json",length:784,language:"en",languageCategory:"en"},{id:"nce-new-1",name:"新概念英语(新版)-1",description:"新概念英语新版第一册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/nce-new-1.json",length:908,language:"en",languageCategory:"en"},{id:"nce-new-2",name:"新概念英语(新版)-2",description:"新概念英语新版第二册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/nce-new-2.json",length:862,language:"en",languageCategory:"en"},{id:"nce-new-3",name:"新概念英语(新版)-3",description:"新概念英语新版第三册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/nce-new-3.json",length:1062,language:"en",languageCategory:"en"},{id:"nce-new-4",name:"新概念英语(新版)-4",description:"新概念英语新版第四册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/nce-new-4.json",length:793,language:"en",languageCategory:"en"},{id:"SHjuniormiddleOxford",name:"上海初中牛津词汇",description:"上海初中牛津词汇",category:"青少年英语",tags:["牛津版"],url:"/dicts/OxfordVocabulary_juniorMiddleSH.json",length:1270,language:"en",languageCategory:"en"},{id:"san1",name:"三年级上",description:"人教版三年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue3_1_T.json",length:64,language:"en",languageCategory:"en"},{id:"san2",name:"三年级下",description:"人教版三年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue3_2_T.json",length:72,language:"en",languageCategory:"en"},{id:"si1",name:"四年级上",description:"人教版四年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue4_1_T.json",length:84,language:"en",languageCategory:"en"},{id:"si2",name:"四年级下",description:"人教版四年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue4_2_T.json",length:104,language:"en",languageCategory:"en"},{id:"wu1",name:"五年级上",description:"人教版五年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue5_1_T.json",length:131,language:"en",languageCategory:"en"},{id:"wu2",name:"五年级下",description:"人教版五年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue5_2_T.json",length:156,language:"en",languageCategory:"en"},{id:"liu1",name:"六年级上",description:"人教版六年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue6_1_T.json",length:130,language:"en",languageCategory:"en"},{id:"liu2",name:"六年级下",description:"人教版六年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue6_2_T.json",length:108,language:"en",languageCategory:"en"},{id:"pep-sl-yi1",name:"人教版(新起点)一年级上",description:"人教版一年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue1_1_t.json",length:52,language:"en",languageCategory:"en"},{id:"pep-sl-yi2",name:"人教版(新起点)一年级下",description:"人教版一年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue1_2_t.json",length:96,language:"en",languageCategory:"en"},{id:"pep-sl-er1",name:"人教版(新起点)二年级上",description:"人教版二年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue2_1_t.json",length:54,language:"en",languageCategory:"en"},{id:"pep-sl-er2",name:"人教版(新起点)二年级下",description:"人教版二年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue2_2_t.json",length:55,language:"en",languageCategory:"en"},{id:"pep-sl-san1",name:"人教版(新起点)三年级上",description:"人教版三年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue3_1_t.json",length:103,language:"en",languageCategory:"en"},{id:"pep-sl-san2",name:"人教版(新起点)三年级下",description:"人教版三年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue3_2_t.json",length:84,language:"en",languageCategory:"en"},{id:"pep-sl-si1",name:"人教版(新起点)四年级上",description:"人教版四年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue4_1_t.json",length:116,language:"en",languageCategory:"en"},{id:"pep-sl-si2",name:"人教版(新起点)四年级下",description:"人教版四年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue4_2_t.json",length:87,language:"en",languageCategory:"en"},{id:"pep-sl-wu1",name:"人教版(新起点)五年级上",description:"人教版五年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue5_1_t.json",length:66,language:"en",languageCategory:"en"},{id:"pep-sl-wu2",name:"人教版(新起点)五年级下",description:"人教版五年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue5_2_t.json",length:96,language:"en",languageCategory:"en"},{id:"pep-sl-liu1",name:"人教版(新起点)六年级上",description:"人教版六年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue6_1_t.json",length:102,language:"en",languageCategory:"en"},{id:"pep-sl-liu2",name:"人教版(新起点)六年级下",description:"人教版六年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue6_2_t.json",length:41,language:"en",languageCategory:"en"},{id:"qi1",name:"七年级上",description:"人教版七年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong7_1_T.json",length:392,language:"en",languageCategory:"en"},{id:"qi2",name:"七年级下",description:"人教版七年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong7_2_T.json",length:492,language:"en",languageCategory:"en"},{id:"ba1",name:"八年级上",description:"人教版八年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong8_1_T.json",length:419,language:"en",languageCategory:"en"},{id:"ba2",name:"八年级下",description:"人教版八年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong8_2_T.json",length:466,language:"en",languageCategory:"en"},{id:"jiu",name:"九年级",description:"人教版九年级全册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong9_1_T.json",length:551,language:"en",languageCategory:"en"},{id:"renjiaogaozhong1",name:"高中必修1",description:"人教版高中必修1",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_1_T.json",length:311,language:"en",languageCategory:"en"},{id:"renjiaogaozhong2",name:"高中必修2",description:"人教版高中必修2",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_2_T.json",length:319,language:"en",languageCategory:"en"},{id:"renjiaogaozhong3",name:"高中必修3",description:"人教版高中必修3",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_3_T.json",length:366,language:"en",languageCategory:"en"},{id:"renjiaogaozhong4",name:"高中必修4",description:"人教版高中必修4",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_4_T.json",length:307,language:"en",languageCategory:"en"},{id:"renjiaogaozhong5",name:"高中必修5",description:"人教版高中必修5",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_5_T.json",length:357,language:"en",languageCategory:"en"},{id:"renjiaogaozhong6",name:"高中选修6",description:"人教版高中选修6",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_6_T.json",length:391,language:"en",languageCategory:"en"},{id:"renjiaogaozhong7",name:"高中选修7",description:"人教版高中选修7",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_7_T.json",length:384,language:"en",languageCategory:"en"},{id:"renjiaogaozhong8",name:"高中选修8",description:"人教版高中选修8",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_8_T.json",length:420,language:"en",languageCategory:"en"},{id:"renjiaogaozhong9",name:"高中选修9",description:"人教版高中选修9",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_9_T.json",length:352,language:"en",languageCategory:"en"},{id:"renjiaogaozhong10",name:"高中选修10",description:"人教版高中选修10",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_10_T.json",length:361,language:"en",languageCategory:"en"},{id:"renjiaogaozhong11",name:"高中选修11",description:"人教版高中选修11",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_11_T.json",length:309,language:"en",languageCategory:"en"},{id:"waiyan1",name:"外研七年级上册",description:"外研版七年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_1_T.json",length:629,language:"en",languageCategory:"en"},{id:"waiyan2",name:"外研七年级下册",description:"外研版七年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_2_T.json",length:438,language:"en",languageCategory:"en"},{id:"waiyan3",name:"外研八年级上册",description:"外研版八年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_3_T.json",length:320,language:"en",languageCategory:"en"},{id:"waiyan4",name:"外研八年级下册",description:"外研版八年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_4_T.json",length:266,language:"en",languageCategory:"en"},{id:"waiyan5",name:"外研九年级上册",description:"外研版九年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_5_T.json",length:381,language:"en",languageCategory:"en"},{id:"waiyan6",name:"外研九年级下册",description:"外研版九年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_6_T.json",length:128,language:"en",languageCategory:"en"},{id:"waiyan7",name:"外研高中必修1",description:"外研高中必修1",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheGaoZhong_1_T.json",length:411,language:"en",languageCategory:"en"},{id:"waiyan8",name:"外研高中必修2",description:"外研高中必修2",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheGaoZhong_2_T.json",length:272,language:"en",languageCategory:"en"},{id:"waiyan9",name:"外研一年级上册",description:"外研一年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_1-Volume-up.json",length:138,language:"en",languageCategory:"en"},{id:"waiyan10",name:"外研一年级下册",description:"外研一年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_1-Volume-down.json",length:118,language:"en",languageCategory:"en"},{id:"waiyan11",name:"外研二年级上册",description:"外研二年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_2-Volume-top.json",length:118,language:"en",languageCategory:"en"},{id:"waiyan12",name:"外研二年级下册",description:"外研二年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_2-Volume-down.json",length:110,language:"en",languageCategory:"en"},{id:"waiyan13",name:"外研三年级上册",description:"外研三年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_3-Volume-top.json",length:82,language:"en",languageCategory:"en"},{id:"waiyan14",name:"外研三年级下册",description:"外研三年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_3-Volume-down.json",length:106,language:"en",languageCategory:"en"},{id:"waiyan15",name:"外研四年级上册",description:"外研四年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_4-Volume-top.json",length:116,language:"en",languageCategory:"en"},{id:"waiyan16",name:"外研四年级下册",description:"外研四年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_4-Volume-down.json",length:78,language:"en",languageCategory:"en"},{id:"waiyan17",name:"外研五年级上册",description:"外研五年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_5-Volume-top.json",length:80,language:"en",languageCategory:"en"},{id:"waiyan18",name:"外研五年级下册",description:"外研五年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_5-Volume-down.json",length:72,language:"en",languageCategory:"en"},{id:"waiyan19",name:"外研六年级上册",description:"外研六年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_6-Volume-top.json",length:61,language:"en",languageCategory:"en"},{id:"waiyan20",name:"外研六年级下册",description:"外研六年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_6-Volume-down.json",length:91,language:"en",languageCategory:"en"},{id:"waiyan3-1",name:"外研新起点三年级上册",description:"外研新起点三年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-3-1.json",length:134,language:"en",languageCategory:"en"},{id:"waiyan3-2",name:"外研新起点三年级下册",description:"外研新起点三年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-3-2.json",length:156,language:"en",languageCategory:"en"},{id:"waiyan4-1",name:"外研新起点四年级上册",description:"外研新起点四年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-4-1.json",length:144,language:"en",languageCategory:"en"},{id:"waiyan4-2",name:"外研新起点四年级下册",description:"外研新起点四年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-4-2.json",length:134,language:"en",languageCategory:"en"},{id:"waiyan5-1",name:"外研新起点五年级上册",description:"外研新起点五年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-5-1.json",length:152,language:"en",languageCategory:"en"},{id:"waiyan5-2",name:"外研新起点五年级下册",description:"外研新起点五年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-5-2.json",length:147,language:"en",languageCategory:"en"},{id:"waiyan6-1",name:"外研新起点六年级上册",description:"外研新起点六年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-6-1.json",length:83,language:"en",languageCategory:"en"},{id:"waiyan6-2",name:"外研新起点六年级下册",description:"外研新起点六年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-6-2.json",length:105,language:"en",languageCategory:"en"},{id:"Yilin1",name:"高中必修1",description:"译林版高中必修1",category:"青少年英语",tags:["译林版"],url:"./dicts/YiLin_1.json",length:276,language:"en",languageCategory:"en"},{id:"Yilin2",name:"高中必修2",description:"译林版高中必修2",category:"青少年英语",tags:["译林版"],url:"./dicts/YiLin_2.json",length:297,language:"en",languageCategory:"en"},{id:"Yilin3",name:"高中必修3",description:"译林版高中必修3",category:"青少年英语",tags:["译林版"],url:"./dicts/YiLin_3.json",length:295,language:"en",languageCategory:"en"},{id:"beishi1",name:"高中必修1",description:"北师大版高中必修1",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_1_T.json",length:226,language:"en",languageCategory:"en"},{id:"beishi2",name:"高中必修2",description:"北师大版高中必修2",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_2_T.json",length:244,language:"en",languageCategory:"en"},{id:"beishi3",name:"高中必修3",description:"北师大版高中必修3",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_3_T.json",length:295,language:"en",languageCategory:"en"},{id:"beishi4",name:"高中必修4",description:"北师大版高中必修4",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_4_T.json",length:336,language:"en",languageCategory:"en"},{id:"beishi5",name:"高中必修5",description:"北师大版高中必修5",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_5_T.json",length:327,language:"en",languageCategory:"en"},{id:"beishi6",name:"高中选修6",description:"北师大版高中选修6",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_6_T.json",length:271,language:"en",languageCategory:"en"},{id:"beishi7",name:"高中选修7",description:"北师大版高中选修7",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_7_T.json",length:334,language:"en",languageCategory:"en"},{id:"beishi8",name:"高中选修8",description:"北师大版高中选修8",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_8_T.json",length:364,language:"en",languageCategory:"en"},{id:"beishi9",name:"高中选修9",description:"北师大版高中选修9",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_9_T.json",length:299,language:"en",languageCategory:"en"},{id:"beishi10",name:"高中选修10",description:"北师大版高中选修10",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_10_T.json",length:267,language:"en",languageCategory:"en"},{id:"beishi11",name:"高中选修11",description:"北师大版高中选修11",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_11_T.json",length:330,language:"en",languageCategory:"en"},{id:"jijiao1",name:"冀教 3 上",description:"冀教版三年级起点三年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao3-1.json",length:75,language:"en",languageCategory:"en"},{id:"jijiao2",name:"冀教 3 下",description:"冀教版三年级起点三年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao3-2.json",length:76,language:"en",languageCategory:"en"},{id:"jijiao3",name:"冀教 4 上",description:"冀教版三年级起点四年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao4-1.json",length:78,language:"en",languageCategory:"en"},{id:"jijiao4",name:"冀教 4 下",description:"冀教版三年级起点四年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao4-2.json",length:84,language:"en",languageCategory:"en"},{id:"jijiao5",name:"冀教 5 上",description:"冀教版三年级起点五年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao5-1.json",length:79,language:"en",languageCategory:"en"},{id:"jijiao6",name:"冀教 5 下",description:"冀教版三年级起点五年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao5-2.json",length:96,language:"en",languageCategory:"en"},{id:"jijiao7",name:"冀教 6 上",description:"冀教版三年级起点六年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao6-1.json",length:66,language:"en",languageCategory:"en"},{id:"jijiao8",name:"冀教 6 下",description:"冀教版三年级起点六年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao6-2.json",length:51,language:"en",languageCategory:"en"},{id:"jijiao9",name:"冀教 7 上",description:"冀教版三年级起点七年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao7-1.json",length:561,language:"en",languageCategory:"en"},{id:"jijiao10",name:"冀教 7 下",description:"冀教版三年级起点七年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao7-2.json",length:514,language:"en",languageCategory:"en"},{id:"jijiao11",name:"冀教 8 上",description:"冀教版三年级起点八年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao8-1.json",length:420,language:"en",languageCategory:"en"},{id:"jijiao12",name:"冀教 8 下",description:"冀教版三年级起点八年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao8-2.json",length:487,language:"en",languageCategory:"en"},{id:"jijiao13",name:"冀教 9 上",description:"冀教版三年级起点九年级全册",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao9.json",length:636,language:"en",languageCategory:"en"},{id:"eflevel1",name:"EF-LEVEL-1",description:"EF等级1",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_1.json",length:297,language:"en",languageCategory:"en"},{id:"eflevel2",name:"EF-LEVEL-2",description:"EF等级2",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_2.json",length:353,language:"en",languageCategory:"en"},{id:"eflevel3",name:"EF-LEVEL-3",description:"EF等级3",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_3.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel4",name:"EF-LEVEL-4",description:"EF等级4",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_4.json",length:178,language:"en",languageCategory:"en"},{id:"eflevel5",name:"EF-LEVEL-5",description:"EF等级5",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_5.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel6",name:"EF-LEVEL-6",description:"EF等级6",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_6.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel7",name:"EF-LEVEL-7",description:"EF等级7",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_7.json",length:171,language:"en",languageCategory:"en"},{id:"eflevel8",name:"EF-LEVEL-8",description:"EF等级8",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_8.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel9",name:"EF-LEVEL-9",description:"EF等级9",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_9.json",length:165,language:"en",languageCategory:"en"},{id:"eflevel10",name:"EF-LEVEL-10",description:"EF等级10",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_10.json",length:174,language:"en",languageCategory:"en"},{id:"eflevel11",name:"EF-LEVEL-11",description:"EF等级11",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_11.json",length:176,language:"en",languageCategory:"en"},{id:"eflevel12",name:"EF-LEVEL-12",description:"EF等级12",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_12.json",length:170,language:"en",languageCategory:"en"},{id:"eflevel13",name:"EF-LEVEL-13",description:"EF等级13",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_13.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel14",name:"EF-LEVEL-14",description:"EF等级14",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_14.json",length:171,language:"en",languageCategory:"en"},{id:"eflevel15",name:"EF-LEVEL-15",description:"EF等级15",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_15.json",length:168,language:"en",languageCategory:"en"},{id:"eflevel16",name:"EF-LEVEL-16",description:"EF等级16",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_16.json",length:170,language:"en",languageCategory:"en"},{id:"ReadingExplorer3",name:"Reading Explorer 3",description:"词汇表来自Reading Explorer 3, Third Edition",category:"青少年英语",tags:["青少年英语"],url:"/dicts/ReadingExplorer3.json",length:239,language:"en",languageCategory:"en"},{id:"Macmillan7000",name:"麦克米伦7000",description:"麦克米伦7000",category:"中国考试",tags:["其他"],url:"/dicts/Macmillan7000.json",length:6268,language:"en",languageCategory:"en"},{id:"raz-AA",name:"RAZ 分级阅读 AA",description:"RAZ 分级阅读 AA",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-AA.json",length:422,language:"en",languageCategory:"en"},{id:"raz-A",name:"RAZ 分级阅读 A",description:"RAZ 分级阅读 A",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-A.json",length:487,language:"en",languageCategory:"en"},{id:"raz-B",name:"RAZ 分级阅读 B",description:"RAZ 分级阅读 B",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-B.json",length:465,language:"en",languageCategory:"en"},{id:"raz-C",name:"RAZ 分级阅读 C",description:"RAZ 分级阅读 C",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-C.json",length:480,language:"en",languageCategory:"en"},{id:"raz-D",name:"RAZ 分级阅读 D",description:"RAZ 分级阅读 D",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-D.json",length:436,language:"en",languageCategory:"en"},{id:"raz-E",name:"RAZ 分级阅读 E",description:"RAZ 分级阅读 E",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-E.json",length:427,language:"en",languageCategory:"en"},{id:"raz-F",name:"RAZ 分级阅读 F",description:"RAZ 分级阅读 F",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-F.json",length:437,language:"en",languageCategory:"en"},{id:"raz-G",name:"RAZ 分级阅读 G",description:"RAZ 分级阅读 G",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-G.json",length:435,language:"en",languageCategory:"en"},{id:"raz-H",name:"RAZ 分级阅读 H",description:"RAZ 分级阅读 H",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-H.json",length:385,language:"en",languageCategory:"en"},{id:"raz-I",name:"RAZ 分级阅读 I",description:"RAZ 分级阅读 I",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-I.json",length:408,language:"en",languageCategory:"en"},{id:"raz-J",name:"RAZ 分级阅读 J",description:"RAZ 分级阅读 J",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-J.json",length:434,language:"en",languageCategory:"en"},{id:"raz-K",name:"RAZ 分级阅读 K",description:"RAZ 分级阅读 K",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-K.json",length:397,language:"en",languageCategory:"en"},{id:"raz-L",name:"RAZ 分级阅读 L",description:"RAZ 分级阅读 L",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-L.json",length:402,language:"en",languageCategory:"en"},{id:"raz-M",name:"RAZ 分级阅读 M",description:"RAZ 分级阅读 M",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-M.json",length:403,language:"en",languageCategory:"en"},{id:"raz-N",name:"RAZ 分级阅读 N",description:"RAZ 分级阅读 N",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-N.json",length:376,language:"en",languageCategory:"en"},{id:"raz-O",name:"RAZ 分级阅读 O",description:"RAZ 分级阅读 O",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-O.json",length:429,language:"en",languageCategory:"en"},{id:"raz-P",name:"RAZ 分级阅读 P",description:"RAZ 分级阅读 P",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-P.json",length:379,language:"en",languageCategory:"en"},{id:"raz-Q",name:"RAZ 分级阅读 Q",description:"RAZ 分级阅读 Q",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Q.json",length:442,language:"en",languageCategory:"en"},{id:"raz-R",name:"RAZ 分级阅读 R",description:"RAZ 分级阅读 R",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-R.json",length:422,language:"en",languageCategory:"en"},{id:"raz-S",name:"RAZ 分级阅读 S",description:"RAZ 分级阅读 S",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-S.json",length:434,language:"en",languageCategory:"en"},{id:"raz-T",name:"RAZ 分级阅读 T",description:"RAZ 分级阅读 T",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-T.json",length:427,language:"en",languageCategory:"en"},{id:"raz-U",name:"RAZ 分级阅读 U",description:"RAZ 分级阅读 U",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-U.json",length:418,language:"en",languageCategory:"en"},{id:"raz-V",name:"RAZ 分级阅读 V",description:"RAZ 分级阅读 V",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-V.json",length:409,language:"en",languageCategory:"en"},{id:"raz-W",name:"RAZ 分级阅读 W",description:"RAZ 分级阅读 W",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-W.json",length:392,language:"en",languageCategory:"en"},{id:"raz-X",name:"RAZ 分级阅读 X",description:"RAZ 分级阅读 X",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-X.json",length:546,language:"en",languageCategory:"en"},{id:"raz-Y",name:"RAZ 分级阅读 Y",description:"RAZ 分级阅读 Y",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Y.json",length:461,language:"en",languageCategory:"en"},{id:"raz-Z",name:"RAZ 分级阅读 Z",description:"RAZ 分级阅读 Z",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Z.json",length:414,language:"en",languageCategory:"en"},{id:"raz-Z1",name:"RAZ 分级阅读 Z1",description:"RAZ 分级阅读 Z1",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Z1.json",length:467,language:"en",languageCategory:"en"},{id:"raz-Z2",name:"RAZ 分级阅读 Z2",description:"RAZ 分级阅读 Z2",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Z2.json",length:492,language:"en",languageCategory:"en"},{id:"raz-all",name:"RAZ 分级阅读 所有词汇",description:"RAZ 分级阅读 所有词汇",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-all.json",length:5831,language:"en",languageCategory:"en"}],yK=[{id:"coder",name:"Coder Dict",description:"程序员常见单词词库",category:"代码练习",tags:["通用"],url:"/dicts/it-words.json",length:1700,language:"code",languageCategory:"code"},{id:"childCode",name:"少儿 Python",description:"少儿 Python 常见词",category:"代码练习",tags:["少儿编程","Python"],url:"/dicts/Child_python_code.json",length:19,language:"en",languageCategory:"code"},{id:"childCode002",name:"少儿 Python Turtle",description:"少儿 Python Turtle 常见词",category:"代码练习",tags:["少儿编程","Python"],url:"/dicts/Child_python_turtle_code.json",length:27,language:"en",languageCategory:"code"},{id:"childCode003",name:"少儿 C++",description:"少儿 C++ 常见词",category:"代码练习",tags:["少儿编程","C++"],url:"/dicts/Child_cpp.json",length:39,language:"en",languageCategory:"code"},{id:"jsArray",name:"JS: Array",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-array.json",length:36,language:"code",languageCategory:"code"},{id:"jsDate",name:"JS: Date",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-date.json",length:34,language:"code",languageCategory:"code"},{id:"jsGlobal",name:"JS: Global",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-global.json",length:9,language:"code",languageCategory:"code"},{id:"jsMapSet",name:"JS: Map & Set",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-map-set.json",length:16,language:"code",languageCategory:"code"},{id:"jsMath",name:"JS: Math",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-math.json",length:38,language:"code",languageCategory:"code"},{id:"jsNumber",name:"JS: Number",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-number.json",length:22,language:"code",languageCategory:"code"},{id:"jsObject",name:"JS: Object",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-object.json",length:37,language:"code",languageCategory:"code"},{id:"jsPromise",name:"JS: Promise",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-promise.json",length:9,language:"code",languageCategory:"code"},{id:"jsString",name:"JS: String",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-string.json",length:32,language:"code",languageCategory:"code"},{id:"python-builtin",name:"Python: Built-in",description:"Python Built-in API",category:"代码练习",tags:["Python"],url:"/dicts/python-builtin.json",length:65,language:"code",languageCategory:"code"},{id:"python-array",name:"Python: array",description:"Python array API ",category:"代码练习",tags:["Python"],url:"/dicts/python-array.json",length:11,language:"code",languageCategory:"code"},{id:"python-date",name:"Python: date",description:"Python date API ",category:"代码练习",tags:["Python"],url:"/dicts/python-date.json",length:39,language:"code",languageCategory:"code"},{id:"python-file",name:"Python: file",description:"Python file API ",category:"代码练习",tags:["Python"],url:"/dicts/python-file.json",length:21,language:"code",languageCategory:"code"},{id:"python-class",name:"Python: class",description:"Python class API ",category:"代码练习",tags:["Python"],url:"/dicts/python-class.json",length:13,language:"code",languageCategory:"code"},{id:"python-set",name:"Python: set",description:"Python set API ",category:"代码练习",tags:["Python"],url:"/dicts/python-set.json",length:29,language:"code",languageCategory:"code"},{id:"python-math",name:"Python: math",description:"Python math API ",category:"代码练习",tags:["Python"],url:"/dicts/python-math.json",length:37,language:"code",languageCategory:"code"},{id:"python-string",name:"Python: string",description:"Python string API ",category:"代码练习",tags:["Python"],url:"/dicts/python-string.json",length:40,language:"code",languageCategory:"code"},{id:"python-system",name:"Python: system",description:"Python system API ",category:"代码练习",tags:["Python"],url:"/dicts/python-sys.json",length:24,language:"code",languageCategory:"code"},{id:"javeArrayList",name:"Java: ArrayList",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-arraylist.json",length:25,language:"code",languageCategory:"code"},{id:"javaCharacter",name:"Java: Character",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-character.json",length:8,language:"code",languageCategory:"code"},{id:"javaHashmap",name:"Java: Hashmap",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-hashmap.json",length:22,language:"code",languageCategory:"code"},{id:"javaLinkedList",name:"Java: LinkedList",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-linkedlist.json",length:25,language:"code",languageCategory:"code"},{id:"javaString",name:"Java: String",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-string.json",length:48,language:"code",languageCategory:"code"},{id:"javaStringBuffer",name:"Java: StringBuffer",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-stringBuffer.json",length:20,language:"code",languageCategory:"code"},{id:"linuxCommand",name:"Linux",description:"Linux Command",category:"代码练习",tags:["Linux"],url:"/dicts/linux-command.json",length:575,language:"code",languageCategory:"code"},{id:"csharpKeywords",name:"C#关键字",description:"C#关键字以及用途",category:"代码练习",tags:["C#"],url:"/dicts/csharp-keywords.json",length:78,language:"code",languageCategory:"code"},{id:"csharpString",name:"C#: String API",description:"C# String API",category:"代码练习",tags:["C#"],url:"/dicts/csharp-string.json",length:79,language:"code",languageCategory:"code"},{id:"csharpList",name:"C#: List API",description:"C# List API",category:"代码练习",tags:["C#"],url:"/dicts/csharp-list.json",length:36,language:"code",languageCategory:"code"},{id:"sql-lower-case",name:"SQL: 常用语句 lower case",description:"SQL 常用语句 小写",category:"代码练习",tags:["SQL"],url:"/dicts/SQL_statement_lower-case.json",length:12,language:"code",languageCategory:"code"},{id:"sql-upper-case",name:"SQL: 常用语句 upper case",description:"SQL 常用语句 大写",category:"代码练习",tags:["SQL"],url:"/dicts/SQL_statement_upper-case.json",length:12,language:"code",languageCategory:"code"},{id:"ai-machine-learning",name:"人工智能: 机器学习",description:"AI机器学习 常用英语词汇",category:"代码练习",tags:["AI"],url:"/dicts/ai_machine_learning.json",length:726,language:"code",languageCategory:"code"},{id:"ai-ai-for-science",name:"人工智能: AI for Science",description:"AI for Science 常用英语词汇",category:"代码练习",tags:["AI"],url:"/dicts/ai_for_science.json",length:491,language:"code",languageCategory:"code"},{id:"go_keyword",name:"golang-keyword",description:"go语言关键字,",category:"代码练习",tags:["golang"],url:"/dicts/go_keyword.json",length:25,language:"code",languageCategory:"code"},{id:"go_builtin",name:"golang-builtin",description:"go语言内建函数和类型",category:"代码练习",tags:["golang"],url:"/dicts/go_builtin.json",length:46,language:"code",languageCategory:"code"}],bK=[{id:"japanese001",name:"日语常见词",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/Japanesebasicword.json",length:100,language:"romaji",languageCategory:"ja"},{id:"japanese001-zh",name:"日语常见词",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/Japanesebasicword_zh.json",length:100,language:"romaji",languageCategory:"ja"},{id:"japanese002",name:"N5",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N5.json",length:670,language:"romaji",languageCategory:"ja"},{id:"japanese002-zh",name:"N5",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N5_zh.json",length:670,language:"romaji",languageCategory:"ja"},{id:"japanese003",name:"N4",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N4.json",length:635,language:"romaji",languageCategory:"ja"},{id:"japanese003-zh",name:"N4",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N4_zh.json",length:635,language:"romaji",languageCategory:"ja"},{id:"japanese004",name:"N3",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N3.json",length:1830,language:"romaji",languageCategory:"ja"},{id:"japanese004-zh",name:"N3",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N3_zh.json",length:1830,language:"romaji",languageCategory:"ja"},{id:"japanese005",name:"N2",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N2.json",length:1836,language:"romaji",languageCategory:"ja"},{id:"japanese005-zh",name:"N2",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N2_zh.json",length:1836,language:"romaji",languageCategory:"ja"},{id:"japanese006",name:"N1",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N1.json",length:3477,language:"romaji",languageCategory:"ja"},{id:"japanese006-zh",name:"N1",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N1_zh.json",length:3477,language:"romaji",languageCategory:"ja"},{id:"japanese007",name:"高频单词_N1",description:"高频单词_日语N1",category:"日语学习",tags:["基础"],url:"/dicts/Jap_High-Frequency_N1.json",length:3e3,language:"romaji",languageCategory:"ja"},{id:"japanese008",name:"高频单词_N2",description:"高频单词_日语N2",category:"日语学习",tags:["基础"],url:"/dicts/Jap_High-Frequency_N2.json",length:2500,language:"romaji",languageCategory:"ja"},{id:"japanese009",name:"高频单词_N3",description:"高频单词_日语N3",category:"日语学习",tags:["基础"],url:"/dicts/Jap_High-Frequency_N3.json",length:1999,language:"romaji",languageCategory:"ja"},{id:"japanese0010",name:"高频单词_N4N5",description:"高频单词_日语N4N5",category:"日语学习",tags:["基础"],url:"/dicts/Jap_High-Frequency_N4N5.json",length:2e3,language:"romaji",languageCategory:"ja"}],wK=[{id:"german2en",name:"德语 英译",description:"德语词汇, 英语翻译",category:"德语学习",tags:["基础"],url:"/dicts/german2en.json",length:5892,language:"de",languageCategory:"de"},{id:"en2german",name:"英语 德译",description:"英语词汇,德语翻译",category:"德语学习",tags:["基础"],url:"/dicts/en2german.json",length:5025,language:"en",languageCategory:"de"}],_K=[{id:"kazakh_basic_3000_arabic_hapin",name:"基础3000词(老文字版)",description:"哈萨克语基础3000词(哈拼老文字版)",category:"哈萨克语",tags:["老文字","哈拼"],url:"/dicts/kazakh_basic_3000_arabic_hapin.json",length:3002,language:"hapin",languageCategory:"kk"},{id:"kazakh_basic_3000_cyrillic_hapin",name:"基础3000词(西里尔字母版)",description:"哈萨克语基础3000词(哈拼西里尔字母版)",category:"哈萨克语",tags:["西里尔字母","哈拼"],url:"/dicts/kazakh_basic_3000_cyrillic_hapin.json",length:3002,language:"hapin",languageCategory:"kk"}],$K=[...gK,...vK,...mK,...yK,...bK,...wK,..._K],xK=$K.map(e=>({...e,chapterCount:hK(e.length)})),Ef=Object.fromEntries(xK.map(e=>[e.id,e]));globalThis.jotaiAtomCache=globalThis.jotaiAtomCache||{cache:new Map,get(e,t){return this.cache.has(e)?this.cache.get(e):(this.cache.set(e,t),t)}};const SK=({record:e})=>{const t=wa(dh),r=Ef[e.dict],{word:n,isLoading:a,hasError:o}=n8(e.word,r),i=p.useCallback(()=>{t(e),tN("detail")},[e,t]);return L("li",{className:"opacity-85 flex w-full cursor-pointer items-center justify-between rounded-lg bg-white px-6 py-3 text-black shadow-md dark:bg-gray-800 dark:text-white",onClick:i,children:[y("span",{className:"basis-2/12 break-normal",children:e.word}),y("span",{className:"basis-6/12 break-normal",children:n?n.trans.join(";"):y(__,{isLoading:a,hasError:o})}),y("span",{className:"basis-1/12 break-normal",children:e.wrongCount}),y("span",{className:"basis-2/12 break-normal",children:r==null?void 0:r.name})]})};var oN={exports:{}};/*! +`);var t="",r,n,a=0,o;for(r=n=0,a=e.length,o=0;o127&&i<2048?s=String.fromCharCode(i>>6|192,i&63|128):s=String.fromCharCode(i>>12|224,i>>6&63|128,i&63|128),s!==null&&(n>r&&(t+=e.substring(r,n)),t+=s,r=n=o+1)}return n>r&&(t+=e.substring(r,e.length)),t};T.UUID=function(){var e=function(){var n=1*new Date,a;if(dt.performance&&dt.performance.now)a=dt.performance.now();else for(a=0;n==1*new Date;)a++;return n.toString(16)+Math.floor(a).toString(16)},t=function(){return Math.random().toString(16).replace(".","")},r=function(){var n=ga,a,o,i=[],s=0;function l(u,f){var c,d=0;for(c=0;c=4&&(s=l(s,i),i=[]);return i.length>0&&(s=l(s,i)),s.toString(16)};return function(){var n=(Mv.height*Mv.width).toString(16);return e()+"-"+t()+"-"+r()+"-"+n+"-"+e()}}();var r4=["ahrefsbot","baiduspider","bingbot","bingpreview","facebookexternal","petalbot","pinterest","screaming frog","yahoo! slurp","yandexbot","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleweblight","mediapartners-google","storebot-google"];T.isBlockedUA=function(e){var t;for(e=e.toLowerCase(),t=0;t=0}function n(a){if(!qe.getElementsByTagName)return[];var o=a.split(" "),i,s,l,u,f,c,d,h,g,m,w=[qe];for(c=0;c-1){s=i.split("#"),l=s[0];var v=s[1],b=qe.getElementById(v);if(!b||l&&b.nodeName.toLowerCase()!=l)return[];w=[b];continue}if(i.indexOf(".")>-1){s=i.split("."),l=s[0];var _=s[1];for(l||(l="*"),u=[],f=0,d=0;d-1};break;default:S=function(A){return A.getAttribute(C)}}for(w=[],m=0,d=0;d=3?t[2]:""},properties:function(){return T.extend(T.strip_empty_properties({$os:T.info.os(),$browser:T.info.browser(ga,ii.vendor,Ap),$referrer:qe.referrer,$referring_domain:T.info.referringDomain(qe.referrer),$device:T.info.device(ga)}),{$current_url:dt.location.href,$browser_version:T.info.browserVersion(ga,ii.vendor,Ap),$screen_height:Mv.height,$screen_width:Mv.width,mp_lib:"web",$lib_version:oo.LIB_VERSION,$insert_id:CS(),time:T.timestamp()/1e3})},people_properties:function(){return T.extend(T.strip_empty_properties({$os:T.info.os(),$browser:T.info.browser(ga,ii.vendor,Ap)}),{$browser_version:T.info.browserVersion(ga,ii.vendor,Ap)})},mpPageViewProperties:function(){return T.strip_empty_properties({current_page_title:qe.title,current_domain:dt.location.hostname,current_url_path:dt.location.pathname,current_url_protocol:dt.location.protocol,current_url_search:dt.location.search})}};var CS=function(e){var t=Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10);return e?t.substring(0,e):t},DG=/[a-z0-9][a-z0-9-]*\.[a-z]+$/i,jG=/[a-z0-9][a-z0-9-]+\.[a-z.]{2,6}$/i,n4=function(e){var t=jG,r=e.split("."),n=r[r.length-1];(n.length>4||n==="com"||n==="org")&&(t=DG);var a=e.match(t);return a?a[0]:""},jv=null,Fv=null;typeof JSON<"u"&&(jv=JSON.stringify,Fv=JSON.parse);jv=jv||T.JSONEncode;Fv=Fv||T.JSONDecode;T.toArray=T.toArray;T.isObject=T.isObject;T.JSONEncode=T.JSONEncode;T.JSONDecode=T.JSONDecode;T.isBlockedUA=T.isBlockedUA;T.isEmptyObject=T.isEmptyObject;T.info=T.info;T.info.device=T.info.device;T.info.browser=T.info.browser;T.info.browserVersion=T.info.browserVersion;T.info.properties=T.info.properties;var Ao=function(){};Ao.prototype.create_properties=function(){};Ao.prototype.event_handler=function(){};Ao.prototype.after_track_handler=function(){};Ao.prototype.init=function(e){return this.mp=e,this};Ao.prototype.track=function(e,t,r,n){var a=this,o=T.dom_query(e);if(o.length===0){Ge.error("The DOM query ("+e+") returned 0 elements");return}return T.each(o,function(i){T.register_event(i,this.override_event,function(s){var l={},u=a.create_properties(r,this),f=a.mp.get_config("track_links_timeout");a.event_handler(s,this,l),window.setTimeout(a.track_callback(n,u,l,!0),f),a.mp.track(t,u,a.track_callback(n,u,l))})},this),!0};Ao.prototype.track_callback=function(e,t,r,n){n=n||!1;var a=this;return function(){r.callback_fired||(r.callback_fired=!0,!(e&&e(n,t)===!1)&&a.after_track_handler(t,r,n))}};Ao.prototype.create_properties=function(e,t){var r;return typeof e=="function"?r=e(t):r=T.extend({},e),r};var jc=function(){this.override_event="click"};T.inherit(jc,Ao);jc.prototype.create_properties=function(e,t){var r=jc.superclass.create_properties.apply(this,arguments);return t.href&&(r.url=t.href),r};jc.prototype.event_handler=function(e,t,r){r.new_tab=e.which===2||e.metaKey||e.ctrlKey||t.target==="_blank",r.href=t.href,r.new_tab||e.preventDefault()};jc.prototype.after_track_handler=function(e,t){t.new_tab||setTimeout(function(){window.location=t.href},0)};var v0=function(){this.override_event="submit"};T.inherit(v0,Ao);v0.prototype.event_handler=function(e,t,r){r.element=t,e.preventDefault()};v0.prototype.after_track_handler=function(e,t){setTimeout(function(){t.element.submit()},0)};var FG=ES("lock"),V8=function(e,t){t=t||{},this.storageKey=e,this.storage=t.storage||window.localStorage,this.pollIntervalMS=t.pollIntervalMS||100,this.timeoutMS=t.timeoutMS||2e3};V8.prototype.withLock=function(e,t,r){!r&&typeof t!="function"&&(r=t,t=null);var n=r||new Date().getTime()+"|"+Math.random(),a=new Date().getTime(),o=this.storageKey,i=this.pollIntervalMS,s=this.timeoutMS,l=this.storage,u=o+":X",f=o+":Y",c=o+":Z",d=function(b){t&&t(b)},h=function(b){if(new Date().getTime()-a>s){FG.error("Timeout waiting for mutex on "+o+"; clearing lock. ["+n+"]"),l.removeItem(c),l.removeItem(f),w();return}setTimeout(function(){try{b()}catch(_){d(_)}},i*(Math.random()+.1))},g=function(b,_){b()?_():h(function(){g(b,_)})},m=function(){var b=l.getItem(f);if(b&&b!==n)return!1;if(l.setItem(f,n),l.getItem(f)===n)return!0;if(!Dv(l,!0))throw new Error("localStorage support dropped while acquiring lock");return!1},w=function(){l.setItem(u,n),g(m,function(){if(l.getItem(u)===n){v();return}h(function(){if(l.getItem(f)!==n){w();return}g(function(){return!l.getItem(c)},v)})})},v=function(){l.setItem(c,"1");try{e()}finally{l.removeItem(c),l.getItem(f)===n&&l.removeItem(f),l.getItem(u)===n&&l.removeItem(u)}};try{if(Dv(l,!0))w();else throw new Error("localStorage support check failed")}catch(b){d(b)}};var a4=ES("batch"),Ki=function(e,t){t=t||{},this.storageKey=e,this.storage=t.storage||window.localStorage,this.reportError=t.errorReporter||T.bind(a4.error,a4),this.lock=new V8(e,{storage:this.storage}),this.pid=t.pid||null,this.memQueue=[]};Ki.prototype.enqueue=function(e,t,r){var n={id:CS(),flushAfter:new Date().getTime()+t*2,payload:e};this.lock.withLock(T.bind(function(){var o;try{var i=this.readFromStorage();i.push(n),o=this.saveToStorage(i),o&&this.memQueue.push(n)}catch{this.reportError("Error enqueueing item",e),o=!1}r&&r(o)},this),T.bind(function(o){this.reportError("Error acquiring storage lock",o),r&&r(!1)},this),this.pid)};Ki.prototype.fillBatch=function(e){var t=this.memQueue.slice(0,e);if(t.lengtho.flushAfter&&!n[o.id]&&(o.orphaned=!0,t.push(o),t.length>=e))break}}}return t};var o4=function(e,t){var r=[];return T.each(e,function(n){n.id&&!t[n.id]&&r.push(n)}),r};Ki.prototype.removeItemsByID=function(e,t){var r={};T.each(e,function(a){r[a]=!0}),this.memQueue=o4(this.memQueue,r);var n=T.bind(function(){var a;try{var o=this.readFromStorage();if(o=o4(o,r),a=this.saveToStorage(o),a){o=this.readFromStorage();for(var i=0;i5&&(this.reportError("[dupe] item ID sent too many times, not sending",{item:u,batchSize:a.length,timesSent:this.itemIdsSentSuccessfully[d]}),c=!1):this.reportError("[dupe] found item with no ID",{item:u}),c&&o.push(f)}i[u.id]=f},this),o.length<1){this.resetFlush();return}this.requestInProgress=!0;var s=T.bind(function(u){this.requestInProgress=!1;try{var f=!1;if(e.unloading)this.queue.updatePayloads(i);else if(T.isObject(u)&&u.error==="timeout"&&new Date().getTime()-r>=t)this.reportError("Network timeout; retrying"),this.flush();else if(T.isObject(u)&&u.xhr_req&&(u.xhr_req.status>=500||u.xhr_req.status===429||u.error==="timeout")){var c=this.flushInterval*2,d=u.xhr_req.responseHeaders;if(d){var h=d["Retry-After"];h&&(c=parseInt(h,10)*1e3||c)}c=Math.min(BG,c),this.reportError("Error; retry in "+c+" ms"),this.scheduleFlush(c)}else if(T.isObject(u)&&u.xhr_req&&u.xhr_req.status===413)if(a.length>1){var g=Math.max(1,Math.floor(n/2));this.batchSize=Math.min(this.batchSize,g,a.length-1),this.reportError("413 response; reducing batch size to "+this.batchSize),this.resetFlush()}else this.reportError("Single-event request too large; dropping",a),this.resetBatchSize(),f=!0;else f=!0;f&&(this.queue.removeItemsByID(T.map(a,function(m){return m.id}),T.bind(function(m){m?(this.consecutiveRemovalFailures=0,this.flush()):(this.reportError("Failed to remove items from queue"),++this.consecutiveRemovalFailures>5?(this.reportError("Too many queue failures; disabling batching system."),this.stopAllBatching()):this.resetFlush())},this)),T.each(a,T.bind(function(m){var w=m.id;w?(this.itemIdsSentSuccessfully[w]=this.itemIdsSentSuccessfully[w]||0,this.itemIdsSentSuccessfully[w]++,this.itemIdsSentSuccessfully[w]>5&&this.reportError("[dupe] item ID sent too many times",{item:m,batchSize:a.length,timesSent:this.itemIdsSentSuccessfully[w]})):this.reportError("[dupe] found item with no ID while removing",{item:m})},this)))}catch(m){this.reportError("Error handling API response",m),this.resetFlush()}},this),l={method:"POST",verbose:!0,ignore_json_errors:!0,timeout_ms:t};e.unloading&&(l.transport="sendBeacon"),Kd.log("MIXPANEL REQUEST:",o),this.sendRequest(o,l,s)}catch(u){this.reportError("Error flushing request queue",u),this.resetFlush()}};ka.prototype.reportError=function(e,t){if(Kd.error.apply(Kd.error,arguments),this.errorReporter)try{t instanceof Error||(t=new Error(e)),this.errorReporter(e,t)}catch(r){Kd.error(r)}};var UG="__mp_opt_in_out_";function zG(e,t){G8(!0,e,t)}function VG(e,t){G8(!1,e,t)}function WG(e,t){return H8(e,t)==="1"}function W8(e,t){if(GG(t))return Ge.warn('This browser has "Do Not Track" enabled. This will prevent the Mixpanel SDK from sending any data. To ignore the "Do Not Track" browser setting, initialize the Mixpanel instance with the config "ignore_dnt: true"'),!0;var r=H8(e,t)==="0";return r&&Ge.warn("You are opted out of Mixpanel tracking. This will prevent the Mixpanel SDK from sending any data."),r}function hu(e){return RS(e,function(t){return this.get_config(t)})}function qi(e){return RS(e,function(t){return this._get_config(t)})}function pu(e){return RS(e,function(t){return this._get_config(t)})}function HG(e,t){t=t||{},TS(t).remove(AS(e,t),!!t.crossSubdomainCookie,t.cookieDomain)}function TS(e){return e=e||{},e.persistenceType==="localStorage"?T.localStorage:T.cookie}function AS(e,t){return t=t||{},(t.persistencePrefix||UG)+e}function H8(e,t){return TS(t).get(AS(e,t))}function GG(e){if(e&&e.ignoreDnt)return!1;var t=e&&e.window||dt,r=t.navigator||{},n=!1;return T.each([r.doNotTrack,r.msDoNotTrack,t.doNotTrack],function(a){T.includes([!0,1,"1","yes"],a)&&(n=!0)}),n}function G8(e,t,r){if(!T.isString(t)||!t.length){Ge.error("gdpr."+(e?"optIn":"optOut")+" called with an invalid token");return}r=r||{},TS(r).set(AS(t,r),e?1:0,T.isNumber(r.cookieExpiration)?r.cookieExpiration:null,!!r.crossSubdomainCookie,!!r.secureCookie,!!r.crossSiteCookie,r.cookieDomain),r.track&&e&&r.track(r.trackEventName||"$opt_in",r.trackProperties,{send_immediately:!0})}function RS(e,t){return function(){var r=!1;try{var n=t.call(this,"token"),a=t.call(this,"ignore_dnt"),o=t.call(this,"opt_out_tracking_persistence_type"),i=t.call(this,"opt_out_tracking_cookie_prefix"),s=t.call(this,"window");n&&(r=W8(n,{ignoreDnt:a,persistenceType:o,persistencePrefix:i,window:s}))}catch(u){Ge.error("Unexpected error when checking tracking opt-out status: "+u)}if(!r)return e.apply(this,arguments);var l=arguments[arguments.length-1];typeof l=="function"&&l(0)}}var Pi="$set",Fc="$set_once",Yn="$unset",Zs="$add",fo="$append",Xs="$union",Ii="$remove",KG="$delete",K8={set_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=a)},this):n[e]=t,r[Pi]=n,r},unset_action:function(e){var t={},r=[];return T.isArray(e)||(e=[e]),T.each(e,function(n){this._is_reserved_property(n)||r.push(n)},this),t[Yn]=r,t},set_once_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=a)},this):n[e]=t,r[Fc]=n,r},union_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=T.isArray(a)?a:[a])},this):n[e]=T.isArray(t)?t:[t],r[Xs]=n,r},append_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=a)},this):n[e]=t,r[fo]=n,r},remove_action:function(e,t){var r={},n={};return T.isObject(e)?T.each(e,function(a,o){this._is_reserved_property(o)||(n[o]=a)},this):n[e]=t,r[Ii]=n,r},delete_action:function(){var e={};return e[KG]="",e}},nt=function(){};T.extend(nt.prototype,K8);nt.prototype._init=function(e,t,r){this._mixpanel=e,this._group_key=t,this._group_id=r};nt.prototype.set=pu(function(e,t,r){var n=this.set_action(e,t);return T.isObject(e)&&(r=t),this._send_request(n,r)});nt.prototype.set_once=pu(function(e,t,r){var n=this.set_once_action(e,t);return T.isObject(e)&&(r=t),this._send_request(n,r)});nt.prototype.unset=pu(function(e,t){var r=this.unset_action(e);return this._send_request(r,t)});nt.prototype.union=pu(function(e,t,r){T.isObject(e)&&(r=t);var n=this.union_action(e,t);return this._send_request(n,r)});nt.prototype.delete=pu(function(e){var t=this.delete_action();return this._send_request(t,e)});nt.prototype.remove=pu(function(e,t,r){var n=this.remove_action(e,t);return this._send_request(n,r)});nt.prototype._send_request=function(e,t){e.$group_key=this._group_key,e.$group_id=this._group_id,e.$token=this._get_config("token");var r=T.encodeDates(e);return this._mixpanel._track_or_batch({type:"groups",data:r,endpoint:this._get_config("api_host")+"/groups/",batcher:this._mixpanel.request_batchers.groups},t)};nt.prototype._is_reserved_property=function(e){return e==="$group_key"||e==="$group_id"};nt.prototype._get_config=function(e){return this._mixpanel.get_config(e)};nt.prototype.toString=function(){return this._mixpanel.toString()+".group."+this._group_key+"."+this._group_id};nt.prototype.remove=nt.prototype.remove;nt.prototype.set=nt.prototype.set;nt.prototype.set_once=nt.prototype.set_once;nt.prototype.union=nt.prototype.union;nt.prototype.unset=nt.prototype.unset;nt.prototype.toString=nt.prototype.toString;var pe=function(){};T.extend(pe.prototype,K8);pe.prototype._init=function(e){this._mixpanel=e};pe.prototype.set=qi(function(e,t,r){var n=this.set_action(e,t);return T.isObject(e)&&(r=t),this._get_config("save_referrer")&&this._mixpanel.persistence.update_referrer_info(document.referrer),n[Pi]=T.extend({},T.info.people_properties(),this._mixpanel.persistence.get_referrer_info(),n[Pi]),this._send_request(n,r)});pe.prototype.set_once=qi(function(e,t,r){var n=this.set_once_action(e,t);return T.isObject(e)&&(r=t),this._send_request(n,r)});pe.prototype.unset=qi(function(e,t){var r=this.unset_action(e);return this._send_request(r,t)});pe.prototype.increment=qi(function(e,t,r){var n={},a={};return T.isObject(e)?(T.each(e,function(o,i){if(!this._is_reserved_property(i))if(isNaN(parseFloat(o))){Ge.error("Invalid increment value passed to mixpanel.people.increment - must be a number");return}else a[i]=o},this),r=t):(T.isUndefined(t)&&(t=1),a[e]=t),n[Zs]=a,this._send_request(n,r)});pe.prototype.append=qi(function(e,t,r){T.isObject(e)&&(r=t);var n=this.append_action(e,t);return this._send_request(n,r)});pe.prototype.remove=qi(function(e,t,r){T.isObject(e)&&(r=t);var n=this.remove_action(e,t);return this._send_request(n,r)});pe.prototype.union=qi(function(e,t,r){T.isObject(e)&&(r=t);var n=this.union_action(e,t);return this._send_request(n,r)});pe.prototype.track_charge=qi(function(e,t,r){if(!T.isNumber(e)&&(e=parseFloat(e),isNaN(e))){Ge.error("Invalid value passed to mixpanel.people.track_charge - must be a number");return}return this.append("$transactions",T.extend({$amount:e},t),r)});pe.prototype.clear_charges=function(e){return this.set("$transactions",[],e)};pe.prototype.delete_user=function(){if(!this._identify_called()){Ge.error("mixpanel.people.delete_user() requires you to call identify() first");return}var e={$delete:this._mixpanel.get_distinct_id()};return this._send_request(e)};pe.prototype.toString=function(){return this._mixpanel.toString()+".people"};pe.prototype._send_request=function(e,t){e.$token=this._get_config("token"),e.$distinct_id=this._mixpanel.get_distinct_id();var r=this._mixpanel.get_property("$device_id"),n=this._mixpanel.get_property("$user_id"),a=this._mixpanel.get_property("$had_persisted_distinct_id");r&&(e.$device_id=r),n&&(e.$user_id=n),a&&(e.$had_persisted_distinct_id=a);var o=T.encodeDates(e);return this._identify_called()?this._mixpanel._track_or_batch({type:"people",data:o,endpoint:this._get_config("api_host")+"/engage/",batcher:this._mixpanel.request_batchers.people},t):(this._enqueue(e),T.isUndefined(t)||(this._get_config("verbose")?t({status:-1,error:null}):t(-1)),T.truncate(o,255))};pe.prototype._get_config=function(e){return this._mixpanel.get_config(e)};pe.prototype._identify_called=function(){return this._mixpanel._flags.identify_called===!0};pe.prototype._enqueue=function(e){Pi in e?this._mixpanel.persistence._add_to_people_queue(Pi,e):Fc in e?this._mixpanel.persistence._add_to_people_queue(Fc,e):Yn in e?this._mixpanel.persistence._add_to_people_queue(Yn,e):Zs in e?this._mixpanel.persistence._add_to_people_queue(Zs,e):fo in e?this._mixpanel.persistence._add_to_people_queue(fo,e):Ii in e?this._mixpanel.persistence._add_to_people_queue(Ii,e):Xs in e?this._mixpanel.persistence._add_to_people_queue(Xs,e):Ge.error("Invalid call to _enqueue():",e)};pe.prototype._flush_one_queue=function(e,t,r,n){var a=this,o=T.extend({},this._mixpanel.persistence._get_queue(e)),i=o;!T.isUndefined(o)&&T.isObject(o)&&!T.isEmptyObject(o)&&(a._mixpanel.persistence._pop_from_people_queue(e,o),n&&(i=n(o)),t.call(a,i,function(s,l){s===0&&a._mixpanel.persistence._add_to_people_queue(e,o),T.isUndefined(r)||r(s,l)}))};pe.prototype._flush=function(e,t,r,n,a,o,i){var s=this,l=this._mixpanel.persistence._get_queue(fo),u=this._mixpanel.persistence._get_queue(Ii);if(this._flush_one_queue(Pi,this.set,e),this._flush_one_queue(Fc,this.set_once,n),this._flush_one_queue(Yn,this.unset,o,function(w){return T.keys(w)}),this._flush_one_queue(Zs,this.increment,t),this._flush_one_queue(Xs,this.union,a),!T.isUndefined(l)&&T.isArray(l)&&l.length){for(var f,c=function(w,v){w===0&&s._mixpanel.persistence._add_to_people_queue(fo,f),T.isUndefined(r)||r(w,v)},d=l.length-1;d>=0;d--)f=l.pop(),T.isEmptyObject(f)||s.append(f,c);s._mixpanel.persistence.save()}if(!T.isUndefined(u)&&T.isArray(u)&&u.length){for(var h,g=function(w,v){w===0&&s._mixpanel.persistence._add_to_people_queue(Ii,h),T.isUndefined(i)||i(w,v)},m=u.length-1;m>=0;m--)h=u.pop(),T.isEmptyObject(h)||s.remove(h,g);s._mixpanel.persistence.save()}};pe.prototype._is_reserved_property=function(e){return e==="$distinct_id"||e==="$token"||e==="$device_id"||e==="$user_id"||e==="$had_persisted_distinct_id"};pe.prototype.set=pe.prototype.set;pe.prototype.set_once=pe.prototype.set_once;pe.prototype.unset=pe.prototype.unset;pe.prototype.increment=pe.prototype.increment;pe.prototype.append=pe.prototype.append;pe.prototype.remove=pe.prototype.remove;pe.prototype.union=pe.prototype.union;pe.prototype.track_charge=pe.prototype.track_charge;pe.prototype.clear_charges=pe.prototype.clear_charges;pe.prototype.delete_user=pe.prototype.delete_user;pe.prototype.toString=pe.prototype.toString;var OS="__mps",kS="__mpso",PS="__mpus",IS="__mpa",NS="__mpap",LS="__mpr",MS="__mpu",q8="$people_distinct_id",Bv="__alias",xf="__timers",qG=[OS,kS,PS,IS,NS,LS,MS,q8,Bv,xf],be=function(e){this.props={},this.campaign_params_saved=!1,e.persistence_name?this.name="mp_"+e.persistence_name:this.name="mp_"+e.token+"_mixpanel";var t=e.persistence;t!=="cookie"&&t!=="localStorage"&&(Ge.critical("Unknown persistence type "+t+"; falling back to cookie"),t=e.persistence="cookie"),t==="localStorage"&&T.localStorage.is_supported()?this.storage=T.localStorage:this.storage=T.cookie,this.load(),this.update_config(e),this.upgrade(e),this.save()};be.prototype.properties=function(){var e={};return T.each(this.props,function(t,r){T.include(qG,r)||(e[r]=t)}),e};be.prototype.load=function(){if(!this.disabled){var e=this.storage.parse(this.name);e&&(this.props=T.extend({},e))}};be.prototype.upgrade=function(e){var t=e.upgrade,r,n;t&&(r="mp_super_properties",typeof t=="string"&&(r=t),n=this.storage.parse(r),this.storage.remove(r),this.storage.remove(r,!0),n&&(this.props=T.extend(this.props,n.all,n.events))),!e.cookie_name&&e.name!=="mixpanel"&&(r="mp_"+e.token+"_"+e.name,n=this.storage.parse(r),n&&(this.storage.remove(r),this.storage.remove(r,!0),this.register_once(n))),this.storage===T.localStorage&&(n=T.cookie.parse(this.name),T.cookie.remove(this.name),T.cookie.remove(this.name,!0),n&&this.register_once(n))};be.prototype.save=function(){this.disabled||this.storage.set(this.name,T.JSONEncode(this.props),this.expire_days,this.cross_subdomain,this.secure,this.cross_site,this.cookie_domain)};be.prototype.remove=function(){this.storage.remove(this.name,!1,this.cookie_domain),this.storage.remove(this.name,!0,this.cookie_domain)};be.prototype.clear=function(){this.remove(),this.props={}};be.prototype.register_once=function(e,t,r){return T.isObject(e)?(typeof t>"u"&&(t="None"),this.expire_days=typeof r>"u"?this.default_expiry:r,T.each(e,function(n,a){(!this.props.hasOwnProperty(a)||this.props[a]===t)&&(this.props[a]=n)},this),this.save(),!0):!1};be.prototype.register=function(e,t){return T.isObject(e)?(this.expire_days=typeof t>"u"?this.default_expiry:t,T.extend(this.props,e),this.save(),!0):!1};be.prototype.unregister=function(e){e in this.props&&(delete this.props[e],this.save())};be.prototype.update_search_keyword=function(e){this.register(T.info.searchInfo(e))};be.prototype.update_referrer_info=function(e){this.register_once({$initial_referrer:e||"$direct",$initial_referring_domain:T.info.referringDomain(e)||"$direct"},"")};be.prototype.get_referrer_info=function(){return T.strip_empty_properties({$initial_referrer:this.props.$initial_referrer,$initial_referring_domain:this.props.$initial_referring_domain})};be.prototype.safe_merge=function(e){return T.each(this.props,function(t,r){r in e||(e[r]=t)}),e};be.prototype.update_config=function(e){this.default_expiry=this.expire_days=e.cookie_expiration,this.set_disabled(e.disable_persistence),this.set_cookie_domain(e.cookie_domain),this.set_cross_site(e.cross_site_cookie),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie)};be.prototype.set_disabled=function(e){this.disabled=e,this.disabled?this.remove():this.save()};be.prototype.set_cookie_domain=function(e){e!==this.cookie_domain&&(this.remove(),this.cookie_domain=e,this.save())};be.prototype.set_cross_site=function(e){e!==this.cross_site&&(this.cross_site=e,this.remove(),this.save())};be.prototype.set_cross_subdomain=function(e){e!==this.cross_subdomain&&(this.cross_subdomain=e,this.remove(),this.save())};be.prototype.get_cross_subdomain=function(){return this.cross_subdomain};be.prototype.set_secure=function(e){e!==this.secure&&(this.secure=!!e,this.remove(),this.save())};be.prototype._add_to_people_queue=function(e,t){var r=this._get_queue_key(e),n=t[e],a=this._get_or_create_queue(Pi),o=this._get_or_create_queue(Fc),i=this._get_or_create_queue(Yn),s=this._get_or_create_queue(Zs),l=this._get_or_create_queue(Xs),u=this._get_or_create_queue(Ii,[]),f=this._get_or_create_queue(fo,[]);r===OS?(T.extend(a,n),this._pop_from_people_queue(Zs,n),this._pop_from_people_queue(Xs,n),this._pop_from_people_queue(Yn,n)):r===kS?(T.each(n,function(c,d){d in o||(o[d]=c)}),this._pop_from_people_queue(Yn,n)):r===PS?T.each(n,function(c){T.each([a,o,s,l],function(d){c in d&&delete d[c]}),T.each(f,function(d){c in d&&delete d[c]}),i[c]=!0}):r===IS?(T.each(n,function(c,d){d in a?a[d]+=c:(d in s||(s[d]=0),s[d]+=c)},this),this._pop_from_people_queue(Yn,n)):r===MS?(T.each(n,function(c,d){T.isArray(c)&&(d in l||(l[d]=[]),l[d]=l[d].concat(c))}),this._pop_from_people_queue(Yn,n)):r===LS?(u.push(n),this._pop_from_people_queue(fo,n)):r===NS&&(f.push(n),this._pop_from_people_queue(Yn,n)),Ge.log("MIXPANEL PEOPLE REQUEST (QUEUED, PENDING IDENTIFY):"),Ge.log(t),this.save()};be.prototype._pop_from_people_queue=function(e,t){var r=this._get_queue(e);T.isUndefined(r)||(T.each(t,function(n,a){e===fo||e===Ii?T.each(r,function(o){o[a]===n&&delete o[a]}):delete r[a]},this),this.save())};be.prototype._get_queue_key=function(e){if(e===Pi)return OS;if(e===Fc)return kS;if(e===Yn)return PS;if(e===Zs)return IS;if(e===fo)return NS;if(e===Ii)return LS;if(e===Xs)return MS;Ge.error("Invalid queue:",e)};be.prototype._get_queue=function(e){return this.props[this._get_queue_key(e)]};be.prototype._get_or_create_queue=function(e,t){var r=this._get_queue_key(e);return t=T.isUndefined(t)?{}:t,this.props[r]||(this.props[r]=t)};be.prototype.set_event_timer=function(e,t){var r=this.props[xf]||{};r[e]=t,this.props[xf]=r,this.save()};be.prototype.remove_event_timer=function(e){var t=this.props[xf]||{},r=t[e];return T.isUndefined(r)||(delete this.props[xf][e],this.save()),r};var DS,ar,Y8=0,YG=1,ZG=function(e){return e},Sf=function(){},Sn="mixpanel",Z8="base64",XG="json",jS="$device:",vc=dt.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest,X8=!vc&&ga.indexOf("MSIE")===-1&&ga.indexOf("Mozilla")===-1,Uv=null;ii.sendBeacon&&(Uv=function(){return ii.sendBeacon.apply(ii,arguments)});var s4={api_host:"https://api-js.mixpanel.com",api_method:"POST",api_transport:"XHR",api_payload_format:Z8,app_host:"https://mixpanel.com",cdn:"https://cdn.mxpnl.com",cross_site_cookie:!1,cross_subdomain_cookie:!0,error_reporter:Sf,persistence:"cookie",persistence_name:"",cookie_domain:"",cookie_name:"",loaded:Sf,track_marketing:!0,track_pageview:!1,skip_first_touch_marketing:!1,store_google:!0,save_referrer:!0,test:!1,verbose:!1,img:!1,debug:!1,track_links_timeout:300,cookie_expiration:365,upgrade:!1,disable_persistence:!1,disable_cookie:!1,secure_cookie:!1,ip:!0,opt_out_tracking_by_default:!1,opt_out_persistence_by_default:!1,opt_out_tracking_persistence_type:"localStorage",opt_out_tracking_cookie_prefix:null,property_blacklist:[],xhr_headers:{},ignore_dnt:!1,batch_requests:!0,batch_size:50,batch_flush_interval_ms:5e3,batch_request_timeout_ms:9e4,batch_autostart:!0,hooks:{}},Q8=!1,W=function(){},r$=function(e,t,r){var n,a=r===Sn?ar:ar[r];if(a&&DS===Y8)n=a;else{if(a&&!T.isArray(a)){Ge.error("You have already initialized "+r);return}n=new W}if(n._cached_groups={},n._init(e,t,r),n.people=new pe,n.people._init(n),!n.get_config("skip_first_touch_marketing")){var o=T.info.campaignParams(null),i={},s=!1;T.each(o,function(l,u){i["initial_"+u]=l,l&&(s=!0)}),s&&n.people.set_once(i)}return oo.DEBUG=oo.DEBUG||n.get_config("debug"),!T.isUndefined(a)&&T.isArray(a)&&(n._execute_array.call(n.people,a.people),n._execute_array(a)),n};W.prototype.init=function(e,t,r){if(T.isUndefined(r)){this.report_error("You must name your new library: init(token, config, name)");return}if(r===Sn){this.report_error("You must initialize the main mixpanel object right after you include the Mixpanel js snippet");return}var n=r$(e,t,r);return ar[r]=n,n._loaded(),n};W.prototype._init=function(e,t,r){t=t||{},this.__loaded=!0,this.config={};var n={};if(!("api_payload_format"in t)){var a=t.api_host||s4.api_host;a.match(/\.mixpanel\.com/)&&(n.api_payload_format=XG)}if(this.set_config(T.extend({},s4,n,t,{name:r,token:e,callback_fn:(r===Sn?r:Sn+"."+r)+"._jsc"})),this._jsc=Sf,this.__dom_loaded_queue=[],this.__request_queue=[],this.__disabled_events=[],this._flags={disable_all_events:!1,identify_called:!1},this.request_batchers={},this._batch_requests=this.get_config("batch_requests"),this._batch_requests){if(!T.localStorage.is_supported(!0)||!vc)this._batch_requests=!1,Ge.log("Turning off Mixpanel request-queueing; needs XHR and localStorage support");else if(this.init_batchers(),Uv&&dt.addEventListener){var o=T.bind(function(){this.request_batchers.events.stopped||this.request_batchers.events.flush({unloading:!0})},this);dt.addEventListener("pagehide",function(s){s.persisted&&o()}),dt.addEventListener("visibilitychange",function(){qe.visibilityState==="hidden"&&o()})}}this.persistence=this.cookie=new be(this.config),this.unpersisted_superprops={},this._gdpr_init();var i=T.UUID();this.get_distinct_id()||this.register_once({distinct_id:jS+i,$device_id:i},""),this.get_config("track_pageview")&&this.track_pageview()};W.prototype._loaded=function(){this.get_config("loaded")(this),this._set_default_superprops()};W.prototype._set_default_superprops=function(){this.persistence.update_search_keyword(qe.referrer),this.get_config("store_google")&&this.register(T.info.campaignParams(),{persistent:!1}),this.get_config("save_referrer")&&this.persistence.update_referrer_info(qe.referrer)};W.prototype._dom_loaded=function(){T.each(this.__dom_loaded_queue,function(e){this._track_dom.apply(this,e)},this),this.has_opted_out_tracking()||T.each(this.__request_queue,function(e){this._send_request.apply(this,e)},this),delete this.__dom_loaded_queue,delete this.__request_queue};W.prototype._track_dom=function(e,t){if(this.get_config("img"))return this.report_error("You can't use DOM tracking functions with img = true."),!1;if(!Q8)return this.__dom_loaded_queue.push([e,t]),!1;var r=new e().init(this);return r.track.apply(r,t)};W.prototype._prepare_callback=function(e,t){if(T.isUndefined(e))return null;if(vc){var r=function(i){e(i,t)};return r}else{var n=this._jsc,a=""+Math.floor(Math.random()*1e8),o=this.get_config("callback_fn")+"["+a+"]";return n[a]=function(i){delete n[a],e(i,t)},o}};W.prototype._send_request=function(e,t,r,n){var a=!0;if(X8)return this.__request_queue.push(arguments),a;var o={method:this.get_config("api_method"),transport:this.get_config("api_transport"),verbose:this.get_config("verbose")},i=null;!n&&(T.isFunction(r)||typeof r=="string")&&(n=r,r=null),r=T.extend(o,r||{}),vc||(r.method="GET");var s=r.method==="POST",l=Uv&&s&&r.transport.toLowerCase()==="sendbeacon",u=r.verbose;t.verbose&&(u=!0),this.get_config("test")&&(t.test=1),u&&(t.verbose=1),this.get_config("img")&&(t.img=1),vc||(n?t.callback=n:(u||this.get_config("test"))&&(t.callback="(function(){})")),t.ip=this.get_config("ip")?1:0,t._=new Date().getTime().toString(),s&&(i="data="+encodeURIComponent(t.data),delete t.data),e+="?"+T.HTTPBuildQuery(t);var f=this;if("img"in t){var c=qe.createElement("img");c.src=e,qe.body.appendChild(c)}else if(l){try{a=Uv(e,i)}catch(v){f.report_error(v),a=!1}try{n&&n(a?1:0)}catch(v){f.report_error(v)}}else if(vc)try{var d=new XMLHttpRequest;d.open(r.method,e,!0);var h=this.get_config("xhr_headers");if(s&&(h["Content-Type"]="application/x-www-form-urlencoded"),T.each(h,function(v,b){d.setRequestHeader(b,v)}),r.timeout_ms&&typeof d.timeout<"u"){d.timeout=r.timeout_ms;var g=new Date().getTime()}d.withCredentials=!0,d.onreadystatechange=function(){if(d.readyState===4)if(d.status===200){if(n)if(u){var v;try{v=T.JSONDecode(d.responseText)}catch(_){if(f.report_error(_),r.ignore_json_errors)v=d.responseText;else return}n(v)}else n(Number(d.responseText))}else{var b;d.timeout&&!d.status&&new Date().getTime()-g>=d.timeout?b="timeout":b="Bad HTTP status: "+d.status+" "+d.statusText,f.report_error(b),n&&n(u?{status:0,error:b,xhr_req:d}:0)}},d.send(i)}catch(v){f.report_error(v),a=!1}else{var m=qe.createElement("script");m.type="text/javascript",m.async=!0,m.defer=!0,m.src=e;var w=qe.getElementsByTagName("script")[0];w.parentNode.insertBefore(m,w)}return a};W.prototype._execute_array=function(e){var t,r=[],n=[],a=[];T.each(e,function(i){i&&(t=i[0],T.isArray(t)?a.push(i):typeof i=="function"?i.call(this):T.isArray(i)&&t==="alias"?r.push(i):T.isArray(i)&&t.indexOf("track")!==-1&&typeof this[t]=="function"?a.push(i):n.push(i))},this);var o=function(i,s){T.each(i,function(l){if(T.isArray(l[0])){var u=s;T.each(l,function(f){u=u[f[0]].apply(u,f.slice(1))})}else this[l[0]].apply(this,l.slice(1))},s)};o(r,this),o(n,this),o(a,this)};W.prototype.are_batchers_initialized=function(){return!!this.request_batchers.events};W.prototype.init_batchers=function(){var e=this.get_config("token");if(!this.are_batchers_initialized()){var t=T.bind(function(r){return new ka("__mpq_"+e+r.queue_suffix,{libConfig:this.config,sendRequestFunc:T.bind(function(n,a,o){this._send_request(this.get_config("api_host")+r.endpoint,this._encode_data_for_request(n),a,this._prepare_callback(o,n))},this),beforeSendHook:T.bind(function(n){return this._run_hook("before_send_"+r.type,n)},this),errorReporter:this.get_config("error_reporter"),stopAllBatchingFunc:T.bind(this.stop_batch_senders,this)})},this);this.request_batchers={events:t({type:"events",endpoint:"/track/",queue_suffix:"_ev"}),people:t({type:"people",endpoint:"/engage/",queue_suffix:"_pp"}),groups:t({type:"groups",endpoint:"/groups/",queue_suffix:"_gr"})}}this.get_config("batch_autostart")&&this.start_batch_senders()};W.prototype.start_batch_senders=function(){this.are_batchers_initialized()&&(this._batch_requests=!0,T.each(this.request_batchers,function(e){e.start()}))};W.prototype.stop_batch_senders=function(){this._batch_requests=!1,T.each(this.request_batchers,function(e){e.stop(),e.clear()})};W.prototype.push=function(e){this._execute_array([e])};W.prototype.disable=function(e){typeof e>"u"?this._flags.disable_all_events=!0:this.__disabled_events=this.__disabled_events.concat(e)};W.prototype._encode_data_for_request=function(e){var t=T.JSONEncode(e);return this.get_config("api_payload_format")===Z8&&(t=T.base64Encode(t)),{data:t}};W.prototype._track_or_batch=function(e,t){var r=T.truncate(e.data,255),n=e.endpoint,a=e.batcher,o=e.should_send_immediately,i=e.send_request_options||{};t=t||Sf;var s=!0,l=T.bind(function(){return i.skip_hooks||(r=this._run_hook("before_send_"+e.type,r)),r?(Ge.log("MIXPANEL REQUEST:"),Ge.log(r),this._send_request(n,this._encode_data_for_request(r),i,this._prepare_callback(t,r))):null},this);return this._batch_requests&&!o?a.enqueue(r,function(u){u?t(1,r):l()}):s=l(),s&&r};W.prototype.track=hu(function(e,t,r,n){!n&&typeof r=="function"&&(n=r,r=null),r=r||{};var a=r.transport;a&&(r.transport=a);var o=r.send_immediately;if(typeof n!="function"&&(n=Sf),T.isUndefined(e)){this.report_error("No event name provided to mixpanel.track");return}if(this._event_is_disabled(e)){n(0);return}t=t||{},t.token=this.get_config("token");var i=this.persistence.remove_event_timer(e);if(!T.isUndefined(i)){var s=new Date().getTime()-i;t.$duration=parseFloat((s/1e3).toFixed(3))}this._set_default_superprops();var l=this.get_config("track_marketing")?T.info.marketingParams():{};t=T.extend({},T.info.properties(),l,this.persistence.properties(),this.unpersisted_superprops,t);var u=this.get_config("property_blacklist");T.isArray(u)?T.each(u,function(d){delete t[d]}):this.report_error("Invalid value for property_blacklist config: "+u);var f={event:e,properties:t},c=this._track_or_batch({type:"events",data:f,endpoint:this.get_config("api_host")+"/track/",batcher:this.request_batchers.events,should_send_immediately:o,send_request_options:r},n);return c});W.prototype.set_group=hu(function(e,t,r){T.isArray(t)||(t=[t]);var n={};return n[e]=t,this.register(n),this.people.set(e,t,r)});W.prototype.add_group=hu(function(e,t,r){var n=this.get_property(e);if(n===void 0){var a={};a[e]=[t],this.register(a)}else n.indexOf(t)===-1&&(n.push(t),this.register(a));return this.people.union(e,t,r)});W.prototype.remove_group=hu(function(e,t,r){var n=this.get_property(e);if(n!==void 0){var a=n.indexOf(t);a>-1&&(n.splice(a,1),this.register({group_key:n})),n.length===0&&this.unregister(e)}return this.people.remove(e,t,r)});W.prototype.track_with_groups=hu(function(e,t,r,n){var a=T.extend({},t||{});return T.each(r,function(o,i){o!=null&&(a[i]=o)}),this.track(e,a,n)});W.prototype._create_map_key=function(e,t){return e+"_"+JSON.stringify(t)};W.prototype._remove_group_from_cache=function(e,t){delete this._cached_groups[this._create_map_key(e,t)]};W.prototype.get_group=function(e,t){var r=this._create_map_key(e,t),n=this._cached_groups[r];return(n===void 0||n._group_key!==e||n._group_id!==t)&&(n=new nt,n._init(this,e,t),this._cached_groups[r]=n),n};W.prototype.track_pageview=hu(function(e,t){typeof e!="object"&&(e={}),t=t||{};var r=t.event_name||"$mp_web_page_view",n=T.extend(T.info.mpPageViewProperties(),T.info.campaignParams(),T.info.clickParams()),a=T.extend({},n,e);return this.track(r,a)});W.prototype.track_links=function(){return this._track_dom.call(this,jc,arguments)};W.prototype.track_forms=function(){return this._track_dom.call(this,v0,arguments)};W.prototype.time_event=function(e){if(T.isUndefined(e)){this.report_error("No event name provided to mixpanel.time_event");return}this._event_is_disabled(e)||this.persistence.set_event_timer(e,new Date().getTime())};var QG={persistent:!0},FS=function(e){var t;return T.isObject(e)?t=e:T.isUndefined(e)?t={}:t={days:e},T.extend({},QG,t)};W.prototype.register=function(e,t){var r=FS(t);r.persistent?this.persistence.register(e,r.days):T.extend(this.unpersisted_superprops,e)};W.prototype.register_once=function(e,t,r){var n=FS(r);n.persistent?this.persistence.register_once(e,t,n.days):(typeof t>"u"&&(t="None"),T.each(e,function(a,o){(!this.unpersisted_superprops.hasOwnProperty(o)||this.unpersisted_superprops[o]===t)&&(this.unpersisted_superprops[o]=a)},this))};W.prototype.unregister=function(e,t){t=FS(t),t.persistent?this.persistence.unregister(e):delete this.unpersisted_superprops[e]};W.prototype._register_single=function(e,t){var r={};r[e]=t,this.register(r)};W.prototype.identify=function(e,t,r,n,a,o,i,s){var l=this.get_distinct_id();if(e&&l!==e){if(typeof e=="string"&&e.indexOf(jS)===0)return this.report_error("distinct_id cannot have $device: prefix"),-1;this.register({$user_id:e})}if(!this.get_property("$device_id")){var u=l;this.register_once({$had_persisted_distinct_id:!0,$device_id:u},"")}e!==l&&e!==this.get_property(Bv)&&(this.unregister(Bv),this.register({distinct_id:e})),this._flags.identify_called=!0,this.people._flush(t,r,n,a,o,i,s),e!==l&&this.track("$identify",{distinct_id:e,$anon_distinct_id:l},{skip_hooks:!0})};W.prototype.reset=function(){this.persistence.clear(),this._flags.identify_called=!1;var e=T.UUID();this.register_once({distinct_id:jS+e,$device_id:e},"")};W.prototype.get_distinct_id=function(){return this.get_property("distinct_id")};W.prototype.alias=function(e,t){if(e===this.get_property(q8))return this.report_error("Attempting to create alias for existing People user - aborting."),-2;var r=this;return T.isUndefined(t)&&(t=this.get_distinct_id()),e!==t?(this._register_single(Bv,e),this.track("$create_alias",{alias:e,distinct_id:t},{skip_hooks:!0},function(){r.identify(e)})):(this.report_error("alias matches current distinct_id - skipping api call."),this.identify(e),-1)};W.prototype.name_tag=function(e){this._register_single("mp_name_tag",e)};W.prototype.set_config=function(e){if(T.isObject(e)){T.extend(this.config,e);var t=e.batch_size;t&&T.each(this.request_batchers,function(r){r.resetBatchSize()}),this.get_config("persistence_name")||(this.config.persistence_name=this.config.cookie_name),this.get_config("disable_persistence")||(this.config.disable_persistence=this.config.disable_cookie),this.persistence&&this.persistence.update_config(this.config),oo.DEBUG=oo.DEBUG||this.get_config("debug")}};W.prototype.get_config=function(e){return this.config[e]};W.prototype._run_hook=function(e){var t=(this.config.hooks[e]||ZG).apply(this,oi.call(arguments,1));return typeof t>"u"&&(this.report_error(e+" hook did not return a value"),t=null),t};W.prototype.get_property=function(e){return this.persistence.props[e]};W.prototype.toString=function(){var e=this.get_config("name");return e!==Sn&&(e=Sn+"."+e),e};W.prototype._event_is_disabled=function(e){return T.isBlockedUA(ga)||this._flags.disable_all_events||T.include(this.__disabled_events,e)};W.prototype._gdpr_init=function(){var e=this.get_config("opt_out_tracking_persistence_type")==="localStorage";e&&T.localStorage.is_supported()&&(!this.has_opted_in_tracking()&&this.has_opted_in_tracking({persistence_type:"cookie"})&&this.opt_in_tracking({enable_persistence:!1}),!this.has_opted_out_tracking()&&this.has_opted_out_tracking({persistence_type:"cookie"})&&this.opt_out_tracking({clear_persistence:!1}),this.clear_opt_in_out_tracking({persistence_type:"cookie",enable_persistence:!1})),this.has_opted_out_tracking()?this._gdpr_update_persistence({clear_persistence:!0}):!this.has_opted_in_tracking()&&(this.get_config("opt_out_tracking_by_default")||T.cookie.get("mp_optout"))&&(T.cookie.remove("mp_optout"),this.opt_out_tracking({clear_persistence:this.get_config("opt_out_persistence_by_default")}))};W.prototype._gdpr_update_persistence=function(e){var t;if(e&&e.clear_persistence)t=!0;else if(e&&e.enable_persistence)t=!1;else return;!this.get_config("disable_persistence")&&this.persistence.disabled!==t&&this.persistence.set_disabled(t),t&&T.each(this.request_batchers,function(r){r.clear()})};W.prototype._gdpr_call_func=function(e,t){return t=T.extend({track:T.bind(this.track,this),persistence_type:this.get_config("opt_out_tracking_persistence_type"),cookie_prefix:this.get_config("opt_out_tracking_cookie_prefix"),cookie_expiration:this.get_config("cookie_expiration"),cross_site_cookie:this.get_config("cross_site_cookie"),cross_subdomain_cookie:this.get_config("cross_subdomain_cookie"),cookie_domain:this.get_config("cookie_domain"),secure_cookie:this.get_config("secure_cookie"),ignore_dnt:this.get_config("ignore_dnt")},t),T.localStorage.is_supported()||(t.persistence_type="cookie"),e(this.get_config("token"),{track:t.track,trackEventName:t.track_event_name,trackProperties:t.track_properties,persistenceType:t.persistence_type,persistencePrefix:t.cookie_prefix,cookieDomain:t.cookie_domain,cookieExpiration:t.cookie_expiration,crossSiteCookie:t.cross_site_cookie,crossSubdomainCookie:t.cross_subdomain_cookie,secureCookie:t.secure_cookie,ignoreDnt:t.ignore_dnt})};W.prototype.opt_in_tracking=function(e){e=T.extend({enable_persistence:!0},e),this._gdpr_call_func(zG,e),this._gdpr_update_persistence(e)};W.prototype.opt_out_tracking=function(e){e=T.extend({clear_persistence:!0,delete_user:!0},e),e.delete_user&&this.people&&this.people._identify_called()&&(this.people.delete_user(),this.people.clear_charges()),this._gdpr_call_func(VG,e),this._gdpr_update_persistence(e)};W.prototype.has_opted_in_tracking=function(e){return this._gdpr_call_func(WG,e)};W.prototype.has_opted_out_tracking=function(e){return this._gdpr_call_func(W8,e)};W.prototype.clear_opt_in_out_tracking=function(e){e=T.extend({enable_persistence:!0},e),this._gdpr_call_func(HG,e),this._gdpr_update_persistence(e)};W.prototype.report_error=function(e,t){Ge.error.apply(Ge.error,arguments);try{!t&&!(e instanceof Error)&&(e=new Error(e)),this.get_config("error_reporter")(e,t)}catch(r){Ge.error(r)}};W.prototype.init=W.prototype.init;W.prototype.reset=W.prototype.reset;W.prototype.disable=W.prototype.disable;W.prototype.time_event=W.prototype.time_event;W.prototype.track=W.prototype.track;W.prototype.track_links=W.prototype.track_links;W.prototype.track_forms=W.prototype.track_forms;W.prototype.track_pageview=W.prototype.track_pageview;W.prototype.register=W.prototype.register;W.prototype.register_once=W.prototype.register_once;W.prototype.unregister=W.prototype.unregister;W.prototype.identify=W.prototype.identify;W.prototype.alias=W.prototype.alias;W.prototype.name_tag=W.prototype.name_tag;W.prototype.set_config=W.prototype.set_config;W.prototype.get_config=W.prototype.get_config;W.prototype.get_property=W.prototype.get_property;W.prototype.get_distinct_id=W.prototype.get_distinct_id;W.prototype.toString=W.prototype.toString;W.prototype.opt_out_tracking=W.prototype.opt_out_tracking;W.prototype.opt_in_tracking=W.prototype.opt_in_tracking;W.prototype.has_opted_out_tracking=W.prototype.has_opted_out_tracking;W.prototype.has_opted_in_tracking=W.prototype.has_opted_in_tracking;W.prototype.clear_opt_in_out_tracking=W.prototype.clear_opt_in_out_tracking;W.prototype.get_group=W.prototype.get_group;W.prototype.set_group=W.prototype.set_group;W.prototype.add_group=W.prototype.add_group;W.prototype.remove_group=W.prototype.remove_group;W.prototype.track_with_groups=W.prototype.track_with_groups;W.prototype.start_batch_senders=W.prototype.start_batch_senders;W.prototype.stop_batch_senders=W.prototype.stop_batch_senders;be.prototype.properties=be.prototype.properties;be.prototype.update_search_keyword=be.prototype.update_search_keyword;be.prototype.update_referrer_info=be.prototype.update_referrer_info;be.prototype.get_cross_subdomain=be.prototype.get_cross_subdomain;be.prototype.clear=be.prototype.clear;var Hl={},JG=function(){T.each(Hl,function(e,t){t!==Sn&&(ar[t]=e)}),ar._=T},eK=function(){ar.init=function(e,t,r){if(r)return ar[r]||(ar[r]=Hl[r]=r$(e,t,r),ar[r]._loaded()),ar[r];var n=ar;Hl[Sn]?n=Hl[Sn]:e&&(n=r$(e,t,Sn),n._loaded(),Hl[Sn]=n),ar=n,DS===YG&&(dt[Sn]=ar),JG()}},tK=function(){function e(){e.done||(e.done=!0,Q8=!0,X8=!1,T.each(Hl,function(n){n._dom_loaded()}))}function t(){try{qe.documentElement.doScroll("left")}catch{setTimeout(t,1);return}e()}if(qe.addEventListener)qe.readyState==="complete"?e():qe.addEventListener("DOMContentLoaded",e,!1);else if(qe.attachEvent){qe.attachEvent("onreadystatechange",e);var r=!1;try{r=dt.frameElement===null}catch{}qe.documentElement.doScroll&&r&&t()}T.register_event(dt,"load",e,!0)};function rK(){return DS=Y8,ar=new W,eK(),ar.init(),tK(),ar}var nK=rK(),aK=nK;const Pa=lu(aK);globalThis.jotaiAtomCache=globalThis.jotaiAtomCache||{cache:new Map,get(e,t){return this.cache.has(e)?this.cache.get(e):(this.cache.set(e,t),t)}};function l4(e){const t={action:e};Pa.track("star",t)}function J8(e,t){const r={type:e,location:t};Pa.track("openInfoPanel",r)}function eN(e){Pa.track("share",{type:e})}function oK(e){const t={type:e};Pa.track("analysis",t)}function tN(e){const t={type:e};Pa.track("error-book",t)}function c4(e){const t={...e};Pa.track("donate-card",t)}function iK(e){const t=oe(In),{name:r}=oe(wr),n=oe(bh),a=oe(Dc),o=oe(yh),i=oe(To),s=oe(fu);return p.useCallback(u=>{const f={...u,order:e.chapterData.index+1,chapter:(t+1).toString(),wordlist:r,modeDictation:!e.isWordVisible,modeDark:n,modeShuffle:s.isOpen,enabledKeyboardSound:a.isOpen,enabledPhotonicsSymbol:o.isOpen,enabledSingleWordLoop:e.isLoopSingleWord,pronunciationAuto:i.isOpen,pronunciationOption:i.isOpen===!1?"none":i.type};Pa.track("Word",f)},[e,t,r,n,a.isOpen,o.isOpen,i.isOpen,i.type,s.isOpen])}function sK(e){const t=oe(In),{name:r}=oe(wr),n=oe(bh),a=oe(Dc),o=oe(yh),i=oe(To),s=oe(fu);return p.useCallback(()=>{const u={timeEnd:n$(),duration:e.timerData.time,countInput:e.chapterData.correctCount+e.chapterData.wrongCount,countTypo:e.chapterData.wrongCount,countCorrect:e.chapterData.correctCount,chapter:(t+1).toString(),wordlist:r,modeDictation:!e.isWordVisible,modeDark:n,modeShuffle:s.isOpen,enabledKeyboardSound:a.isOpen,enabledPhotonicsSymbol:o.isOpen,enabledSingleWordLoop:e.isLoopSingleWord,pronunciationAuto:i.isOpen,pronunciationOption:i.isOpen===!1?"none":i.type};Pa.track("Chapter",u)},[e,t,r,n,a.isOpen,o.isOpen,i.isOpen,i.type,s.isOpen])}function rN({type:e,size:t,wordCount:r,chapterCount:n}){const a={type:e,size:t,wordCount:r,chapterCount:n};Pa.track("dataAction",a)}function n$(){return new Date().toISOString().substring(0,19).replace("T"," ")}globalThis.jotaiAtomCache=globalThis.jotaiAtomCache||{cache:new Map,get(e,t){return this.cache.has(e)?this.cache.get(e):(this.cache.set(e,t),t)}};const lK=["Enter","Backspace","Delete","Tab","CapsLock","Shift","Control","Alt","Meta","Escape","Fn","FnLock","Hyper","Super","OS","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","AudioVolumeUp","AudioVolumeDown","AudioVolumeMute","End","PageDown","PageUp","Clear","Home"],nN=e=>!lK.includes(e),cK=e=>/[\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/.test(e),uK=()=>{const e=navigator.userAgent,t=["Android","iPhone","SymbianOS","Windows Phone","iPad","iPod"];let r=!0;for(let n=0;n0){r=!1;break}return r},aN=navigator.userAgent.indexOf("Macintosh")!==-1,Fs=aN?"Control":"Ctrl";function Rp(e,...t){return e.on(...t),()=>e.off(...t)}function dK(...e){const t=[];for(const r of e)r&&t.push(r.trim());return t.join(" ")}function fK(){const e=new Date,t=e.getFullYear(),r=("0"+(e.getMonth()+1)).slice(-2),n=("0"+e.getDate()).slice(-2);return`${t}${r}${n}`}function hK(e){return Math.ceil(e/A_)}function hje(e,t){const r=new Set(t);return e.filter(n=>r.has(n))}function pK(e,t){return Number((e??0).toFixed(t))}function BS(){const e=new Date;return Math.floor(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds())/1e3)}function pje(e){const t=new Date(e*1e3),r=t.toLocaleDateString("zh-CN",{month:"2-digit",day:"2-digit"}),n=t.toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit",hour12:!1});return`${r} ${n}`}globalThis.jotaiAtomCache=globalThis.jotaiAtomCache||{cache:new Map,get(e,t){return this.cache.has(e)?this.cache.get(e):(this.cache.set(e,t),t)}};const gK=[{id:"cet4",name:"CET-4",description:"大学英语四级词库",category:"中国考试",tags:["大学英语"],url:"/dicts/CET4_T.json",length:2607,language:"en",languageCategory:"en"},{id:"cet6",name:"CET-6",description:"大学英语六级词库",category:"中国考试",tags:["大学英语"],url:"/dicts/CET6_T.json",length:2345,language:"en",languageCategory:"en"},{id:"xinghuoqiaoji_4",name:"四级巧记速记",description:"四级巧记速记",category:"中国考试",tags:["大学英语"],url:"/dicts/xinghuoqiaoji_4.json",length:2522,language:"en",languageCategory:"en"},{id:"xinghuoqiaoji_6",name:"六级巧记速记",description:"六级巧记速记",category:"中国考试",tags:["大学英语"],url:"/dicts/xinghuoqiaoji_6.json",length:7520,language:"en",languageCategory:"en"},{id:"cet4-sub",name:"CET-4-Sub",description:"单词的减法-四级",category:"中国考试",tags:["大学英语"],url:"/dicts/DanCiDeJianFa_4.json",length:1957,language:"en",languageCategory:"en"},{id:"cet6-sub",name:"CET-6-Sub",description:"单词的减法-六级",category:"中国考试",tags:["大学英语"],url:"/dicts/DanCiDeJianFa_6.json",length:1949,language:"en",languageCategory:"en"},{id:"kaoyan",name:"考研",description:"研究生英语入学考试词库",category:"中国考试",tags:["考研"],url:"/dicts/KaoYan_3_T.json",length:3728,language:"en",languageCategory:"en"},{id:"kaoyan_2024",name:"考研 2024",description:"研究生英语入学考试词库 2024",category:"中国考试",tags:["考研"],url:"/dicts/KaoYan_2024.json",length:3731,language:"en",languageCategory:"en"},{id:"kaoyanshanguo_2023",name:"考研闪过 2023",description:"高中低频词2023",category:"中国考试",tags:["考研"],url:"/dicts/KaoYanShanGuo_2023.json",length:1771,language:"en",languageCategory:"en"},{id:"dancimimi_1",name:"单词的秘密-英语一",description:"单词的秘密英语(一)",category:"中国考试",tags:["考研"],url:"/dicts/DanCiDeMimi_1.json",length:5657,language:"en",languageCategory:"en"},{id:"dancimimi_2",name:"单词的秘密-英语二",description:"单词的秘密英语(二)",category:"中国考试",tags:["考研"],url:"/dicts/DanCiDeMimi_2.json",length:3827,language:"en",languageCategory:"en"},{id:"2024HongBao T1",name:"2024考研英语hongbaoshu(上)",description:"2024考研英语hongbaoshu必考词(上)",category:"中国考试",tags:["考研"],url:"/dicts/2024HongBao_T1.json",length:997,language:"en",languageCategory:"en"},{id:"2024HongBao T2",name:"2024考研英语hongbaoshu(下)",description:"2024考研英语hongbaoshu必考词(下)",category:"中国考试",tags:["考研"],url:"/dicts/2024HongBao_T2.json",length:854,language:"en",languageCategory:"en"},{id:"English_II",name:"英语二单词书",description:"考研英语二单词书",category:"中国考试",tags:["考研"],url:"/dicts/English_II.json",length:4559,language:"en",languageCategory:"en"},{id:"level4",name:"专四",description:"英语专业四级词库",category:"中国考试",tags:["大学英语"],url:"/dicts/Level4luan_2_T.json",length:4025,language:"en",languageCategory:"en"},{id:"level8",name:"专八",description:"英语专业八级词库",category:"中国考试",tags:["大学英语"],url:"/dicts/Level8luan_2_T.json",length:12197,language:"en",languageCategory:"en"},{id:"archVocabulary",name:"建筑专业英语",description:"大学建筑专业英语词汇",category:"中国考试",tags:["专业英语"],url:"/dicts/archVocabulary.json",length:630,language:"en",languageCategory:"en"},{id:"itVocabulary",name:"计算机专用英语",description:"大学计算机专业英语词汇",category:"中国考试",tags:["专业英语"],url:"/dicts/itVocabulary.json",length:1665,language:"en",languageCategory:"en"},{id:"pets3",name:"PETS",description:"全国英语等级考试常考词汇",category:"中国考试",tags:["PET"],url:"/dicts/PETS_3.json",length:1942,language:"en",languageCategory:"en"},{id:"pets3-2023",name:"PETS-2023",description:"全国英语等级考试常考词汇",category:"中国考试",tags:["PET"],url:"/dicts/PETS3-2023.json",length:4449,language:"en",languageCategory:"en"},{id:"self-study_English1",name:"自考1800高频单词",description:"自考1800高频单词",category:"中国考试",tags:["自考英语二"],url:"/dicts/self-study_English1.json",length:1800,language:"en",languageCategory:"en"},{id:"self-study_English2",name:"自考英语二高频悠悠单词",description:"自考英语二高频悠悠单词",category:"中国考试",tags:["自考英语二"],url:"/dicts/self-study_English2.json",length:2181,language:"en",languageCategory:"en"},{id:"self-study_English3",name:"自考英语二完整单词",description:"00015自考英语二完整单词书",category:"中国考试",tags:["自考英语二"],url:"/dicts/self-study_English3.json",length:4603,language:"en",languageCategory:"en"},{id:"coca_20000",name:"COCA20000词",description:"COCA20000词",category:"中国考试",tags:["其他"],url:"/dicts/coca20000.json",length:20199,language:"en",languageCategory:"en"},{id:"4000_Essential_English_Words1",name:"Essential Words",description:"4000 Essential English Words meaning",category:"中国考试",tags:["其他"],url:"/dicts/4000_Essential_English_Words-meaning.json",length:3600,language:"en",languageCategory:"en"},{id:"4000_Essential_English_Words2",name:"Essential Words",description:"4000 Essential English Words sentence",category:"中国考试",tags:["其他"],url:"/dicts/4000_Essential_English_Words-sentence.json",length:3600,language:"en",languageCategory:"en"},{id:"longman_communication_3000_words",name:"Longman Communication 3000",description:"Most frequent words in both spoken and written English",category:"中国考试",tags:["其他"],url:"/dicts/Longman_Communication_3000.json",length:3168,language:"en",languageCategory:"en"},{id:"top_2000_English_Words",name:"Top 2000 words",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/top2000words.json",length:1867,language:"en",languageCategory:"en"},{id:"top_1500_nouns_Words",name:"Top 1500 Nouns",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top1500NounWords.json",length:1525,language:"en",languageCategory:"en"},{id:"top_1000_verb_Words",name:"Top 1000 Verbs",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top1000VerbWords.json",length:1011,language:"en",languageCategory:"en"},{id:"top_500_Adj_Words",name:"Top 500 adj.",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top500AdjectiveWords.json",length:527,language:"en",languageCategory:"en"},{id:"top_250_Adv_Words",name:"Top 250 adv.",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top250AdverbWords.json",length:255,language:"en",languageCategory:"en"},{id:"top_60_Pronouns",name:"Top 60 pron.",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top60Pronouns.json",length:59,language:"en",languageCategory:"en"},{id:"top_50_Prepositions",name:"Top 50 prep.",description:"with highest frequency",category:"中国考试",tags:["其他"],url:"/dicts/Top50Prepositions.json",length:46,language:"en",languageCategory:"en"},{id:"suffix word",name:"suffix word",description:"common suffix",category:"中国考试",tags:["其他"],url:"/dicts/suffix_word.json",length:126,language:"en",languageCategory:"en"},{id:"word roots1",name:"word roots1",description:"common roots",category:"中国考试",tags:["其他"],url:"/dicts/word_roots1.json",length:369,language:"en",languageCategory:"en"},{id:"adult self-study examination",name:"专升本词汇",description:"专升本词汇",category:"中国考试",tags:["其他"],url:"/dicts/adult-self-study-examination.json",length:3692,language:"en",languageCategory:"en"},{id:"zhuan-cha-ben-ying-yu",name:"专插本英语词汇",description:"专插本英语词汇",category:"中国考试",tags:["其他"],url:"/dicts/zhuan-cha-ben.json",length:3217,language:"en",languageCategory:"en"},{id:"zhuan-sheng-ben-xue-shi",name:"专升本学士学位的英语",description:"专升本学士学位的英语",category:"中国考试",tags:["其他"],url:"/dicts/xueshiyingyu.json",length:897,language:"en",languageCategory:"en"},{id:"Oxford5000",name:"牛津5000词",description:"牛津5000词",category:"中国考试",tags:["其他"],url:"/dicts/Oxford5000.json",length:5836,language:"en",languageCategory:"en"},{id:"Merriam_Webster_sVocabularyBuilder",name:"韦氏词根词典",description:"韦氏词根词典",category:"中国考试",tags:["其他"],url:"/dicts/Merriam_Webster_sVocabularyBuilder.json",length:1191,language:"en",languageCategory:"en"},{id:"tingshuokaoshi",name:"听说考试常见词汇",description:"听说考试16个场景常见词汇量",category:"中国考试",tags:["其他"],url:"/dicts/tingshuokaoshi.json",length:557,language:"en",languageCategory:"en"},{id:"TOEFL_ZhangHongYan",name:"ZhangHongYan的TOEFL词汇书",description:"ZhangHongYan的TOEFL词汇书-词以类记",category:"国际考试",tags:["TOEFL"],url:"/dicts/TOEFL_ZhangHongYan.json",length:4035,language:"en",languageCategory:"en"}],vK=[{id:"gmat",name:"GMAT",description:"GMAT 词库",category:"国际考试",tags:["GMAT"],url:"/dicts/GMAT_3_T.json",length:3047,language:"en",languageCategory:"en"},{id:"gre",name:"GRE",description:"GRE 词库",category:"国际考试",tags:["GRE"],url:"/dicts/GRE_3_T.json",length:6515,language:"en",languageCategory:"en"},{id:"gre1500",name:"GRE重点1500词-fen哥",description:"GRE & TEM8 重叠高频词汇",category:"国际考试",tags:["GRE"],url:"/dicts/GRE_1500.json",length:1533,language:"en",languageCategory:"en"},{id:"gre3000",name:"GRE3000",description:"GRE3000 词库",category:"国际考试",tags:["GRE"],url:"/dicts/GRE3000_3_T.json",length:3041,language:"en",languageCategory:"en"},{id:"GRE-computer-based-test",name:"GRE机经词汇",description:"GRE机经词汇",category:"国际考试",tags:["GRE"],url:"/dicts/GRE-computer-based-test.json",length:1451,language:"en",languageCategory:"en"},{id:"ZaiYaoNiMing_GRE3000",name:"再要你命GRE3000",description:"再要你命GRE3000词库-有词性新版",category:"国际考试",tags:["GRE"],url:"/dicts/ZaiYaoNiMing_GRE3000.json",length:3041,language:"en",languageCategory:"en"},{id:"GRE_equivalent",name:"GRE等价词",description:"GRE等价词",category:"国际考试",tags:["GRE"],url:"/dicts/GRE_equivalent.json",length:827,language:"en",languageCategory:"en"},{id:"GRE_ciyileiji",name:"GRE词以类记",description:"GRE词以类记",category:"国际考试",tags:["GRE"],url:"/dicts/gre-ciyileiji.json",length:8355,language:"en",languageCategory:"en"},{id:"IELTS_tinglichangjing",name:"雅思听力场景词汇",description:"雅思听力场景词汇",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_tinglichangjing.json",length:1204,language:"en",languageCategory:"en"},{id:"ielts_disorder",name:"IELTS乱序完整版",description:"IELTS乱序完整版",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_disorder.json",length:9389,language:"en",languageCategory:"en"},{id:"ielts_order",name:"IELTS顺序完整版",description:"IELTS顺序完整版",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_order.json",length:9389,language:"en",languageCategory:"en"},{id:"ielts",name:"IELTS",description:"雅思词库",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_3_T.json",length:3575,language:"en",languageCategory:"en"},{id:"heqiong",name:"heQiong雅思听力必考词汇",description:"综合测试",category:"国际考试",tags:["IELTS"],url:"/dicts/HeQiong_IELTS.json",length:2532,language:"en",languageCategory:"en"},{id:"ieltsWang3",name:"雅思wang C3",description:"雅思听力特别名词语料库",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_WANG_3.json",length:1135,language:"en",languageCategory:"en"},{id:"ieltsWang4",name:"雅思wang C4",description:"雅思听力形容词副词语料库",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_WANG_4.json",length:346,language:"en",languageCategory:"en"},{id:"ieltsWang5",name:"雅思wang C5",description:"吞音连读混合训练语料库",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_WANG_5.json",length:1569,language:"en",languageCategory:"en"},{id:"ieltsWang11",name:"雅思wang C11",description:"综合测试",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_WANG_11.json",length:1738,language:"en",languageCategory:"en"},{id:"DuckCircle_IELTS",name:"鸭圈雅思核心词",description:"鸭圈雅思核心词",category:"国际考试",tags:["IELTS"],url:"/dicts/DuckCircle_IELTS.json",length:2644,language:"en",languageCategory:"en"},{id:"IELTSVocabularyBible",name:"雅思词汇真经",description:"雅思词汇真经",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTSVocabularyBible.json",length:3673,language:"en",languageCategory:"en"},{id:"IELTS-807",name:"雅思 wanglu 807",description:"雅思 wanglu 807",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-807.json",length:4340,language:"en",languageCategory:"en"},{id:"ielts-real-high",name:"雅思 real 词汇 高频",description:"雅思 real 词汇(高频词汇)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-high.json",length:524,language:"en",languageCategory:"en"},{id:"ielts-real-5",name:"雅思 real 词汇 5",description:"雅思 real 词汇 (5频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-5.json",length:183,language:"en",languageCategory:"en"},{id:"ielts-real-4",name:"雅思 real 词汇 4",description:"雅思 real 词汇 (4频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-4.json",length:201,language:"en",languageCategory:"en"},{id:"ielts-real-3",name:"雅思 real 词汇 3",description:"雅思 real 词汇 (3频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-3.json",length:256,language:"en",languageCategory:"en"},{id:"ielts-real-2",name:"雅思 real 词汇 2",description:"雅思 real 词汇 (2频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-2.json",length:402,language:"en",languageCategory:"en"},{id:"ielts-real-1",name:"雅思 real 词汇 1",description:"雅思 real 词汇 (1频词汇及变频)",category:"国际考试",tags:["IELTS"],url:"/dicts/ielts-real-1.json",length:737,language:"en",languageCategory:"en"},{id:"IELTS9988wangyong",name:"雅思9988wangyong",description:"雅思9988wangyong",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS9988wangyong.json",length:3663,language:"en",languageCategory:"en"},{id:"IELTSLiuHongbo538",name:"雅思阅读 liuhongbo 538考点词",description:"雅思阅读 liuhongbo 538考点词",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTSLiuHongbo538.json",length:376,language:"en",languageCategory:"en"},{id:"IELTSKingLu807",name:"wanglu807雅思词汇听力第2版",description:"wanglu807雅思词汇听力第2版",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTSKingLu807.json",length:1916,language:"en",languageCategory:"en"},{id:"IELTSXDF7000",name:"100个句子记完7000个雅思单词",description:"新东方 100个句子记完7000个雅思单词 词汇表",category:"国际考试",tags:["IELTS"],url:"/dicts/IELTS_XDF_7000.json",length:5567,language:"en",languageCategory:"en"},{id:"ket",name:"KET",description:"KET 2021单词",category:"国际考试",tags:["KET"],url:"./dicts/ket2021.json",length:1147,language:"en",languageCategory:"en"},{id:"sat",name:"SAT",description:"美国 SAT 考试词库",category:"国际考试",tags:["SAT"],url:"/dicts/SAT_3_T.json",length:4464,language:"en",languageCategory:"en"},{id:"SATen",name:"SAT en-en",description:"SAT英英",category:"国际考试",tags:["SAT"],url:"/dicts/SATen.json",length:2681,language:"en",languageCategory:"en"},{id:"toefl",name:"TOEFL",description:"托福考试常见词",category:"国际考试",tags:["TOEFL"],url:"/dicts/TOEFL_3_T.json",length:4264,language:"en",languageCategory:"en"},{id:"bec2",name:"商务英语",description:"商务英语常见词",category:"国际考试",tags:["BEC"],url:"/dicts/BEC_2_T.json",length:2753,language:"en",languageCategory:"en"},{id:"bec3",name:"BEC",description:"BEC考试常见词",category:"国际考试",tags:["BEC"],url:"/dicts/BEC_3_T.json",length:2825,language:"en",languageCategory:"en"},{id:"PTE_junior",name:"PTE 基础词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_junior.json",length:2651,language:"en",languageCategory:"en"},{id:"PTE_senior",name:"PTE 高阶词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_senior.json",length:3170,language:"en",languageCategory:"en"},{id:"PTE_FIB_R_junior",name:"阅读 FIB 基础机经词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_FIB_R_junior.json",length:941,language:"en",languageCategory:"en"},{id:"PTE_FIB_R_senior",name:"阅读 FIB 高阶机经词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_FIB_R_senior.json",length:1272,language:"en",languageCategory:"en"},{id:"PTE_WFD",name:"WFD 机经词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_WFD.json",length:1212,language:"en",languageCategory:"en"},{id:"PTE_FIB_L",name:"听力 FIB 机经词汇",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_FIB_L.json",length:646,language:"en",languageCategory:"en"},{id:"PTE_Basic_apeuni",name:"PTE 基础词汇 xingji",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_Basic_apeuni.json",length:2652,language:"en",languageCategory:"en"},{id:"PTE_Advanced_apeuni.json",name:"PTE 高阶词汇 xingji",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_Advanced_apeuni.json",length:3169,language:"en",languageCategory:"en"},{id:"PTE_Read_apeuni.json",name:"PTE 阅读FIB机经词汇 xingji",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_Read_apeuni.json",length:630,language:"en",languageCategory:"en"},{id:"PTE_Listening_apeuni.json",name:"PTE 听力FIB机经词汇 xingji",description:"",category:"国际考试",tags:["PTE"],url:"/dicts/PTE_Listening_apeuni.json",length:674,language:"en",languageCategory:"en"},{id:"TOEIC",name:"TOEIC 词汇",description:"",category:"国际考试",tags:["TOEIC"],url:"/dicts/TOEIC.json",length:1694,language:"en",languageCategory:"en"},{id:"Duolingo_Vocabulary_B1",name:"多邻国分级词汇B1",description:"多邻国分级词汇B1",category:"国际考试",tags:["CEFR"],url:"/dicts/Duolingo_Vocabulary_B1.json",length:801,language:"en",languageCategory:"en"},{id:"Duolingo_Vocabulary_B2",name:"多邻国分级词汇B2",description:"多邻国分级词汇B2",category:"国际考试",tags:["CEFR"],url:"/dicts/Duolingo_Vocabulary_B2.json",length:1423,language:"en",languageCategory:"en"},{id:"Duolingo_Vocabulary_C1",name:"多邻国分级词汇C1",description:"多邻国分级词汇C1",category:"国际考试",tags:["CEFR"],url:"/dicts/Duolingo_Vocabulary_C1.json",length:1314,language:"en",languageCategory:"en"},{id:"Oxford3000",name:"牛津3000词",description:"牛津3000词",category:"国际考试",tags:["牛津版"],url:"/dicts/Oxford3000.json",length:1342,language:"en",languageCategory:"en"},{id:"Oxford5000",name:"牛津5000词",description:"牛津5000词",category:"国际考试",tags:["牛津版"],url:"/dicts/Oxford5000.json",length:5836,language:"en",languageCategory:"en"},{id:"voa",name:"VOA 基础词库",description:"VOA 基础词库",category:"国际考试",tags:["其他"],url:"/dicts/voa.json",length:1505,language:"en",languageCategory:"en"}],mK=[{id:"gaokao3500",name:"高考 3500 词",description:"高考常见词 3500",category:"青少年英语",tags:["通用"],url:"/dicts/GaoKao_3500.json",length:3893,language:"en",languageCategory:"en"},{id:"gaokaozhentihexin",name:"高考历年真题核心高频",description:"高考历年真题核心高频",category:"青少年英语",tags:["通用"],url:"/dicts/GaoKaoZhenTiHeXinGaoPin.json",length:799,language:"en",languageCategory:"en"},{id:"gaokao-yuedu-gaopin",name:"高考英语阅读高频词汇",description:"高考英语阅读高频词汇",category:"青少年英语",tags:["通用"],url:"/dicts/gaokao-yuedu-gaopin.json",length:688,language:"en",languageCategory:"en"},{id:"zhongkaohexin",name:"中考核心词",description:"中考核心词",category:"青少年英语",tags:["通用"],url:"/dicts/ZhongKaoHeXin.json",length:2140,language:"en",languageCategory:"en"},{id:"nce1",name:"新概念英语-1",description:"新概念英语第一册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/NCE_1.json",length:900,language:"en",languageCategory:"en"},{id:"nce2",name:"新概念英语-2",description:"新概念英语第二册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/NCE_2.json",length:858,language:"en",languageCategory:"en"},{id:"nce3",name:"新概念英语-3",description:"新概念英语第三册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/NCE_3.json",length:1052,language:"en",languageCategory:"en"},{id:"nce4",name:"新概念英语-4",description:"新概念英语第四册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/NCE_4.json",length:784,language:"en",languageCategory:"en"},{id:"nce-new-1",name:"新概念英语(新版)-1",description:"新概念英语新版第一册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/nce-new-1.json",length:908,language:"en",languageCategory:"en"},{id:"nce-new-2",name:"新概念英语(新版)-2",description:"新概念英语新版第二册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/nce-new-2.json",length:862,language:"en",languageCategory:"en"},{id:"nce-new-3",name:"新概念英语(新版)-3",description:"新概念英语新版第三册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/nce-new-3.json",length:1062,language:"en",languageCategory:"en"},{id:"nce-new-4",name:"新概念英语(新版)-4",description:"新概念英语新版第四册",category:"青少年英语",tags:["新概念英语"],url:"/dicts/nce-new-4.json",length:793,language:"en",languageCategory:"en"},{id:"SHjuniormiddleOxford",name:"上海初中牛津词汇",description:"上海初中牛津词汇",category:"青少年英语",tags:["牛津版"],url:"/dicts/OxfordVocabulary_juniorMiddleSH.json",length:1270,language:"en",languageCategory:"en"},{id:"san1",name:"三年级上",description:"人教版三年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue3_1_T.json",length:64,language:"en",languageCategory:"en"},{id:"san2",name:"三年级下",description:"人教版三年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue3_2_T.json",length:72,language:"en",languageCategory:"en"},{id:"si1",name:"四年级上",description:"人教版四年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue4_1_T.json",length:84,language:"en",languageCategory:"en"},{id:"si2",name:"四年级下",description:"人教版四年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue4_2_T.json",length:104,language:"en",languageCategory:"en"},{id:"wu1",name:"五年级上",description:"人教版五年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue5_1_T.json",length:131,language:"en",languageCategory:"en"},{id:"wu2",name:"五年级下",description:"人教版五年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue5_2_T.json",length:156,language:"en",languageCategory:"en"},{id:"liu1",name:"六年级上",description:"人教版六年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue6_1_T.json",length:130,language:"en",languageCategory:"en"},{id:"liu2",name:"六年级下",description:"人教版六年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPXiaoXue6_2_T.json",length:108,language:"en",languageCategory:"en"},{id:"pep-sl-yi1",name:"人教版(新起点)一年级上",description:"人教版一年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue1_1_t.json",length:52,language:"en",languageCategory:"en"},{id:"pep-sl-yi2",name:"人教版(新起点)一年级下",description:"人教版一年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue1_2_t.json",length:96,language:"en",languageCategory:"en"},{id:"pep-sl-er1",name:"人教版(新起点)二年级上",description:"人教版二年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue2_1_t.json",length:54,language:"en",languageCategory:"en"},{id:"pep-sl-er2",name:"人教版(新起点)二年级下",description:"人教版二年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue2_2_t.json",length:55,language:"en",languageCategory:"en"},{id:"pep-sl-san1",name:"人教版(新起点)三年级上",description:"人教版三年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue3_1_t.json",length:103,language:"en",languageCategory:"en"},{id:"pep-sl-san2",name:"人教版(新起点)三年级下",description:"人教版三年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue3_2_t.json",length:84,language:"en",languageCategory:"en"},{id:"pep-sl-si1",name:"人教版(新起点)四年级上",description:"人教版四年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue4_1_t.json",length:116,language:"en",languageCategory:"en"},{id:"pep-sl-si2",name:"人教版(新起点)四年级下",description:"人教版四年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue4_2_t.json",length:87,language:"en",languageCategory:"en"},{id:"pep-sl-wu1",name:"人教版(新起点)五年级上",description:"人教版五年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue5_1_t.json",length:66,language:"en",languageCategory:"en"},{id:"pep-sl-wu2",name:"人教版(新起点)五年级下",description:"人教版五年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue5_2_t.json",length:96,language:"en",languageCategory:"en"},{id:"pep-sl-liu1",name:"人教版(新起点)六年级上",description:"人教版六年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue6_1_t.json",length:102,language:"en",languageCategory:"en"},{id:"pep-sl-liu2",name:"人教版(新起点)六年级下",description:"人教版六年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEP_SL_XiaoXue6_2_t.json",length:41,language:"en",languageCategory:"en"},{id:"qi1",name:"七年级上",description:"人教版七年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong7_1_T.json",length:392,language:"en",languageCategory:"en"},{id:"qi2",name:"七年级下",description:"人教版七年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong7_2_T.json",length:492,language:"en",languageCategory:"en"},{id:"ba1",name:"八年级上",description:"人教版八年级上册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong8_1_T.json",length:419,language:"en",languageCategory:"en"},{id:"ba2",name:"八年级下",description:"人教版八年级下册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong8_2_T.json",length:466,language:"en",languageCategory:"en"},{id:"jiu",name:"九年级",description:"人教版九年级全册",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPChuZhong9_1_T.json",length:551,language:"en",languageCategory:"en"},{id:"renjiaogaozhong1",name:"高中必修1",description:"人教版高中必修1",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_1_T.json",length:311,language:"en",languageCategory:"en"},{id:"renjiaogaozhong2",name:"高中必修2",description:"人教版高中必修2",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_2_T.json",length:319,language:"en",languageCategory:"en"},{id:"renjiaogaozhong3",name:"高中必修3",description:"人教版高中必修3",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_3_T.json",length:366,language:"en",languageCategory:"en"},{id:"renjiaogaozhong4",name:"高中必修4",description:"人教版高中必修4",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_4_T.json",length:307,language:"en",languageCategory:"en"},{id:"renjiaogaozhong5",name:"高中必修5",description:"人教版高中必修5",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_5_T.json",length:357,language:"en",languageCategory:"en"},{id:"renjiaogaozhong6",name:"高中选修6",description:"人教版高中选修6",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_6_T.json",length:391,language:"en",languageCategory:"en"},{id:"renjiaogaozhong7",name:"高中选修7",description:"人教版高中选修7",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_7_T.json",length:384,language:"en",languageCategory:"en"},{id:"renjiaogaozhong8",name:"高中选修8",description:"人教版高中选修8",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_8_T.json",length:420,language:"en",languageCategory:"en"},{id:"renjiaogaozhong9",name:"高中选修9",description:"人教版高中选修9",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_9_T.json",length:352,language:"en",languageCategory:"en"},{id:"renjiaogaozhong10",name:"高中选修10",description:"人教版高中选修10",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_10_T.json",length:361,language:"en",languageCategory:"en"},{id:"renjiaogaozhong11",name:"高中选修11",description:"人教版高中选修11",category:"青少年英语",tags:["人教版"],url:"/dicts/PEPGaoZhong_11_T.json",length:309,language:"en",languageCategory:"en"},{id:"waiyan1",name:"外研七年级上册",description:"外研版七年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_1_T.json",length:629,language:"en",languageCategory:"en"},{id:"waiyan2",name:"外研七年级下册",description:"外研版七年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_2_T.json",length:438,language:"en",languageCategory:"en"},{id:"waiyan3",name:"外研八年级上册",description:"外研版八年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_3_T.json",length:320,language:"en",languageCategory:"en"},{id:"waiyan4",name:"外研八年级下册",description:"外研版八年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_4_T.json",length:266,language:"en",languageCategory:"en"},{id:"waiyan5",name:"外研九年级上册",description:"外研版九年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_5_T.json",length:381,language:"en",languageCategory:"en"},{id:"waiyan6",name:"外研九年级下册",description:"外研版九年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_6_T.json",length:128,language:"en",languageCategory:"en"},{id:"waiyan7",name:"外研高中必修1",description:"外研高中必修1",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheGaoZhong_1_T.json",length:411,language:"en",languageCategory:"en"},{id:"waiyan8",name:"外研高中必修2",description:"外研高中必修2",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheGaoZhong_2_T.json",length:272,language:"en",languageCategory:"en"},{id:"waiyan9",name:"外研一年级上册",description:"外研一年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_1-Volume-up.json",length:138,language:"en",languageCategory:"en"},{id:"waiyan10",name:"外研一年级下册",description:"外研一年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_1-Volume-down.json",length:118,language:"en",languageCategory:"en"},{id:"waiyan11",name:"外研二年级上册",description:"外研二年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_2-Volume-top.json",length:118,language:"en",languageCategory:"en"},{id:"waiyan12",name:"外研二年级下册",description:"外研二年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_2-Volume-down.json",length:110,language:"en",languageCategory:"en"},{id:"waiyan13",name:"外研三年级上册",description:"外研三年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_3-Volume-top.json",length:82,language:"en",languageCategory:"en"},{id:"waiyan14",name:"外研三年级下册",description:"外研三年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_3-Volume-down.json",length:106,language:"en",languageCategory:"en"},{id:"waiyan15",name:"外研四年级上册",description:"外研四年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_4-Volume-top.json",length:116,language:"en",languageCategory:"en"},{id:"waiyan16",name:"外研四年级下册",description:"外研四年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_4-Volume-down.json",length:78,language:"en",languageCategory:"en"},{id:"waiyan17",name:"外研五年级上册",description:"外研五年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_5-Volume-top.json",length:80,language:"en",languageCategory:"en"},{id:"waiyan18",name:"外研五年级下册",description:"外研五年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_5-Volume-down.json",length:72,language:"en",languageCategory:"en"},{id:"waiyan19",name:"外研六年级上册",description:"外研六年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_6-Volume-top.json",length:61,language:"en",languageCategory:"en"},{id:"waiyan20",name:"外研六年级下册",description:"外研六年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/WaiYanSheChuZhong_6-Volume-down.json",length:91,language:"en",languageCategory:"en"},{id:"waiyan3-1",name:"外研新起点三年级上册",description:"外研新起点三年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-3-1.json",length:134,language:"en",languageCategory:"en"},{id:"waiyan3-2",name:"外研新起点三年级下册",description:"外研新起点三年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-3-2.json",length:156,language:"en",languageCategory:"en"},{id:"waiyan4-1",name:"外研新起点四年级上册",description:"外研新起点四年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-4-1.json",length:144,language:"en",languageCategory:"en"},{id:"waiyan4-2",name:"外研新起点四年级下册",description:"外研新起点四年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-4-2.json",length:134,language:"en",languageCategory:"en"},{id:"waiyan5-1",name:"外研新起点五年级上册",description:"外研新起点五年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-5-1.json",length:152,language:"en",languageCategory:"en"},{id:"waiyan5-2",name:"外研新起点五年级下册",description:"外研新起点五年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-5-2.json",length:147,language:"en",languageCategory:"en"},{id:"waiyan6-1",name:"外研新起点六年级上册",description:"外研新起点六年级上册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-6-1.json",length:83,language:"en",languageCategory:"en"},{id:"waiyan6-2",name:"外研新起点六年级下册",description:"外研新起点六年级下册",category:"青少年英语",tags:["外研版"],url:"/dicts/waiyan-xin-6-2.json",length:105,language:"en",languageCategory:"en"},{id:"Yilin1",name:"高中必修1",description:"译林版高中必修1",category:"青少年英语",tags:["译林版"],url:"./dicts/YiLin_1.json",length:276,language:"en",languageCategory:"en"},{id:"Yilin2",name:"高中必修2",description:"译林版高中必修2",category:"青少年英语",tags:["译林版"],url:"./dicts/YiLin_2.json",length:297,language:"en",languageCategory:"en"},{id:"Yilin3",name:"高中必修3",description:"译林版高中必修3",category:"青少年英语",tags:["译林版"],url:"./dicts/YiLin_3.json",length:295,language:"en",languageCategory:"en"},{id:"beishi1",name:"高中必修1",description:"北师大版高中必修1",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_1_T.json",length:226,language:"en",languageCategory:"en"},{id:"beishi2",name:"高中必修2",description:"北师大版高中必修2",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_2_T.json",length:244,language:"en",languageCategory:"en"},{id:"beishi3",name:"高中必修3",description:"北师大版高中必修3",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_3_T.json",length:295,language:"en",languageCategory:"en"},{id:"beishi4",name:"高中必修4",description:"北师大版高中必修4",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_4_T.json",length:336,language:"en",languageCategory:"en"},{id:"beishi5",name:"高中必修5",description:"北师大版高中必修5",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_5_T.json",length:327,language:"en",languageCategory:"en"},{id:"beishi6",name:"高中选修6",description:"北师大版高中选修6",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_6_T.json",length:271,language:"en",languageCategory:"en"},{id:"beishi7",name:"高中选修7",description:"北师大版高中选修7",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_7_T.json",length:334,language:"en",languageCategory:"en"},{id:"beishi8",name:"高中选修8",description:"北师大版高中选修8",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_8_T.json",length:364,language:"en",languageCategory:"en"},{id:"beishi9",name:"高中选修9",description:"北师大版高中选修9",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_9_T.json",length:299,language:"en",languageCategory:"en"},{id:"beishi10",name:"高中选修10",description:"北师大版高中选修10",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_10_T.json",length:267,language:"en",languageCategory:"en"},{id:"beishi11",name:"高中选修11",description:"北师大版高中选修11",category:"青少年英语",tags:["北师大"],url:"/dicts/BeiShiGaoZhong_11_T.json",length:330,language:"en",languageCategory:"en"},{id:"jijiao1",name:"冀教 3 上",description:"冀教版三年级起点三年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao3-1.json",length:75,language:"en",languageCategory:"en"},{id:"jijiao2",name:"冀教 3 下",description:"冀教版三年级起点三年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao3-2.json",length:76,language:"en",languageCategory:"en"},{id:"jijiao3",name:"冀教 4 上",description:"冀教版三年级起点四年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao4-1.json",length:78,language:"en",languageCategory:"en"},{id:"jijiao4",name:"冀教 4 下",description:"冀教版三年级起点四年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao4-2.json",length:84,language:"en",languageCategory:"en"},{id:"jijiao5",name:"冀教 5 上",description:"冀教版三年级起点五年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao5-1.json",length:79,language:"en",languageCategory:"en"},{id:"jijiao6",name:"冀教 5 下",description:"冀教版三年级起点五年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao5-2.json",length:96,language:"en",languageCategory:"en"},{id:"jijiao7",name:"冀教 6 上",description:"冀教版三年级起点六年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao6-1.json",length:66,language:"en",languageCategory:"en"},{id:"jijiao8",name:"冀教 6 下",description:"冀教版三年级起点六年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao6-2.json",length:51,language:"en",languageCategory:"en"},{id:"jijiao9",name:"冀教 7 上",description:"冀教版三年级起点七年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao7-1.json",length:561,language:"en",languageCategory:"en"},{id:"jijiao10",name:"冀教 7 下",description:"冀教版三年级起点七年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao7-2.json",length:514,language:"en",languageCategory:"en"},{id:"jijiao11",name:"冀教 8 上",description:"冀教版三年级起点八年级上",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao8-1.json",length:420,language:"en",languageCategory:"en"},{id:"jijiao12",name:"冀教 8 下",description:"冀教版三年级起点八年级下",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao8-2.json",length:487,language:"en",languageCategory:"en"},{id:"jijiao13",name:"冀教 9 上",description:"冀教版三年级起点九年级全册",category:"青少年英语",tags:["冀教版"],url:"/dicts/jiJiao9.json",length:636,language:"en",languageCategory:"en"},{id:"eflevel1",name:"EF-LEVEL-1",description:"EF等级1",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_1.json",length:297,language:"en",languageCategory:"en"},{id:"eflevel2",name:"EF-LEVEL-2",description:"EF等级2",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_2.json",length:353,language:"en",languageCategory:"en"},{id:"eflevel3",name:"EF-LEVEL-3",description:"EF等级3",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_3.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel4",name:"EF-LEVEL-4",description:"EF等级4",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_4.json",length:178,language:"en",languageCategory:"en"},{id:"eflevel5",name:"EF-LEVEL-5",description:"EF等级5",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_5.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel6",name:"EF-LEVEL-6",description:"EF等级6",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_6.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel7",name:"EF-LEVEL-7",description:"EF等级7",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_7.json",length:171,language:"en",languageCategory:"en"},{id:"eflevel8",name:"EF-LEVEL-8",description:"EF等级8",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_8.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel9",name:"EF-LEVEL-9",description:"EF等级9",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_9.json",length:165,language:"en",languageCategory:"en"},{id:"eflevel10",name:"EF-LEVEL-10",description:"EF等级10",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_10.json",length:174,language:"en",languageCategory:"en"},{id:"eflevel11",name:"EF-LEVEL-11",description:"EF等级11",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_11.json",length:176,language:"en",languageCategory:"en"},{id:"eflevel12",name:"EF-LEVEL-12",description:"EF等级12",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_12.json",length:170,language:"en",languageCategory:"en"},{id:"eflevel13",name:"EF-LEVEL-13",description:"EF等级13",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_13.json",length:172,language:"en",languageCategory:"en"},{id:"eflevel14",name:"EF-LEVEL-14",description:"EF等级14",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_14.json",length:171,language:"en",languageCategory:"en"},{id:"eflevel15",name:"EF-LEVEL-15",description:"EF等级15",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_15.json",length:168,language:"en",languageCategory:"en"},{id:"eflevel16",name:"EF-LEVEL-16",description:"EF等级16",category:"青少年英语",tags:["EF"],url:"/dicts/EF_LEVEL_16.json",length:170,language:"en",languageCategory:"en"},{id:"ReadingExplorer3",name:"Reading Explorer 3",description:"词汇表来自Reading Explorer 3, Third Edition",category:"青少年英语",tags:["青少年英语"],url:"/dicts/ReadingExplorer3.json",length:239,language:"en",languageCategory:"en"},{id:"Macmillan7000",name:"麦克米伦7000",description:"麦克米伦7000",category:"中国考试",tags:["其他"],url:"/dicts/Macmillan7000.json",length:6268,language:"en",languageCategory:"en"},{id:"raz-AA",name:"RAZ 分级阅读 AA",description:"RAZ 分级阅读 AA",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-AA.json",length:422,language:"en",languageCategory:"en"},{id:"raz-A",name:"RAZ 分级阅读 A",description:"RAZ 分级阅读 A",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-A.json",length:487,language:"en",languageCategory:"en"},{id:"raz-B",name:"RAZ 分级阅读 B",description:"RAZ 分级阅读 B",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-B.json",length:465,language:"en",languageCategory:"en"},{id:"raz-C",name:"RAZ 分级阅读 C",description:"RAZ 分级阅读 C",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-C.json",length:480,language:"en",languageCategory:"en"},{id:"raz-D",name:"RAZ 分级阅读 D",description:"RAZ 分级阅读 D",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-D.json",length:436,language:"en",languageCategory:"en"},{id:"raz-E",name:"RAZ 分级阅读 E",description:"RAZ 分级阅读 E",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-E.json",length:427,language:"en",languageCategory:"en"},{id:"raz-F",name:"RAZ 分级阅读 F",description:"RAZ 分级阅读 F",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-F.json",length:437,language:"en",languageCategory:"en"},{id:"raz-G",name:"RAZ 分级阅读 G",description:"RAZ 分级阅读 G",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-G.json",length:435,language:"en",languageCategory:"en"},{id:"raz-H",name:"RAZ 分级阅读 H",description:"RAZ 分级阅读 H",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-H.json",length:385,language:"en",languageCategory:"en"},{id:"raz-I",name:"RAZ 分级阅读 I",description:"RAZ 分级阅读 I",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-I.json",length:408,language:"en",languageCategory:"en"},{id:"raz-J",name:"RAZ 分级阅读 J",description:"RAZ 分级阅读 J",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-J.json",length:434,language:"en",languageCategory:"en"},{id:"raz-K",name:"RAZ 分级阅读 K",description:"RAZ 分级阅读 K",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-K.json",length:397,language:"en",languageCategory:"en"},{id:"raz-L",name:"RAZ 分级阅读 L",description:"RAZ 分级阅读 L",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-L.json",length:402,language:"en",languageCategory:"en"},{id:"raz-M",name:"RAZ 分级阅读 M",description:"RAZ 分级阅读 M",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-M.json",length:403,language:"en",languageCategory:"en"},{id:"raz-N",name:"RAZ 分级阅读 N",description:"RAZ 分级阅读 N",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-N.json",length:376,language:"en",languageCategory:"en"},{id:"raz-O",name:"RAZ 分级阅读 O",description:"RAZ 分级阅读 O",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-O.json",length:429,language:"en",languageCategory:"en"},{id:"raz-P",name:"RAZ 分级阅读 P",description:"RAZ 分级阅读 P",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-P.json",length:379,language:"en",languageCategory:"en"},{id:"raz-Q",name:"RAZ 分级阅读 Q",description:"RAZ 分级阅读 Q",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Q.json",length:442,language:"en",languageCategory:"en"},{id:"raz-R",name:"RAZ 分级阅读 R",description:"RAZ 分级阅读 R",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-R.json",length:422,language:"en",languageCategory:"en"},{id:"raz-S",name:"RAZ 分级阅读 S",description:"RAZ 分级阅读 S",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-S.json",length:434,language:"en",languageCategory:"en"},{id:"raz-T",name:"RAZ 分级阅读 T",description:"RAZ 分级阅读 T",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-T.json",length:427,language:"en",languageCategory:"en"},{id:"raz-U",name:"RAZ 分级阅读 U",description:"RAZ 分级阅读 U",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-U.json",length:418,language:"en",languageCategory:"en"},{id:"raz-V",name:"RAZ 分级阅读 V",description:"RAZ 分级阅读 V",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-V.json",length:409,language:"en",languageCategory:"en"},{id:"raz-W",name:"RAZ 分级阅读 W",description:"RAZ 分级阅读 W",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-W.json",length:392,language:"en",languageCategory:"en"},{id:"raz-X",name:"RAZ 分级阅读 X",description:"RAZ 分级阅读 X",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-X.json",length:546,language:"en",languageCategory:"en"},{id:"raz-Y",name:"RAZ 分级阅读 Y",description:"RAZ 分级阅读 Y",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Y.json",length:461,language:"en",languageCategory:"en"},{id:"raz-Z",name:"RAZ 分级阅读 Z",description:"RAZ 分级阅读 Z",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Z.json",length:414,language:"en",languageCategory:"en"},{id:"raz-Z1",name:"RAZ 分级阅读 Z1",description:"RAZ 分级阅读 Z1",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Z1.json",length:467,language:"en",languageCategory:"en"},{id:"raz-Z2",name:"RAZ 分级阅读 Z2",description:"RAZ 分级阅读 Z2",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-Z2.json",length:492,language:"en",languageCategory:"en"},{id:"raz-all",name:"RAZ 分级阅读 所有词汇",description:"RAZ 分级阅读 所有词汇",category:"青少年英语",tags:["RAZ"],url:"/dicts/raz-all.json",length:5831,language:"en",languageCategory:"en"}],yK=[{id:"coder",name:"Coder Dict",description:"程序员常见单词词库",category:"代码练习",tags:["通用"],url:"/dicts/it-words.json",length:1700,language:"code",languageCategory:"code"},{id:"childCode",name:"少儿 Python",description:"少儿 Python 常见词",category:"代码练习",tags:["少儿编程","Python"],url:"/dicts/Child_python_code.json",length:19,language:"en",languageCategory:"code"},{id:"childCode002",name:"少儿 Python Turtle",description:"少儿 Python Turtle 常见词",category:"代码练习",tags:["少儿编程","Python"],url:"/dicts/Child_python_turtle_code.json",length:27,language:"en",languageCategory:"code"},{id:"childCode003",name:"少儿 C++",description:"少儿 C++ 常见词",category:"代码练习",tags:["少儿编程","C++"],url:"/dicts/Child_cpp.json",length:39,language:"en",languageCategory:"code"},{id:"jsArray",name:"JS: Array",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-array.json",length:36,language:"code",languageCategory:"code"},{id:"jsDate",name:"JS: Date",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-date.json",length:34,language:"code",languageCategory:"code"},{id:"jsGlobal",name:"JS: Global",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-global.json",length:9,language:"code",languageCategory:"code"},{id:"jsMapSet",name:"JS: Map & Set",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-map-set.json",length:16,language:"code",languageCategory:"code"},{id:"jsMath",name:"JS: Math",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-math.json",length:38,language:"code",languageCategory:"code"},{id:"jsNumber",name:"JS: Number",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-number.json",length:22,language:"code",languageCategory:"code"},{id:"jsObject",name:"JS: Object",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-object.json",length:37,language:"code",languageCategory:"code"},{id:"jsPromise",name:"JS: Promise",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-promise.json",length:9,language:"code",languageCategory:"code"},{id:"jsString",name:"JS: String",description:"JavaScript API 词典",category:"代码练习",tags:["JavaScript"],url:"/dicts/js-string.json",length:32,language:"code",languageCategory:"code"},{id:"python-builtin",name:"Python: Built-in",description:"Python Built-in API",category:"代码练习",tags:["Python"],url:"/dicts/python-builtin.json",length:65,language:"code",languageCategory:"code"},{id:"python-array",name:"Python: array",description:"Python array API ",category:"代码练习",tags:["Python"],url:"/dicts/python-array.json",length:11,language:"code",languageCategory:"code"},{id:"python-date",name:"Python: date",description:"Python date API ",category:"代码练习",tags:["Python"],url:"/dicts/python-date.json",length:39,language:"code",languageCategory:"code"},{id:"python-file",name:"Python: file",description:"Python file API ",category:"代码练习",tags:["Python"],url:"/dicts/python-file.json",length:21,language:"code",languageCategory:"code"},{id:"python-class",name:"Python: class",description:"Python class API ",category:"代码练习",tags:["Python"],url:"/dicts/python-class.json",length:13,language:"code",languageCategory:"code"},{id:"python-set",name:"Python: set",description:"Python set API ",category:"代码练习",tags:["Python"],url:"/dicts/python-set.json",length:29,language:"code",languageCategory:"code"},{id:"python-math",name:"Python: math",description:"Python math API ",category:"代码练习",tags:["Python"],url:"/dicts/python-math.json",length:37,language:"code",languageCategory:"code"},{id:"python-string",name:"Python: string",description:"Python string API ",category:"代码练习",tags:["Python"],url:"/dicts/python-string.json",length:40,language:"code",languageCategory:"code"},{id:"python-system",name:"Python: system",description:"Python system API ",category:"代码练习",tags:["Python"],url:"/dicts/python-sys.json",length:24,language:"code",languageCategory:"code"},{id:"javeArrayList",name:"Java: ArrayList",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-arraylist.json",length:25,language:"code",languageCategory:"code"},{id:"javaCharacter",name:"Java: Character",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-character.json",length:8,language:"code",languageCategory:"code"},{id:"javaHashmap",name:"Java: Hashmap",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-hashmap.json",length:22,language:"code",languageCategory:"code"},{id:"javaLinkedList",name:"Java: LinkedList",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-linkedlist.json",length:25,language:"code",languageCategory:"code"},{id:"javaString",name:"Java: String",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-string.json",length:48,language:"code",languageCategory:"code"},{id:"javaStringBuffer",name:"Java: StringBuffer",description:"JavaScript API 词典",category:"代码练习",tags:["Java"],url:"/dicts/java-stringBuffer.json",length:20,language:"code",languageCategory:"code"},{id:"linuxCommand",name:"Linux",description:"Linux Command",category:"代码练习",tags:["Linux"],url:"/dicts/linux-command.json",length:575,language:"code",languageCategory:"code"},{id:"csharpKeywords",name:"C#关键字",description:"C#关键字以及用途",category:"代码练习",tags:["C#"],url:"/dicts/csharp-keywords.json",length:78,language:"code",languageCategory:"code"},{id:"csharpString",name:"C#: String API",description:"C# String API",category:"代码练习",tags:["C#"],url:"/dicts/csharp-string.json",length:79,language:"code",languageCategory:"code"},{id:"csharpList",name:"C#: List API",description:"C# List API",category:"代码练习",tags:["C#"],url:"/dicts/csharp-list.json",length:36,language:"code",languageCategory:"code"},{id:"sql-lower-case",name:"SQL: 常用语句 lower case",description:"SQL 常用语句 小写",category:"代码练习",tags:["SQL"],url:"/dicts/SQL_statement_lower-case.json",length:12,language:"code",languageCategory:"code"},{id:"sql-upper-case",name:"SQL: 常用语句 upper case",description:"SQL 常用语句 大写",category:"代码练习",tags:["SQL"],url:"/dicts/SQL_statement_upper-case.json",length:12,language:"code",languageCategory:"code"},{id:"ai-machine-learning",name:"人工智能: 机器学习",description:"AI机器学习 常用英语词汇",category:"代码练习",tags:["AI"],url:"/dicts/ai_machine_learning.json",length:726,language:"code",languageCategory:"code"},{id:"ai-ai-for-science",name:"人工智能: AI for Science",description:"AI for Science 常用英语词汇",category:"代码练习",tags:["AI"],url:"/dicts/ai_for_science.json",length:491,language:"code",languageCategory:"code"},{id:"go_keyword",name:"golang-keyword",description:"go语言关键字,",category:"代码练习",tags:["golang"],url:"/dicts/go_keyword.json",length:25,language:"code",languageCategory:"code"},{id:"go_builtin",name:"golang-builtin",description:"go语言内建函数和类型",category:"代码练习",tags:["golang"],url:"/dicts/go_builtin.json",length:46,language:"code",languageCategory:"code"}],bK=[{id:"japanese001",name:"日语常见词",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/Japanesebasicword.json",length:100,language:"romaji",languageCategory:"ja"},{id:"japanese001-zh",name:"日语常见词",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/Japanesebasicword_zh.json",length:100,language:"romaji",languageCategory:"ja"},{id:"japanese002",name:"N5",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N5.json",length:670,language:"romaji",languageCategory:"ja"},{id:"japanese002-zh",name:"N5",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N5_zh.json",length:670,language:"romaji",languageCategory:"ja"},{id:"japanese003",name:"N4",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N4.json",length:635,language:"romaji",languageCategory:"ja"},{id:"japanese003-zh",name:"N4",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N4_zh.json",length:635,language:"romaji",languageCategory:"ja"},{id:"japanese004",name:"N3",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N3.json",length:1830,language:"romaji",languageCategory:"ja"},{id:"japanese004-zh",name:"N3",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N3_zh.json",length:1830,language:"romaji",languageCategory:"ja"},{id:"japanese005",name:"N2",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N2.json",length:1836,language:"romaji",languageCategory:"ja"},{id:"japanese005-zh",name:"N2",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N2_zh.json",length:1836,language:"romaji",languageCategory:"ja"},{id:"japanese006",name:"N1",description:"英语翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N1.json",length:3477,language:"romaji",languageCategory:"ja"},{id:"japanese006-zh",name:"N1",description:"中文翻译",category:"日语学习",tags:["基础"],url:"/dicts/JapVocabList.N1_zh.json",length:3477,language:"romaji",languageCategory:"ja"},{id:"japanese007",name:"高频单词_N1",description:"高频单词_日语N1",category:"日语学习",tags:["基础"],url:"/dicts/Jap_High-Frequency_N1.json",length:3e3,language:"romaji",languageCategory:"ja"},{id:"japanese008",name:"高频单词_N2",description:"高频单词_日语N2",category:"日语学习",tags:["基础"],url:"/dicts/Jap_High-Frequency_N2.json",length:2500,language:"romaji",languageCategory:"ja"},{id:"japanese009",name:"高频单词_N3",description:"高频单词_日语N3",category:"日语学习",tags:["基础"],url:"/dicts/Jap_High-Frequency_N3.json",length:1999,language:"romaji",languageCategory:"ja"},{id:"japanese0010",name:"高频单词_N4N5",description:"高频单词_日语N4N5",category:"日语学习",tags:["基础"],url:"/dicts/Jap_High-Frequency_N4N5.json",length:2e3,language:"romaji",languageCategory:"ja"}],wK=[{id:"german2en",name:"德语 英译",description:"德语词汇, 英语翻译",category:"德语学习",tags:["基础"],url:"/dicts/german2en.json",length:5892,language:"de",languageCategory:"de"},{id:"en2german",name:"英语 德译",description:"英语词汇,德语翻译",category:"德语学习",tags:["基础"],url:"/dicts/en2german.json",length:5025,language:"en",languageCategory:"de"}],_K=[{id:"kazakh_basic_3000_arabic_hapin",name:"基础3000词(老文字版)",description:"哈萨克语基础3000词(哈拼老文字版)",category:"哈萨克语",tags:["老文字","哈拼"],url:"/dicts/kazakh_basic_3000_arabic_hapin.json",length:3002,language:"hapin",languageCategory:"kk"},{id:"kazakh_basic_3000_cyrillic_hapin",name:"基础3000词(西里尔字母版)",description:"哈萨克语基础3000词(哈拼西里尔字母版)",category:"哈萨克语",tags:["西里尔字母","哈拼"],url:"/dicts/kazakh_basic_3000_cyrillic_hapin.json",length:3002,language:"hapin",languageCategory:"kk"}],$K=[...gK,...vK,...mK,...yK,...bK,...wK,..._K],xK=$K.map(e=>({...e,chapterCount:hK(e.length)})),Ef=Object.fromEntries(xK.map(e=>[e.id,e]));globalThis.jotaiAtomCache=globalThis.jotaiAtomCache||{cache:new Map,get(e,t){return this.cache.has(e)?this.cache.get(e):(this.cache.set(e,t),t)}};const SK=({record:e})=>{const t=wa(dh),r=Ef[e.dict],{word:n,isLoading:a,hasError:o}=n8(e.word,r),i=p.useCallback(()=>{t(e),tN("detail")},[e,t]);return L("li",{className:"opacity-85 flex w-full cursor-pointer items-center justify-between rounded-lg bg-white px-6 py-3 text-black shadow-md dark:bg-gray-800 dark:text-white",onClick:i,children:[y("span",{className:"basis-2/12 break-normal",children:e.word}),y("span",{className:"basis-6/12 break-normal",children:n?n.trans.join(";"):y(__,{isLoading:a,hasError:o})}),y("span",{className:"basis-1/12 break-normal",children:e.wrongCount}),y("span",{className:"basis-2/12 break-normal",children:r==null?void 0:r.name})]})};var oN={exports:{}};/*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames @@ -103,7 +103,7 @@ Error generating stack: `+o.message+` dark:!bg-gray-800 dark:text-gray-300 dark:shadow-lg dark:shadow-gray-700`,children:[L("div",{className:"flex gap-2",children:[y("img",{src:JX,alt:"alipay",className:" h-44 rounded shadow-lg shadow-gray-300 dark:shadow-gray-700"}),y("img",{src:QX,alt:"alipay",className:" h-44 rounded shadow-lg shadow-gray-300 dark:shadow-gray-700"})]}),L("span",{className:"mt-3 text-xs font-bold text-gray-500",children:[y(kQ,{className:"mb-[3px] mr-1 inline-block"}),"此贴纸非商品,仅用于感谢您的捐赠,不可用于任何商业用途"]})]})]}),IQ=""+new URL("redBook-code-376dffeb.jpg",import.meta.url).href;var NQ=Object.defineProperty,LQ=(e,t,r)=>t in e?NQ(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,eb=(e,t,r)=>(LQ(e,typeof t!="symbol"?t+"":t,r),r);let MQ=class{constructor(){eb(this,"current",this.detect()),eb(this,"handoffState","pending"),eb(this,"currentId",0)}set(t){this.current!==t&&(this.handoffState="pending",this.currentId=0,this.current=t)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current==="server"}get isClient(){return this.current==="client"}detect(){return typeof window>"u"||typeof document>"u"?"server":"client"}handoff(){this.handoffState==="pending"&&(this.handoffState="complete")}get isHandoffComplete(){return this.handoffState==="complete"}},lo=new MQ,gt=(e,t)=>{lo.isServer?p.useEffect(e,t):p.useLayoutEffect(e,t)};function dr(e){let t=p.useRef(e);return gt(()=>{t.current=e},[e]),t}function tD(e,t){let[r,n]=p.useState(e),a=dr(e);return gt(()=>n(a.current),[a,n,...t]),r}function Cu(e){typeof queueMicrotask=="function"?queueMicrotask(e):Promise.resolve().then(e).catch(t=>setTimeout(()=>{throw t}))}function yo(){let e=[],t={addEventListener(r,n,a,o){return r.addEventListener(n,a,o),t.add(()=>r.removeEventListener(n,a,o))},requestAnimationFrame(...r){let n=requestAnimationFrame(...r);return t.add(()=>cancelAnimationFrame(n))},nextFrame(...r){return t.requestAnimationFrame(()=>t.requestAnimationFrame(...r))},setTimeout(...r){let n=setTimeout(...r);return t.add(()=>clearTimeout(n))},microTask(...r){let n={current:!0};return Cu(()=>{n.current&&r[0]()}),t.add(()=>{n.current=!1})},style(r,n,a){let o=r.style.getPropertyValue(n);return Object.assign(r.style,{[n]:a}),this.add(()=>{Object.assign(r.style,{[n]:o})})},group(r){let n=yo();return r(n),this.add(()=>n.dispose())},add(r){return e.push(r),()=>{let n=e.indexOf(r);if(n>=0)for(let a of e.splice(n,1))a()}},dispose(){for(let r of e.splice(0))r()}};return t}function ji(){let[e]=p.useState(yo);return p.useEffect(()=>()=>e.dispose(),[e]),e}let re=function(e){let t=dr(e);return Y.useCallback((...r)=>t.current(...r),[t])};function Tu(){let[e,t]=p.useState(lo.isHandoffComplete);return e&&lo.isHandoffComplete===!1&&t(!1),p.useEffect(()=>{e!==!0&&t(!0)},[e]),p.useEffect(()=>lo.handoff(),[]),e}var D3;let kt=(D3=Y.useId)!=null?D3:function(){let e=Tu(),[t,r]=Y.useState(e?()=>lo.nextId():null);return gt(()=>{t===null&&r(lo.nextId())},[t]),t!=null?""+t:void 0};function Re(e,t,...r){if(e in t){let a=t[e];return typeof a=="function"?a(...r):a}let n=new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map(a=>`"${a}"`).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,Re),n}function Ah(e){return lo.isServer?null:e instanceof Node?e.ownerDocument:e!=null&&e.hasOwnProperty("current")&&e.current instanceof Node?e.current.ownerDocument:document}let o2=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(e=>`${e}:not([tabindex='-1'])`).join(",");var et=(e=>(e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll",e))(et||{}),to=(e=>(e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow",e))(to||{}),DQ=(e=>(e[e.Previous=-1]="Previous",e[e.Next=1]="Next",e))(DQ||{});function F0(e=document.body){return e==null?[]:Array.from(e.querySelectorAll(o2)).sort((t,r)=>Math.sign((t.tabIndex||Number.MAX_SAFE_INTEGER)-(r.tabIndex||Number.MAX_SAFE_INTEGER)))}var B0=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(B0||{});function BE(e,t=0){var r;return e===((r=Ah(e))==null?void 0:r.body)?!1:Re(t,{[0](){return e.matches(o2)},[1](){let n=e;for(;n!==null;){if(n.matches(o2))return!0;n=n.parentElement}return!1}})}var jQ=(e=>(e[e.Keyboard=0]="Keyboard",e[e.Mouse=1]="Mouse",e))(jQ||{});typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")},!0),document.addEventListener("click",e=>{e.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:e.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible="")},!0));function Vs(e){e==null||e.focus({preventScroll:!0})}let FQ=["textarea","input"].join(",");function BQ(e){var t,r;return(r=(t=e==null?void 0:e.matches)==null?void 0:t.call(e,FQ))!=null?r:!1}function Ps(e,t=r=>r){return e.slice().sort((r,n)=>{let a=t(r),o=t(n);if(a===null||o===null)return 0;let i=a.compareDocumentPosition(o);return i&Node.DOCUMENT_POSITION_FOLLOWING?-1:i&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function qt(e,t,{sorted:r=!0,relativeTo:n=null,skipElements:a=[]}={}){let o=Array.isArray(e)?e.length>0?e[0].ownerDocument:document:e.ownerDocument,i=Array.isArray(e)?r?Ps(e):e:F0(e);a.length>0&&i.length>1&&(i=i.filter(h=>!a.includes(h))),n=n??o.activeElement;let s=(()=>{if(t&5)return 1;if(t&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),l=(()=>{if(t&1)return 0;if(t&2)return Math.max(0,i.indexOf(n))-1;if(t&4)return Math.max(0,i.indexOf(n))+1;if(t&8)return i.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),u=t&32?{preventScroll:!0}:{},f=0,c=i.length,d;do{if(f>=c||f+c<=0)return 0;let h=l+f;if(t&16)h=(h+c)%c;else{if(h<0)return 3;if(h>=c)return 1}d=i[h],d==null||d.focus(u),f+=s}while(d!==o.activeElement);return t&6&&BQ(d)&&d.select(),2}function tb(e,t,r){let n=dr(t);p.useEffect(()=>{function a(o){n.current(o)}return document.addEventListener(e,a,r),()=>document.removeEventListener(e,a,r)},[e,r])}function UE(e,t,r=!0){let n=p.useRef(!1);p.useEffect(()=>{requestAnimationFrame(()=>{n.current=r})},[r]);function a(i,s){if(!n.current||i.defaultPrevented)return;let l=function f(c){return typeof c=="function"?f(c()):Array.isArray(c)||c instanceof Set?c:[c]}(e),u=s(i);if(u!==null&&u.getRootNode().contains(u)){for(let f of l){if(f===null)continue;let c=f instanceof HTMLElement?f:f.current;if(c!=null&&c.contains(u)||i.composed&&i.composedPath().includes(c))return}return!BE(u,B0.Loose)&&u.tabIndex!==-1&&i.preventDefault(),t(i,u)}}let o=p.useRef(null);tb("mousedown",i=>{var s,l;n.current&&(o.current=((l=(s=i.composedPath)==null?void 0:s.call(i))==null?void 0:l[0])||i.target)},!0),tb("click",i=>{o.current&&(a(i,()=>o.current),o.current=null)},!0),tb("blur",i=>a(i,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}function j3(e){var t;if(e.type)return e.type;let r=(t=e.as)!=null?t:"button";if(typeof r=="string"&&r.toLowerCase()==="button")return"button"}function U0(e,t){let[r,n]=p.useState(()=>j3(e));return gt(()=>{n(j3(e))},[e.type,e.as]),gt(()=>{r||t.current&&t.current instanceof HTMLButtonElement&&!t.current.hasAttribute("type")&&n("button")},[r,t]),r}let rD=Symbol();function nD(e,t=!0){return Object.assign(e,{[rD]:t})}function We(...e){let t=p.useRef(e);p.useEffect(()=>{t.current=e},[e]);let r=re(n=>{for(let a of t.current)a!=null&&(typeof a=="function"?a(n):a.current=n)});return e.every(n=>n==null||(n==null?void 0:n[rD]))?void 0:r}function UQ(e){throw new Error("Unexpected object: "+e)}var Pr=(e=>(e[e.First=0]="First",e[e.Previous=1]="Previous",e[e.Next=2]="Next",e[e.Last=3]="Last",e[e.Specific=4]="Specific",e[e.Nothing=5]="Nothing",e))(Pr||{});function zQ(e,t){let r=t.resolveItems();if(r.length<=0)return null;let n=t.resolveActiveIndex(),a=n??-1,o=(()=>{switch(e.focus){case 0:return r.findIndex(i=>!t.resolveDisabled(i));case 1:{let i=r.slice().reverse().findIndex((s,l,u)=>a!==-1&&u.length-l-1>=a?!1:!t.resolveDisabled(s));return i===-1?i:r.length-1-i}case 2:return r.findIndex((i,s)=>s<=a?!1:!t.resolveDisabled(i));case 3:{let i=r.slice().reverse().findIndex(s=>!t.resolveDisabled(s));return i===-1?i:r.length-1-i}case 4:return r.findIndex(i=>t.resolveId(i)===e.id);case 5:return null;default:UQ(e)}})();return o===-1?n:o}function i2(...e){return e.filter(Boolean).join(" ")}var kn=(e=>(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(kn||{}),ro=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(ro||{});function Fe({ourProps:e,theirProps:t,slot:r,defaultTag:n,features:a,visible:o=!0,name:i}){let s=aD(t,e);if(o)return qp(s,r,n,i);let l=a??0;if(l&2){let{static:u=!1,...f}=s;if(u)return qp(f,r,n,i)}if(l&1){let{unmount:u=!0,...f}=s;return Re(u?0:1,{[0](){return null},[1](){return qp({...f,hidden:!0,style:{display:"none"}},r,n,i)}})}return qp(s,r,n,i)}function qp(e,t={},r,n){let{as:a=r,children:o,refName:i="ref",...s}=rb(e,["unmount","static"]),l=e.ref!==void 0?{[i]:e.ref}:{},u=typeof o=="function"?o(t):o;"className"in s&&s.className&&typeof s.className=="function"&&(s.className=s.className(t));let f={};if(t){let c=!1,d=[];for(let[h,g]of Object.entries(t))typeof g=="boolean"&&(c=!0),g===!0&&d.push(h);c&&(f["data-headlessui-state"]=d.join(" "))}if(a===p.Fragment&&Object.keys(wm(s)).length>0){if(!p.isValidElement(u)||Array.isArray(u)&&u.length>1)throw new Error(['Passing props on "Fragment"!',"",`The current component <${n} /> is rendering a "Fragment".`,"However we need to passthrough the following props:",Object.keys(s).map(g=>` - ${g}`).join(` `),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".',"Render a single element as the child so that we can forward the props onto that element."].map(g=>` - ${g}`).join(` `)].join(` -`));let c=u.props,d=typeof(c==null?void 0:c.className)=="function"?(...g)=>i2(c==null?void 0:c.className(...g),s.className):i2(c==null?void 0:c.className,s.className),h=d?{className:d}:{};return p.cloneElement(u,Object.assign({},aD(u.props,wm(rb(s,["ref"]))),f,l,VQ(u.ref,l.ref),h))}return p.createElement(a,Object.assign({},rb(s,["ref"]),a!==p.Fragment&&l,a!==p.Fragment&&f),u)}function VQ(...e){return{ref:e.every(t=>t==null)?void 0:t=>{for(let r of e)r!=null&&(typeof r=="function"?r(t):r.current=t)}}}function aD(...e){if(e.length===0)return{};if(e.length===1)return e[0];let t={},r={};for(let n of e)for(let a in n)a.startsWith("on")&&typeof n[a]=="function"?(r[a]!=null||(r[a]=[]),r[a].push(n[a])):t[a]=n[a];if(t.disabled||t["aria-disabled"])return Object.assign(t,Object.fromEntries(Object.keys(r).map(n=>[n,void 0])));for(let n in r)Object.assign(t,{[n](a,...o){let i=r[n];for(let s of i){if((a instanceof Event||(a==null?void 0:a.nativeEvent)instanceof Event)&&a.defaultPrevented)return;s(a,...o)}}});return t}function Be(e){var t;return Object.assign(p.forwardRef(e),{displayName:(t=e.displayName)!=null?t:e.name})}function wm(e){let t=Object.assign({},e);for(let r in t)t[r]===void 0&&delete t[r];return t}function rb(e,t=[]){let r=Object.assign({},e);for(let n of t)n in r&&delete r[n];return r}function Rh(e){let t=e.parentElement,r=null;for(;t&&!(t instanceof HTMLFieldSetElement);)t instanceof HTMLLegendElement&&(r=t),t=t.parentElement;let n=(t==null?void 0:t.getAttribute("disabled"))==="";return n&&WQ(r)?!1:n}function WQ(e){if(!e)return!1;let t=e.previousElementSibling;for(;t!==null;){if(t instanceof HTMLLegendElement)return!1;t=t.previousElementSibling}return!0}function oD(e={},t=null,r=[]){for(let[n,a]of Object.entries(e))sD(r,iD(t,n),a);return r}function iD(e,t){return e?e+"["+t+"]":t}function sD(e,t,r){if(Array.isArray(r))for(let[n,a]of r.entries())sD(e,iD(t,n.toString()),a);else r instanceof Date?e.push([t,r.toISOString()]):typeof r=="boolean"?e.push([t,r?"1":"0"]):typeof r=="string"?e.push([t,r]):typeof r=="number"?e.push([t,`${r}`]):r==null?e.push([t,""]):oD(r,t,e)}function HQ(e){var t;let r=(t=e==null?void 0:e.form)!=null?t:e.closest("form");if(r){for(let n of r.elements)if(n.tagName==="INPUT"&&n.type==="submit"||n.tagName==="BUTTON"&&n.type==="submit"||n.nodeName==="INPUT"&&n.type==="image"){n.click();return}}}let GQ="div";var Ea=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(Ea||{});function KQ(e,t){let{features:r=1,...n}=e,a={ref:t,"aria-hidden":(r&2)===2?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(r&4)===4&&(r&2)!==2&&{display:"none"}}};return Fe({ourProps:a,theirProps:n,slot:{},defaultTag:GQ,name:"Hidden"})}let Ca=Be(KQ),zE=p.createContext(null);zE.displayName="OpenClosedContext";var ut=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(ut||{});function Au(){return p.useContext(zE)}function VE({value:e,children:t}){return Y.createElement(zE.Provider,{value:e},t)}var ye=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(ye||{});function lD(e,t,r){let[n,a]=p.useState(r),o=e!==void 0,i=p.useRef(o),s=p.useRef(!1),l=p.useRef(!1);return o&&!i.current&&!s.current?(s.current=!0,i.current=o):!o&&i.current&&!l.current&&(l.current=!0,i.current=o),[o?e:n,re(u=>(o||a(u),t==null?void 0:t(u)))]}function WE(e,t){let r=p.useRef([]),n=re(e);p.useEffect(()=>{let a=[...r.current];for(let[o,i]of t.entries())if(r.current[o]!==i){let s=n(t,a);return r.current=t,s}},[n,...t])}function F3(e){return[e.screenX,e.screenY]}function qQ(){let e=p.useRef([-1,-1]);return{wasMoved(t){let r=F3(t);return e.current[0]===r[0]&&e.current[1]===r[1]?!1:(e.current=r,!0)},update(t){e.current=F3(t)}}}function YQ(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function ZQ(e,t,r){let n=dr(t);p.useEffect(()=>{function a(o){n.current(o)}return window.addEventListener(e,a,r),()=>window.removeEventListener(e,a,r)},[e,r])}var Zr=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))(Zr||{});function HE(){let e=p.useRef(0);return ZQ("keydown",t=>{t.key==="Tab"&&(e.current=t.shiftKey?1:0)},!0),e}function Oh(){let e=p.useRef(!1);return gt(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function pl(...e){return p.useMemo(()=>Ah(...e),[...e])}function GE(e,t,r,n){let a=dr(r);p.useEffect(()=>{e=e??window;function o(i){a.current(i)}return e.addEventListener(t,o,n),()=>e.removeEventListener(t,o,n)},[e,t,n])}function XQ(e){function t(){document.readyState!=="loading"&&(e(),document.removeEventListener("DOMContentLoaded",t))}typeof window<"u"&&typeof document<"u"&&(document.addEventListener("DOMContentLoaded",t),t())}function cD(e){if(!e)return new Set;if(typeof e=="function")return new Set(e());let t=new Set;for(let r of e.current)r.current instanceof HTMLElement&&t.add(r.current);return t}let QQ="div";var uD=(e=>(e[e.None=1]="None",e[e.InitialFocus=2]="InitialFocus",e[e.TabLock=4]="TabLock",e[e.FocusLock=8]="FocusLock",e[e.RestoreFocus=16]="RestoreFocus",e[e.All=30]="All",e))(uD||{});function JQ(e,t){let r=p.useRef(null),n=We(r,t),{initialFocus:a,containers:o,features:i=30,...s}=e;Tu()||(i=1);let l=pl(r);rJ({ownerDocument:l},!!(i&16));let u=nJ({ownerDocument:l,container:r,initialFocus:a},!!(i&2));aJ({ownerDocument:l,container:r,containers:o,previousActiveElement:u},!!(i&8));let f=HE(),c=re(m=>{let w=r.current;w&&(v=>v())(()=>{Re(f.current,{[Zr.Forwards]:()=>{qt(w,et.First,{skipElements:[m.relatedTarget]})},[Zr.Backwards]:()=>{qt(w,et.Last,{skipElements:[m.relatedTarget]})}})})}),d=ji(),h=p.useRef(!1),g={ref:n,onKeyDown(m){m.key=="Tab"&&(h.current=!0,d.requestAnimationFrame(()=>{h.current=!1}))},onBlur(m){let w=cD(o);r.current instanceof HTMLElement&&w.add(r.current);let v=m.relatedTarget;v instanceof HTMLElement&&v.dataset.headlessuiFocusGuard!=="true"&&(dD(w,v)||(h.current?qt(r.current,Re(f.current,{[Zr.Forwards]:()=>et.Next,[Zr.Backwards]:()=>et.Previous})|et.WrapAround,{relativeTo:m.target}):m.target instanceof HTMLElement&&Vs(m.target)))}};return Y.createElement(Y.Fragment,null,!!(i&4)&&Y.createElement(Ca,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:c,features:Ea.Focusable}),Fe({ourProps:g,theirProps:s,defaultTag:QQ,name:"FocusTrap"}),!!(i&4)&&Y.createElement(Ca,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:c,features:Ea.Focusable}))}let eJ=Be(JQ),sd=Object.assign(eJ,{features:uD}),ni=[];XQ(()=>{function e(t){t.target instanceof HTMLElement&&t.target!==document.body&&ni[0]!==t.target&&(ni.unshift(t.target),ni=ni.filter(r=>r!=null&&r.isConnected),ni.splice(10))}window.addEventListener("click",e,{capture:!0}),window.addEventListener("mousedown",e,{capture:!0}),window.addEventListener("focus",e,{capture:!0}),document.body.addEventListener("click",e,{capture:!0}),document.body.addEventListener("mousedown",e,{capture:!0}),document.body.addEventListener("focus",e,{capture:!0})});function tJ(e=!0){let t=p.useRef(ni.slice());return WE(([r],[n])=>{n===!0&&r===!1&&Cu(()=>{t.current.splice(0)}),n===!1&&r===!0&&(t.current=ni.slice())},[e,ni,t]),re(()=>{var r;return(r=t.current.find(n=>n!=null&&n.isConnected))!=null?r:null})}function rJ({ownerDocument:e},t){let r=tJ(t);WE(()=>{t||(e==null?void 0:e.activeElement)===(e==null?void 0:e.body)&&Vs(r())},[t]);let n=p.useRef(!1);p.useEffect(()=>(n.current=!1,()=>{n.current=!0,Cu(()=>{n.current&&Vs(r())})}),[])}function nJ({ownerDocument:e,container:t,initialFocus:r},n){let a=p.useRef(null),o=Oh();return WE(()=>{if(!n)return;let i=t.current;i&&Cu(()=>{if(!o.current)return;let s=e==null?void 0:e.activeElement;if(r!=null&&r.current){if((r==null?void 0:r.current)===s){a.current=s;return}}else if(i.contains(s)){a.current=s;return}r!=null&&r.current?Vs(r.current):(qt(i,et.First),to.Error),a.current=e==null?void 0:e.activeElement})},[n]),a}function aJ({ownerDocument:e,container:t,containers:r,previousActiveElement:n},a){let o=Oh();GE(e==null?void 0:e.defaultView,"focus",i=>{if(!a||!o.current)return;let s=cD(r);t.current instanceof HTMLElement&&s.add(t.current);let l=n.current;if(!l)return;let u=i.target;u&&u instanceof HTMLElement?dD(s,u)?(n.current=u,Vs(u)):(i.preventDefault(),i.stopPropagation(),Vs(l)):Vs(n.current)},!0)}function dD(e,t){for(let r of e)if(r.contains(t))return!0;return!1}let fD=p.createContext(!1);function oJ(){return p.useContext(fD)}function s2(e){return Y.createElement(fD.Provider,{value:e.force},e.children)}function iJ(e){let t=oJ(),r=p.useContext(hD),n=pl(e),[a,o]=p.useState(()=>{if(!t&&r!==null||lo.isServer)return null;let i=n==null?void 0:n.getElementById("headlessui-portal-root");if(i)return i;if(n===null)return null;let s=n.createElement("div");return s.setAttribute("id","headlessui-portal-root"),n.body.appendChild(s)});return p.useEffect(()=>{a!==null&&(n!=null&&n.body.contains(a)||n==null||n.body.appendChild(a))},[a,n]),p.useEffect(()=>{t||r!==null&&o(r.current)},[r,o,t]),a}let sJ=p.Fragment;function lJ(e,t){let r=e,n=p.useRef(null),a=We(nD(f=>{n.current=f}),t),o=pl(n),i=iJ(n),[s]=p.useState(()=>{var f;return lo.isServer?null:(f=o==null?void 0:o.createElement("div"))!=null?f:null}),l=Tu(),u=p.useRef(!1);return gt(()=>{if(u.current=!1,!(!i||!s))return i.contains(s)||(s.setAttribute("data-headlessui-portal",""),i.appendChild(s)),()=>{u.current=!0,Cu(()=>{var f;u.current&&(!i||!s||(s instanceof Node&&i.contains(s)&&i.removeChild(s),i.childNodes.length<=0&&((f=i.parentElement)==null||f.removeChild(i))))})}},[i,s]),l?!i||!s?null:Qi.createPortal(Fe({ourProps:{ref:a},theirProps:r,defaultTag:sJ,name:"Portal"}),s):null}let cJ=p.Fragment,hD=p.createContext(null);function uJ(e,t){let{target:r,...n}=e,a={ref:We(t)};return Y.createElement(hD.Provider,{value:r},Fe({ourProps:a,theirProps:n,defaultTag:cJ,name:"Popover.Group"}))}let dJ=Be(lJ),fJ=Be(uJ),l2=Object.assign(dJ,{Group:fJ}),pD=p.createContext(null);function gD(){let e=p.useContext(pD);if(e===null){let t=new Error("You used a component, but it is not inside a relevant parent.");throw Error.captureStackTrace&&Error.captureStackTrace(t,gD),t}return e}function vD(){let[e,t]=p.useState([]);return[e.length>0?e.join(" "):void 0,p.useMemo(()=>function(r){let n=re(o=>(t(i=>[...i,o]),()=>t(i=>{let s=i.slice(),l=s.indexOf(o);return l!==-1&&s.splice(l,1),s}))),a=p.useMemo(()=>({register:n,slot:r.slot,name:r.name,props:r.props}),[n,r.slot,r.name,r.props]);return Y.createElement(pD.Provider,{value:a},r.children)},[t])]}let hJ="p";function pJ(e,t){let r=kt(),{id:n=`headlessui-description-${r}`,...a}=e,o=gD(),i=We(t);gt(()=>o.register(n),[n,o.register]);let s={ref:i,...o.props,id:n};return Fe({ourProps:s,theirProps:a,slot:o.slot||{},defaultTag:hJ,name:o.name||"Description"})}let gJ=Be(pJ),mD=Object.assign(gJ,{}),KE=p.createContext(()=>{});KE.displayName="StackContext";var c2=(e=>(e[e.Add=0]="Add",e[e.Remove=1]="Remove",e))(c2||{});function vJ(){return p.useContext(KE)}function mJ({children:e,onUpdate:t,type:r,element:n,enabled:a}){let o=vJ(),i=re((...s)=>{t==null||t(...s),o(...s)});return gt(()=>{let s=a===void 0||a===!0;return s&&i(0,r,n),()=>{s&&i(1,r,n)}},[i,r,n,a]),Y.createElement(KE.Provider,{value:i},e)}function yJ(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}const bJ=typeof Object.is=="function"?Object.is:yJ,{useState:wJ,useEffect:_J,useLayoutEffect:$J,useDebugValue:xJ}=Ks;function SJ(e,t,r){const n=t(),[{inst:a},o]=wJ({inst:{value:n,getSnapshot:t}});return $J(()=>{a.value=n,a.getSnapshot=t,nb(a)&&o({inst:a})},[e,n,t]),_J(()=>(nb(a)&&o({inst:a}),e(()=>{nb(a)&&o({inst:a})})),[e]),xJ(n),n}function nb(e){const t=e.getSnapshot,r=e.value;try{const n=t();return!bJ(r,n)}catch{return!0}}function EJ(e,t,r){return t()}const CJ=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",TJ=!CJ,AJ=TJ?EJ:SJ,RJ="useSyncExternalStore"in Ks?(e=>e.useSyncExternalStore)(Ks):AJ;function OJ(e){return RJ(e.subscribe,e.getSnapshot,e.getSnapshot)}function kJ(e,t){let r=e(),n=new Set;return{getSnapshot(){return r},subscribe(a){return n.add(a),()=>n.delete(a)},dispatch(a,...o){let i=t[a].call(r,...o);i&&(r=i,n.forEach(s=>s()))}}}function PJ(){let e;return{before({doc:t}){var r;let n=t.documentElement;e=((r=t.defaultView)!=null?r:window).innerWidth-n.clientWidth},after({doc:t,d:r}){let n=t.documentElement,a=n.clientWidth-n.offsetWidth,o=e-a;r.style(n,"paddingRight",`${o}px`)}}}function IJ(){if(!YQ())return{};let e;return{before(){e=window.pageYOffset},after({doc:t,d:r,meta:n}){function a(i){return n.containers.flatMap(s=>s()).some(s=>s.contains(i))}r.style(t.body,"marginTop",`-${e}px`),window.scrollTo(0,0);let o=null;r.addEventListener(t,"click",i=>{if(i.target instanceof HTMLElement)try{let s=i.target.closest("a");if(!s)return;let{hash:l}=new URL(s.href),u=t.querySelector(l);u&&!a(u)&&(o=u)}catch{}},!0),r.addEventListener(t,"touchmove",i=>{i.target instanceof HTMLElement&&!a(i.target)&&i.preventDefault()},{passive:!1}),r.add(()=>{window.scrollTo(0,window.pageYOffset+e),o&&o.isConnected&&(o.scrollIntoView({block:"nearest"}),o=null)})}}}function NJ(){return{before({doc:e,d:t}){t.style(e.documentElement,"overflow","hidden")}}}function LJ(e){let t={};for(let r of e)Object.assign(t,r(t));return t}let Is=kJ(()=>new Map,{PUSH(e,t){var r;let n=(r=this.get(e))!=null?r:{doc:e,count:0,d:yo(),meta:new Set};return n.count++,n.meta.add(t),this.set(e,n),this},POP(e,t){let r=this.get(e);return r&&(r.count--,r.meta.delete(t)),this},SCROLL_PREVENT({doc:e,d:t,meta:r}){let n={doc:e,d:t,meta:LJ(r)},a=[IJ(),PJ(),NJ()];a.forEach(({before:o})=>o==null?void 0:o(n)),a.forEach(({after:o})=>o==null?void 0:o(n))},SCROLL_ALLOW({d:e}){e.dispose()},TEARDOWN({doc:e}){this.delete(e)}});Is.subscribe(()=>{let e=Is.getSnapshot(),t=new Map;for(let[r]of e)t.set(r,r.documentElement.style.overflow);for(let r of e.values()){let n=t.get(r.doc)==="hidden",a=r.count!==0;(a&&!n||!a&&n)&&Is.dispatch(r.count>0?"SCROLL_PREVENT":"SCROLL_ALLOW",r),r.count===0&&Is.dispatch("TEARDOWN",r)}});function MJ(e,t,r){let n=OJ(Is),a=e?n.get(e):void 0,o=a?a.count>0:!1;return gt(()=>{if(!(!e||!t))return Is.dispatch("PUSH",e,r),()=>Is.dispatch("POP",e,r)},[t,e]),o}let ab=new Map,ld=new Map;function B3(e,t=!0){gt(()=>{var r;if(!t)return;let n=typeof e=="function"?e():e.current;if(!n)return;function a(){var i;if(!n)return;let s=(i=ld.get(n))!=null?i:1;if(s===1?ld.delete(n):ld.set(n,s-1),s!==1)return;let l=ab.get(n);l&&(l["aria-hidden"]===null?n.removeAttribute("aria-hidden"):n.setAttribute("aria-hidden",l["aria-hidden"]),n.inert=l.inert,ab.delete(n))}let o=(r=ld.get(n))!=null?r:0;return ld.set(n,o+1),o!==0||(ab.set(n,{"aria-hidden":n.getAttribute("aria-hidden"),inert:n.inert}),n.setAttribute("aria-hidden","true"),n.inert=!0),a},[e,t])}var DJ=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(DJ||{}),jJ=(e=>(e[e.SetTitleId=0]="SetTitleId",e))(jJ||{});let FJ={[0](e,t){return e.titleId===t.id?e:{...e,titleId:t.id}}},_m=p.createContext(null);_m.displayName="DialogContext";function kh(e){let t=p.useContext(_m);if(t===null){let r=new Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,kh),r}return t}function BJ(e,t,r=()=>[document.body]){MJ(e,t,n=>{var a;return{containers:[...(a=n.containers)!=null?a:[],r]}})}function UJ(e,t){return Re(t.type,FJ,e,t)}let zJ="div",VJ=kn.RenderStrategy|kn.Static;function WJ(e,t){let r=kt(),{id:n=`headlessui-dialog-${r}`,open:a,onClose:o,initialFocus:i,__demoMode:s=!1,...l}=e,[u,f]=p.useState(0),c=Au();a===void 0&&c!==null&&(a=(c&ut.Open)===ut.Open);let d=p.useRef(null),h=We(d,t),g=p.useRef(null),m=pl(d),w=e.hasOwnProperty("open")||c!==null,v=e.hasOwnProperty("onClose");if(!w&&!v)throw new Error("You have to provide an `open` and an `onClose` prop to the `Dialog` component.");if(!w)throw new Error("You provided an `onClose` prop to the `Dialog`, but forgot an `open` prop.");if(!v)throw new Error("You provided an `open` prop to the `Dialog`, but forgot an `onClose` prop.");if(typeof a!="boolean")throw new Error(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${a}`);if(typeof o!="function")throw new Error(`You provided an \`onClose\` prop to the \`Dialog\`, but the value is not a function. Received: ${o}`);let b=a?0:1,[_,$]=p.useReducer(UJ,{titleId:null,descriptionId:null,panelRef:p.createRef()}),C=re(()=>o(!1)),O=re(K=>$({type:0,id:K})),x=Tu()?s?!1:b===0:!1,S=u>1,A=p.useContext(_m)!==null,k=S?"parent":"leaf",N=c!==null?(c&ut.Closing)===ut.Closing:!1,P=(()=>A||N?!1:x)(),I=p.useCallback(()=>{var K,Q;return(Q=Array.from((K=m==null?void 0:m.querySelectorAll("body > *"))!=null?K:[]).find(J=>J.id==="headlessui-portal-root"?!1:J.contains(g.current)&&J instanceof HTMLElement))!=null?Q:null},[g]);B3(I,P);let E=(()=>S?!0:x)(),R=p.useCallback(()=>{var K,Q;return(Q=Array.from((K=m==null?void 0:m.querySelectorAll("[data-headlessui-portal]"))!=null?K:[]).find(J=>J.contains(g.current)&&J instanceof HTMLElement))!=null?Q:null},[g]);B3(R,E);let F=re(()=>{var K,Q;return[...Array.from((K=m==null?void 0:m.querySelectorAll("html > *, body > *, [data-headlessui-portal]"))!=null?K:[]).filter(J=>!(J===document.body||J===document.head||!(J instanceof HTMLElement)||J.contains(g.current)||_.panelRef.current&&J.contains(_.panelRef.current))),(Q=_.panelRef.current)!=null?Q:d.current]}),B=(()=>!(!x||S))();UE(()=>F(),C,B);let j=(()=>!(S||b!==0))();GE(m==null?void 0:m.defaultView,"keydown",K=>{j&&(K.defaultPrevented||K.key===ye.Escape&&(K.preventDefault(),K.stopPropagation(),C()))});let M=(()=>!(N||b!==0||A))();BJ(m,M,F),p.useEffect(()=>{if(b!==0||!d.current)return;let K=new ResizeObserver(Q=>{for(let J of Q){let de=J.target.getBoundingClientRect();de.x===0&&de.y===0&&de.width===0&&de.height===0&&C()}});return K.observe(d.current),()=>K.disconnect()},[b,d,C]);let[D,U]=vD(),V=p.useMemo(()=>[{dialogState:b,close:C,setTitleId:O},_],[b,_,C,O]),G=p.useMemo(()=>({open:b===0}),[b]),H={ref:h,id:n,role:"dialog","aria-modal":b===0?!0:void 0,"aria-labelledby":_.titleId,"aria-describedby":D};return Y.createElement(mJ,{type:"Dialog",enabled:b===0,element:d,onUpdate:re((K,Q)=>{Q==="Dialog"&&Re(K,{[c2.Add]:()=>f(J=>J+1),[c2.Remove]:()=>f(J=>J-1)})})},Y.createElement(s2,{force:!0},Y.createElement(l2,null,Y.createElement(_m.Provider,{value:V},Y.createElement(l2.Group,{target:d},Y.createElement(s2,{force:!1},Y.createElement(U,{slot:G,name:"Dialog.Description"},Y.createElement(sd,{initialFocus:i,containers:F,features:x?Re(k,{parent:sd.features.RestoreFocus,leaf:sd.features.All&~sd.features.FocusLock}):sd.features.None},Fe({ourProps:H,theirProps:l,slot:G,defaultTag:zJ,features:VJ,visible:b===0,name:"Dialog"})))))))),Y.createElement(Ca,{features:Ea.Hidden,ref:g}))}let HJ="div";function GJ(e,t){let r=kt(),{id:n=`headlessui-dialog-overlay-${r}`,...a}=e,[{dialogState:o,close:i}]=kh("Dialog.Overlay"),s=We(t),l=re(f=>{if(f.target===f.currentTarget){if(Rh(f.currentTarget))return f.preventDefault();f.preventDefault(),f.stopPropagation(),i()}}),u=p.useMemo(()=>({open:o===0}),[o]);return Fe({ourProps:{ref:s,id:n,"aria-hidden":!0,onClick:l},theirProps:a,slot:u,defaultTag:HJ,name:"Dialog.Overlay"})}let KJ="div";function qJ(e,t){let r=kt(),{id:n=`headlessui-dialog-backdrop-${r}`,...a}=e,[{dialogState:o},i]=kh("Dialog.Backdrop"),s=We(t);p.useEffect(()=>{if(i.panelRef.current===null)throw new Error("A component is being used, but a component is missing.")},[i.panelRef]);let l=p.useMemo(()=>({open:o===0}),[o]);return Y.createElement(s2,{force:!0},Y.createElement(l2,null,Fe({ourProps:{ref:s,id:n,"aria-hidden":!0},theirProps:a,slot:l,defaultTag:KJ,name:"Dialog.Backdrop"})))}let YJ="div";function ZJ(e,t){let r=kt(),{id:n=`headlessui-dialog-panel-${r}`,...a}=e,[{dialogState:o},i]=kh("Dialog.Panel"),s=We(t,i.panelRef),l=p.useMemo(()=>({open:o===0}),[o]),u=re(f=>{f.stopPropagation()});return Fe({ourProps:{ref:s,id:n,onClick:u},theirProps:a,slot:l,defaultTag:YJ,name:"Dialog.Panel"})}let XJ="h2";function QJ(e,t){let r=kt(),{id:n=`headlessui-dialog-title-${r}`,...a}=e,[{dialogState:o,setTitleId:i}]=kh("Dialog.Title"),s=We(t);p.useEffect(()=>(i(n),()=>i(null)),[n,i]);let l=p.useMemo(()=>({open:o===0}),[o]);return Fe({ourProps:{ref:s,id:n},theirProps:a,slot:l,defaultTag:XJ,name:"Dialog.Title"})}let JJ=Be(WJ),eee=Be(qJ),tee=Be(ZJ),ree=Be(GJ),nee=Be(QJ),yr=Object.assign(JJ,{Backdrop:eee,Panel:tee,Overlay:ree,Title:nee,Description:mD});var aee=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(aee||{}),oee=(e=>(e[e.Single=0]="Single",e[e.Multi=1]="Multi",e))(oee||{}),iee=(e=>(e[e.Pointer=0]="Pointer",e[e.Other=1]="Other",e))(iee||{}),see=(e=>(e[e.OpenListbox=0]="OpenListbox",e[e.CloseListbox=1]="CloseListbox",e[e.GoToOption=2]="GoToOption",e[e.Search=3]="Search",e[e.ClearSearch=4]="ClearSearch",e[e.RegisterOption=5]="RegisterOption",e[e.UnregisterOption=6]="UnregisterOption",e[e.RegisterLabel=7]="RegisterLabel",e))(see||{});function ob(e,t=r=>r){let r=e.activeOptionIndex!==null?e.options[e.activeOptionIndex]:null,n=Ps(t(e.options.slice()),o=>o.dataRef.current.domRef.current),a=r?n.indexOf(r):null;return a===-1&&(a=null),{options:n,activeOptionIndex:a}}let lee={[1](e){return e.dataRef.current.disabled||e.listboxState===1?e:{...e,activeOptionIndex:null,listboxState:1}},[0](e){if(e.dataRef.current.disabled||e.listboxState===0)return e;let t=e.activeOptionIndex,{isSelected:r}=e.dataRef.current,n=e.options.findIndex(a=>r(a.dataRef.current.value));return n!==-1&&(t=n),{...e,listboxState:0,activeOptionIndex:t}},[2](e,t){var r;if(e.dataRef.current.disabled||e.listboxState===1)return e;let n=ob(e),a=zQ(t,{resolveItems:()=>n.options,resolveActiveIndex:()=>n.activeOptionIndex,resolveId:o=>o.id,resolveDisabled:o=>o.dataRef.current.disabled});return{...e,...n,searchQuery:"",activeOptionIndex:a,activationTrigger:(r=t.trigger)!=null?r:1}},[3]:(e,t)=>{if(e.dataRef.current.disabled||e.listboxState===1)return e;let r=e.searchQuery!==""?0:1,n=e.searchQuery+t.value.toLowerCase(),a=(e.activeOptionIndex!==null?e.options.slice(e.activeOptionIndex+r).concat(e.options.slice(0,e.activeOptionIndex+r)):e.options).find(i=>{var s;return!i.dataRef.current.disabled&&((s=i.dataRef.current.textValue)==null?void 0:s.startsWith(n))}),o=a?e.options.indexOf(a):-1;return o===-1||o===e.activeOptionIndex?{...e,searchQuery:n}:{...e,searchQuery:n,activeOptionIndex:o,activationTrigger:1}},[4](e){return e.dataRef.current.disabled||e.listboxState===1||e.searchQuery===""?e:{...e,searchQuery:""}},[5]:(e,t)=>{let r={id:t.id,dataRef:t.dataRef},n=ob(e,a=>[...a,r]);return e.activeOptionIndex===null&&e.dataRef.current.isSelected(t.dataRef.current.value)&&(n.activeOptionIndex=n.options.indexOf(r)),{...e,...n}},[6]:(e,t)=>{let r=ob(e,n=>{let a=n.findIndex(o=>o.id===t.id);return a!==-1&&n.splice(a,1),n});return{...e,...r,activationTrigger:1}},[7]:(e,t)=>({...e,labelId:t.id})},qE=p.createContext(null);qE.displayName="ListboxActionsContext";function Ph(e){let t=p.useContext(qE);if(t===null){let r=new Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,Ph),r}return t}let YE=p.createContext(null);YE.displayName="ListboxDataContext";function Ih(e){let t=p.useContext(YE);if(t===null){let r=new Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,Ih),r}return t}function cee(e,t){return Re(t.type,lee,e,t)}let uee=p.Fragment;function dee(e,t){let{value:r,defaultValue:n,form:a,name:o,onChange:i,by:s=(H,K)=>H===K,disabled:l=!1,horizontal:u=!1,multiple:f=!1,...c}=e;const d=u?"horizontal":"vertical";let h=We(t),[g=f?[]:void 0,m]=lD(r,i,n),[w,v]=p.useReducer(cee,{dataRef:p.createRef(),listboxState:1,options:[],searchQuery:"",labelId:null,activeOptionIndex:null,activationTrigger:1}),b=p.useRef({static:!1,hold:!1}),_=p.useRef(null),$=p.useRef(null),C=p.useRef(null),O=re(typeof s=="string"?(H,K)=>{let Q=s;return(H==null?void 0:H[Q])===(K==null?void 0:K[Q])}:s),x=p.useCallback(H=>Re(S.mode,{[1]:()=>g.some(K=>O(K,H)),[0]:()=>O(g,H)}),[g]),S=p.useMemo(()=>({...w,value:g,disabled:l,mode:f?1:0,orientation:d,compare:O,isSelected:x,optionsPropsRef:b,labelRef:_,buttonRef:$,optionsRef:C}),[g,l,f,w]);gt(()=>{w.dataRef.current=S},[S]),UE([S.buttonRef,S.optionsRef],(H,K)=>{var Q;v({type:1}),BE(K,B0.Loose)||(H.preventDefault(),(Q=S.buttonRef.current)==null||Q.focus())},S.listboxState===0);let A=p.useMemo(()=>({open:S.listboxState===0,disabled:l,value:g}),[S,l,g]),k=re(H=>{let K=S.options.find(Q=>Q.id===H);K&&B(K.dataRef.current.value)}),N=re(()=>{if(S.activeOptionIndex!==null){let{dataRef:H,id:K}=S.options[S.activeOptionIndex];B(H.current.value),v({type:2,focus:Pr.Specific,id:K})}}),P=re(()=>v({type:0})),I=re(()=>v({type:1})),E=re((H,K,Q)=>H===Pr.Specific?v({type:2,focus:Pr.Specific,id:K,trigger:Q}):v({type:2,focus:H,trigger:Q})),R=re((H,K)=>(v({type:5,id:H,dataRef:K}),()=>v({type:6,id:H}))),F=re(H=>(v({type:7,id:H}),()=>v({type:7,id:null}))),B=re(H=>Re(S.mode,{[0](){return m==null?void 0:m(H)},[1](){let K=S.value.slice(),Q=K.findIndex(J=>O(J,H));return Q===-1?K.push(H):K.splice(Q,1),m==null?void 0:m(K)}})),j=re(H=>v({type:3,value:H})),M=re(()=>v({type:4})),D=p.useMemo(()=>({onChange:B,registerOption:R,registerLabel:F,goToOption:E,closeListbox:I,openListbox:P,selectActiveOption:N,selectOption:k,search:j,clearSearch:M}),[]),U={ref:h},V=p.useRef(null),G=ji();return p.useEffect(()=>{V.current&&n!==void 0&&G.addEventListener(V.current,"reset",()=>{B(n)})},[V,B]),Y.createElement(qE.Provider,{value:D},Y.createElement(YE.Provider,{value:S},Y.createElement(VE,{value:Re(S.listboxState,{[0]:ut.Open,[1]:ut.Closed})},o!=null&&g!=null&&oD({[o]:g}).map(([H,K],Q)=>Y.createElement(Ca,{features:Ea.Hidden,ref:Q===0?J=>{var de;V.current=(de=J==null?void 0:J.closest("form"))!=null?de:null}:void 0,...wm({key:H,as:"input",type:"hidden",hidden:!0,readOnly:!0,form:a,name:H,value:K})})),Fe({ourProps:U,theirProps:c,slot:A,defaultTag:uee,name:"Listbox"}))))}let fee="button";function hee(e,t){var r;let n=kt(),{id:a=`headlessui-listbox-button-${n}`,...o}=e,i=Ih("Listbox.Button"),s=Ph("Listbox.Button"),l=We(i.buttonRef,t),u=ji(),f=re(w=>{switch(w.key){case ye.Space:case ye.Enter:case ye.ArrowDown:w.preventDefault(),s.openListbox(),u.nextFrame(()=>{i.value||s.goToOption(Pr.First)});break;case ye.ArrowUp:w.preventDefault(),s.openListbox(),u.nextFrame(()=>{i.value||s.goToOption(Pr.Last)});break}}),c=re(w=>{switch(w.key){case ye.Space:w.preventDefault();break}}),d=re(w=>{if(Rh(w.currentTarget))return w.preventDefault();i.listboxState===0?(s.closeListbox(),u.nextFrame(()=>{var v;return(v=i.buttonRef.current)==null?void 0:v.focus({preventScroll:!0})})):(w.preventDefault(),s.openListbox())}),h=tD(()=>{if(i.labelId)return[i.labelId,a].join(" ")},[i.labelId,a]),g=p.useMemo(()=>({open:i.listboxState===0,disabled:i.disabled,value:i.value}),[i]),m={ref:l,id:a,type:U0(e,i.buttonRef),"aria-haspopup":"listbox","aria-controls":(r=i.optionsRef.current)==null?void 0:r.id,"aria-expanded":i.disabled?void 0:i.listboxState===0,"aria-labelledby":h,disabled:i.disabled,onKeyDown:f,onKeyUp:c,onClick:d};return Fe({ourProps:m,theirProps:o,slot:g,defaultTag:fee,name:"Listbox.Button"})}let pee="label";function gee(e,t){let r=kt(),{id:n=`headlessui-listbox-label-${r}`,...a}=e,o=Ih("Listbox.Label"),i=Ph("Listbox.Label"),s=We(o.labelRef,t);gt(()=>i.registerLabel(n),[n]);let l=re(()=>{var f;return(f=o.buttonRef.current)==null?void 0:f.focus({preventScroll:!0})}),u=p.useMemo(()=>({open:o.listboxState===0,disabled:o.disabled}),[o]);return Fe({ourProps:{ref:s,id:n,onClick:l},theirProps:a,slot:u,defaultTag:pee,name:"Listbox.Label"})}let vee="ul",mee=kn.RenderStrategy|kn.Static;function yee(e,t){var r;let n=kt(),{id:a=`headlessui-listbox-options-${n}`,...o}=e,i=Ih("Listbox.Options"),s=Ph("Listbox.Options"),l=We(i.optionsRef,t),u=ji(),f=ji(),c=Au(),d=(()=>c!==null?(c&ut.Open)===ut.Open:i.listboxState===0)();p.useEffect(()=>{var v;let b=i.optionsRef.current;b&&i.listboxState===0&&b!==((v=Ah(b))==null?void 0:v.activeElement)&&b.focus({preventScroll:!0})},[i.listboxState,i.optionsRef]);let h=re(v=>{switch(f.dispose(),v.key){case ye.Space:if(i.searchQuery!=="")return v.preventDefault(),v.stopPropagation(),s.search(v.key);case ye.Enter:if(v.preventDefault(),v.stopPropagation(),i.activeOptionIndex!==null){let{dataRef:b}=i.options[i.activeOptionIndex];s.onChange(b.current.value)}i.mode===0&&(s.closeListbox(),yo().nextFrame(()=>{var b;return(b=i.buttonRef.current)==null?void 0:b.focus({preventScroll:!0})}));break;case Re(i.orientation,{vertical:ye.ArrowDown,horizontal:ye.ArrowRight}):return v.preventDefault(),v.stopPropagation(),s.goToOption(Pr.Next);case Re(i.orientation,{vertical:ye.ArrowUp,horizontal:ye.ArrowLeft}):return v.preventDefault(),v.stopPropagation(),s.goToOption(Pr.Previous);case ye.Home:case ye.PageUp:return v.preventDefault(),v.stopPropagation(),s.goToOption(Pr.First);case ye.End:case ye.PageDown:return v.preventDefault(),v.stopPropagation(),s.goToOption(Pr.Last);case ye.Escape:return v.preventDefault(),v.stopPropagation(),s.closeListbox(),u.nextFrame(()=>{var b;return(b=i.buttonRef.current)==null?void 0:b.focus({preventScroll:!0})});case ye.Tab:v.preventDefault(),v.stopPropagation();break;default:v.key.length===1&&(s.search(v.key),f.setTimeout(()=>s.clearSearch(),350));break}}),g=tD(()=>{var v,b,_;return(_=(v=i.labelRef.current)==null?void 0:v.id)!=null?_:(b=i.buttonRef.current)==null?void 0:b.id},[i.labelRef.current,i.buttonRef.current]),m=p.useMemo(()=>({open:i.listboxState===0}),[i]),w={"aria-activedescendant":i.activeOptionIndex===null||(r=i.options[i.activeOptionIndex])==null?void 0:r.id,"aria-multiselectable":i.mode===1?!0:void 0,"aria-labelledby":g,"aria-orientation":i.orientation,id:a,onKeyDown:h,role:"listbox",tabIndex:0,ref:l};return Fe({ourProps:w,theirProps:o,slot:m,defaultTag:vee,features:mee,visible:d,name:"Listbox.Options"})}let bee="li";function wee(e,t){let r=kt(),{id:n=`headlessui-listbox-option-${r}`,disabled:a=!1,value:o,...i}=e,s=Ih("Listbox.Option"),l=Ph("Listbox.Option"),u=s.activeOptionIndex!==null?s.options[s.activeOptionIndex].id===n:!1,f=s.isSelected(o),c=p.useRef(null),d=dr({disabled:a,value:o,domRef:c,get textValue(){var C,O;return(O=(C=c.current)==null?void 0:C.textContent)==null?void 0:O.toLowerCase()}}),h=We(t,c);gt(()=>{if(s.listboxState!==0||!u||s.activationTrigger===0)return;let C=yo();return C.requestAnimationFrame(()=>{var O,x;(x=(O=c.current)==null?void 0:O.scrollIntoView)==null||x.call(O,{block:"nearest"})}),C.dispose},[c,u,s.listboxState,s.activationTrigger,s.activeOptionIndex]),gt(()=>l.registerOption(n,d),[d,n]);let g=re(C=>{if(a)return C.preventDefault();l.onChange(o),s.mode===0&&(l.closeListbox(),yo().nextFrame(()=>{var O;return(O=s.buttonRef.current)==null?void 0:O.focus({preventScroll:!0})}))}),m=re(()=>{if(a)return l.goToOption(Pr.Nothing);l.goToOption(Pr.Specific,n)}),w=qQ(),v=re(C=>w.update(C)),b=re(C=>{w.wasMoved(C)&&(a||u||l.goToOption(Pr.Specific,n,0))}),_=re(C=>{w.wasMoved(C)&&(a||u&&l.goToOption(Pr.Nothing))}),$=p.useMemo(()=>({active:u,selected:f,disabled:a}),[u,f,a]);return Fe({ourProps:{id:n,ref:h,role:"option",tabIndex:a===!0?void 0:-1,"aria-disabled":a===!0?!0:void 0,"aria-selected":f,disabled:void 0,onClick:g,onFocus:m,onPointerEnter:v,onMouseEnter:v,onPointerMove:b,onMouseMove:b,onPointerLeave:_,onMouseLeave:_},theirProps:i,slot:$,defaultTag:bee,name:"Listbox.Option"})}let _ee=Be(dee),$ee=Be(hee),xee=Be(gee),See=Be(yee),Eee=Be(wee),ur=Object.assign(_ee,{Button:$ee,Label:xee,Options:See,Option:Eee});var Cee=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(Cee||{}),Tee=(e=>(e[e.TogglePopover=0]="TogglePopover",e[e.ClosePopover=1]="ClosePopover",e[e.SetButton=2]="SetButton",e[e.SetButtonId=3]="SetButtonId",e[e.SetPanel=4]="SetPanel",e[e.SetPanelId=5]="SetPanelId",e))(Tee||{});let Aee={[0]:e=>({...e,popoverState:Re(e.popoverState,{[0]:1,[1]:0})}),[1](e){return e.popoverState===1?e:{...e,popoverState:1}},[2](e,t){return e.button===t.button?e:{...e,button:t.button}},[3](e,t){return e.buttonId===t.buttonId?e:{...e,buttonId:t.buttonId}},[4](e,t){return e.panel===t.panel?e:{...e,panel:t.panel}},[5](e,t){return e.panelId===t.panelId?e:{...e,panelId:t.panelId}}},ZE=p.createContext(null);ZE.displayName="PopoverContext";function z0(e){let t=p.useContext(ZE);if(t===null){let r=new Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,z0),r}return t}let XE=p.createContext(null);XE.displayName="PopoverAPIContext";function QE(e){let t=p.useContext(XE);if(t===null){let r=new Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,QE),r}return t}let JE=p.createContext(null);JE.displayName="PopoverGroupContext";function yD(){return p.useContext(JE)}let V0=p.createContext(null);V0.displayName="PopoverPanelContext";function Ree(){return p.useContext(V0)}function Oee(e,t){return Re(t.type,Aee,e,t)}let kee="div";function Pee(e,t){var r;let n=p.useRef(null),a=We(t,nD(P=>{n.current=P})),o=p.useRef([]),i=p.useReducer(Oee,{popoverState:1,buttons:o,button:null,buttonId:null,panel:null,panelId:null,beforePanelSentinel:p.createRef(),afterPanelSentinel:p.createRef()}),[{popoverState:s,button:l,buttonId:u,panel:f,panelId:c,beforePanelSentinel:d,afterPanelSentinel:h},g]=i,m=pl((r=n.current)!=null?r:l),w=p.useMemo(()=>{if(!l||!f)return!1;for(let j of document.querySelectorAll("body > *"))if(Number(j==null?void 0:j.contains(l))^Number(j==null?void 0:j.contains(f)))return!0;let P=F0(),I=P.indexOf(l),E=(I+P.length-1)%P.length,R=(I+1)%P.length,F=P[E],B=P[R];return!f.contains(F)&&!f.contains(B)},[l,f]),v=dr(u),b=dr(c),_=p.useMemo(()=>({buttonId:v,panelId:b,close:()=>g({type:1})}),[v,b,g]),$=yD(),C=$==null?void 0:$.registerPopover,O=re(()=>{var P;return(P=$==null?void 0:$.isFocusWithinPopoverGroup())!=null?P:(m==null?void 0:m.activeElement)&&((l==null?void 0:l.contains(m.activeElement))||(f==null?void 0:f.contains(m.activeElement)))});p.useEffect(()=>C==null?void 0:C(_),[C,_]),GE(m==null?void 0:m.defaultView,"focus",P=>{var I,E,R,F;s===0&&(O()||l&&f&&P.target!==window&&((E=(I=d.current)==null?void 0:I.contains)!=null&&E.call(I,P.target)||(F=(R=h.current)==null?void 0:R.contains)!=null&&F.call(R,P.target)||g({type:1})))},!0),UE([l,f],(P,I)=>{g({type:1}),BE(I,B0.Loose)||(P.preventDefault(),l==null||l.focus())},s===0);let x=re(P=>{g({type:1});let I=(()=>P?P instanceof HTMLElement?P:"current"in P&&P.current instanceof HTMLElement?P.current:l:l)();I==null||I.focus()}),S=p.useMemo(()=>({close:x,isPortalled:w}),[x,w]),A=p.useMemo(()=>({open:s===0,close:x}),[s,x]),k=e,N={ref:a};return Y.createElement(V0.Provider,{value:null},Y.createElement(ZE.Provider,{value:i},Y.createElement(XE.Provider,{value:S},Y.createElement(VE,{value:Re(s,{[0]:ut.Open,[1]:ut.Closed})},Fe({ourProps:N,theirProps:k,slot:A,defaultTag:kee,name:"Popover"})))))}let Iee="button";function Nee(e,t){let r=kt(),{id:n=`headlessui-popover-button-${r}`,...a}=e,[o,i]=z0("Popover.Button"),{isPortalled:s}=QE("Popover.Button"),l=p.useRef(null),u=`headlessui-focus-sentinel-${kt()}`,f=yD(),c=f==null?void 0:f.closeOthers,d=Ree()!==null;p.useEffect(()=>{if(!d)return i({type:3,buttonId:n}),()=>{i({type:3,buttonId:null})}},[d,n,i]);let[h]=p.useState(()=>Symbol()),g=We(l,t,d?null:N=>{if(N)o.buttons.current.push(h);else{let P=o.buttons.current.indexOf(h);P!==-1&&o.buttons.current.splice(P,1)}o.buttons.current.length>1,N&&i({type:2,button:N})}),m=We(l,t),w=pl(l),v=re(N=>{var P,I,E;if(d){if(o.popoverState===1)return;switch(N.key){case ye.Space:case ye.Enter:N.preventDefault(),(I=(P=N.target).click)==null||I.call(P),i({type:1}),(E=o.button)==null||E.focus();break}}else switch(N.key){case ye.Space:case ye.Enter:N.preventDefault(),N.stopPropagation(),o.popoverState===1&&(c==null||c(o.buttonId)),i({type:0});break;case ye.Escape:if(o.popoverState!==0)return c==null?void 0:c(o.buttonId);if(!l.current||w!=null&&w.activeElement&&!l.current.contains(w.activeElement))return;N.preventDefault(),N.stopPropagation(),i({type:1});break}}),b=re(N=>{d||N.key===ye.Space&&N.preventDefault()}),_=re(N=>{var P,I;Rh(N.currentTarget)||e.disabled||(d?(i({type:1}),(P=o.button)==null||P.focus()):(N.preventDefault(),N.stopPropagation(),o.popoverState===1&&(c==null||c(o.buttonId)),i({type:0}),(I=o.button)==null||I.focus()))}),$=re(N=>{N.preventDefault(),N.stopPropagation()}),C=o.popoverState===0,O=p.useMemo(()=>({open:C}),[C]),x=U0(e,l),S=d?{ref:m,type:x,onKeyDown:v,onClick:_}:{ref:g,id:o.buttonId,type:x,"aria-expanded":e.disabled?void 0:o.popoverState===0,"aria-controls":o.panel?o.panelId:void 0,onKeyDown:v,onKeyUp:b,onClick:_,onMouseDown:$},A=HE(),k=re(()=>{let N=o.panel;if(!N)return;function P(){Re(A.current,{[Zr.Forwards]:()=>qt(N,et.First),[Zr.Backwards]:()=>qt(N,et.Last)})===to.Error&&qt(F0().filter(I=>I.dataset.headlessuiFocusGuard!=="true"),Re(A.current,{[Zr.Forwards]:et.Next,[Zr.Backwards]:et.Previous}),{relativeTo:o.button})}P()});return Y.createElement(Y.Fragment,null,Fe({ourProps:S,theirProps:a,slot:O,defaultTag:Iee,name:"Popover.Button"}),C&&!d&&s&&Y.createElement(Ca,{id:u,features:Ea.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:k}))}let Lee="div",Mee=kn.RenderStrategy|kn.Static;function Dee(e,t){let r=kt(),{id:n=`headlessui-popover-overlay-${r}`,...a}=e,[{popoverState:o},i]=z0("Popover.Overlay"),s=We(t),l=Au(),u=(()=>l!==null?(l&ut.Open)===ut.Open:o===0)(),f=re(d=>{if(Rh(d.currentTarget))return d.preventDefault();i({type:1})}),c=p.useMemo(()=>({open:o===0}),[o]);return Fe({ourProps:{ref:s,id:n,"aria-hidden":!0,onClick:f},theirProps:a,slot:c,defaultTag:Lee,features:Mee,visible:u,name:"Popover.Overlay"})}let jee="div",Fee=kn.RenderStrategy|kn.Static;function Bee(e,t){let r=kt(),{id:n=`headlessui-popover-panel-${r}`,focus:a=!1,...o}=e,[i,s]=z0("Popover.Panel"),{close:l,isPortalled:u}=QE("Popover.Panel"),f=`headlessui-focus-sentinel-before-${kt()}`,c=`headlessui-focus-sentinel-after-${kt()}`,d=p.useRef(null),h=We(d,t,x=>{s({type:4,panel:x})}),g=pl(d);gt(()=>(s({type:5,panelId:n}),()=>{s({type:5,panelId:null})}),[n,s]);let m=Au(),w=(()=>m!==null?(m&ut.Open)===ut.Open:i.popoverState===0)(),v=re(x=>{var S;switch(x.key){case ye.Escape:if(i.popoverState!==0||!d.current||g!=null&&g.activeElement&&!d.current.contains(g.activeElement))return;x.preventDefault(),x.stopPropagation(),s({type:1}),(S=i.button)==null||S.focus();break}});p.useEffect(()=>{var x;e.static||i.popoverState===1&&((x=e.unmount)==null||x)&&s({type:4,panel:null})},[i.popoverState,e.unmount,e.static,s]),p.useEffect(()=>{if(!a||i.popoverState!==0||!d.current)return;let x=g==null?void 0:g.activeElement;d.current.contains(x)||qt(d.current,et.First)},[a,d,i.popoverState]);let b=p.useMemo(()=>({open:i.popoverState===0,close:l}),[i,l]),_={ref:h,id:n,onKeyDown:v,onBlur:a&&i.popoverState===0?x=>{var S,A,k,N,P;let I=x.relatedTarget;I&&d.current&&((S=d.current)!=null&&S.contains(I)||(s({type:1}),((k=(A=i.beforePanelSentinel.current)==null?void 0:A.contains)!=null&&k.call(A,I)||(P=(N=i.afterPanelSentinel.current)==null?void 0:N.contains)!=null&&P.call(N,I))&&I.focus({preventScroll:!0})))}:void 0,tabIndex:-1},$=HE(),C=re(()=>{let x=d.current;if(!x)return;function S(){Re($.current,{[Zr.Forwards]:()=>{var A;qt(x,et.First)===to.Error&&((A=i.afterPanelSentinel.current)==null||A.focus())},[Zr.Backwards]:()=>{var A;(A=i.button)==null||A.focus({preventScroll:!0})}})}S()}),O=re(()=>{let x=d.current;if(!x)return;function S(){Re($.current,{[Zr.Forwards]:()=>{var A;if(!i.button)return;let k=F0(),N=k.indexOf(i.button),P=k.slice(0,N+1),I=[...k.slice(N+1),...P];for(let E of I.slice())if(E.dataset.headlessuiFocusGuard==="true"||(A=i.panel)!=null&&A.contains(E)){let R=I.indexOf(E);R!==-1&&I.splice(R,1)}qt(I,et.First,{sorted:!1})},[Zr.Backwards]:()=>{var A;qt(x,et.Previous)===to.Error&&((A=i.button)==null||A.focus())}})}S()});return Y.createElement(V0.Provider,{value:n},w&&u&&Y.createElement(Ca,{id:f,ref:i.beforePanelSentinel,features:Ea.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:C}),Fe({ourProps:_,theirProps:o,slot:b,defaultTag:jee,features:Fee,visible:w,name:"Popover.Panel"}),w&&u&&Y.createElement(Ca,{id:c,ref:i.afterPanelSentinel,features:Ea.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:O}))}let Uee="div";function zee(e,t){let r=p.useRef(null),n=We(r,t),[a,o]=p.useState([]),i=re(g=>{o(m=>{let w=m.indexOf(g);if(w!==-1){let v=m.slice();return v.splice(w,1),v}return m})}),s=re(g=>(o(m=>[...m,g]),()=>i(g))),l=re(()=>{var g;let m=Ah(r);if(!m)return!1;let w=m.activeElement;return(g=r.current)!=null&&g.contains(w)?!0:a.some(v=>{var b,_;return((b=m.getElementById(v.buttonId.current))==null?void 0:b.contains(w))||((_=m.getElementById(v.panelId.current))==null?void 0:_.contains(w))})}),u=re(g=>{for(let m of a)m.buttonId.current!==g&&m.close()}),f=p.useMemo(()=>({registerPopover:s,unregisterPopover:i,isFocusWithinPopoverGroup:l,closeOthers:u}),[s,i,l,u]),c=p.useMemo(()=>({}),[]),d=e,h={ref:n};return Y.createElement(JE.Provider,{value:f},Fe({ourProps:h,theirProps:d,slot:c,defaultTag:Uee,name:"Popover.Group"}))}let Vee=Be(Pee),Wee=Be(Nee),Hee=Be(Dee),Gee=Be(Bee),Kee=Be(zee),An=Object.assign(Vee,{Button:Wee,Overlay:Hee,Panel:Gee,Group:Kee});function qee(e=0){let[t,r]=p.useState(e),n=Oh(),a=p.useCallback(l=>{n.current&&r(u=>u|l)},[t,n]),o=p.useCallback(l=>!!(t&l),[t]),i=p.useCallback(l=>{n.current&&r(u=>u&~l)},[r,n]),s=p.useCallback(l=>{n.current&&r(u=>u^l)},[r]);return{flags:t,addFlag:a,hasFlag:o,removeFlag:i,toggleFlag:s}}let bD=p.createContext(null);function wD(){let e=p.useContext(bD);if(e===null){let t=new Error("You used a