From 0bad29434d19ae4f73304255e90d1758bf535c57 Mon Sep 17 00:00:00 2001 From: swift-river542 Date: Wed, 16 Sep 2026 22:47:42 -0500 Subject: [PATCH] Rebuild bundles: shared control menu --- .../cities-internet/cities-internet.js | 115 ++++-------- .../connectivity-list/index.html | 2 +- .../connectivity-map/index.html | 2 +- .../cities-internet/data-tables/index.html | 2 +- public/doxa-maps/cities-internet/index.html | 2 +- .../country-posters/countries-map/index.html | 2 +- .../country-poster-wall/index.html | 2 +- .../country-posters/country-posters.js | 171 +++++++---------- public/doxa-maps/country-posters/index.html | 2 +- public/doxa-maps/demo-map/demo-map.js | 139 +++++--------- public/doxa-maps/demo-map/demo-map/index.html | 2 +- .../demo-map/demo-map/maplibre/index.html | 2 +- public/doxa-maps/demo-map/index.html | 2 +- .../doxa-research-map/doxa-research-map.js | 175 +++++++----------- public/doxa-maps/doxa-research-map/index.html | 2 +- .../doxa-research-map/research-map/index.html | 2 +- .../doxa-simple-map/doxa-simple-map.js | 169 +++++++---------- .../doxa-simple-map/adoption/index.html | 2 +- .../doxa-simple-map/engagement/index.html | 2 +- .../doxa-simple-map/index.html | 2 +- .../doxa-simple-map/prayer/index.html | 2 +- public/doxa-maps/doxa-simple-map/index.html | 2 +- .../gospel-resources/charts/index.html | 2 +- .../gospel-resources/data-tables/index.html | 2 +- .../gospel-resources/gospel-resources.js | 115 ++++-------- public/doxa-maps/gospel-resources/index.html | 2 +- .../resources-list/index.html | 2 +- .../gospel-resources/resources-map/index.html | 2 +- public/doxa-maps/index.html | 2 +- public/doxa-maps/manifest.json | 44 ++--- public/doxa-maps/my-upg-100-list/index.html | 2 +- .../my-upg-100-list/my-upg-100-list.js | 137 +++++--------- .../my-upg-100-list/poster-wall/index.html | 2 +- .../my-upg-100-list/upg-100-list/index.html | 2 +- .../my-upg-100-list/upg-100-mfe/index.html | 2 +- public/index.html | 2 +- 36 files changed, 417 insertions(+), 704 deletions(-) diff --git a/public/doxa-maps/cities-internet/cities-internet.js b/public/doxa-maps/cities-internet/cities-internet.js index 0c97be918..99be7647b 100644 --- a/public/doxa-maps/cities-internet/cities-internet.js +++ b/public/doxa-maps/cities-internet/cities-internet.js @@ -1,46 +1,46 @@ (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".profile-loader[data-v-b7582f77]{width:100%;height:100%;position:relative}.profile-error[data-v-b7582f77]{padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;font-family:monospace;font-size:13px}")),document.head.appendChild(e)}}catch(d){console.error("vite-plugin-css-injected-by-js",d)}})(); -(function(){"use strict";var ir=typeof document<"u"?document.currentScript:null;const d_="modulepreload",f_=function(e){return"/"+e},h_={},ar=function(t,n,o){let s=Promise.resolve();function r(i){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=i,window.dispatchEvent(a),!a.defaultPrevented)throw i}return s.then(i=>{for(const a of i||[])a.status==="rejected"&&r(a.reason);return t().catch(r)})};/** +(function(){"use strict";var ir=typeof document<"u"?document.currentScript:null;const y_="modulepreload",v_=function(e){return"/"+e},w_={},ar=function(t,n,o){let s=Promise.resolve();function r(i){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=i,window.dispatchEvent(a),!a.defaultPrevented)throw i}return s.then(i=>{for(const a of i||[])a.status==="rejected"&&r(a.reason);return t().catch(r)})};/** * @vue/shared v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function lr(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const _e={},gn=[],ft=()=>{},vs=()=>!1,po=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),fo=e=>e.startsWith("onUpdate:"),Ee=Object.assign,cr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Bl=Object.prototype.hasOwnProperty,he=(e,t)=>Bl.call(e,t),te=Array.isArray,jt=e=>Fn(e)==="[object Map]",ho=e=>Fn(e)==="[object Set]",ws=e=>Fn(e)==="[object Date]",oe=e=>typeof e=="function",be=e=>typeof e=="string",Ke=e=>typeof e=="symbol",ge=e=>e!==null&&typeof e=="object",ks=e=>(ge(e)||oe(e))&&oe(e.then)&&oe(e.catch),$s=Object.prototype.toString,Fn=e=>$s.call(e),Rl=e=>Fn(e).slice(8,-1),go=e=>Fn(e)==="[object Object]",mo=e=>be(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,xn=lr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),_o=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Wl=/-\w/g,xe=_o(e=>e.replace(Wl,t=>t.slice(1).toUpperCase())),Ul=/\B([A-Z])/g,tt=_o(e=>e.replace(Ul,"-$1").toLowerCase()),bo=_o(e=>e.charAt(0).toUpperCase()+e.slice(1)),ur=_o(e=>e?`on${bo(e)}`:""),ht=(e,t)=>!Object.is(e,t),pr=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},jl=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Ns=e=>{const t=be(e)?Number(e):NaN;return isNaN(t)?e:t};let Cs;const yo=()=>Cs||(Cs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Pn(e){if(te(e)){const t={};for(let n=0;n{if(n){const o=n.split(Yl);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function Se(e){let t="";if(be(e))t=e;else if(te(e))for(let n=0;n!!(e&&e.__v_isRef===!0),Q=e=>be(e)?e:e==null?"":te(e)||ge(e)&&(e.toString===$s||!oe(e.toString))?Ts(e)?Q(e.value):JSON.stringify(e,Ls,2):String(e),Ls=(e,t)=>Ts(t)?Ls(e,t.value):jt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,s],r)=>(n[dr(o,r)+" =>"]=s,n),{})}:ho(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>dr(n))}:Ke(t)?dr(t):ge(t)&&!te(t)&&!go(t)?String(t):t,dr=(e,t="")=>{var n;return Ke(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +**/function lr(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const _e={},gn=[],ft=()=>{},ks=()=>!1,uo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),po=e=>e.startsWith("onUpdate:"),Ce=Object.assign,cr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Rl=Object.prototype.hasOwnProperty,fe=(e,t)=>Rl.call(e,t),Q=Array.isArray,Gt=e=>Fn(e)==="[object Map]",fo=e=>Fn(e)==="[object Set]",$s=e=>Fn(e)==="[object Date]",ne=e=>typeof e=="function",be=e=>typeof e=="string",Ke=e=>typeof e=="symbol",ge=e=>e!==null&&typeof e=="object",Os=e=>(ge(e)||ne(e))&&ne(e.then)&&ne(e.catch),Ns=Object.prototype.toString,Fn=e=>Ns.call(e),Wl=e=>Fn(e).slice(8,-1),ho=e=>Fn(e)==="[object Object]",go=e=>be(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,xn=lr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),mo=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Ul=/-\w/g,xe=mo(e=>e.replace(Ul,t=>t.slice(1).toUpperCase())),jl=/\B([A-Z])/g,tt=mo(e=>e.replace(jl,"-$1").toLowerCase()),_o=mo(e=>e.charAt(0).toUpperCase()+e.slice(1)),ur=mo(e=>e?`on${_o(e)}`:""),ht=(e,t)=>!Object.is(e,t),pr=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},Gl=e=>{const t=parseFloat(e);return isNaN(t)?e:t},As=e=>{const t=be(e)?Number(e):NaN;return isNaN(t)?e:t};let Es;const bo=()=>Es||(Es=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Pn(e){if(Q(e)){const t={};for(let n=0;n{if(n){const o=n.split(Vl);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function Te(e){let t="";if(be(e))t=e;else if(Q(e))for(let n=0;n!!(e&&e.__v_isRef===!0),Z=e=>be(e)?e:e==null?"":Q(e)||ge(e)&&(e.toString===Ns||!ne(e.toString))?Ss(e)?Z(e.value):JSON.stringify(e,Is,2):String(e),Is=(e,t)=>Ss(t)?Is(e,t.value):Gt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,s],r)=>(n[dr(o,r)+" =>"]=s,n),{})}:fo(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>dr(n))}:Ke(t)?dr(t):ge(t)&&!Q(t)&&!ho(t)?String(t):t,dr=(e,t="")=>{var n;return Ke(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** * @vue/reactivity v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Ie;class Ss{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&Ie&&(Ie.active?(this.parent=Ie,this.index=(Ie.scopes||(Ie.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const o=this.scopes.slice();for(t=0,n=o.length;t0&&--this._on===0){if(Ie===this)Ie=this.prevScope;else{let t=Ie;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,o;for(n=0,o=this.effects.length;n0)return;if(Dn){let t=Dn;for(Dn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Mn;){let t=Mn;for(Mn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function Ms(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ds(e){let t,n=e.depsTail,o=n;for(;o;){const s=o.prevDep;o.version===-1?(o===n&&(n=s),br(o),Xl(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=s}e.deps=t,e.depsTail=n}function _r(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Bs(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Bs(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Bn)||(e.globalVersion=Bn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!_r(e))))return;e.flags|=2;const t=e.dep,n=ye,o=st;ye=e,st=!0;try{Ms(e);const s=e.fn(e._value);(t.version===0||ht(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{ye=n,st=o,Ds(e),e.flags&=-3}}function br(e,t=!1){const{dep:n,prevSub:o,nextSub:s}=e;if(o&&(o.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let r=n.computed.deps;r;r=r.nextDep)br(r,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Xl(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let st=!0;const Rs=[];function gt(){Rs.push(st),st=!1}function mt(){const e=Rs.pop();st=e===void 0?!0:e}function Ws(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ye;ye=void 0;try{t()}finally{ye=n}}}let Bn=0;class Jl{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class yr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ye||!st||ye===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ye)n=this.activeLink=new Jl(ye,this),ye.deps?(n.prevDep=ye.depsTail,ye.depsTail.nextDep=n,ye.depsTail=n):ye.deps=ye.depsTail=n,Us(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=ye.depsTail,n.nextDep=void 0,ye.depsTail.nextDep=n,ye.depsTail=n,ye.deps===n&&(ye.deps=o)}return n}trigger(t){this.version++,Bn++,this.notify(t)}notify(t){gr();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{mr()}}}function Us(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)Us(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const wo=new WeakMap,on=Symbol(""),vr=Symbol(""),Rn=Symbol("");function Ue(e,t,n){if(st&&ye){let o=wo.get(e);o||wo.set(e,o=new Map);let s=o.get(n);s||(o.set(n,s=new yr),s.map=o,s.key=n),s.track()}}function At(e,t,n,o,s,r){const i=wo.get(e);if(!i){Bn++;return}const a=l=>{l&&l.trigger()};if(gr(),t==="clear")i.forEach(a);else{const l=te(e),c=l&&mo(n);if(l&&n==="length"){const u=Number(o);i.forEach((f,h)=>{(h==="length"||h===Rn||!Ke(h)&&h>=u)&&a(f)})}else switch((n!==void 0||i.has(void 0))&&a(i.get(n)),c&&a(i.get(Rn)),t){case"add":l?c&&a(i.get("length")):(a(i.get(on)),jt(e)&&a(i.get(vr)));break;case"delete":l||(a(i.get(on)),jt(e)&&a(i.get(vr)));break;case"set":jt(e)&&a(i.get(on));break}}mr()}function Zl(e,t){const n=wo.get(e);return n&&n.get(t)}function mn(e){const t=pe(e);return t===e?t:(Ue(t,"iterate",Rn),Xe(e)?t:t.map(it))}function ko(e){return Ue(e=pe(e),"iterate",Rn),e}function _t(e,t){return Lt(e)?bn(Tt(e)?it(t):t):it(t)}const Ql={__proto__:null,[Symbol.iterator](){return wr(this,Symbol.iterator,e=>_t(this,e))},concat(...e){return mn(this).concat(...e.map(t=>te(t)?mn(t):t))},entries(){return wr(this,"entries",e=>(e[1]=_t(this,e[1]),e))},every(e,t){return Et(this,"every",e,t,void 0,arguments)},filter(e,t){return Et(this,"filter",e,t,n=>n.map(o=>_t(this,o)),arguments)},find(e,t){return Et(this,"find",e,t,n=>_t(this,n),arguments)},findIndex(e,t){return Et(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Et(this,"findLast",e,t,n=>_t(this,n),arguments)},findLastIndex(e,t){return Et(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Et(this,"forEach",e,t,void 0,arguments)},includes(...e){return kr(this,"includes",e)},indexOf(...e){return kr(this,"indexOf",e)},join(e){return mn(this).join(e)},lastIndexOf(...e){return kr(this,"lastIndexOf",e)},map(e,t){return Et(this,"map",e,t,void 0,arguments)},pop(){return Wn(this,"pop")},push(...e){return Wn(this,"push",e)},reduce(e,...t){return js(this,"reduce",e,t)},reduceRight(e,...t){return js(this,"reduceRight",e,t)},shift(){return Wn(this,"shift")},some(e,t){return Et(this,"some",e,t,void 0,arguments)},splice(...e){return Wn(this,"splice",e)},toReversed(){return mn(this).toReversed()},toSorted(e){return mn(this).toSorted(e)},toSpliced(...e){return mn(this).toSpliced(...e)},unshift(...e){return Wn(this,"unshift",e)},values(){return wr(this,"values",e=>_t(this,e))}};function wr(e,t,n){const o=ko(e),s=o[t]();return o!==e&&!Xe(e)&&(s._next=s.next,s.next=()=>{const r=s._next();return r.done||(r.value=n(r.value)),r}),s}const ec=Array.prototype;function Et(e,t,n,o,s,r){const i=ko(e),a=i!==e&&!Xe(e),l=i[t];if(l!==ec[t]){const f=l.apply(e,r);return a?it(f):f}let c=n;i!==e&&(a?c=function(f,h){return n.call(this,_t(e,f),h,e)}:n.length>2&&(c=function(f,h){return n.call(this,f,h,e)}));const u=l.call(i,c,o);return a&&s?s(u):u}function js(e,t,n,o){const s=ko(e),r=s!==e&&!Xe(e);let i=n,a=!1;s!==e&&(r?(a=o.length===0,i=function(c,u,f){return a&&(a=!1,c=_t(e,c)),n.call(this,c,_t(e,u),f,e)}):n.length>3&&(i=function(c,u,f){return n.call(this,c,u,f,e)}));const l=s[t](i,...o);return a?_t(e,l):l}function kr(e,t,n){const o=pe(e);Ue(o,"iterate",Rn);const s=o[t](...n);return(s===-1||s===!1)&&Eo(n[0])?(n[0]=pe(n[0]),o[t](...n)):s}function Wn(e,t,n=[]){gt(),gr();const o=pe(e)[t].apply(e,n);return mr(),mt(),o}const tc=lr("__proto__,__v_isRef,__isVue"),Gs=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Ke));function nc(e){Ke(e)||(e=String(e));const t=pe(this);return Ue(t,"has",e),t.hasOwnProperty(e)}class Ys{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,r=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return r;if(n==="__v_raw")return o===(s?r?Xs:Ks:r?zs:qs).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const i=te(t);if(!s){let l;if(i&&(l=Ql[n]))return l;if(n==="hasOwnProperty")return nc}const a=Reflect.get(t,n,Ne(t)?t:o);if((Ke(n)?Gs.has(n):tc(n))||(s||Ue(t,"get",n),r))return a;if(Ne(a)){const l=i&&mo(n)?a:a.value;return s&&ge(l)?Or(l):l}return ge(a)?s?Or(a):Co(a):a}}class Vs extends Ys{constructor(t=!1){super(!1,t)}set(t,n,o,s){let r=t[n];const i=te(t)&&mo(n);if(!this._isShallow){const c=Lt(r);if(!Xe(o)&&!Lt(o)&&(r=pe(r),o=pe(o)),!i&&Ne(r)&&!Ne(o))return c||(r.value=o),!0}const a=i?Number(n)e,$o=e=>Reflect.getPrototypeOf(e);function ac(e,t,n){return function(...o){const s=this.__v_raw,r=pe(s),i=jt(r),a=e==="entries"||e===Symbol.iterator&&i,l=e==="keys"&&i,c=s[e](...o),u=n?$r:t?bn:it;return!t&&Ue(r,"iterate",l?vr:on),Ee(Object.create(c),{next(){const{value:f,done:h}=c.next();return h?{value:f,done:h}:{value:a?[u(f[0]),u(f[1])]:u(f),done:h}}})}}function Oo(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function lc(e,t){const n={get(s){const r=this.__v_raw,i=pe(r),a=pe(s);e||(ht(s,a)&&Ue(i,"get",s),Ue(i,"get",a));const{has:l}=$o(i),c=t?$r:e?bn:it;if(l.call(i,s))return c(r.get(s));if(l.call(i,a))return c(r.get(a));r!==i&&r.get(s)},get size(){const s=this.__v_raw;return!e&&Ue(pe(s),"iterate",on),s.size},has(s){const r=this.__v_raw,i=pe(r),a=pe(s);return e||(ht(s,a)&&Ue(i,"has",s),Ue(i,"has",a)),s===a?r.has(s):r.has(s)||r.has(a)},forEach(s,r){const i=this,a=i.__v_raw,l=pe(a),c=t?$r:e?bn:it;return!e&&Ue(l,"iterate",on),a.forEach((u,f)=>s.call(r,c(u),c(f),i))}};return Ee(n,e?{add:Oo("add"),set:Oo("set"),delete:Oo("delete"),clear:Oo("clear")}:{add(s){const r=pe(this),i=$o(r),a=pe(s),l=!t&&!Xe(s)&&!Lt(s)?a:s;return i.has.call(r,l)||ht(s,l)&&i.has.call(r,s)||ht(a,l)&&i.has.call(r,a)||(r.add(l),At(r,"add",l,l)),this},set(s,r){!t&&!Xe(r)&&!Lt(r)&&(r=pe(r));const i=pe(this),{has:a,get:l}=$o(i);let c=a.call(i,s);c||(s=pe(s),c=a.call(i,s));const u=l.call(i,s);return i.set(s,r),c?ht(r,u)&&At(i,"set",s,r):At(i,"add",s,r),this},delete(s){const r=pe(this),{has:i,get:a}=$o(r);let l=i.call(r,s);l||(s=pe(s),l=i.call(r,s)),a&&a.call(r,s);const c=r.delete(s);return l&&At(r,"delete",s,void 0),c},clear(){const s=pe(this),r=s.size!==0,i=s.clear();return r&&At(s,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=ac(s,e,t)}),n}function No(e,t){const n=lc(e,t);return(o,s,r)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?o:Reflect.get(he(n,s)&&s in o?n:o,s,r)}const cc={get:No(!1,!1)},uc={get:No(!1,!0)},pc={get:No(!0,!1)},dc={get:No(!0,!0)},qs=new WeakMap,zs=new WeakMap,Ks=new WeakMap,Xs=new WeakMap;function fc(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Co(e){return Lt(e)?e:Ao(e,!1,oc,cc,qs)}function hc(e){return Ao(e,!1,sc,uc,zs)}function Or(e){return Ao(e,!0,rc,pc,Ks)}function m_(e){return Ao(e,!0,ic,dc,Xs)}function Ao(e,t,n,o,s){if(!ge(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const r=s.get(e);if(r)return r;const i=fc(Rl(e));if(i===0)return e;const a=new Proxy(e,i===2?o:n);return s.set(e,a),a}function Tt(e){return Lt(e)?Tt(e.__v_raw):!!(e&&e.__v_isReactive)}function Lt(e){return!!(e&&e.__v_isReadonly)}function Xe(e){return!!(e&&e.__v_isShallow)}function Eo(e){return e?!!e.__v_raw:!1}function pe(e){const t=e&&e.__v_raw;return t?pe(t):e}function _n(e){return!he(e,"__v_skip")&&Object.isExtensible(e)&&Os(e,"__v_skip",!0),e}const it=e=>ge(e)?Co(e):e,bn=e=>ge(e)?Or(e):e;function Ne(e){return e?e.__v_isRef===!0:!1}function ce(e){return Js(e,!1)}function To(e){return Js(e,!0)}function Js(e,t){return Ne(e)?e:new gc(e,t)}class gc{constructor(t,n){this.dep=new yr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:pe(t),this._value=n?t:it(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||Xe(t)||Lt(t);t=o?t:pe(t),ht(t,n)&&(this._rawValue=t,this._value=o?t:it(t),this.dep.trigger())}}function nt(e){return Ne(e)?e.value:e}const mc={get:(e,t,n)=>t==="__v_raw"?e:nt(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const s=e[t];return Ne(s)&&!Ne(n)?(s.value=n,!0):Reflect.set(e,t,n,o)}};function Zs(e){return Tt(e)?e:new Proxy(e,mc)}function _c(e){const t=te(e)?new Array(e.length):{};for(const n in e)t[n]=yc(e,n);return t}class bc{constructor(t,n,o){this._object=t,this._defaultValue=o,this.__v_isRef=!0,this._value=void 0,this._key=Ke(n)?n:String(n),this._raw=pe(t);let s=!0,r=t;if(!te(t)||Ke(this._key)||!mo(this._key))do s=!Eo(r)||Xe(r);while(s&&(r=r.__v_raw));this._shallow=s}get value(){let t=this._object[this._key];return this._shallow&&(t=nt(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Ne(this._raw[this._key])){const n=this._object[this._key];if(Ne(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Zl(this._raw,this._key)}}function yc(e,t,n){return new bc(e,t,n)}class vc{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new yr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Bn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&ye!==this)return Ps(this,!0),!0}get value(){const t=this.dep.track();return Bs(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function wc(e,t,n=!1){let o,s;return oe(e)?o=e:(o=e.get,s=e.set),new vc(o,s,n)}const Lo={},So=new WeakMap;let rn;function kc(e,t=!1,n=rn){if(n){let o=So.get(n);o||So.set(n,o=[]),o.push(e)}}function $c(e,t,n=_e){const{immediate:o,deep:s,once:r,scheduler:i,augmentJob:a,call:l}=n,c=m=>s?m:Xe(m)||s===!1||s===0?St(m,1):St(m);let u,f,h,_,v=!1,k=!1;if(Ne(e)?(f=()=>e.value,v=Xe(e)):Tt(e)?(f=()=>c(e),v=!0):te(e)?(k=!0,v=e.some(m=>Tt(m)||Xe(m)),f=()=>e.map(m=>{if(Ne(m))return m.value;if(Tt(m))return c(m);if(oe(m))return l?l(m,2):m()})):oe(e)?t?f=l?()=>l(e,2):e:f=()=>{if(h){gt();try{h()}finally{mt()}}const m=rn;rn=u;try{return l?l(e,3,[_]):e(_)}finally{rn=m}}:f=ft,t&&s){const m=f,A=s===!0?1/0:s;f=()=>St(m(),A)}const F=Is(),C=()=>{u.stop(),F&&F.active&&cr(F.effects,u)};if(r&&t){const m=t;t=(...A)=>{const S=m(...A);return C(),S}}let L=k?new Array(e.length).fill(Lo):Lo;const y=m=>{if(!(!(u.flags&1)||!u.dirty&&!m))if(t){const A=u.run();if(m||s||v||(k?A.some((S,$)=>ht(S,L[$])):ht(A,L))){h&&h();const S=rn;rn=u;try{const $=[A,L===Lo?void 0:k&&L[0]===Lo?[]:L,_];L=A,l?l(t,3,$):t(...$)}finally{rn=S}}}else u.run()};return a&&a(y),u=new Fs(f),u.scheduler=i?()=>i(y,!1):y,_=m=>kc(m,!1,u),h=u.onStop=()=>{const m=So.get(u);if(m){if(l)l(m,4);else for(const A of m)A();So.delete(u)}},t?o?y(!0):L=u.run():i?i(y.bind(null,!0),!0):u.run(),C.pause=u.pause.bind(u),C.resume=u.resume.bind(u),C.stop=C,C}function St(e,t=1/0,n){if(t<=0||!ge(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Ne(e))St(e.value,t,n);else if(te(e))for(let o=0;o{St(o,t,n)});else if(go(e)){for(const o in e)St(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&St(e[o],t,n)}return e}/** +**/let Se;class Fs{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&Se&&(Se.active?(this.parent=Se,this.index=(Se.scopes||(Se.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const o=this.scopes.slice();for(t=0,n=o.length;t0&&--this._on===0){if(Se===this)Se=this.prevScope;else{let t=Se;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,o;for(n=0,o=this.effects.length;n0)return;if(Dn){let t=Dn;for(Dn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Mn;){let t=Mn;for(Mn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function Bs(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Rs(e){let t,n=e.depsTail,o=n;for(;o;){const s=o.prevDep;o.version===-1?(o===n&&(n=s),br(o),Jl(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=s}e.deps=t,e.depsTail=n}function _r(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Ws(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Ws(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Bn)||(e.globalVersion=Bn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!_r(e))))return;e.flags|=2;const t=e.dep,n=ye,o=rt;ye=e,rt=!0;try{Bs(e);const s=e.fn(e._value);(t.version===0||ht(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{ye=n,rt=o,Rs(e),e.flags&=-3}}function br(e,t=!1){const{dep:n,prevSub:o,nextSub:s}=e;if(o&&(o.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let r=n.computed.deps;r;r=r.nextDep)br(r,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Jl(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let rt=!0;const Us=[];function gt(){Us.push(rt),rt=!1}function mt(){const e=Us.pop();rt=e===void 0?!0:e}function js(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ye;ye=void 0;try{t()}finally{ye=n}}}let Bn=0;class Zl{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class yr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ye||!rt||ye===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ye)n=this.activeLink=new Zl(ye,this),ye.deps?(n.prevDep=ye.depsTail,ye.depsTail.nextDep=n,ye.depsTail=n):ye.deps=ye.depsTail=n,Gs(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=ye.depsTail,n.nextDep=void 0,ye.depsTail.nextDep=n,ye.depsTail=n,ye.deps===n&&(ye.deps=o)}return n}trigger(t){this.version++,Bn++,this.notify(t)}notify(t){gr();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{mr()}}}function Gs(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)Gs(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const vo=new WeakMap,rn=Symbol(""),vr=Symbol(""),Rn=Symbol("");function Ue(e,t,n){if(rt&&ye){let o=vo.get(e);o||vo.set(e,o=new Map);let s=o.get(n);s||(o.set(n,s=new yr),s.map=o,s.key=n),s.track()}}function At(e,t,n,o,s,r){const i=vo.get(e);if(!i){Bn++;return}const a=l=>{l&&l.trigger()};if(gr(),t==="clear")i.forEach(a);else{const l=Q(e),c=l&&go(n);if(l&&n==="length"){const u=Number(o);i.forEach((f,h)=>{(h==="length"||h===Rn||!Ke(h)&&h>=u)&&a(f)})}else switch((n!==void 0||i.has(void 0))&&a(i.get(n)),c&&a(i.get(Rn)),t){case"add":l?c&&a(i.get("length")):(a(i.get(rn)),Gt(e)&&a(i.get(vr)));break;case"delete":l||(a(i.get(rn)),Gt(e)&&a(i.get(vr)));break;case"set":Gt(e)&&a(i.get(rn));break}}mr()}function Ql(e,t){const n=vo.get(e);return n&&n.get(t)}function mn(e){const t=ue(e);return t===e?t:(Ue(t,"iterate",Rn),Xe(e)?t:t.map(st))}function wo(e){return Ue(e=ue(e),"iterate",Rn),e}function _t(e,t){return Lt(e)?bn(Tt(e)?st(t):t):st(t)}const ec={__proto__:null,[Symbol.iterator](){return wr(this,Symbol.iterator,e=>_t(this,e))},concat(...e){return mn(this).concat(...e.map(t=>Q(t)?mn(t):t))},entries(){return wr(this,"entries",e=>(e[1]=_t(this,e[1]),e))},every(e,t){return Et(this,"every",e,t,void 0,arguments)},filter(e,t){return Et(this,"filter",e,t,n=>n.map(o=>_t(this,o)),arguments)},find(e,t){return Et(this,"find",e,t,n=>_t(this,n),arguments)},findIndex(e,t){return Et(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Et(this,"findLast",e,t,n=>_t(this,n),arguments)},findLastIndex(e,t){return Et(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Et(this,"forEach",e,t,void 0,arguments)},includes(...e){return kr(this,"includes",e)},indexOf(...e){return kr(this,"indexOf",e)},join(e){return mn(this).join(e)},lastIndexOf(...e){return kr(this,"lastIndexOf",e)},map(e,t){return Et(this,"map",e,t,void 0,arguments)},pop(){return Wn(this,"pop")},push(...e){return Wn(this,"push",e)},reduce(e,...t){return Ys(this,"reduce",e,t)},reduceRight(e,...t){return Ys(this,"reduceRight",e,t)},shift(){return Wn(this,"shift")},some(e,t){return Et(this,"some",e,t,void 0,arguments)},splice(...e){return Wn(this,"splice",e)},toReversed(){return mn(this).toReversed()},toSorted(e){return mn(this).toSorted(e)},toSpliced(...e){return mn(this).toSpliced(...e)},unshift(...e){return Wn(this,"unshift",e)},values(){return wr(this,"values",e=>_t(this,e))}};function wr(e,t,n){const o=wo(e),s=o[t]();return o!==e&&!Xe(e)&&(s._next=s.next,s.next=()=>{const r=s._next();return r.done||(r.value=n(r.value)),r}),s}const tc=Array.prototype;function Et(e,t,n,o,s,r){const i=wo(e),a=i!==e&&!Xe(e),l=i[t];if(l!==tc[t]){const f=l.apply(e,r);return a?st(f):f}let c=n;i!==e&&(a?c=function(f,h){return n.call(this,_t(e,f),h,e)}:n.length>2&&(c=function(f,h){return n.call(this,f,h,e)}));const u=l.call(i,c,o);return a&&s?s(u):u}function Ys(e,t,n,o){const s=wo(e),r=s!==e&&!Xe(e);let i=n,a=!1;s!==e&&(r?(a=o.length===0,i=function(c,u,f){return a&&(a=!1,c=_t(e,c)),n.call(this,c,_t(e,u),f,e)}):n.length>3&&(i=function(c,u,f){return n.call(this,c,u,f,e)}));const l=s[t](i,...o);return a?_t(e,l):l}function kr(e,t,n){const o=ue(e);Ue(o,"iterate",Rn);const s=o[t](...n);return(s===-1||s===!1)&&Ao(n[0])?(n[0]=ue(n[0]),o[t](...n)):s}function Wn(e,t,n=[]){gt(),gr();const o=ue(e)[t].apply(e,n);return mr(),mt(),o}const nc=lr("__proto__,__v_isRef,__isVue"),Vs=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Ke));function oc(e){Ke(e)||(e=String(e));const t=ue(this);return Ue(t,"has",e),t.hasOwnProperty(e)}class Hs{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,r=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return r;if(n==="__v_raw")return o===(s?r?Zs:Js:r?Xs:Ks).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const i=Q(t);if(!s){let l;if(i&&(l=ec[n]))return l;if(n==="hasOwnProperty")return oc}const a=Reflect.get(t,n,Ne(t)?t:o);if((Ke(n)?Vs.has(n):nc(n))||(s||Ue(t,"get",n),r))return a;if(Ne(a)){const l=i&&go(n)?a:a.value;return s&&ge(l)?Or(l):l}return ge(a)?s?Or(a):No(a):a}}class qs extends Hs{constructor(t=!1){super(!1,t)}set(t,n,o,s){let r=t[n];const i=Q(t)&&go(n);if(!this._isShallow){const c=Lt(r);if(!Xe(o)&&!Lt(o)&&(r=ue(r),o=ue(o)),!i&&Ne(r)&&!Ne(o))return c||(r.value=o),!0}const a=i?Number(n)e,ko=e=>Reflect.getPrototypeOf(e);function lc(e,t,n){return function(...o){const s=this.__v_raw,r=ue(s),i=Gt(r),a=e==="entries"||e===Symbol.iterator&&i,l=e==="keys"&&i,c=s[e](...o),u=n?$r:t?bn:st;return!t&&Ue(r,"iterate",l?vr:rn),Ce(Object.create(c),{next(){const{value:f,done:h}=c.next();return h?{value:f,done:h}:{value:a?[u(f[0]),u(f[1])]:u(f),done:h}}})}}function $o(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function cc(e,t){const n={get(s){const r=this.__v_raw,i=ue(r),a=ue(s);e||(ht(s,a)&&Ue(i,"get",s),Ue(i,"get",a));const{has:l}=ko(i),c=t?$r:e?bn:st;if(l.call(i,s))return c(r.get(s));if(l.call(i,a))return c(r.get(a));r!==i&&r.get(s)},get size(){const s=this.__v_raw;return!e&&Ue(ue(s),"iterate",rn),s.size},has(s){const r=this.__v_raw,i=ue(r),a=ue(s);return e||(ht(s,a)&&Ue(i,"has",s),Ue(i,"has",a)),s===a?r.has(s):r.has(s)||r.has(a)},forEach(s,r){const i=this,a=i.__v_raw,l=ue(a),c=t?$r:e?bn:st;return!e&&Ue(l,"iterate",rn),a.forEach((u,f)=>s.call(r,c(u),c(f),i))}};return Ce(n,e?{add:$o("add"),set:$o("set"),delete:$o("delete"),clear:$o("clear")}:{add(s){const r=ue(this),i=ko(r),a=ue(s),l=!t&&!Xe(s)&&!Lt(s)?a:s;return i.has.call(r,l)||ht(s,l)&&i.has.call(r,s)||ht(a,l)&&i.has.call(r,a)||(r.add(l),At(r,"add",l,l)),this},set(s,r){!t&&!Xe(r)&&!Lt(r)&&(r=ue(r));const i=ue(this),{has:a,get:l}=ko(i);let c=a.call(i,s);c||(s=ue(s),c=a.call(i,s));const u=l.call(i,s);return i.set(s,r),c?ht(r,u)&&At(i,"set",s,r):At(i,"add",s,r),this},delete(s){const r=ue(this),{has:i,get:a}=ko(r);let l=i.call(r,s);l||(s=ue(s),l=i.call(r,s)),a&&a.call(r,s);const c=r.delete(s);return l&&At(r,"delete",s,void 0),c},clear(){const s=ue(this),r=s.size!==0,i=s.clear();return r&&At(s,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=lc(s,e,t)}),n}function Oo(e,t){const n=cc(e,t);return(o,s,r)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?o:Reflect.get(fe(n,s)&&s in o?n:o,s,r)}const uc={get:Oo(!1,!1)},pc={get:Oo(!1,!0)},dc={get:Oo(!0,!1)},fc={get:Oo(!0,!0)},Ks=new WeakMap,Xs=new WeakMap,Js=new WeakMap,Zs=new WeakMap;function hc(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function No(e){return Lt(e)?e:Co(e,!1,rc,uc,Ks)}function gc(e){return Co(e,!1,ic,pc,Xs)}function Or(e){return Co(e,!0,sc,dc,Js)}function $_(e){return Co(e,!0,ac,fc,Zs)}function Co(e,t,n,o,s){if(!ge(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const r=s.get(e);if(r)return r;const i=hc(Wl(e));if(i===0)return e;const a=new Proxy(e,i===2?o:n);return s.set(e,a),a}function Tt(e){return Lt(e)?Tt(e.__v_raw):!!(e&&e.__v_isReactive)}function Lt(e){return!!(e&&e.__v_isReadonly)}function Xe(e){return!!(e&&e.__v_isShallow)}function Ao(e){return e?!!e.__v_raw:!1}function ue(e){const t=e&&e.__v_raw;return t?ue(t):e}function _n(e){return!fe(e,"__v_skip")&&Object.isExtensible(e)&&Cs(e,"__v_skip",!0),e}const st=e=>ge(e)?No(e):e,bn=e=>ge(e)?Or(e):e;function Ne(e){return e?e.__v_isRef===!0:!1}function ie(e){return Qs(e,!1)}function Eo(e){return Qs(e,!0)}function Qs(e,t){return Ne(e)?e:new mc(e,t)}class mc{constructor(t,n){this.dep=new yr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:ue(t),this._value=n?t:st(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||Xe(t)||Lt(t);t=o?t:ue(t),ht(t,n)&&(this._rawValue=t,this._value=o?t:st(t),this.dep.trigger())}}function Je(e){return Ne(e)?e.value:e}const _c={get:(e,t,n)=>t==="__v_raw"?e:Je(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const s=e[t];return Ne(s)&&!Ne(n)?(s.value=n,!0):Reflect.set(e,t,n,o)}};function ei(e){return Tt(e)?e:new Proxy(e,_c)}function bc(e){const t=Q(e)?new Array(e.length):{};for(const n in e)t[n]=vc(e,n);return t}class yc{constructor(t,n,o){this._object=t,this._defaultValue=o,this.__v_isRef=!0,this._value=void 0,this._key=Ke(n)?n:String(n),this._raw=ue(t);let s=!0,r=t;if(!Q(t)||Ke(this._key)||!go(this._key))do s=!Ao(r)||Xe(r);while(s&&(r=r.__v_raw));this._shallow=s}get value(){let t=this._object[this._key];return this._shallow&&(t=Je(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Ne(this._raw[this._key])){const n=this._object[this._key];if(Ne(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Ql(this._raw,this._key)}}function vc(e,t,n){return new yc(e,t,n)}class wc{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new yr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Bn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&ye!==this)return Ds(this,!0),!0}get value(){const t=this.dep.track();return Ws(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function kc(e,t,n=!1){let o,s;return ne(e)?o=e:(o=e.get,s=e.set),new wc(o,s,n)}const To={},Lo=new WeakMap;let sn;function $c(e,t=!1,n=sn){if(n){let o=Lo.get(n);o||Lo.set(n,o=[]),o.push(e)}}function Oc(e,t,n=_e){const{immediate:o,deep:s,once:r,scheduler:i,augmentJob:a,call:l}=n,c=m=>s?m:Xe(m)||s===!1||s===0?St(m,1):St(m);let u,f,h,_,v=!1,k=!1;if(Ne(e)?(f=()=>e.value,v=Xe(e)):Tt(e)?(f=()=>c(e),v=!0):Q(e)?(k=!0,v=e.some(m=>Tt(m)||Xe(m)),f=()=>e.map(m=>{if(Ne(m))return m.value;if(Tt(m))return c(m);if(ne(m))return l?l(m,2):m()})):ne(e)?t?f=l?()=>l(e,2):e:f=()=>{if(h){gt();try{h()}finally{mt()}}const m=sn;sn=u;try{return l?l(e,3,[_]):e(_)}finally{sn=m}}:f=ft,t&&s){const m=f,C=s===!0?1/0:s;f=()=>St(m(),C)}const I=xs(),N=()=>{u.stop(),I&&I.active&&cr(I.effects,u)};if(r&&t){const m=t;t=(...C)=>{const S=m(...C);return N(),S}}let A=k?new Array(e.length).fill(To):To;const b=m=>{if(!(!(u.flags&1)||!u.dirty&&!m))if(t){const C=u.run();if(m||s||v||(k?C.some((S,w)=>ht(S,A[w])):ht(C,A))){h&&h();const S=sn;sn=u;try{const w=[C,A===To?void 0:k&&A[0]===To?[]:A,_];A=C,l?l(t,3,w):t(...w)}finally{sn=S}}}else u.run()};return a&&a(b),u=new Ps(f),u.scheduler=i?()=>i(b,!1):b,_=m=>$c(m,!1,u),h=u.onStop=()=>{const m=Lo.get(u);if(m){if(l)l(m,4);else for(const C of m)C();Lo.delete(u)}},t?o?b(!0):A=u.run():i?i(b.bind(null,!0),!0):u.run(),N.pause=u.pause.bind(u),N.resume=u.resume.bind(u),N.stop=N,N}function St(e,t=1/0,n){if(t<=0||!ge(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Ne(e))St(e.value,t,n);else if(Q(e))for(let o=0;o{St(o,t,n)});else if(ho(e)){for(const o in e)St(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&St(e[o],t,n)}return e}/** * @vue/runtime-core v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const Un=[];let Nr=!1;function __(e,...t){if(Nr)return;Nr=!0,gt();const n=Un.length?Un[Un.length-1].component:null,o=n&&n.appContext.config.warnHandler,s=Oc();if(o)yn(o,n,11,[e+t.map(r=>{var i,a;return(a=(i=r.toString)==null?void 0:i.call(r))!=null?a:JSON.stringify(r)}).join(""),n&&n.proxy,s.map(({vnode:r})=>`at <${Zi(n,r.type)}>`).join(` +**/const Un=[];let Nr=!1;function O_(e,...t){if(Nr)return;Nr=!0,gt();const n=Un.length?Un[Un.length-1].component:null,o=n&&n.appContext.config.warnHandler,s=Nc();if(o)yn(o,n,11,[e+t.map(r=>{var i,a;return(a=(i=r.toString)==null?void 0:i.call(r))!=null?a:JSON.stringify(r)}).join(""),n&&n.proxy,s.map(({vnode:r})=>`at <${Qi(n,r.type)}>`).join(` `),s]);else{const r=[`[Vue warn]: ${e}`,...t];s.length&&r.push(` -`,...Nc(s)),console.warn(...r)}mt(),Nr=!1}function Oc(){let e=Un[Un.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const o=e.component&&e.component.parent;e=o&&o.vnode}return t}function Nc(e){const t=[];return e.forEach((n,o)=>{t.push(...o===0?[]:[` -`],...Cc(n))}),t}function Cc({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",o=e.component?e.component.parent==null:!1,s=` at <${Zi(e.component,e.type,o)}`,r=">"+n;return e.props?[s,...Ac(e.props),r]:[s+r]}function Ac(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(o=>{t.push(...Qs(o,e[o]))}),n.length>3&&t.push(" ..."),t}function Qs(e,t,n){return be(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Ne(t)?(t=Qs(e,pe(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):oe(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=pe(t),n?t:[`${e}=`,t])}function yn(e,t,n,o){try{return o?e(...o):e()}catch(s){jn(s,t,n)}}function at(e,t,n,o){if(oe(e)){const s=yn(e,t,n,o);return s&&ks(s)&&s.catch(r=>{jn(r,t,n)}),s}if(te(e)){const s=[];for(let r=0;r>>1,s=je[o],r=Yn(s);r=Yn(n)?je.push(e):je.splice(Tc(t),0,e),e.flags|=1,ti()}}function ti(){Io||(Io=ei.then(ri))}function Lc(e){if(!te(e))Gt&&e.id===-1?Gt.splice(wn+1,0,e):e.flags&1||(vn.push(e),e.flags|=1);else for(let t=0;tYn(n)-Yn(o));if(vn.length=0,Gt){for(let n=0;ne.id==null?e.flags&2?-1:1/0:e.id;function ri(e){try{for(bt=0;bt{o._d&&Go(-1);const r=Fo(t),i=Ft.length;let a;try{a=e(...s)}finally{for(let l=Ft.length;l>i;l--)Gr();Fo(r),o._d&&Go(1)}return a};return o._n=!0,o._c=!0,o._d=!0,o}function Sc(e,t){if(De===null)return e;const n=qo(De),o=e.dirs||(e.dirs=[]);for(let s=0;s1)return n&&oe(t)?t.call(o&&o.proxy):t}}function Ic(){return!!(Pt()||cn)}const Fc=Symbol.for("v-scx"),xc=()=>qe(Fc);function Pc(e,t){return Ar(e,null,t)}function vt(e,t,n){return Ar(e,t,n)}function Ar(e,t,n=_e){const{immediate:o,deep:s,flush:r,once:i}=n,a=Ee({},n),l=t&&o||!t&&r!=="post";let c;if(Nn){if(r==="sync"){const _=xc();c=_.__watcherHandles||(_.__watcherHandles=[])}else if(!l){const _=()=>{};return _.stop=ft,_.resume=ft,_.pause=ft,_}}const u=Be;a.call=(_,v,k)=>at(_,u,v,k);let f=!1;r==="post"?a.scheduler=_=>{Ye(_,u&&u.suspense)}:r!=="sync"&&(f=!0,a.scheduler=(_,v)=>{v?_():Cr(_)}),a.augmentJob=_=>{t&&(_.flags|=4),f&&(_.flags|=2,u&&(_.id=u.uid,_.i=u))};const h=$c(e,t,a);return Nn&&(c?c.push(h):l&&h()),h}function Mc(e,t,n){const o=this.proxy,s=be(e)?e.includes(".")?ii(o,e):()=>o[e]:e.bind(o,o);let r;oe(t)?r=t:(r=t.handler,n=t);const i=to(this),a=Ar(s,r.bind(o),n);return i(),a}function ii(e,t){const n=t.split(".");return()=>{let o=e;for(let s=0;se.__isTeleport,ln=e=>e&&(e.disabled||e.disabled===""),Dc=e=>e&&(e.defer||e.defer===""),li=e=>typeof SVGElement<"u"&&e instanceof SVGElement,ci=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Er=(e,t)=>{const n=e&&e.to;return be(n)?t?t(n):null:n},Bc={name:"Teleport",__isTeleport:!0,process(e,t,n,o,s,r,i,a,l,c){const{mc:u,pc:f,pbc:h,o:{insert:_,querySelector:v,createText:k,createComment:F,parentNode:C}}=c,L=ln(t.props);let{dynamicChildren:y}=t;const m=($,O,T)=>{$.shapeFlag&16&&u($.children,O,T,s,r,i,a,l)},A=($=t)=>{const O=ln($.props),T=$.target=Er($.props,v),J=Tr(T,$,k,_);T&&(i!=="svg"&&li(T)?i="svg":i!=="mathml"&&ci(T)&&(i="mathml"),s&&s.isCE&&(s.ce._teleportTargets||(s.ce._teleportTargets=new Set)).add(T),O||(m($,T,J),Vn($,!1)))},S=$=>{const O=()=>{if(Yt.get($)===O){if(Yt.delete($),ln($.props)){const T=C($.el)||n;m($,T,$.anchor),Vn($,!0)}A($)}};Yt.set($,O),Ye(O,r)};if(e==null){const $=t.el=k(""),O=t.anchor=k("");if(_($,n,o),_(O,n,o),Dc(t.props)||r&&r.pendingBranch){S(t);return}L&&(m(t,n,O),Vn(t,!0)),A()}else{t.el=e.el;const $=t.anchor=e.anchor,O=Yt.get(e);if(O){O.flags|=8,Yt.delete(e),S(t);return}t.targetStart=e.targetStart;const T=t.target=e.target,J=t.targetAnchor=e.targetAnchor,ee=ln(e.props),U=ee?n:T,Y=ee?$:J;if(i==="svg"||li(T)?i="svg":(i==="mathml"||ci(T))&&(i="mathml"),y?(h(e.dynamicChildren,y,U,s,r,i,a),Ur(e,t,!0)):l||f(e,t,U,Y,s,r,i,a,!1),L)ee?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Po(t,n,$,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const re=Er(t.props,v);re&&(t.target=re,Po(t,re,null,c,0))}else ee&&Po(t,T,J,c,1);Vn(t,L)}},remove(e,t,n,{um:o,o:{remove:s}},r){const{shapeFlag:i,children:a,anchor:l,targetStart:c,targetAnchor:u,target:f,props:h}=e,_=ln(h),v=r||!_,k=Yt.get(e);if(k&&(k.flags|=8,Yt.delete(e)),f&&(s(c),s(u)),r&&s(l),!k&&(_||f)&&i&16)for(let F=0;F1){for(const n of e)if(n.type!==wt){t=n;break}}return t}function ui(e){if(!Bo(e))return xo(e.type)&&e.children?Uc(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&oe(n.default))return n.default()}}function Sr(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;Sr(xo(n.type)&&ui(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Hn(e,t){return oe(e)?Ee({name:e.name},t,{setup:e}):e}function Ir(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function pi(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Mo=new WeakMap;function qn(e,t,n,o,s=!1){if(te(e)){e.forEach((k,F)=>qn(k,t&&(te(t)?t[F]:t),n,o,s));return}if(kn(o)&&!s){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&qn(e,t,n,o.component.subTree);return}const r=o.shapeFlag&4?qo(o.component):o.el,i=s?null:r,{i:a,r:l}=e,c=t&&t.r,u=a.refs===_e?a.refs={}:a.refs,f=a.setupState,h=pe(f),_=f===_e?vs:k=>pi(u,k)?!1:he(h,k),v=(k,F)=>!(F&&pi(u,F));if(c!=null&&c!==l){if(di(t),be(c))u[c]=null,_(c)&&(f[c]=null);else if(Ne(c)){const k=t;v(c,k.k)&&(c.value=null),k.k&&(u[k.k]=null)}}if(oe(l))yn(l,a,12,[i,u]);else{const k=be(l),F=Ne(l);if(k||F){const C=()=>{if(e.f){const L=k?_(l)?f[l]:u[l]:v()||!e.k?l.value:u[e.k];if(s)te(L)&&cr(L,r);else if(te(L))L.includes(r)||L.push(r);else if(k)u[l]=[r],_(l)&&(f[l]=u[l]);else{const y=[r];v(l,e.k)&&(l.value=y),e.k&&(u[e.k]=y)}}else k?(u[l]=i,_(l)&&(f[l]=i)):F&&(v(l,e.k)&&(l.value=i),e.k&&(u[e.k]=i))};if(i){const L=()=>{C(),Mo.delete(e)};L.id=-1,Mo.set(e,L),Ye(L,n)}else di(e),C()}}}function di(e){const t=Mo.get(e);t&&(t.flags|=8,Mo.delete(e))}const fi=e=>e.nodeType===8;yo().requestIdleCallback,yo().cancelIdleCallback;function jc(e,t){if(fi(e)&&e.data==="["){let n=1,o=e.nextSibling;for(;o;){if(o.nodeType===1){if(t(o)===!1)break}else if(fi(o))if(o.data==="]"){if(--n===0)break}else o.data==="["&&n++;o=o.nextSibling}}else t(e)}const kn=e=>!!e.type.__asyncLoader;function Gc(e){oe(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:s=200,hydrate:r,timeout:i,suspensible:a=!0,onError:l}=e;let c=null,u,f=0;const h=()=>(f++,c=null,_()),_=()=>{let v;return c||(v=c=t().catch(k=>{if(k=k instanceof Error?k:new Error(String(k)),l)return new Promise((F,C)=>{l(k,()=>F(h()),()=>C(k),f+1)});throw k}).then(k=>v!==c&&c?c:(k&&(k.__esModule||k[Symbol.toStringTag]==="Module")&&(k=k.default),u=k,k)))};return Hn({name:"AsyncComponentWrapper",__asyncLoader:_,__asyncHydrate(v,k,F){const C=v.isConnected;let L=!1;(k.bu||(k.bu=[])).push(()=>L=!0);const y=()=>{L||!v.parentNode||C&&!v.isConnected||F()},m=r?()=>{const A=r(y,S=>jc(v,S));A&&(k.bum||(k.bum=[])).push(A)}:y;u?m():_().then(()=>!k.isUnmounted&&m())},get __asyncResolved(){return u},setup(){const v=Be;if(Ir(v),u)return()=>Do(u,v);const k=A=>{c=null,jn(A,v,13,!o)};if(a&&v.suspense||Nn)return _().then(A=>()=>Do(A,v)).catch(A=>(k(A),()=>o?ke(o,{error:A}):null));const F=ce(!1),C=ce(),L=ce(!!s);let y,m;return Wo(()=>{y!=null&&clearTimeout(y),m!=null&&clearTimeout(m)}),s&&(m=setTimeout(()=>{v.isUnmounted||(L.value=!1)},s)),i!=null&&(y=setTimeout(()=>{if(!v.isUnmounted&&!F.value&&!C.value){const A=new Error(`Async component timed out after ${i}ms.`);k(A),C.value=A}},i)),_().then(()=>{v.isUnmounted||(F.value=!0,v.parent&&Bo(v.parent.vnode)&&v.parent.update())}).catch(A=>{if(v.isUnmounted){c=null;return}k(A),C.value=A}),()=>{if(F.value&&u)return Do(u,v);if(C.value&&o)return ke(o,{error:C.value});if(n&&!L.value)return Do(n,v)}}})}function Do(e,t){const{ref:n,props:o,children:s,ce:r}=t.vnode,i=ke(e,o,s);return i.ref=n,i.ce=r,delete t.vnode.ce,i}const Bo=e=>e.type.__isKeepAlive;function Yc(e,t){hi(e,"a",t)}function Vc(e,t){hi(e,"da",t)}function hi(e,t,n=Be){const o=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(Ro(t,o,n),n){let s=n.parent;for(;s&&s.parent;)Bo(s.parent.vnode)&&Hc(o,t,n,s),s=s.parent}}function Hc(e,t,n,o){const s=Ro(t,e,o,!0);Wo(()=>{cr(o[t],s)},n)}function Ro(e,t,n=Be,o=!1){if(n){const s=n[e]||(n[e]=[]),r=t.__weh||(t.__weh=(...i)=>{gt();const a=to(n),l=at(t,n,e,i);return a(),mt(),l});return o?s.unshift(r):s.push(r),r}}const It=e=>(t,n=Be)=>{(!Nn||e==="sp")&&Ro(e,(...o)=>t(...o),n)},gi=It("bm"),Vt=It("m"),qc=It("bu"),zc=It("u"),$n=It("bum"),Wo=It("um"),Kc=It("sp"),Xc=It("rtg"),Jc=It("rtc");function Zc(e,t=Be){Ro("ec",e,t)}const Qc="components",mi=Symbol.for("v-ndc");function _i(e){return be(e)?eu(Qc,e,!1)||e:e||mi}function eu(e,t,n=!0,o=!1){const s=De||Be;if(s){const r=s.type;{const a=Ji(r,!1);if(a&&(a===t||a===xe(t)||a===bo(xe(t))))return r}const i=bi(s[e]||r[e],t)||bi(s.appContext[e],t);return!i&&o?r:i}}function bi(e,t){return e&&(e[t]||e[xe(t)]||e[bo(xe(t))])}function lt(e,t,n,o){let s;const r=n,i=te(e);if(i||be(e)){const a=i&&Tt(e);let l=!1,c=!1;a&&(l=!Xe(e),c=Lt(e),e=ko(e)),s=new Array(e.length);for(let u=0,f=e.length;ut(a,l,void 0,r));else{const a=Object.keys(e);s=new Array(a.length);for(let l=0,c=a.length;l0;return q(),Ze(de,null,[ke("slot",c,o)],u?-2:64)}let i=e[t];i&&i._c&&(i._d=!1);const a=Ft.length;q();let l;try{const c=i&&vi(i(n)),u=n.key||r||c&&c.key;l=Ze(de,{key:(u&&!Ke(u)?u:`_${t}`)+(!c&&o?"_fb":"")},c||(o?o():[]),c&&e._===1?64:-2)}catch(c){for(let u=Ft.length;u>a;u--)Gr();throw c}finally{i&&i._c&&(i._d=!0)}return l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),l}function vi(e){return e.some(t=>Zn(t)?!(t.type===wt||t.type===de&&!vi(t.children)):!0)?e:null}const Fr=e=>e?zi(e)?qo(e):Fr(e.parent):null,zn=Ee(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Fr(e.parent),$root:e=>Fr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Oi(e),$forceUpdate:e=>e.f||(e.f=()=>{Cr(e.update)}),$nextTick:e=>e.n||(e.n=Gn.bind(e.proxy)),$watch:e=>Mc.bind(e)}),xr=(e,t)=>e!==_e&&!e.__isScriptSetup&&he(e,t),tu={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:s,props:r,accessCache:i,type:a,appContext:l}=e;if(t[0]!=="$"){const h=i[t];if(h!==void 0)switch(h){case 1:return o[t];case 2:return s[t];case 4:return n[t];case 3:return r[t]}else{if(xr(o,t))return i[t]=1,o[t];if(s!==_e&&he(s,t))return i[t]=2,s[t];if(he(r,t))return i[t]=3,r[t];if(n!==_e&&he(n,t))return i[t]=4,n[t];Pr&&(i[t]=0)}}const c=zn[t];let u,f;if(c)return t==="$attrs"&&Ue(e.attrs,"get",""),c(e);if((u=a.__cssModules)&&(u=u[t]))return u;if(n!==_e&&he(n,t))return i[t]=4,n[t];if(f=l.config.globalProperties,he(f,t))return f[t]},set({_:e},t,n){const{data:o,setupState:s,ctx:r}=e;return xr(s,t)?(s[t]=n,!0):o!==_e&&he(o,t)?(o[t]=n,!0):he(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:s,props:r,type:i}},a){let l;return!!(n[a]||e!==_e&&a[0]!=="$"&&he(e,a)||xr(t,a)||he(r,a)||he(o,a)||he(zn,a)||he(s.config.globalProperties,a)||(l=i.__cssModules)&&l[a])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:he(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function wi(e){return te(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Pr=!0;function nu(e){const t=Oi(e),n=e.proxy,o=e.ctx;Pr=!1,t.beforeCreate&&ki(t.beforeCreate,e,"bc");const{data:s,computed:r,methods:i,watch:a,provide:l,inject:c,created:u,beforeMount:f,mounted:h,beforeUpdate:_,updated:v,activated:k,deactivated:F,beforeDestroy:C,beforeUnmount:L,destroyed:y,unmounted:m,render:A,renderTracked:S,renderTriggered:$,errorCaptured:O,serverPrefetch:T,expose:J,inheritAttrs:ee,components:U,directives:Y,filters:re}=t;if(c&&ou(c,o,null),i)for(const K in i){const ae=i[K];oe(ae)&&(o[K]=ae.bind(n))}if(s){const K=s.call(n,n);ge(K)&&(e.data=Co(K))}if(Pr=!0,r)for(const K in r){const ae=r[K],Ce=oe(ae)?ae.bind(n,n):oe(ae.get)?ae.get.bind(n,n):ft,Qe=!oe(ae)&&oe(ae.set)?ae.set.bind(n):ft,Ae=ie({get:Ce,set:Qe});Object.defineProperty(o,K,{enumerable:!0,configurable:!0,get:()=>Ae.value,set:Me=>Ae.value=Me})}if(a)for(const K in a)$i(a[K],o,n,K);if(l){const K=oe(l)?l.call(n):l;Reflect.ownKeys(K).forEach(ae=>{yt(ae,K[ae])})}u&&ki(u,e,"c");function R(K,ae){te(ae)?ae.forEach(Ce=>K(Ce.bind(n))):ae&&K(ae.bind(n))}if(R(gi,f),R(Vt,h),R(qc,_),R(zc,v),R(Yc,k),R(Vc,F),R(Zc,O),R(Jc,S),R(Xc,$),R($n,L),R(Wo,m),R(Kc,T),te(J))if(J.length){const K=e.exposed||(e.exposed={});J.forEach(ae=>{Object.defineProperty(K,ae,{get:()=>n[ae],set:Ce=>n[ae]=Ce,enumerable:!0})})}else e.exposed||(e.exposed={});A&&e.render===ft&&(e.render=A),ee!=null&&(e.inheritAttrs=ee),U&&(e.components=U),Y&&(e.directives=Y),T&&Ir(e)}function ou(e,t,n=ft){te(e)&&(e=Mr(e));for(const o in e){const s=e[o];let r;ge(s)?"default"in s?r=qe(s.from||o,s.default,!0):r=qe(s.from||o):r=qe(s),Ne(r)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>r.value,set:i=>r.value=i}):t[o]=r}}function ki(e,t,n){at(te(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function $i(e,t,n,o){let s=o.includes(".")?ii(n,o):()=>n[o];if(be(e)){const r=t[e];oe(r)&&vt(s,r)}else if(oe(e))vt(s,e.bind(n));else if(ge(e))if(te(e))e.forEach(r=>$i(r,t,n,o));else{const r=oe(e.handler)?e.handler.bind(n):t[e.handler];oe(r)&&vt(s,r,e)}}function Oi(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:s,optionsCache:r,config:{optionMergeStrategies:i}}=e.appContext,a=r.get(t);let l;return a?l=a:!s.length&&!n&&!o?l=t:(l={},s.length&&s.forEach(c=>Uo(l,c,i,!0)),Uo(l,t,i)),ge(t)&&r.set(t,l),l}function Uo(e,t,n,o=!1){const{mixins:s,extends:r}=t;r&&Uo(e,r,n,!0),s&&s.forEach(i=>Uo(e,i,n,!0));for(const i in t)if(!(o&&i==="expose")){const a=ru[i]||n&&n[i];e[i]=a?a(e[i],t[i]):t[i]}return e}const ru={data:Ni,props:Ci,emits:Ci,methods:Kn,computed:Kn,beforeCreate:Ge,created:Ge,beforeMount:Ge,mounted:Ge,beforeUpdate:Ge,updated:Ge,beforeDestroy:Ge,beforeUnmount:Ge,destroyed:Ge,unmounted:Ge,activated:Ge,deactivated:Ge,errorCaptured:Ge,serverPrefetch:Ge,components:Kn,directives:Kn,watch:iu,provide:Ni,inject:su};function Ni(e,t){return t?e?function(){return Ee(oe(e)?e.call(this,this):e,oe(t)?t.call(this,this):t)}:t:e}function su(e,t){return Kn(Mr(e),Mr(t))}function Mr(e){if(te(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${xe(t)}Modifiers`]||e[`${tt(t)}Modifiers`];function uu(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||_e;let s=n;const r=t.startsWith("update:"),i=r&&cu(o,t.slice(7));i&&(i.trim&&(s=n.map(u=>be(u)?u.trim():u)),i.number&&(s=s.map(jl)));let a,l=o[a=ur(t)]||o[a=ur(xe(t))];!l&&r&&(l=o[a=ur(tt(t))]),l&&at(l,e,6,s);const c=o[a+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,at(c,e,6,s)}}const pu=new WeakMap;function Ei(e,t,n=!1){const o=n?pu:t.emitsCache,s=o.get(e);if(s!==void 0)return s;const r=e.emits;let i={},a=!1;if(!oe(e)){const l=c=>{const u=Ei(c,t,!0);u&&(a=!0,Ee(i,u))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!r&&!a?(ge(e)&&o.set(e,null),null):(te(r)?r.forEach(l=>i[l]=null):Ee(i,r),ge(e)&&o.set(e,i),i)}function jo(e,t){return!e||!po(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),he(e,t[0].toLowerCase()+t.slice(1))||he(e,tt(t))||he(e,t))}function b_(){}function Ti(e){const{type:t,vnode:n,proxy:o,withProxy:s,propsOptions:[r],slots:i,attrs:a,emit:l,render:c,renderCache:u,props:f,data:h,setupState:_,ctx:v,inheritAttrs:k}=e,F=Fo(e);let C,L;try{if(n.shapeFlag&4){const m=s||o,A=m;C=kt(c.call(A,m,u,f,_,h,v)),L=a}else{const m=t;C=kt(m.length>1?m(f,{attrs:a,slots:i,emit:l}):m(f,null)),L=t.props?a:du(a)}}catch(m){Ft.length=0,jn(m,e,1),C=ke(wt)}let y=C;if(L&&k!==!1){const m=Object.keys(L),{shapeFlag:A}=y;m.length&&A&7&&(r&&m.some(fo)&&(L=fu(L,r)),y=On(y,L,!1,!0))}if(n.dirs&&(y=On(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(n.dirs):n.dirs),n.transition){const m=xo(y.type)&&ui(y)||y;Sr(m,n.transition)}return C=y,Fo(F),C}const du=e=>{let t;for(const n in e)(n==="class"||n==="style"||po(n))&&((t||(t={}))[n]=e[n]);return t},fu=(e,t)=>{const n={};for(const o in e)(!fo(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function hu(e,t,n){const{props:o,children:s,component:r}=e,{props:i,children:a,patchFlag:l}=t,c=r.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?Li(o,i,c):!!i;if(l&8){const u=t.dynamicProps;for(let f=0;fObject.create(Ii),xi=e=>Object.getPrototypeOf(e)===Ii;function mu(e,t,n,o=!1){const s={},r=Fi();e.propsDefaults=Object.create(null),Pi(e,t,s,r);for(const i in e.propsOptions[0])i in s||(s[i]=void 0);n?e.props=o?s:hc(s):e.type.props?e.props=s:e.props=r,e.attrs=r}function _u(e,t,n,o){const{props:s,attrs:r,vnode:{patchFlag:i}}=e,a=pe(s),[l]=e.propsOptions;let c=!1;if((o||i>0)&&!(i&16)){if(i&8){const u=e.vnode.dynamicProps;for(let f=0;f{l=!0;const[h,_]=Mi(f,t,!0);Ee(i,h),_&&a.push(..._)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!r&&!l)return ge(e)&&o.set(e,gn),gn;if(te(r))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",Rr=e=>te(e)?e.map(kt):[kt(e)],yu=(e,t,n)=>{if(t._n)return t;const o=sn((...s)=>Rr(t(...s)),n);return o._c=!1,o},Bi=(e,t,n)=>{const o=e._ctx;for(const s in e){if(Br(s))continue;const r=e[s];if(oe(r))t[s]=yu(s,r,o);else if(r!=null){const i=Rr(r);t[s]=()=>i}}},Ri=(e,t)=>{const n=Rr(t);e.slots.default=()=>n},Wi=(e,t,n)=>{for(const o in t)(n||!Br(o))&&(e[o]=t[o])},vu=(e,t,n)=>{const o=e.slots=Fi();if(e.vnode.shapeFlag&32){const s=t._;s?(Wi(o,t,n),n&&Os(o,"_",s,!0)):Bi(t,o)}else t&&Ri(e,t)},wu=(e,t,n)=>{const{vnode:o,slots:s}=e;let r=!0,i=_e;if(o.shapeFlag&32){const a=t._;a?n&&a===1?r=!1:Wi(s,t,n):(r=!t.$stable,Bi(t,s)),i=t}else t&&(Ri(e,t),i={default:1});if(r)for(const a in s)!Br(a)&&i[a]==null&&delete s[a]},Ye=Cu;function ku(e){return $u(e)}function $u(e,t){const n=yo();n.__VUE__=!0;const{insert:o,remove:s,patchProp:r,createElement:i,createText:a,createComment:l,setText:c,setElementText:u,parentNode:f,nextSibling:h,setScopeId:_=ft,insertStaticContent:v}=e,k=(g,w,b,I=null,B=null,D=null,G=void 0,j=null,p=!!w.dynamicChildren)=>{if(g===w)return;g&&!Qn(g,w)&&(I=Wt(g),Me(g,B,D,!0),g=null),w.patchFlag===-2&&(p=!1,w.dynamicChildren=null);const{type:d,ref:E,shapeFlag:x}=w;switch(d){case Xn:F(g,w,b,I);break;case wt:C(g,w,b,I);break;case jr:g==null&&L(w,b,I,G);break;case de:U(g,w,b,I,B,D,G,j,p);break;default:x&1?A(g,w,b,I,B,D,G,j,p):x&6?Y(g,w,b,I,B,D,G,j,p):(x&64||x&128)&&d.process(g,w,b,I,B,D,G,j,p,rt)}E!=null&&B?qn(E,g&&g.ref,D,w||g,!w):E==null&&g&&g.ref!=null&&qn(g.ref,null,D,g,!0)},F=(g,w,b,I)=>{if(g==null)o(w.el=a(w.children),b,I);else{const B=w.el=g.el;w.children!==g.children&&c(B,w.children)}},C=(g,w,b,I)=>{g==null?o(w.el=l(w.children||""),b,I):w.el=g.el},L=(g,w,b,I)=>{[g.el,g.anchor]=v(g.children,w,b,I,g.el,g.anchor)},y=({el:g,anchor:w},b,I)=>{let B;for(;g&&g!==w;)B=h(g),o(g,b,I),g=B;o(w,b,I)},m=({el:g,anchor:w})=>{let b;for(;g&&g!==w;)b=h(g),s(g),g=b;s(w)},A=(g,w,b,I,B,D,G,j,p)=>{if(w.type==="svg"?G="svg":w.type==="math"&&(G="mathml"),g==null)S(w,b,I,B,D,G,j,p);else{const d=g.el&&g.el._isVueCE?g.el:null;try{d&&d._beginPatch(),T(g,w,B,D,G,j,p)}finally{d&&d._endPatch()}}},S=(g,w,b,I,B,D,G,j)=>{let p,d;const{props:E,shapeFlag:x,transition:H,dirs:W}=g;if(p=g.el=i(g.type,D,E&&E.is,E),x&8?u(p,g.children):x&16&&O(g.children,p,null,I,B,Wr(g,D),G,j),W&&an(g,null,I,"created"),$(p,g,g.scopeId,G,I),E){for(const P in E)P!=="value"&&!xn(P)&&r(p,P,null,E[P],D,I);"value"in E&&r(p,"value",null,E.value,D),(d=E.onVnodeBeforeMount)&&$t(d,I,g)}W&&an(g,null,I,"beforeMount");const N=Ou(B,H);N&&H.beforeEnter(p),o(p,w,b),((d=E&&E.onVnodeMounted)||N||W)&&Ye(()=>{try{d&&$t(d,I,g),N&&H.enter(p),W&&an(g,null,I,"mounted")}finally{}},B)},$=(g,w,b,I,B)=>{if(b&&_(g,b),I)for(let D=0;D{for(let d=p;d{const j=w.el=g.el;let{patchFlag:p,dynamicChildren:d,dirs:E}=w;p|=g.patchFlag&16;const x=g.props||_e,H=w.props||_e;let W;if(b&&un(b,!1),(W=H.onVnodeBeforeUpdate)&&$t(W,b,w,g),E&&an(w,g,b,"beforeUpdate"),b&&un(b,!0),d&&(!g.dynamicChildren||g.dynamicChildren.length!==d.length)&&(p=0,G=!1,d=null),(x.innerHTML&&H.innerHTML==null||x.textContent&&H.textContent==null)&&u(j,""),d?J(g.dynamicChildren,d,j,b,I,Wr(w,B),D):G||ae(g,w,j,null,b,I,Wr(w,B),D,!1),p>0){if(p&16)ee(j,x,H,b,B);else if(p&2&&x.class!==H.class&&r(j,"class",null,H.class,B),p&4&&r(j,"style",x.style,H.style,B),p&8){const N=w.dynamicProps;for(let P=0;P{W&&$t(W,b,w,g),E&&an(w,g,b,"updated")},I)},J=(g,w,b,I,B,D,G)=>{for(let j=0;j{if(w!==b){if(w!==_e)for(const D in w)!xn(D)&&!(D in b)&&r(g,D,w[D],null,B,I);for(const D in b){if(xn(D))continue;const G=b[D],j=w[D];G!==j&&D!=="value"&&r(g,D,j,G,B,I)}"value"in b&&r(g,"value",w.value,b.value,B)}},U=(g,w,b,I,B,D,G,j,p)=>{const d=w.el=g?g.el:a(""),E=w.anchor=g?g.anchor:a("");let{patchFlag:x,dynamicChildren:H,slotScopeIds:W}=w;W&&(j=j?j.concat(W):W),g==null?(o(d,b,I),o(E,b,I),O(w.children||[],b,E,B,D,G,j,p)):x>0&&x&64&&H&&g.dynamicChildren&&g.dynamicChildren.length===H.length?(J(g.dynamicChildren,H,b,B,D,G,j),(w.key!=null||B&&w===B.subTree)&&Ur(g,w,!0)):ae(g,w,b,E,B,D,G,j,p)},Y=(g,w,b,I,B,D,G,j,p)=>{w.slotScopeIds=j,g==null?w.shapeFlag&512?B.ctx.activate(w,b,I,G,p):re(w,b,I,B,D,G,p):V(g,w,p)},re=(g,w,b,I,B,D,G)=>{const j=g.component=Iu(g,I,B);if(Bo(g)&&(j.ctx.renderer=rt),Fu(j,!1,G),j.asyncDep){if(B&&B.registerDep(j,R,G),!g.el){const p=j.subTree=ke(wt);C(null,p,w,b),g.placeholder=p.el}}else R(j,g,w,b,B,D,G)},V=(g,w,b)=>{const I=w.component=g.component;if(hu(g,w,b))if(I.asyncDep&&!I.asyncResolved){K(I,w,b);return}else I.next=w,I.update();else w.el=g.el,I.vnode=w},R=(g,w,b,I,B,D,G)=>{const j=()=>{if(g.isMounted){let{next:x,bu:H,u:W,parent:N,vnode:P}=g;{const We=Ui(g);if(We){x&&(x.el=P.el,K(g,x,G)),We.asyncDep.then(()=>{Ye(()=>{g.isUnmounted||d()},B)});return}}let Z=x,le;un(g,!1),x?(x.el=P.el,K(g,x,G)):x=P,H&&pr(H),(le=x.props&&x.props.onVnodeBeforeUpdate)&&$t(le,N,x,P),un(g,!0);const we=Ti(g),He=g.subTree;g.subTree=we,k(He,we,f(He.el),Wt(He),g,B,D),x.el=we.el,Z===null&&gu(g,we.el),W&&Ye(W,B),(le=x.props&&x.props.onVnodeUpdated)&&Ye(()=>$t(le,N,x,P),B)}else{let x;const{el:H,props:W}=w,{bm:N,m:P,parent:Z,root:le,type:we}=g,He=kn(w);un(g,!1),N&&pr(N),!He&&(x=W&&W.onVnodeBeforeMount)&&$t(x,Z,w),un(g,!0);{le.ce&&le.ce._hasShadowRoot()&&le.ce._injectChildStyle(we,g.parent?g.parent.type:void 0);const We=g.subTree=Ti(g);k(null,We,b,I,g,B,D),w.el=We.el}if(P&&Ye(P,B),!He&&(x=W&&W.onVnodeMounted)){const We=w;Ye(()=>$t(x,Z,We),B)}(w.shapeFlag&256||Z&&kn(Z.vnode)&&Z.vnode.shapeFlag&256)&&g.a&&Ye(g.a,B),g.isMounted=!0,w=b=I=null}};g.scope.on();const p=g.effect=new Fs(j);g.scope.off();const d=g.update=p.run.bind(p),E=g.job=p.runIfDirty.bind(p);E.i=g,E.id=g.uid,p.scheduler=()=>Cr(E),un(g,!0),d()},K=(g,w,b)=>{w.component=g;const I=g.vnode.props;g.vnode=w,g.next=null,_u(g,w.props,I,b),wu(g,w.children,b),gt(),ni(g),mt()},ae=(g,w,b,I,B,D,G,j,p=!1)=>{const d=g&&g.children,E=g?g.shapeFlag:0,x=w.children,{patchFlag:H,shapeFlag:W}=w;if(H>0){if(H&128){Qe(d,x,b,I,B,D,G,j,p);return}else if(H&256){Ce(d,x,b,I,B,D,G,j,p);return}}W&8?(E&16&&dt(d,B,D),x!==d&&u(b,x)):E&16?W&16?Qe(d,x,b,I,B,D,G,j,p):dt(d,B,D,!0):(E&8&&u(b,""),W&16&&O(x,b,I,B,D,G,j,p))},Ce=(g,w,b,I,B,D,G,j,p)=>{g=g||gn,w=w||gn;const d=g.length,E=w.length,x=Math.min(d,E);let H;for(H=0;HE?dt(g,B,D,!0,!1,x):O(w,b,I,B,D,G,j,p,x)},Qe=(g,w,b,I,B,D,G,j,p)=>{let d=0;const E=w.length;let x=g.length-1,H=E-1;for(;d<=x&&d<=H;){const W=g[d],N=w[d]=p?xt(w[d]):kt(w[d]);if(Qn(W,N))k(W,N,b,null,B,D,G,j,p);else break;d++}for(;d<=x&&d<=H;){const W=g[x],N=w[H]=p?xt(w[H]):kt(w[H]);if(Qn(W,N))k(W,N,b,null,B,D,G,j,p);else break;x--,H--}if(d>x){if(d<=H){const W=H+1,N=WH)for(;d<=x;)Me(g[d],B,D,!0),d++;else{const W=d,N=d,P=new Map;for(d=N;d<=H;d++){const et=w[d]=p?xt(w[d]):kt(w[d]);et.key!=null&&P.set(et.key,d)}let Z,le=0;const we=H-N+1;let He=!1,We=0;const hn=new Array(we);for(d=0;d=we){Me(et,B,D,!0);continue}let Ct;if(et.key!=null)Ct=P.get(et.key);else for(Z=N;Z<=H;Z++)if(hn[Z-N]===0&&Qn(et,w[Z])){Ct=Z;break}Ct===void 0?Me(et,B,D,!0):(hn[Ct-N]=d+1,Ct>=We?We=Ct:He=!0,k(et,w[Ct],b,null,B,D,G,j,p),le++)}const ys=He?Nu(hn):gn;for(Z=ys.length-1,d=we-1;d>=0;d--){const et=N+d,Ct=w[et],Ml=w[et+1],Dl=et+1{const{el:D,type:G,transition:j,children:p,shapeFlag:d}=g;if(d&6){Ae(g.component.subTree,w,b,I);return}if(d&128){g.suspense.move(w,b,I);return}if(d&64){G.move(g,w,b,rt);return}if(G===de){o(D,w,b);for(let x=0;xj.enter(D),B));else{const{leave:x,delayLeave:H,afterLeave:W}=j,N=()=>{g.ctx.isUnmounted?s(D):o(D,w,b)},P=()=>{const Z=D._isLeaving||!!D[Lr];D._isLeaving&&D[Lr](!0),j.persisted&&!Z?N():x(D,()=>{N(),W&&W()})};H?H(D,N,P):P()}else o(D,w,b)},Me=(g,w,b,I=!1,B=!1)=>{const{type:D,props:G,ref:j,children:p,dynamicChildren:d,shapeFlag:E,patchFlag:x,dirs:H,cacheIndex:W,memo:N}=g;if(x===-2&&(B=!1),j!=null&&(gt(),qn(j,null,b,g,!0),mt()),W!=null&&(w.renderCache[W]=void 0),E&256){w.ctx.deactivate(g);return}const P=E&1&&H,Z=!kn(g);let le;if(Z&&(le=G&&G.onVnodeBeforeUnmount)&&$t(le,w,g),E&6)fn(g.component,b,I);else{if(E&128){g.suspense.unmount(b,I);return}P&&an(g,null,w,"beforeUnmount"),E&64?g.type.remove(g,w,b,rt,I):d&&!d.hasOnce&&(D!==de||x>0&&x&64)?dt(d,w,b,!1,!0):(D===de&&x&384||!B&&E&16)&&dt(p,w,b),I&&en(g)}const we=N!=null&&W==null;(Z&&(le=G&&G.onVnodeUnmounted)||P||we)&&Ye(()=>{le&&$t(le,w,g),P&&an(g,null,w,"unmounted"),we&&(g.el=null)},b)},en=g=>{const{type:w,el:b,anchor:I,transition:B}=g;if(w===de){tn(b,I);return}if(w===jr){m(g);return}const D=()=>{s(b),B&&!B.persisted&&B.afterLeave&&B.afterLeave()};if(g.shapeFlag&1&&B&&!B.persisted){const{leave:G,delayLeave:j}=B,p=()=>G(b,D);j?j(g.el,D,p):p()}else D()},tn=(g,w)=>{let b;for(;g!==w;)b=h(g),s(g),g=b;s(w)},fn=(g,w,b)=>{const{bum:I,scope:B,job:D,subTree:G,um:j,m:p,a:d}=g;ji(p),ji(d),I&&pr(I),B.stop(),D&&(D.flags|=8,Me(G,g,w,b)),j&&Ye(j,w),Ye(()=>{g.isUnmounted=!0},w)},dt=(g,w,b,I=!1,B=!1,D=0)=>{for(let G=D;G{if(g.shapeFlag&6)return Wt(g.component.subTree);if(g.shapeFlag&128)return g.suspense.next();const w=h(g.anchor||g.el),b=w&&w[ai];return b?h(b):w};let Ut=!1;const nn=(g,w,b)=>{let I;g==null?w._vnode&&(Me(w._vnode,null,null,!0),I=w._vnode.component):k(w._vnode||null,g,w,null,null,null,b),w._vnode=g,Ut||(Ut=!0,ni(I),oi(),Ut=!1)},rt={p:k,um:Me,m:Ae,r:en,mt:re,mc:O,pc:ae,pbc:J,n:Wt,o:e};return{render:nn,hydrate:void 0,createApp:lu(nn)}}function Wr({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function un({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Ou(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ur(e,t,n=!1){const o=e.children,s=t.children;if(te(o)&&te(s))for(let r=0;r>1,e[n[a]]0&&(t[o]=n[r-1]),n[r]=o)}}for(r=n.length,i=n[r-1];r-- >0;)n[r]=i,i=t[i];return n}function Ui(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Ui(t)}function ji(e){if(e)for(let t=0;te.__isSuspense;function Cu(e,t){t&&t.pendingBranch?te(e)?t.effects.push(...e):t.effects.push(e):Lc(e)}const de=Symbol.for("v-fgt"),Xn=Symbol.for("v-txt"),wt=Symbol.for("v-cmt"),jr=Symbol.for("v-stc"),Ft=[];let Je=null;function q(e=!1){Ft.push(Je=e?null:[])}function Gr(){Ft.pop(),Je=Ft[Ft.length-1]||null}let Jn=1;function Go(e,t=!1){Jn+=e,e<0&&Je&&t&&(Je.hasOnce=!0)}function Vi(e){return e.dynamicChildren=Jn>0?Je||gn:null,Gr(),Jn>0&&Je&&Je.push(e),e}function X(e,t,n,o,s,r){return Vi(M(e,t,n,o,s,r,!0))}function Ze(e,t,n,o,s){return Vi(ke(e,t,n,o,s,!0))}function Zn(e){return e?e.__v_isVNode===!0:!1}function Qn(e,t){return e.type===t.type&&e.key===t.key}const Hi=({key:e})=>e??null,Yo=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?be(e)||Ne(e)||oe(e)?{i:De,r:e,k:t,f:!!n}:e:null);function M(e,t=null,n=null,o=0,s=null,r=e===de?0:1,i=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Hi(t),ref:t&&Yo(t),scopeId:si,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:o,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:De};return a?(Vo(l,n),r&128&&e.normalize(l)):n&&(l.shapeFlag|=be(n)?8:16),Jn>0&&!i&&Je&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&Je.push(l),l}const ke=Au;function Au(e,t=null,n=null,o=0,s=null,r=!1){if((!e||e===mi)&&(e=wt),Zn(e)){const a=On(e,t,!0);return n&&Vo(a,n),Jn>0&&!r&&Je&&(a.shapeFlag&6?Je[Je.indexOf(e)]=a:Je.push(a)),a.patchFlag=-2,a}if(Ru(e)&&(e=e.__vccOpts),t){t=Eu(t);let{class:a,style:l}=t;a&&!be(a)&&(t.class=Se(a)),ge(l)&&(Eo(l)&&!te(l)&&(l=Ee({},l)),t.style=Pn(l))}const i=be(e)?1:Yi(e)?128:xo(e)?64:ge(e)?4:oe(e)?2:0;return M(e,t,n,o,s,i,r,!0)}function Eu(e){return e?Eo(e)||xi(e)?Ee({},e):e:null}function On(e,t,n=!1,o=!1){const{props:s,ref:r,patchFlag:i,children:a,transition:l}=e,c=t?Tu(s||{},t):s,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&Hi(c),ref:t&&t.ref?n&&r?te(r)?r.concat(Yo(t)):[r,Yo(t)]:Yo(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==de?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&On(e.ssContent),ssFallback:e.ssFallback&&On(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&Sr(u,l.clone(u)),u}function $e(e=" ",t=0){return ke(Xn,null,e,t)}function Le(e="",t=!1){return t?(q(),Ze(wt,null,e)):ke(wt,null,e)}function kt(e){return e==null||typeof e=="boolean"?ke(wt):te(e)?ke(de,null,e.slice()):Zn(e)?xt(e):ke(Xn,null,String(e))}function xt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:On(e)}function Vo(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(te(t))n=16;else if(typeof t=="object")if(o&65){const s=t.default;s&&(s._c&&(s._d=!1),Vo(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!xi(t)?t._ctx=De:s===3&&De&&(De.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(oe(t)){if(o&65){Vo(e,{default:t});return}t={default:t,_ctx:De},n=32}else t=String(t),o&64?(n=16,t=[$e(t)]):n=8;e.children=t,e.shapeFlag|=n}function Tu(...e){const t={};for(let n=0;nBe||De;let Ho,eo;{const e=yo(),t=(n,o)=>{let s;return(s=e[n])||(s=e[n]=[]),s.push(o),r=>{s.length>1?s.forEach(i=>i(r)):s[0](r)}};Ho=t("__VUE_INSTANCE_SETTERS__",n=>Be=n),eo=t("__VUE_SSR_SETTERS__",n=>Nn=n)}const to=e=>{const t=Be;return Ho(e),e.scope.on(),()=>{e.scope.off(),Ho(t)}},qi=()=>{Be&&Be.scope.off(),Ho(null)};function zi(e){return e.vnode.shapeFlag&4}let Nn=!1;function Fu(e,t=!1,n=!1){t&&eo(t);const{props:o,children:s}=e.vnode,r=zi(e);mu(e,o,r,t),vu(e,s,n||t);const i=r?xu(e,t):void 0;return t&&eo(!1),i}function xu(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,tu);const{setup:o}=n;if(o){gt();const s=e.setupContext=o.length>1?Mu(e):null,r=to(e),i=yn(o,e,0,[e.props,s]),a=ks(i);if(mt(),r(),(a||e.sp)&&!kn(e)&&Ir(e),a){if(i.then(qi,qi),t)return i.then(l=>{eo(!0);try{Ki(e,l,t)}finally{eo(!1)}}).catch(l=>{jn(l,e,0)});e.asyncDep=i}else Ki(e,i)}else Xi(e)}function Ki(e,t,n){oe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ge(t)&&(e.setupState=Zs(t)),Xi(e)}function Xi(e,t,n){const o=e.type;e.render||(e.render=o.render||ft);{const s=to(e);gt();try{nu(e)}finally{mt(),s()}}}const Pu={get(e,t){return Ue(e,"get",""),e[t]}};function Mu(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Pu),slots:e.slots,emit:e.emit,expose:t}}function qo(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Zs(_n(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in zn)return zn[n](e)},has(t,n){return n in t||n in zn}})):e.proxy}const Du=/(?:^|[-_])\w/g,Bu=e=>e.replace(Du,t=>t.toUpperCase()).replace(/[-_]/g,"");function Ji(e,t=!0){return oe(e)?e.displayName||e.name:e.name||t&&e.__name}function Zi(e,t,n=!1){let o=Ji(t);if(!o&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(o=s[1])}if(!o&&e){const s=r=>{for(const i in r)if(r[i]===t)return i};o=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return o?Bu(o):n?"App":"Anonymous"}function Ru(e){return oe(e)&&"__vccOpts"in e}const ie=(e,t)=>wc(e,t,Nn);function Qi(e,t,n){try{Go(-1);const o=arguments.length;return o===2?ge(t)&&!te(t)?Zn(t)?ke(e,null,[t]):ke(e,t):ke(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&Zn(n)&&(n=[n]),ke(e,t,n))}finally{Go(1)}}const Wu="3.5.42";/** +`,...Cc(s)),console.warn(...r)}mt(),Nr=!1}function Nc(){let e=Un[Un.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const o=e.component&&e.component.parent;e=o&&o.vnode}return t}function Cc(e){const t=[];return e.forEach((n,o)=>{t.push(...o===0?[]:[` +`],...Ac(n))}),t}function Ac({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",o=e.component?e.component.parent==null:!1,s=` at <${Qi(e.component,e.type,o)}`,r=">"+n;return e.props?[s,...Ec(e.props),r]:[s+r]}function Ec(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(o=>{t.push(...ti(o,e[o]))}),n.length>3&&t.push(" ..."),t}function ti(e,t,n){return be(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Ne(t)?(t=ti(e,ue(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):ne(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=ue(t),n?t:[`${e}=`,t])}function yn(e,t,n,o){try{return o?e(...o):e()}catch(s){jn(s,t,n)}}function it(e,t,n,o){if(ne(e)){const s=yn(e,t,n,o);return s&&Os(s)&&s.catch(r=>{jn(r,t,n)}),s}if(Q(e)){const s=[];for(let r=0;r>>1,s=je[o],r=Gn(s);r=Gn(n)?je.push(e):je.splice(Lc(t),0,e),e.flags|=1,oi()}}function oi(){So||(So=ni.then(ii))}function Sc(e){if(!Q(e))Yt&&e.id===-1?Yt.splice(wn+1,0,e):e.flags&1||(vn.push(e),e.flags|=1);else for(let t=0;tGn(n)-Gn(o));if(vn.length=0,Yt){for(let n=0;ne.id==null?e.flags&2?-1:1/0:e.id;function ii(e){try{for(bt=0;bt{o._d&&Go(-1);const r=Fo(t),i=Ft.length;let a;try{a=e(...s)}finally{for(let l=Ft.length;l>i;l--)Yr();Fo(r),o._d&&Go(1)}return a};return o._n=!0,o._c=!0,o._d=!0,o}function Ic(e,t){if(De===null)return e;const n=qo(De),o=e.dirs||(e.dirs=[]);for(let s=0;s1)return n&&ne(t)?t.call(o&&o.proxy):t}}function Fc(){return!!(Pt()||cn)}const xc=Symbol.for("v-scx"),Pc=()=>Ge(xc);function Mc(e,t){return Ar(e,null,t)}function yt(e,t,n){return Ar(e,t,n)}function Ar(e,t,n=_e){const{immediate:o,deep:s,flush:r,once:i}=n,a=Ce({},n),l=t&&o||!t&&r!=="post";let c;if(Nn){if(r==="sync"){const _=Pc();c=_.__watcherHandles||(_.__watcherHandles=[])}else if(!l){const _=()=>{};return _.stop=ft,_.resume=ft,_.pause=ft,_}}const u=Be;a.call=(_,v,k)=>it(_,u,v,k);let f=!1;r==="post"?a.scheduler=_=>{Ve(_,u&&u.suspense)}:r!=="sync"&&(f=!0,a.scheduler=(_,v)=>{v?_():Cr(_)}),a.augmentJob=_=>{t&&(_.flags|=4),f&&(_.flags|=2,u&&(_.id=u.uid,_.i=u))};const h=Oc(e,t,a);return Nn&&(c?c.push(h):l&&h()),h}function Dc(e,t,n){const o=this.proxy,s=be(e)?e.includes(".")?li(o,e):()=>o[e]:e.bind(o,o);let r;ne(t)?r=t:(r=t.handler,n=t);const i=eo(this),a=Ar(s,r.bind(o),n);return i(),a}function li(e,t){const n=t.split(".");return()=>{let o=e;for(let s=0;se.__isTeleport,ln=e=>e&&(e.disabled||e.disabled===""),Bc=e=>e&&(e.defer||e.defer===""),ui=e=>typeof SVGElement<"u"&&e instanceof SVGElement,pi=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Er=(e,t)=>{const n=e&&e.to;return be(n)?t?t(n):null:n},Rc={name:"Teleport",__isTeleport:!0,process(e,t,n,o,s,r,i,a,l,c){const{mc:u,pc:f,pbc:h,o:{insert:_,querySelector:v,createText:k,createComment:I,parentNode:N}}=c,A=ln(t.props);let{dynamicChildren:b}=t;const m=(w,O,T)=>{w.shapeFlag&16&&u(w.children,O,T,s,r,i,a,l)},C=(w=t)=>{const O=ln(w.props),T=w.target=Er(w.props,v),X=Tr(T,w,k,_);T&&(i!=="svg"&&ui(T)?i="svg":i!=="mathml"&&pi(T)&&(i="mathml"),s&&s.isCE&&(s.ce._teleportTargets||(s.ce._teleportTargets=new Set)).add(T),O||(m(w,T,X),Yn(w,!1)))},S=w=>{const O=()=>{if(Ht.get(w)===O){if(Ht.delete(w),ln(w.props)){const T=N(w.el)||n;m(w,T,w.anchor),Yn(w,!0)}C(w)}};Ht.set(w,O),Ve(O,r)};if(e==null){const w=t.el=k(""),O=t.anchor=k("");if(_(w,n,o),_(O,n,o),Bc(t.props)||r&&r.pendingBranch){S(t);return}A&&(m(t,n,O),Yn(t,!0)),C()}else{t.el=e.el;const w=t.anchor=e.anchor,O=Ht.get(e);if(O){O.flags|=8,Ht.delete(e),S(t);return}t.targetStart=e.targetStart;const T=t.target=e.target,X=t.targetAnchor=e.targetAnchor,te=ln(e.props),H=te?n:T,se=te?w:X;if(i==="svg"||ui(T)?i="svg":(i==="mathml"||pi(T))&&(i="mathml"),b?(h(e.dynamicChildren,b,H,s,r,i,a),jr(e,t,!0)):l||f(e,t,H,se,s,r,i,a,!1),A)te?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Po(t,n,w,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const he=Er(t.props,v);he&&(t.target=he,Po(t,he,null,c,0))}else te&&Po(t,T,X,c,1);Yn(t,A)}},remove(e,t,n,{um:o,o:{remove:s}},r){const{shapeFlag:i,children:a,anchor:l,targetStart:c,targetAnchor:u,target:f,props:h}=e,_=ln(h),v=r||!_,k=Ht.get(e);if(k&&(k.flags|=8,Ht.delete(e)),f&&(s(c),s(u)),r&&s(l),!k&&(_||f)&&i&16)for(let I=0;I1){for(const n of e)if(n.type!==vt){t=n;break}}return t}function di(e){if(!Bo(e))return xo(e.type)&&e.children?jc(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&ne(n.default))return n.default()}}function Sr(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;Sr(xo(n.type)&&di(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Vn(e,t){return ne(e)?Ce({name:e.name},t,{setup:e}):e}function Ir(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function fi(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Mo=new WeakMap;function Hn(e,t,n,o,s=!1){if(Q(e)){e.forEach((k,I)=>Hn(k,t&&(Q(t)?t[I]:t),n,o,s));return}if(kn(o)&&!s){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&Hn(e,t,n,o.component.subTree);return}const r=o.shapeFlag&4?qo(o.component):o.el,i=s?null:r,{i:a,r:l}=e,c=t&&t.r,u=a.refs===_e?a.refs={}:a.refs,f=a.setupState,h=ue(f),_=f===_e?ks:k=>fi(u,k)?!1:fe(h,k),v=(k,I)=>!(I&&fi(u,I));if(c!=null&&c!==l){if(hi(t),be(c))u[c]=null,_(c)&&(f[c]=null);else if(Ne(c)){const k=t;v(c,k.k)&&(c.value=null),k.k&&(u[k.k]=null)}}if(ne(l))yn(l,a,12,[i,u]);else{const k=be(l),I=Ne(l);if(k||I){const N=()=>{if(e.f){const A=k?_(l)?f[l]:u[l]:v()||!e.k?l.value:u[e.k];if(s)Q(A)&&cr(A,r);else if(Q(A))A.includes(r)||A.push(r);else if(k)u[l]=[r],_(l)&&(f[l]=u[l]);else{const b=[r];v(l,e.k)&&(l.value=b),e.k&&(u[e.k]=b)}}else k?(u[l]=i,_(l)&&(f[l]=i)):I&&(v(l,e.k)&&(l.value=i),e.k&&(u[e.k]=i))};if(i){const A=()=>{N(),Mo.delete(e)};A.id=-1,Mo.set(e,A),Ve(A,n)}else hi(e),N()}}}function hi(e){const t=Mo.get(e);t&&(t.flags|=8,Mo.delete(e))}const gi=e=>e.nodeType===8;bo().requestIdleCallback,bo().cancelIdleCallback;function Gc(e,t){if(gi(e)&&e.data==="["){let n=1,o=e.nextSibling;for(;o;){if(o.nodeType===1){if(t(o)===!1)break}else if(gi(o))if(o.data==="]"){if(--n===0)break}else o.data==="["&&n++;o=o.nextSibling}}else t(e)}const kn=e=>!!e.type.__asyncLoader;function Yc(e){ne(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:s=200,hydrate:r,timeout:i,suspensible:a=!0,onError:l}=e;let c=null,u,f=0;const h=()=>(f++,c=null,_()),_=()=>{let v;return c||(v=c=t().catch(k=>{if(k=k instanceof Error?k:new Error(String(k)),l)return new Promise((I,N)=>{l(k,()=>I(h()),()=>N(k),f+1)});throw k}).then(k=>v!==c&&c?c:(k&&(k.__esModule||k[Symbol.toStringTag]==="Module")&&(k=k.default),u=k,k)))};return Vn({name:"AsyncComponentWrapper",__asyncLoader:_,__asyncHydrate(v,k,I){const N=v.isConnected;let A=!1;(k.bu||(k.bu=[])).push(()=>A=!0);const b=()=>{A||!v.parentNode||N&&!v.isConnected||I()},m=r?()=>{const C=r(b,S=>Gc(v,S));C&&(k.bum||(k.bum=[])).push(C)}:b;u?m():_().then(()=>!k.isUnmounted&&m())},get __asyncResolved(){return u},setup(){const v=Be;if(Ir(v),u)return()=>Do(u,v);const k=C=>{c=null,jn(C,v,13,!o)};if(a&&v.suspense||Nn)return _().then(C=>()=>Do(C,v)).catch(C=>(k(C),()=>o?ve(o,{error:C}):null));const I=ie(!1),N=ie(),A=ie(!!s);let b,m;return Wo(()=>{b!=null&&clearTimeout(b),m!=null&&clearTimeout(m)}),s&&(m=setTimeout(()=>{v.isUnmounted||(A.value=!1)},s)),i!=null&&(b=setTimeout(()=>{if(!v.isUnmounted&&!I.value&&!N.value){const C=new Error(`Async component timed out after ${i}ms.`);k(C),N.value=C}},i)),_().then(()=>{v.isUnmounted||(I.value=!0,v.parent&&Bo(v.parent.vnode)&&v.parent.update())}).catch(C=>{if(v.isUnmounted){c=null;return}k(C),N.value=C}),()=>{if(I.value&&u)return Do(u,v);if(N.value&&o)return ve(o,{error:N.value});if(n&&!A.value)return Do(n,v)}}})}function Do(e,t){const{ref:n,props:o,children:s,ce:r}=t.vnode,i=ve(e,o,s);return i.ref=n,i.ce=r,delete t.vnode.ce,i}const Bo=e=>e.type.__isKeepAlive;function Vc(e,t){mi(e,"a",t)}function Hc(e,t){mi(e,"da",t)}function mi(e,t,n=Be){const o=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(Ro(t,o,n),n){let s=n.parent;for(;s&&s.parent;)Bo(s.parent.vnode)&&qc(o,t,n,s),s=s.parent}}function qc(e,t,n,o){const s=Ro(t,e,o,!0);Wo(()=>{cr(o[t],s)},n)}function Ro(e,t,n=Be,o=!1){if(n){const s=n[e]||(n[e]=[]),r=t.__weh||(t.__weh=(...i)=>{gt();const a=eo(n),l=it(t,n,e,i);return a(),mt(),l});return o?s.unshift(r):s.push(r),r}}const It=e=>(t,n=Be)=>{(!Nn||e==="sp")&&Ro(e,(...o)=>t(...o),n)},_i=It("bm"),qt=It("m"),zc=It("bu"),Kc=It("u"),$n=It("bum"),Wo=It("um"),Xc=It("sp"),Jc=It("rtg"),Zc=It("rtc");function Qc(e,t=Be){Ro("ec",e,t)}const eu="components",bi=Symbol.for("v-ndc");function yi(e){return be(e)?tu(eu,e,!1)||e:e||bi}function tu(e,t,n=!0,o=!1){const s=De||Be;if(s){const r=s.type;{const a=Zi(r,!1);if(a&&(a===t||a===xe(t)||a===_o(xe(t))))return r}const i=vi(s[e]||r[e],t)||vi(s.appContext[e],t);return!i&&o?r:i}}function vi(e,t){return e&&(e[t]||e[xe(t)]||e[_o(xe(t))])}function lt(e,t,n,o){let s;const r=n,i=Q(e);if(i||be(e)){const a=i&&Tt(e);let l=!1,c=!1;a&&(l=!Xe(e),c=Lt(e),e=wo(e)),s=new Array(e.length);for(let u=0,f=e.length;ut(a,l,void 0,r));else{const a=Object.keys(e);s=new Array(a.length);for(let l=0,c=a.length;l0;return Y(),Qe(pe,null,[ve("slot",c,o)],u?-2:64)}let i=e[t];i&&i._c&&(i._d=!1);const a=Ft.length;Y();let l;try{const c=i&&wi(i(n)),u=n.key||r||c&&c.key;l=Qe(pe,{key:(u&&!Ke(u)?u:`_${t}`)+(!c&&o?"_fb":"")},c||(o?o():[]),c&&e._===1?64:-2)}catch(c){for(let u=Ft.length;u>a;u--)Yr();throw c}finally{i&&i._c&&(i._d=!0)}return l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),l}function wi(e){return e.some(t=>Jn(t)?!(t.type===vt||t.type===pe&&!wi(t.children)):!0)?e:null}const xr=e=>e?Ki(e)?qo(e):xr(e.parent):null,qn=Ce(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>xr(e.parent),$root:e=>xr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ni(e),$forceUpdate:e=>e.f||(e.f=()=>{Cr(e.update)}),$nextTick:e=>e.n||(e.n=Io.bind(e.proxy)),$watch:e=>Dc.bind(e)}),Pr=(e,t)=>e!==_e&&!e.__isScriptSetup&&fe(e,t),nu={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:s,props:r,accessCache:i,type:a,appContext:l}=e;if(t[0]!=="$"){const h=i[t];if(h!==void 0)switch(h){case 1:return o[t];case 2:return s[t];case 4:return n[t];case 3:return r[t]}else{if(Pr(o,t))return i[t]=1,o[t];if(s!==_e&&fe(s,t))return i[t]=2,s[t];if(fe(r,t))return i[t]=3,r[t];if(n!==_e&&fe(n,t))return i[t]=4,n[t];Mr&&(i[t]=0)}}const c=qn[t];let u,f;if(c)return t==="$attrs"&&Ue(e.attrs,"get",""),c(e);if((u=a.__cssModules)&&(u=u[t]))return u;if(n!==_e&&fe(n,t))return i[t]=4,n[t];if(f=l.config.globalProperties,fe(f,t))return f[t]},set({_:e},t,n){const{data:o,setupState:s,ctx:r}=e;return Pr(s,t)?(s[t]=n,!0):o!==_e&&fe(o,t)?(o[t]=n,!0):fe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:s,props:r,type:i}},a){let l;return!!(n[a]||e!==_e&&a[0]!=="$"&&fe(e,a)||Pr(t,a)||fe(r,a)||fe(o,a)||fe(qn,a)||fe(s.config.globalProperties,a)||(l=i.__cssModules)&&l[a])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:fe(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function ki(e){return Q(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Mr=!0;function ou(e){const t=Ni(e),n=e.proxy,o=e.ctx;Mr=!1,t.beforeCreate&&$i(t.beforeCreate,e,"bc");const{data:s,computed:r,methods:i,watch:a,provide:l,inject:c,created:u,beforeMount:f,mounted:h,beforeUpdate:_,updated:v,activated:k,deactivated:I,beforeDestroy:N,beforeUnmount:A,destroyed:b,unmounted:m,render:C,renderTracked:S,renderTriggered:w,errorCaptured:O,serverPrefetch:T,expose:X,inheritAttrs:te,components:H,directives:se,filters:he}=t;if(c&&ru(c,o,null),i)for(const q in i){const le=i[q];ne(le)&&(o[q]=le.bind(n))}if(s){const q=s.call(n,n);ge(q)&&(e.data=No(q))}if(Mr=!0,r)for(const q in r){const le=r[q],Ee=ne(le)?le.bind(n,n):ne(le.get)?le.get.bind(n,n):ft,Nt=!ne(le)&&ne(le.set)?le.set.bind(n):ft,Fe=re({get:Ee,set:Nt});Object.defineProperty(o,q,{enumerable:!0,configurable:!0,get:()=>Fe.value,set:Me=>Fe.value=Me})}if(a)for(const q in a)Oi(a[q],o,n,q);if(l){const q=ne(l)?l.call(n):l;Reflect.ownKeys(q).forEach(le=>{at(le,q[le])})}u&&$i(u,e,"c");function W(q,le){Q(le)?le.forEach(Ee=>q(Ee.bind(n))):le&&q(le.bind(n))}if(W(_i,f),W(qt,h),W(zc,_),W(Kc,v),W(Vc,k),W(Hc,I),W(Qc,O),W(Zc,S),W(Jc,w),W($n,A),W(Wo,m),W(Xc,T),Q(X))if(X.length){const q=e.exposed||(e.exposed={});X.forEach(le=>{Object.defineProperty(q,le,{get:()=>n[le],set:Ee=>n[le]=Ee,enumerable:!0})})}else e.exposed||(e.exposed={});C&&e.render===ft&&(e.render=C),te!=null&&(e.inheritAttrs=te),H&&(e.components=H),se&&(e.directives=se),T&&Ir(e)}function ru(e,t,n=ft){Q(e)&&(e=Dr(e));for(const o in e){const s=e[o];let r;ge(s)?"default"in s?r=Ge(s.from||o,s.default,!0):r=Ge(s.from||o):r=Ge(s),Ne(r)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>r.value,set:i=>r.value=i}):t[o]=r}}function $i(e,t,n){it(Q(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function Oi(e,t,n,o){let s=o.includes(".")?li(n,o):()=>n[o];if(be(e)){const r=t[e];ne(r)&&yt(s,r)}else if(ne(e))yt(s,e.bind(n));else if(ge(e))if(Q(e))e.forEach(r=>Oi(r,t,n,o));else{const r=ne(e.handler)?e.handler.bind(n):t[e.handler];ne(r)&&yt(s,r,e)}}function Ni(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:s,optionsCache:r,config:{optionMergeStrategies:i}}=e.appContext,a=r.get(t);let l;return a?l=a:!s.length&&!n&&!o?l=t:(l={},s.length&&s.forEach(c=>Uo(l,c,i,!0)),Uo(l,t,i)),ge(t)&&r.set(t,l),l}function Uo(e,t,n,o=!1){const{mixins:s,extends:r}=t;r&&Uo(e,r,n,!0),s&&s.forEach(i=>Uo(e,i,n,!0));for(const i in t)if(!(o&&i==="expose")){const a=su[i]||n&&n[i];e[i]=a?a(e[i],t[i]):t[i]}return e}const su={data:Ci,props:Ai,emits:Ai,methods:zn,computed:zn,beforeCreate:Ye,created:Ye,beforeMount:Ye,mounted:Ye,beforeUpdate:Ye,updated:Ye,beforeDestroy:Ye,beforeUnmount:Ye,destroyed:Ye,unmounted:Ye,activated:Ye,deactivated:Ye,errorCaptured:Ye,serverPrefetch:Ye,components:zn,directives:zn,watch:au,provide:Ci,inject:iu};function Ci(e,t){return t?e?function(){return Ce(ne(e)?e.call(this,this):e,ne(t)?t.call(this,this):t)}:t:e}function iu(e,t){return zn(Dr(e),Dr(t))}function Dr(e){if(Q(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${xe(t)}Modifiers`]||e[`${tt(t)}Modifiers`];function pu(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||_e;let s=n;const r=t.startsWith("update:"),i=r&&uu(o,t.slice(7));i&&(i.trim&&(s=n.map(u=>be(u)?u.trim():u)),i.number&&(s=s.map(Gl)));let a,l=o[a=ur(t)]||o[a=ur(xe(t))];!l&&r&&(l=o[a=ur(tt(t))]),l&&it(l,e,6,s);const c=o[a+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,it(c,e,6,s)}}const du=new WeakMap;function Ti(e,t,n=!1){const o=n?du:t.emitsCache,s=o.get(e);if(s!==void 0)return s;const r=e.emits;let i={},a=!1;if(!ne(e)){const l=c=>{const u=Ti(c,t,!0);u&&(a=!0,Ce(i,u))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!r&&!a?(ge(e)&&o.set(e,null),null):(Q(r)?r.forEach(l=>i[l]=null):Ce(i,r),ge(e)&&o.set(e,i),i)}function jo(e,t){return!e||!uo(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),fe(e,t[0].toLowerCase()+t.slice(1))||fe(e,tt(t))||fe(e,t))}function N_(){}function Li(e){const{type:t,vnode:n,proxy:o,withProxy:s,propsOptions:[r],slots:i,attrs:a,emit:l,render:c,renderCache:u,props:f,data:h,setupState:_,ctx:v,inheritAttrs:k}=e,I=Fo(e);let N,A;try{if(n.shapeFlag&4){const m=s||o,C=m;N=wt(c.call(C,m,u,f,_,h,v)),A=a}else{const m=t;N=wt(m.length>1?m(f,{attrs:a,slots:i,emit:l}):m(f,null)),A=t.props?a:fu(a)}}catch(m){Ft.length=0,jn(m,e,1),N=ve(vt)}let b=N;if(A&&k!==!1){const m=Object.keys(A),{shapeFlag:C}=b;m.length&&C&7&&(r&&m.some(po)&&(A=hu(A,r)),b=On(b,A,!1,!0))}if(n.dirs&&(b=On(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition){const m=xo(b.type)&&di(b)||b;Sr(m,n.transition)}return N=b,Fo(I),N}const fu=e=>{let t;for(const n in e)(n==="class"||n==="style"||uo(n))&&((t||(t={}))[n]=e[n]);return t},hu=(e,t)=>{const n={};for(const o in e)(!po(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function gu(e,t,n){const{props:o,children:s,component:r}=e,{props:i,children:a,patchFlag:l}=t,c=r.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?Si(o,i,c):!!i;if(l&8){const u=t.dynamicProps;for(let f=0;fObject.create(Fi),Pi=e=>Object.getPrototypeOf(e)===Fi;function _u(e,t,n,o=!1){const s={},r=xi();e.propsDefaults=Object.create(null),Mi(e,t,s,r);for(const i in e.propsOptions[0])i in s||(s[i]=void 0);n?e.props=o?s:gc(s):e.type.props?e.props=s:e.props=r,e.attrs=r}function bu(e,t,n,o){const{props:s,attrs:r,vnode:{patchFlag:i}}=e,a=ue(s),[l]=e.propsOptions;let c=!1;if((o||i>0)&&!(i&16)){if(i&8){const u=e.vnode.dynamicProps;for(let f=0;f{l=!0;const[h,_]=Di(f,t,!0);Ce(i,h),_&&a.push(..._)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!r&&!l)return ge(e)&&o.set(e,gn),gn;if(Q(r))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",Wr=e=>Q(e)?e.map(wt):[wt(e)],vu=(e,t,n)=>{if(t._n)return t;const o=Vt((...s)=>Wr(t(...s)),n);return o._c=!1,o},Ri=(e,t,n)=>{const o=e._ctx;for(const s in e){if(Rr(s))continue;const r=e[s];if(ne(r))t[s]=vu(s,r,o);else if(r!=null){const i=Wr(r);t[s]=()=>i}}},Wi=(e,t)=>{const n=Wr(t);e.slots.default=()=>n},Ui=(e,t,n)=>{for(const o in t)(n||!Rr(o))&&(e[o]=t[o])},wu=(e,t,n)=>{const o=e.slots=xi();if(e.vnode.shapeFlag&32){const s=t._;s?(Ui(o,t,n),n&&Cs(o,"_",s,!0)):Ri(t,o)}else t&&Wi(e,t)},ku=(e,t,n)=>{const{vnode:o,slots:s}=e;let r=!0,i=_e;if(o.shapeFlag&32){const a=t._;a?n&&a===1?r=!1:Ui(s,t,n):(r=!t.$stable,Ri(t,s)),i=t}else t&&(Wi(e,t),i={default:1});if(r)for(const a in s)!Rr(a)&&i[a]==null&&delete s[a]},Ve=Au;function $u(e){return Ou(e)}function Ou(e,t){const n=bo();n.__VUE__=!0;const{insert:o,remove:s,patchProp:r,createElement:i,createText:a,createComment:l,setText:c,setElementText:u,parentNode:f,nextSibling:h,setScopeId:_=ft,insertStaticContent:v}=e,k=(g,$,y,F=null,B=null,D=null,j=void 0,U=null,p=!!$.dynamicChildren)=>{if(g===$)return;g&&!Zn(g,$)&&(F=Ut(g),Me(g,B,D,!0),g=null),$.patchFlag===-2&&(p=!1,$.dynamicChildren=null);const{type:d,ref:L,shapeFlag:x}=$;switch(d){case Kn:I(g,$,y,F);break;case vt:N(g,$,y,F);break;case Gr:g==null&&A($,y,F,j);break;case pe:H(g,$,y,F,B,D,j,U,p);break;default:x&1?C(g,$,y,F,B,D,j,U,p):x&6?se(g,$,y,F,B,D,j,U,p):(x&64||x&128)&&d.process(g,$,y,F,B,D,j,U,p,ot)}L!=null&&B?Hn(L,g&&g.ref,D,$||g,!$):L==null&&g&&g.ref!=null&&Hn(g.ref,null,D,g,!0)},I=(g,$,y,F)=>{if(g==null)o($.el=a($.children),y,F);else{const B=$.el=g.el;$.children!==g.children&&c(B,$.children)}},N=(g,$,y,F)=>{g==null?o($.el=l($.children||""),y,F):$.el=g.el},A=(g,$,y,F)=>{[g.el,g.anchor]=v(g.children,$,y,F,g.el,g.anchor)},b=({el:g,anchor:$},y,F)=>{let B;for(;g&&g!==$;)B=h(g),o(g,y,F),g=B;o($,y,F)},m=({el:g,anchor:$})=>{let y;for(;g&&g!==$;)y=h(g),s(g),g=y;s($)},C=(g,$,y,F,B,D,j,U,p)=>{if($.type==="svg"?j="svg":$.type==="math"&&(j="mathml"),g==null)S($,y,F,B,D,j,U,p);else{const d=g.el&&g.el._isVueCE?g.el:null;try{d&&d._beginPatch(),T(g,$,B,D,j,U,p)}finally{d&&d._endPatch()}}},S=(g,$,y,F,B,D,j,U)=>{let p,d;const{props:L,shapeFlag:x,transition:G,dirs:R}=g;if(p=g.el=i(g.type,D,L&&L.is,L),x&8?u(p,g.children):x&16&&O(g.children,p,null,F,B,Ur(g,D),j,U),R&&an(g,null,F,"created"),w(p,g,g.scopeId,j,F),L){for(const M in L)M!=="value"&&!xn(M)&&r(p,M,null,L[M],D,F);"value"in L&&r(p,"value",null,L.value,D),(d=L.onVnodeBeforeMount)&&kt(d,F,g)}R&&an(g,null,F,"beforeMount");const E=Nu(B,G);E&&G.beforeEnter(p),o(p,$,y),((d=L&&L.onVnodeMounted)||E||R)&&Ve(()=>{try{d&&kt(d,F,g),E&&G.enter(p),R&&an(g,null,F,"mounted")}finally{}},B)},w=(g,$,y,F,B)=>{if(y&&_(g,y),F)for(let D=0;D{for(let d=p;d{const U=$.el=g.el;let{patchFlag:p,dynamicChildren:d,dirs:L}=$;p|=g.patchFlag&16;const x=g.props||_e,G=$.props||_e;let R;if(y&&un(y,!1),(R=G.onVnodeBeforeUpdate)&&kt(R,y,$,g),L&&an($,g,y,"beforeUpdate"),y&&un(y,!0),d&&(!g.dynamicChildren||g.dynamicChildren.length!==d.length)&&(p=0,j=!1,d=null),(x.innerHTML&&G.innerHTML==null||x.textContent&&G.textContent==null)&&u(U,""),d?X(g.dynamicChildren,d,U,y,F,Ur($,B),D):j||le(g,$,U,null,y,F,Ur($,B),D,!1),p>0){if(p&16)te(U,x,G,y,B);else if(p&2&&x.class!==G.class&&r(U,"class",null,G.class,B),p&4&&r(U,"style",x.style,G.style,B),p&8){const E=$.dynamicProps;for(let M=0;M{R&&kt(R,y,$,g),L&&an($,g,y,"updated")},F)},X=(g,$,y,F,B,D,j)=>{for(let U=0;U<$.length;U++){const p=g[U],d=$[U],L=p.el&&(p.type===pe||!Zn(p,d)||p.shapeFlag&198)?f(p.el):y;k(p,d,L,null,F,B,D,j,!0)}},te=(g,$,y,F,B)=>{if($!==y){if($!==_e)for(const D in $)!xn(D)&&!(D in y)&&r(g,D,$[D],null,B,F);for(const D in y){if(xn(D))continue;const j=y[D],U=$[D];j!==U&&D!=="value"&&r(g,D,U,j,B,F)}"value"in y&&r(g,"value",$.value,y.value,B)}},H=(g,$,y,F,B,D,j,U,p)=>{const d=$.el=g?g.el:a(""),L=$.anchor=g?g.anchor:a("");let{patchFlag:x,dynamicChildren:G,slotScopeIds:R}=$;R&&(U=U?U.concat(R):R),g==null?(o(d,y,F),o(L,y,F),O($.children||[],y,L,B,D,j,U,p)):x>0&&x&64&&G&&g.dynamicChildren&&g.dynamicChildren.length===G.length?(X(g.dynamicChildren,G,y,B,D,j,U),($.key!=null||B&&$===B.subTree)&&jr(g,$,!0)):le(g,$,y,L,B,D,j,U,p)},se=(g,$,y,F,B,D,j,U,p)=>{$.slotScopeIds=U,g==null?$.shapeFlag&512?B.ctx.activate($,y,F,j,p):he($,y,F,B,D,j,p):K(g,$,p)},he=(g,$,y,F,B,D,j)=>{const U=g.component=Fu(g,F,B);if(Bo(g)&&(U.ctx.renderer=ot),xu(U,!1,j),U.asyncDep){if(B&&B.registerDep(U,W,j),!g.el){const p=U.subTree=ve(vt);N(null,p,$,y),g.placeholder=p.el}}else W(U,g,$,y,B,D,j)},K=(g,$,y)=>{const F=$.component=g.component;if(gu(g,$,y))if(F.asyncDep&&!F.asyncResolved){q(F,$,y);return}else F.next=$,F.update();else $.el=g.el,F.vnode=$},W=(g,$,y,F,B,D,j)=>{const U=()=>{if(g.isMounted){let{next:x,bu:G,u:R,parent:E,vnode:M}=g;{const We=ji(g);if(We){x&&(x.el=M.el,q(g,x,j)),We.asyncDep.then(()=>{Ve(()=>{g.isUnmounted||d()},B)});return}}let J=x,ae;un(g,!1),x?(x.el=M.el,q(g,x,j)):x=M,G&&pr(G),(ae=x.props&&x.props.onVnodeBeforeUpdate)&&kt(ae,E,x,M),un(g,!0);const ke=Li(g),qe=g.subTree;g.subTree=ke,k(qe,ke,f(qe.el),Ut(qe),g,B,D),x.el=ke.el,J===null&&mu(g,ke.el),R&&Ve(R,B),(ae=x.props&&x.props.onVnodeUpdated)&&Ve(()=>kt(ae,E,x,M),B)}else{let x;const{el:G,props:R}=$,{bm:E,m:M,parent:J,root:ae,type:ke}=g,qe=kn($);un(g,!1),E&&pr(E),!qe&&(x=R&&R.onVnodeBeforeMount)&&kt(x,J,$),un(g,!0);{ae.ce&&ae.ce._hasShadowRoot()&&ae.ce._injectChildStyle(ke,g.parent?g.parent.type:void 0);const We=g.subTree=Li(g);k(null,We,y,F,g,B,D),$.el=We.el}if(M&&Ve(M,B),!qe&&(x=R&&R.onVnodeMounted)){const We=$;Ve(()=>kt(x,J,We),B)}($.shapeFlag&256||J&&kn(J.vnode)&&J.vnode.shapeFlag&256)&&g.a&&Ve(g.a,B),g.isMounted=!0,$=y=F=null}};g.scope.on();const p=g.effect=new Ps(U);g.scope.off();const d=g.update=p.run.bind(p),L=g.job=p.runIfDirty.bind(p);L.i=g,L.id=g.uid,p.scheduler=()=>Cr(L),un(g,!0),d()},q=(g,$,y)=>{$.component=g;const F=g.vnode.props;g.vnode=$,g.next=null,bu(g,$.props,F,y),ku(g,$.children,y),gt(),ri(g),mt()},le=(g,$,y,F,B,D,j,U,p=!1)=>{const d=g&&g.children,L=g?g.shapeFlag:0,x=$.children,{patchFlag:G,shapeFlag:R}=$;if(G>0){if(G&128){Nt(d,x,y,F,B,D,j,U,p);return}else if(G&256){Ee(d,x,y,F,B,D,j,U,p);return}}R&8?(L&16&&dt(d,B,D),x!==d&&u(y,x)):L&16?R&16?Nt(d,x,y,F,B,D,j,U,p):dt(d,B,D,!0):(L&8&&u(y,""),R&16&&O(x,y,F,B,D,j,U,p))},Ee=(g,$,y,F,B,D,j,U,p)=>{g=g||gn,$=$||gn;const d=g.length,L=$.length,x=Math.min(d,L);let G;for(G=0;GL?dt(g,B,D,!0,!1,x):O($,y,F,B,D,j,U,p,x)},Nt=(g,$,y,F,B,D,j,U,p)=>{let d=0;const L=$.length;let x=g.length-1,G=L-1;for(;d<=x&&d<=G;){const R=g[d],E=$[d]=p?xt($[d]):wt($[d]);if(Zn(R,E))k(R,E,y,null,B,D,j,U,p);else break;d++}for(;d<=x&&d<=G;){const R=g[x],E=$[G]=p?xt($[G]):wt($[G]);if(Zn(R,E))k(R,E,y,null,B,D,j,U,p);else break;x--,G--}if(d>x){if(d<=G){const R=G+1,E=RG)for(;d<=x;)Me(g[d],B,D,!0),d++;else{const R=d,E=d,M=new Map;for(d=E;d<=G;d++){const et=$[d]=p?xt($[d]):wt($[d]);et.key!=null&&M.set(et.key,d)}let J,ae=0;const ke=G-E+1;let qe=!1,We=0;const hn=new Array(ke);for(d=0;d=ke){Me(et,B,D,!0);continue}let Ct;if(et.key!=null)Ct=M.get(et.key);else for(J=E;J<=G;J++)if(hn[J-E]===0&&Zn(et,$[J])){Ct=J;break}Ct===void 0?Me(et,B,D,!0):(hn[Ct-E]=d+1,Ct>=We?We=Ct:qe=!0,k(et,$[Ct],y,null,B,D,j,U,p),ae++)}const ws=qe?Cu(hn):gn;for(J=ws.length-1,d=ke-1;d>=0;d--){const et=E+d,Ct=$[et],Dl=$[et+1],Bl=et+1{const{el:D,type:j,transition:U,children:p,shapeFlag:d}=g;if(d&6){Fe(g.component.subTree,$,y,F);return}if(d&128){g.suspense.move($,y,F);return}if(d&64){j.move(g,$,y,ot);return}if(j===pe){o(D,$,y);for(let x=0;xU.enter(D),B));else{const{leave:x,delayLeave:G,afterLeave:R}=U,E=()=>{g.ctx.isUnmounted?s(D):o(D,$,y)},M=()=>{const J=D._isLeaving||!!D[Lr];D._isLeaving&&D[Lr](!0),U.persisted&&!J?E():x(D,()=>{E(),R&&R()})};G?G(D,E,M):M()}else o(D,$,y)},Me=(g,$,y,F=!1,B=!1)=>{const{type:D,props:j,ref:U,children:p,dynamicChildren:d,shapeFlag:L,patchFlag:x,dirs:G,cacheIndex:R,memo:E}=g;if(x===-2&&(B=!1),U!=null&&(gt(),Hn(U,null,y,g,!0),mt()),R!=null&&($.renderCache[R]=void 0),L&256){$.ctx.deactivate(g);return}const M=L&1&&G,J=!kn(g);let ae;if(J&&(ae=j&&j.onVnodeBeforeUnmount)&&kt(ae,$,g),L&6)fn(g.component,y,F);else{if(L&128){g.suspense.unmount(y,F);return}M&&an(g,null,$,"beforeUnmount"),L&64?g.type.remove(g,$,y,ot,F):d&&!d.hasOnce&&(D!==pe||x>0&&x&64)?dt(d,$,y,!1,!0):(D===pe&&x&384||!B&&L&16)&&dt(p,$,y),F&&tn(g)}const ke=E!=null&&R==null;(J&&(ae=j&&j.onVnodeUnmounted)||M||ke)&&Ve(()=>{ae&&kt(ae,$,g),M&&an(g,null,$,"unmounted"),ke&&(g.el=null)},y)},tn=g=>{const{type:$,el:y,anchor:F,transition:B}=g;if($===pe){nn(y,F);return}if($===Gr){m(g);return}const D=()=>{s(y),B&&!B.persisted&&B.afterLeave&&B.afterLeave()};if(g.shapeFlag&1&&B&&!B.persisted){const{leave:j,delayLeave:U}=B,p=()=>j(y,D);U?U(g.el,D,p):p()}else D()},nn=(g,$)=>{let y;for(;g!==$;)y=h(g),s(g),g=y;s($)},fn=(g,$,y)=>{const{bum:F,scope:B,job:D,subTree:j,um:U,m:p,a:d}=g;Gi(p),Gi(d),F&&pr(F),B.stop(),D&&(D.flags|=8,Me(j,g,$,y)),U&&Ve(U,$),Ve(()=>{g.isUnmounted=!0},$)},dt=(g,$,y,F=!1,B=!1,D=0)=>{for(let j=D;j{if(g.shapeFlag&6)return Ut(g.component.subTree);if(g.shapeFlag&128)return g.suspense.next();const $=h(g.anchor||g.el),y=$&&$[ci];return y?h(y):$};let jt=!1;const on=(g,$,y)=>{let F;g==null?$._vnode&&(Me($._vnode,null,null,!0),F=$._vnode.component):k($._vnode||null,g,$,null,null,null,y),$._vnode=g,jt||(jt=!0,ri(F),si(),jt=!1)},ot={p:k,um:Me,m:Fe,r:tn,mt:he,mc:O,pc:le,pbc:X,n:Ut,o:e};return{render:on,hydrate:void 0,createApp:cu(on)}}function Ur({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function un({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Nu(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function jr(e,t,n=!1){const o=e.children,s=t.children;if(Q(o)&&Q(s))for(let r=0;r>1,e[n[a]]0&&(t[o]=n[r-1]),n[r]=o)}}for(r=n.length,i=n[r-1];r-- >0;)n[r]=i,i=t[i];return n}function ji(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:ji(t)}function Gi(e){if(e)for(let t=0;te.__isSuspense;function Au(e,t){t&&t.pendingBranch?Q(e)?t.effects.push(...e):t.effects.push(e):Sc(e)}const pe=Symbol.for("v-fgt"),Kn=Symbol.for("v-txt"),vt=Symbol.for("v-cmt"),Gr=Symbol.for("v-stc"),Ft=[];let Ze=null;function Y(e=!1){Ft.push(Ze=e?null:[])}function Yr(){Ft.pop(),Ze=Ft[Ft.length-1]||null}let Xn=1;function Go(e,t=!1){Xn+=e,e<0&&Ze&&t&&(Ze.hasOnce=!0)}function Hi(e){return e.dynamicChildren=Xn>0?Ze||gn:null,Yr(),Xn>0&&Ze&&Ze.push(e),e}function z(e,t,n,o,s,r){return Hi(P(e,t,n,o,s,r,!0))}function Qe(e,t,n,o,s){return Hi(ve(e,t,n,o,s,!0))}function Jn(e){return e?e.__v_isVNode===!0:!1}function Zn(e,t){return e.type===t.type&&e.key===t.key}const qi=({key:e})=>e??null,Yo=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?be(e)||Ne(e)||ne(e)?{i:De,r:e,k:t,f:!!n}:e:null);function P(e,t=null,n=null,o=0,s=null,r=e===pe?0:1,i=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&qi(t),ref:t&&Yo(t),scopeId:ai,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:o,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:De};return a?(Vo(l,n),r&128&&e.normalize(l)):n&&(l.shapeFlag|=be(n)?8:16),Xn>0&&!i&&Ze&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&Ze.push(l),l}const ve=Eu;function Eu(e,t=null,n=null,o=0,s=null,r=!1){if((!e||e===bi)&&(e=vt),Jn(e)){const a=On(e,t,!0);return n&&Vo(a,n),Xn>0&&!r&&Ze&&(a.shapeFlag&6?Ze[Ze.indexOf(e)]=a:Ze.push(a)),a.patchFlag=-2,a}if(Wu(e)&&(e=e.__vccOpts),t){t=Tu(t);let{class:a,style:l}=t;a&&!be(a)&&(t.class=Te(a)),ge(l)&&(Ao(l)&&!Q(l)&&(l=Ce({},l)),t.style=Pn(l))}const i=be(e)?1:Vi(e)?128:xo(e)?64:ge(e)?4:ne(e)?2:0;return P(e,t,n,o,s,i,r,!0)}function Tu(e){return e?Ao(e)||Pi(e)?Ce({},e):e:null}function On(e,t,n=!1,o=!1){const{props:s,ref:r,patchFlag:i,children:a,transition:l}=e,c=t?Lu(s||{},t):s,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&qi(c),ref:t&&t.ref?n&&r?Q(r)?r.concat(Yo(t)):[r,Yo(t)]:Yo(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==pe?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&On(e.ssContent),ssFallback:e.ssFallback&&On(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&Sr(u,l.clone(u)),u}function $e(e=" ",t=0){return ve(Kn,null,e,t)}function Le(e="",t=!1){return t?(Y(),Qe(vt,null,e)):ve(vt,null,e)}function wt(e){return e==null||typeof e=="boolean"?ve(vt):Q(e)?ve(pe,null,e.slice()):Jn(e)?xt(e):ve(Kn,null,String(e))}function xt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:On(e)}function Vo(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(Q(t))n=16;else if(typeof t=="object")if(o&65){const s=t.default;s&&(s._c&&(s._d=!1),Vo(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!Pi(t)?t._ctx=De:s===3&&De&&(De.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(ne(t)){if(o&65){Vo(e,{default:t});return}t={default:t,_ctx:De},n=32}else t=String(t),o&64?(n=16,t=[$e(t)]):n=8;e.children=t,e.shapeFlag|=n}function Lu(...e){const t={};for(let n=0;nBe||De;let Ho,Qn;{const e=bo(),t=(n,o)=>{let s;return(s=e[n])||(s=e[n]=[]),s.push(o),r=>{s.length>1?s.forEach(i=>i(r)):s[0](r)}};Ho=t("__VUE_INSTANCE_SETTERS__",n=>Be=n),Qn=t("__VUE_SSR_SETTERS__",n=>Nn=n)}const eo=e=>{const t=Be;return Ho(e),e.scope.on(),()=>{e.scope.off(),Ho(t)}},zi=()=>{Be&&Be.scope.off(),Ho(null)};function Ki(e){return e.vnode.shapeFlag&4}let Nn=!1;function xu(e,t=!1,n=!1){t&&Qn(t);const{props:o,children:s}=e.vnode,r=Ki(e);_u(e,o,r,t),wu(e,s,n||t);const i=r?Pu(e,t):void 0;return t&&Qn(!1),i}function Pu(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,nu);const{setup:o}=n;if(o){gt();const s=e.setupContext=o.length>1?Du(e):null,r=eo(e),i=yn(o,e,0,[e.props,s]),a=Os(i);if(mt(),r(),(a||e.sp)&&!kn(e)&&Ir(e),a){if(i.then(zi,zi),t)return i.then(l=>{Qn(!0);try{Xi(e,l,t)}finally{Qn(!1)}}).catch(l=>{jn(l,e,0)});e.asyncDep=i}else Xi(e,i)}else Ji(e)}function Xi(e,t,n){ne(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ge(t)&&(e.setupState=ei(t)),Ji(e)}function Ji(e,t,n){const o=e.type;e.render||(e.render=o.render||ft);{const s=eo(e);gt();try{ou(e)}finally{mt(),s()}}}const Mu={get(e,t){return Ue(e,"get",""),e[t]}};function Du(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Mu),slots:e.slots,emit:e.emit,expose:t}}function qo(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(ei(_n(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in qn)return qn[n](e)},has(t,n){return n in t||n in qn}})):e.proxy}const Bu=/(?:^|[-_])\w/g,Ru=e=>e.replace(Bu,t=>t.toUpperCase()).replace(/[-_]/g,"");function Zi(e,t=!0){return ne(e)?e.displayName||e.name:e.name||t&&e.__name}function Qi(e,t,n=!1){let o=Zi(t);if(!o&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(o=s[1])}if(!o&&e){const s=r=>{for(const i in r)if(r[i]===t)return i};o=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return o?Ru(o):n?"App":"Anonymous"}function Wu(e){return ne(e)&&"__vccOpts"in e}const re=(e,t)=>kc(e,t,Nn);function ea(e,t,n){try{Go(-1);const o=arguments.length;return o===2?ge(t)&&!Q(t)?Jn(t)?ve(e,null,[t]):ve(e,t):ve(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&Jn(n)&&(n=[n]),ve(e,t,n))}finally{Go(1)}}const Uu="3.5.42";/** * @vue/runtime-dom v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Yr;const ea=typeof window<"u"&&window.trustedTypes;if(ea)try{Yr=ea.createPolicy("vue",{createHTML:e=>e})}catch{}const ta=Yr?e=>Yr.createHTML(e):e=>e,Uu="http://www.w3.org/2000/svg",ju="http://www.w3.org/1998/Math/MathML",Mt=typeof document<"u"?document:null,na=Mt&&Mt.createElement("template"),Gu={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const s=t==="svg"?Mt.createElementNS(Uu,e):t==="mathml"?Mt.createElementNS(ju,e):n?Mt.createElement(e,{is:n}):Mt.createElement(e);return e==="select"&&o&&o.multiple!=null&&s.setAttribute("multiple",o.multiple),s},createText:e=>Mt.createTextNode(e),createComment:e=>Mt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Mt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,s,r){const i=n?n.previousSibling:t.lastChild;if(s&&(s===r||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===r||!(s=s.nextSibling)););else{na.innerHTML=ta(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const a=na.content;if(o==="svg"||o==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}t.insertBefore(a,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Yu=Symbol("_vtc");function Vu(e,t,n){const o=e[Yu];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const zo=Symbol("_vod"),oa=Symbol("_vsh"),Hu={name:"show",beforeMount(e,{value:t},{transition:n}){e[zo]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):no(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:o}){!t!=!n&&(o?t?(o.beforeEnter(e),no(e,!0),o.enter(e)):o.leave(e,()=>{no(e,!1)}):no(e,t))},beforeUnmount(e,{value:t}){no(e,t)}};function no(e,t){e.style.display=t?e[zo]:"none",e[oa]=!t}const qu=Symbol(""),zu=/(?:^|;)\s*display\s*:/;function Ku(e,t,n){const o=e.style,s=be(n);let r=!1;if(n&&!s){if(t)if(be(t))for(const i of t.split(";")){const a=i.slice(0,i.indexOf(":")).trim();n[a]==null&&oo(o,a,"")}else for(const i in t)n[i]==null&&oo(o,i,"");for(const i in n){i==="display"&&(r=!0);const a=n[i];a!=null?Ju(e,i,!be(t)&&t?t[i]:void 0,a)||oo(o,i,a):oo(o,i,"")}}else if(s){if(t!==n){const i=o[qu];i&&(n+=";"+i),o.cssText=n,r=zu.test(n)}}else t&&e.removeAttribute("style");zo in e&&(e[zo]=r?o.display:"",e[oa]&&(o.display="none"))}const Ko=/\s*!important$/;function oo(e,t,n){if(te(n))n.forEach(o=>oo(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))Ko.test(n)?e.setProperty(t,n.replace(Ko,""),"important"):e.setProperty(t,n);else{const o=Xu(e,t);Ko.test(n)?e.setProperty(tt(o),n.replace(Ko,""),"important"):e[o]=n}}const ra=["Webkit","Moz","ms"],Vr={};function Xu(e,t){const n=Vr[t];if(n)return n;let o=xe(t);if(o!=="filter"&&o in e)return Vr[t]=o;o=bo(o);for(let s=0;sHr||(rp.then(()=>Hr=0),Hr=Date.now());function ip(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;const s=n.value;if(te(s)){const r=o.stopImmediatePropagation;o.stopImmediatePropagation=()=>{r.call(o),o._stopped=!0};const i=s.slice(),a=[o];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ap=(e,t,n,o,s,r)=>{const i=s==="svg";t==="class"?Vu(e,o,i):t==="style"?Ku(e,n,o):po(t)?fo(t)||ep(e,t,n,o,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):lp(e,t,o,i))?(aa(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&ia(e,t,o,i,r,t!=="value")):e._isVueCE&&(cp(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!be(o)))?aa(e,xe(t),o,r,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),ia(e,t,o,i))};function lp(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&ca(t)&&oe(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return ca(t)&&be(n)?!1:t in e}function cp(e,t){const n=e._def.props;if(!n)return!1;const o=xe(t);return Array.isArray(n)?n.some(s=>xe(s)===o):Object.keys(n).some(s=>xe(s)===o)}const ua={};function up(e,t,n){let o=Hn(e,t);go(o)&&(o=Ee({},o,t));class s extends qr{constructor(i){super(o,i,n)}}return s.def=o,s}const pp=typeof HTMLElement<"u"?HTMLElement:class{};class qr extends pp{constructor(t,n={},o=fa){super(),this._def=t,this._props=n,this._createApp=o,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&o!==fa?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Ee({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof qr){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,Gn(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let o=0;o{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:i}=o;let a;if(r&&!te(r))for(const l in r){const c=r[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=Ns(this._props[l])),(a||(a=Object.create(null)))[xe(l)]=!0)}this._numberProps=a,this._resolveProps(o),this.shadowRoot&&this._applyStyles(i),this._mount(o)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(o=>{o.configureApp=this._def.configureApp,t(this._def=o,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const n=this._instance&&this._instance.exposed;if(n)for(const o in n)he(this,o)||Object.defineProperty(this,o,{get:()=>nt(n[o])})}_resolveProps(t){const{props:n}=t,o=te(n)?n:Object.keys(n||{});for(const s of Object.keys(this))s[0]!=="_"&&o.includes(s)&&this._setProp(s,this[s]);for(const s of o.map(xe))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(r){this._setProp(s,r,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let o=n?this.getAttribute(t):ua;const s=xe(t);n&&this._numberProps&&this._numberProps[s]&&(o=Ns(o)),this._setProp(s,o,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,o=!0,s=!1){if(n!==this._props[t]&&(this._dirty=!0,n===ua?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),s&&this._instance&&this._update(),o)){const r=this._ob;r&&(this._processMutations(r.takeRecords()),r.disconnect()),n===!0?this.setAttribute(tt(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(tt(t),n+""):n||this.removeAttribute(tt(t)),r&&r.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),mp(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=ke(this._def,Ee(t,this._props));return this._instance||(n.ce=o=>{this._instance=o,o.ce=this,o.isCE=!0;const s=(r,i)=>{this.dispatchEvent(new CustomEvent(r,go(i[0])?Ee({detail:i},i[0]):{detail:i}))};o.emit=(r,...i)=>{s(r,i),tt(r)!==r&&s(tt(r),i)},this._setParent()}),n}_applyStyles(t,n,o){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const s=this._nonce,r=this.shadowRoot,i=o?this._getStyleAnchor(o)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(r);let a=null;for(let l=t.length-1;l>=0;l--){const c=document.createElement("style");s&&c.setAttribute("nonce",s),c.textContent=t[l],r.insertBefore(c,a||i),a=c,l===0&&(o||this._styleAnchors.set(this._def,c),n&&this._styleAnchors.set(n,c))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;ne.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>dp.some(n=>e[`${n}Key`]&&!t.includes(n))},hp=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),o=t.join(".");return n[o]||(n[o]=(s,...r)=>{for(let i=0;i{da().render(...e)},fa=(...e)=>{const t=da().createApp(...e),{mount:n}=t;return t.mount=o=>{const s=bp(o);if(!s)return;const r=t._component;!oe(r)&&!r.render&&!r.template&&(r.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const i=n(s,!1,_p(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),i},t};function _p(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function bp(e){return be(e)?document.querySelector(e):e}/*! +**/let Vr;const ta=typeof window<"u"&&window.trustedTypes;if(ta)try{Vr=ta.createPolicy("vue",{createHTML:e=>e})}catch{}const na=Vr?e=>Vr.createHTML(e):e=>e,ju="http://www.w3.org/2000/svg",Gu="http://www.w3.org/1998/Math/MathML",Mt=typeof document<"u"?document:null,oa=Mt&&Mt.createElement("template"),Yu={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const s=t==="svg"?Mt.createElementNS(ju,e):t==="mathml"?Mt.createElementNS(Gu,e):n?Mt.createElement(e,{is:n}):Mt.createElement(e);return e==="select"&&o&&o.multiple!=null&&s.setAttribute("multiple",o.multiple),s},createText:e=>Mt.createTextNode(e),createComment:e=>Mt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Mt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,s,r){const i=n?n.previousSibling:t.lastChild;if(s&&(s===r||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===r||!(s=s.nextSibling)););else{oa.innerHTML=na(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const a=oa.content;if(o==="svg"||o==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}t.insertBefore(a,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Vu=Symbol("_vtc");function Hu(e,t,n){const o=e[Vu];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const zo=Symbol("_vod"),ra=Symbol("_vsh"),qu={name:"show",beforeMount(e,{value:t},{transition:n}){e[zo]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):to(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:o}){!t!=!n&&(o?t?(o.beforeEnter(e),to(e,!0),o.enter(e)):o.leave(e,()=>{to(e,!1)}):to(e,t))},beforeUnmount(e,{value:t}){to(e,t)}};function to(e,t){e.style.display=t?e[zo]:"none",e[ra]=!t}const zu=Symbol(""),Ku=/(?:^|;)\s*display\s*:/;function Xu(e,t,n){const o=e.style,s=be(n);let r=!1;if(n&&!s){if(t)if(be(t))for(const i of t.split(";")){const a=i.slice(0,i.indexOf(":")).trim();n[a]==null&&no(o,a,"")}else for(const i in t)n[i]==null&&no(o,i,"");for(const i in n){i==="display"&&(r=!0);const a=n[i];a!=null?Zu(e,i,!be(t)&&t?t[i]:void 0,a)||no(o,i,a):no(o,i,"")}}else if(s){if(t!==n){const i=o[zu];i&&(n+=";"+i),o.cssText=n,r=Ku.test(n)}}else t&&e.removeAttribute("style");zo in e&&(e[zo]=r?o.display:"",e[ra]&&(o.display="none"))}const Ko=/\s*!important$/;function no(e,t,n){if(Q(n))n.forEach(o=>no(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))Ko.test(n)?e.setProperty(t,n.replace(Ko,""),"important"):e.setProperty(t,n);else{const o=Ju(e,t);Ko.test(n)?e.setProperty(tt(o),n.replace(Ko,""),"important"):e[o]=n}}const sa=["Webkit","Moz","ms"],Hr={};function Ju(e,t){const n=Hr[t];if(n)return n;let o=xe(t);if(o!=="filter"&&o in e)return Hr[t]=o;o=_o(o);for(let s=0;sqr||(sp.then(()=>qr=0),qr=Date.now());function ap(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;const s=n.value;if(Q(s)){const r=o.stopImmediatePropagation;o.stopImmediatePropagation=()=>{r.call(o),o._stopped=!0};const i=s.slice(),a=[o];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,lp=(e,t,n,o,s,r)=>{const i=s==="svg";t==="class"?Hu(e,o,i):t==="style"?Xu(e,n,o):uo(t)?po(t)||tp(e,t,n,o,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):cp(e,t,o,i))?(la(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&aa(e,t,o,i,r,t!=="value")):e._isVueCE&&(up(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!be(o)))?la(e,xe(t),o,r,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),aa(e,t,o,i))};function cp(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&ua(t)&&ne(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return ua(t)&&be(n)?!1:t in e}function up(e,t){const n=e._def.props;if(!n)return!1;const o=xe(t);return Array.isArray(n)?n.some(s=>xe(s)===o):Object.keys(n).some(s=>xe(s)===o)}const pa={};function pp(e,t,n){let o=Vn(e,t);ho(o)&&(o=Ce({},o,t));class s extends zr{constructor(i){super(o,i,n)}}return s.def=o,s}const dp=typeof HTMLElement<"u"?HTMLElement:class{};class zr extends dp{constructor(t,n={},o=ha){super(),this._def=t,this._props=n,this._createApp=o,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&o!==ha?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Ce({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof zr){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,Io(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let o=0;o{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:i}=o;let a;if(r&&!Q(r))for(const l in r){const c=r[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=As(this._props[l])),(a||(a=Object.create(null)))[xe(l)]=!0)}this._numberProps=a,this._resolveProps(o),this.shadowRoot&&this._applyStyles(i),this._mount(o)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(o=>{o.configureApp=this._def.configureApp,t(this._def=o,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const n=this._instance&&this._instance.exposed;if(n)for(const o in n)fe(this,o)||Object.defineProperty(this,o,{get:()=>Je(n[o])})}_resolveProps(t){const{props:n}=t,o=Q(n)?n:Object.keys(n||{});for(const s of Object.keys(this))s[0]!=="_"&&o.includes(s)&&this._setProp(s,this[s]);for(const s of o.map(xe))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(r){this._setProp(s,r,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let o=n?this.getAttribute(t):pa;const s=xe(t);n&&this._numberProps&&this._numberProps[s]&&(o=As(o)),this._setProp(s,o,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,o=!0,s=!1){if(n!==this._props[t]&&(this._dirty=!0,n===pa?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),s&&this._instance&&this._update(),o)){const r=this._ob;r&&(this._processMutations(r.takeRecords()),r.disconnect()),n===!0?this.setAttribute(tt(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(tt(t),n+""):n||this.removeAttribute(tt(t)),r&&r.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),_p(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=ve(this._def,Ce(t,this._props));return this._instance||(n.ce=o=>{this._instance=o,o.ce=this,o.isCE=!0;const s=(r,i)=>{this.dispatchEvent(new CustomEvent(r,ho(i[0])?Ce({detail:i},i[0]):{detail:i}))};o.emit=(r,...i)=>{s(r,i),tt(r)!==r&&s(tt(r),i)},this._setParent()}),n}_applyStyles(t,n,o){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const s=this._nonce,r=this.shadowRoot,i=o?this._getStyleAnchor(o)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(r);let a=null;for(let l=t.length-1;l>=0;l--){const c=document.createElement("style");s&&c.setAttribute("nonce",s),c.textContent=t[l],r.insertBefore(c,a||i),a=c,l===0&&(o||this._styleAnchors.set(this._def,c),n&&this._styleAnchors.set(n,c))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;ne.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>fp.some(n=>e[`${n}Key`]&&!t.includes(n))},gp=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),o=t.join(".");return n[o]||(n[o]=(s,...r)=>{for(let i=0;i{fa().render(...e)},ha=(...e)=>{const t=fa().createApp(...e),{mount:n}=t;return t.mount=o=>{const s=yp(o);if(!s)return;const r=t._component;!ne(r)&&!r.render&&!r.template&&(r.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const i=n(s,!1,bp(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),i},t};function bp(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function yp(e){return be(e)?document.querySelector(e):e}/*! * pinia v2.3.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let ha;const Xo=e=>ha=e,ga=Symbol();function zr(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ro;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ro||(ro={}));function yp(){const e=fr(!0),t=e.run(()=>ce({}));let n=[],o=[];const s=_n({install(r){Xo(s),s._a=r,r.provide(ga,s),r.config.globalProperties.$pinia=s,o.forEach(i=>n.push(i)),o=[]},use(r){return this._a?n.push(r):o.push(r),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return s}const ma=()=>{};function _a(e,t,n,o=ma){e.push(t);const s=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),o())};return!n&&Is()&&Kl(s),s}function Cn(e,...t){e.slice().forEach(n=>{n(...t)})}const vp=e=>e(),ba=Symbol(),Kr=Symbol();function Xr(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,o)=>e.set(o,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],s=e[n];zr(s)&&zr(o)&&e.hasOwnProperty(n)&&!Ne(o)&&!Tt(o)?e[n]=Xr(s,o):e[n]=o}return e}const wp=Symbol();function kp(e){return!zr(e)||!e.hasOwnProperty(wp)}const{assign:Ht}=Object;function $p(e){return!!(Ne(e)&&e.effect)}function Op(e,t,n,o){const{state:s,actions:r,getters:i}=t,a=n.state.value[e];let l;function c(){a||(n.state.value[e]=s?s():{});const u=_c(n.state.value[e]);return Ht(u,r,Object.keys(i||{}).reduce((f,h)=>(f[h]=_n(ie(()=>{Xo(n);const _=n._s.get(e);return i[h].call(_,_)})),f),{}))}return l=ya(e,c,t,n,o,!0),l}function ya(e,t,n={},o,s,r){let i;const a=Ht({actions:{}},n),l={deep:!0};let c,u,f=[],h=[],_;const v=o.state.value[e];!r&&!v&&(o.state.value[e]={});let k;function F(O){let T;c=u=!1,typeof O=="function"?(O(o.state.value[e]),T={type:ro.patchFunction,storeId:e,events:_}):(Xr(o.state.value[e],O),T={type:ro.patchObject,payload:O,storeId:e,events:_});const J=k=Symbol();Gn().then(()=>{k===J&&(c=!0)}),u=!0,Cn(f,T,o.state.value[e])}const C=r?function(){const{state:T}=n,J=T?T():{};this.$patch(ee=>{Ht(ee,J)})}:ma;function L(){i.stop(),f=[],h=[],o._s.delete(e)}const y=(O,T="")=>{if(ba in O)return O[Kr]=T,O;const J=function(){Xo(o);const ee=Array.from(arguments),U=[],Y=[];function re(K){U.push(K)}function V(K){Y.push(K)}Cn(h,{args:ee,name:J[Kr],store:A,after:re,onError:V});let R;try{R=O.apply(this&&this.$id===e?this:A,ee)}catch(K){throw Cn(Y,K),K}return R instanceof Promise?R.then(K=>(Cn(U,K),K)).catch(K=>(Cn(Y,K),Promise.reject(K))):(Cn(U,R),R)};return J[ba]=!0,J[Kr]=T,J},m={_p:o,$id:e,$onAction:_a.bind(null,h),$patch:F,$reset:C,$subscribe(O,T={}){const J=_a(f,O,T.detached,()=>ee()),ee=i.run(()=>vt(()=>o.state.value[e],U=>{(T.flush==="sync"?u:c)&&O({storeId:e,type:ro.direct,events:_},U)},Ht({},l,T)));return J},$dispose:L},A=Co(m);o._s.set(e,A);const $=(o._a&&o._a.runWithContext||vp)(()=>o._e.run(()=>(i=fr()).run(()=>t({action:y}))));for(const O in $){const T=$[O];if(Ne(T)&&!$p(T)||Tt(T))r||(v&&kp(T)&&(Ne(T)?T.value=v[O]:Xr(T,v[O])),o.state.value[e][O]=T);else if(typeof T=="function"){const J=y(T,O);$[O]=J,a.actions[O]=T}}return Ht(A,$),Ht(pe(A),$),Object.defineProperty(A,"$state",{get:()=>o.state.value[e],set:O=>{F(T=>{Ht(T,O)})}}),o._p.forEach(O=>{Ht(A,i.run(()=>O({store:A,app:o._a,pinia:o,options:a})))}),v&&r&&n.hydrate&&n.hydrate(A.$state,v),c=!0,u=!0,A}/*! #__NO_SIDE_EFFECTS__ */function Jr(e,t,n){let o,s;const r=typeof t=="function";typeof e=="string"?(o=e,s=r?n:t):(s=e,o=e.id);function i(a,l){const c=Ic();return a=a||(c?qe(ga,null):null),a&&Xo(a),a=ha,a._s.has(o)||(r?ya(o,t,s,a):Op(o,s,a)),a._s.get(o)}return i.$id=o,i}const Np={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},Cp={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},Ap={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},Ep={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},Tp={menuComingSoon:"القائمة قادمة قريباً"},Lp={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Sp={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},Ip={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Fp={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},xp={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Pp={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Mp={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Dp={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Bp={menuComingSoon:"Menü folgt in Kürze"},Rp={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Wp={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Up={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},jp={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Gp={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Yp={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"]},Vp={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Hp={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},qp={menuComingSoon:"Menu coming soon"},zp={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Kp={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Xp={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},Jp={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Zp={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Qp={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},ed={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},td={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},nd={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},od={menuComingSoon:"Menú próximamente"},rd={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},sd={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},id={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},ad={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},ld={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},cd={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},ud={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},pd={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},dd={menuComingSoon:"Menu bientôt disponible"},fd={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},hd={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},gd={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},md={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},_d={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},bd={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},yd={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},vd={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},wd={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},kd={menuComingSoon:"मेनू शीघ्र आ रहा है"},$d={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},Od={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},Nd={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},Cd={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Ad={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Ed={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},Td={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Ld={menuComingSoon:"Menu in arrivo"},Sd={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Id={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Fd={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},xd={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Pd={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Md={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Dd={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Bd={menuComingSoon:"Menu em breve"},Rd={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Wd={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Ud={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},jd={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Gd={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Yd={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Vd={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},Hd={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},qd={menuComingSoon:"Meniu în curând"},zd={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Kd={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Xd={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},Jd={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Zd={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Qd={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},ef={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},tf={menuComingSoon:"Меню скоро появится"},nf={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},of={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},rf={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},sf={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},af={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},lf={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},cf={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},uf={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},pf={menuComingSoon:"菜单即将推出"},df={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},ff={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},hf={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! + */let ga;const Xo=e=>ga=e,ma=Symbol();function Kr(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var oo;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(oo||(oo={}));function vp(){const e=fr(!0),t=e.run(()=>ie({}));let n=[],o=[];const s=_n({install(r){Xo(s),s._a=r,r.provide(ma,s),r.config.globalProperties.$pinia=s,o.forEach(i=>n.push(i)),o=[]},use(r){return this._a?n.push(r):o.push(r),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return s}const _a=()=>{};function ba(e,t,n,o=_a){e.push(t);const s=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),o())};return!n&&xs()&&Xl(s),s}function Cn(e,...t){e.slice().forEach(n=>{n(...t)})}const wp=e=>e(),ya=Symbol(),Xr=Symbol();function Jr(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,o)=>e.set(o,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],s=e[n];Kr(s)&&Kr(o)&&e.hasOwnProperty(n)&&!Ne(o)&&!Tt(o)?e[n]=Jr(s,o):e[n]=o}return e}const kp=Symbol();function $p(e){return!Kr(e)||!e.hasOwnProperty(kp)}const{assign:zt}=Object;function Op(e){return!!(Ne(e)&&e.effect)}function Np(e,t,n,o){const{state:s,actions:r,getters:i}=t,a=n.state.value[e];let l;function c(){a||(n.state.value[e]=s?s():{});const u=bc(n.state.value[e]);return zt(u,r,Object.keys(i||{}).reduce((f,h)=>(f[h]=_n(re(()=>{Xo(n);const _=n._s.get(e);return i[h].call(_,_)})),f),{}))}return l=va(e,c,t,n,o,!0),l}function va(e,t,n={},o,s,r){let i;const a=zt({actions:{}},n),l={deep:!0};let c,u,f=[],h=[],_;const v=o.state.value[e];!r&&!v&&(o.state.value[e]={});let k;function I(O){let T;c=u=!1,typeof O=="function"?(O(o.state.value[e]),T={type:oo.patchFunction,storeId:e,events:_}):(Jr(o.state.value[e],O),T={type:oo.patchObject,payload:O,storeId:e,events:_});const X=k=Symbol();Io().then(()=>{k===X&&(c=!0)}),u=!0,Cn(f,T,o.state.value[e])}const N=r?function(){const{state:T}=n,X=T?T():{};this.$patch(te=>{zt(te,X)})}:_a;function A(){i.stop(),f=[],h=[],o._s.delete(e)}const b=(O,T="")=>{if(ya in O)return O[Xr]=T,O;const X=function(){Xo(o);const te=Array.from(arguments),H=[],se=[];function he(q){H.push(q)}function K(q){se.push(q)}Cn(h,{args:te,name:X[Xr],store:C,after:he,onError:K});let W;try{W=O.apply(this&&this.$id===e?this:C,te)}catch(q){throw Cn(se,q),q}return W instanceof Promise?W.then(q=>(Cn(H,q),q)).catch(q=>(Cn(se,q),Promise.reject(q))):(Cn(H,W),W)};return X[ya]=!0,X[Xr]=T,X},m={_p:o,$id:e,$onAction:ba.bind(null,h),$patch:I,$reset:N,$subscribe(O,T={}){const X=ba(f,O,T.detached,()=>te()),te=i.run(()=>yt(()=>o.state.value[e],H=>{(T.flush==="sync"?u:c)&&O({storeId:e,type:oo.direct,events:_},H)},zt({},l,T)));return X},$dispose:A},C=No(m);o._s.set(e,C);const w=(o._a&&o._a.runWithContext||wp)(()=>o._e.run(()=>(i=fr()).run(()=>t({action:b}))));for(const O in w){const T=w[O];if(Ne(T)&&!Op(T)||Tt(T))r||(v&&$p(T)&&(Ne(T)?T.value=v[O]:Jr(T,v[O])),o.state.value[e][O]=T);else if(typeof T=="function"){const X=b(T,O);w[O]=X,a.actions[O]=T}}return zt(C,w),zt(ue(C),w),Object.defineProperty(C,"$state",{get:()=>o.state.value[e],set:O=>{I(T=>{zt(T,O)})}}),o._p.forEach(O=>{zt(C,i.run(()=>O({store:C,app:o._a,pinia:o,options:a})))}),v&&r&&n.hydrate&&n.hydrate(C.$state,v),c=!0,u=!0,C}/*! #__NO_SIDE_EFFECTS__ */function Zr(e,t,n){let o,s;const r=typeof t=="function";typeof e=="string"?(o=e,s=r?n:t):(s=e,o=e.id);function i(a,l){const c=Fc();return a=a||(c?Ge(ma,null):null),a&&Xo(a),a=ga,a._s.has(o)||(r?va(o,t,s,a):Np(o,s,a)),a._s.get(o)}return i.$id=o,i}const Cp={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},Ap={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},Ep={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},Tp={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},Lp={menuComingSoon:"القائمة قادمة قريباً"},Sp={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Ip={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},Fp={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},xp={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},Pp={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Mp={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Dp={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Bp={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Rp={menuComingSoon:"Menü folgt in Kürze"},Wp={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Up={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},jp={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Gp={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Yp={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Vp={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"]},Hp={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},qp={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},zp={menuComingSoon:"Menu coming soon"},Kp={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Xp={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Jp={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},Zp={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Qp={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},ed={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},td={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},nd={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},od={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},rd={menuComingSoon:"Menú próximamente"},sd={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},id={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},ad={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},ld={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},cd={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},ud={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},pd={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},dd={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},fd={menuComingSoon:"Menu bientôt disponible"},hd={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},gd={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},md={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},_d={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},bd={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},yd={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},vd={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},wd={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},kd={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},$d={menuComingSoon:"मेनू शीघ्र आ रहा है"},Od={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},Nd={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},Cd={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},Ad={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Ed={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Td={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},Ld={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Sd={menuComingSoon:"Menu in arrivo"},Id={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Fd={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},xd={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Pd={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Md={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Dd={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Bd={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Rd={menuComingSoon:"Menu em breve"},Wd={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Ud={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},jd={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Gd={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Yd={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Vd={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Hd={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},qd={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},zd={menuComingSoon:"Meniu în curând"},Kd={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Xd={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Jd={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},Zd={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Qd={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},ef={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},tf={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},nf={menuComingSoon:"Меню скоро появится"},of={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},rf={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},sf={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},af={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},lf={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},cf={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},uf={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},pf={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},df={menuComingSoon:"菜单即将推出"},ff={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},hf={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},gf={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function gf(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Jo=typeof window<"u",qt=(e,t=!1)=>t?Symbol.for(e):Symbol(e),mf=(e,t,n)=>_f({l:e,k:t,s:n}),_f=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Te=e=>typeof e=="number"&&isFinite(e),bf=e=>Oa(e)==="[object Date]",zt=e=>Oa(e)==="[object RegExp]",Zo=e=>se(e)&&Object.keys(e).length===0,Re=Object.assign,yf=Object.create,me=(e=null)=>yf(e);let va;const Dt=()=>va||(va=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:me());function wa(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function ka(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function vf(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(o,s,r)=>`${s}="${ka(r)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(o,s,r)=>`${s}='${ka(r)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(o=>{e=e.replace(o,"$1javascript:")}),e}const wf=Object.prototype.hasOwnProperty;function ct(e,t){return wf.call(e,t)}const Oe=Array.isArray,ve=e=>typeof e=="function",z=e=>typeof e=="string",ue=e=>typeof e=="boolean",fe=e=>e!==null&&typeof e=="object",kf=e=>fe(e)&&ve(e.then)&&ve(e.catch),$a=Object.prototype.toString,Oa=e=>$a.call(e),se=e=>{if(!fe(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},$f=e=>e==null?"":Oe(e)||se(e)&&e.toString===$a?JSON.stringify(e,null,2):String(e);function Of(e,t=""){return e.reduce((n,o,s)=>s===0?n+o:n+t+o,"")}function Qo(e){let t=e;return()=>++t}const er=e=>!fe(e)||Oe(e);function tr(e,t){if(er(e)||er(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:o,des:s}=n.pop();Object.keys(o).forEach(r=>{r!=="__proto__"&&(fe(o[r])&&!fe(s[r])&&(s[r]=Array.isArray(o[r])?[]:me()),er(s[r])||er(o[r])?s[r]=o[r]:n.push({src:o[r],des:s[r]}))})}}/*! + */function mf(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Jo=typeof window<"u",Kt=(e,t=!1)=>t?Symbol.for(e):Symbol(e),_f=(e,t,n)=>bf({l:e,k:t,s:n}),bf=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Ae=e=>typeof e=="number"&&isFinite(e),yf=e=>Na(e)==="[object Date]",Xt=e=>Na(e)==="[object RegExp]",Zo=e=>oe(e)&&Object.keys(e).length===0,Re=Object.assign,vf=Object.create,me=(e=null)=>vf(e);let wa;const Dt=()=>wa||(wa=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:me());function ka(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function $a(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function wf(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(o,s,r)=>`${s}="${$a(r)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(o,s,r)=>`${s}='${$a(r)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(o=>{e=e.replace(o,"$1javascript:")}),e}const kf=Object.prototype.hasOwnProperty;function ct(e,t){return kf.call(e,t)}const Oe=Array.isArray,we=e=>typeof e=="function",V=e=>typeof e=="string",ce=e=>typeof e=="boolean",de=e=>e!==null&&typeof e=="object",$f=e=>de(e)&&we(e.then)&&we(e.catch),Oa=Object.prototype.toString,Na=e=>Oa.call(e),oe=e=>{if(!de(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},Of=e=>e==null?"":Oe(e)||oe(e)&&e.toString===Oa?JSON.stringify(e,null,2):String(e);function Nf(e,t=""){return e.reduce((n,o,s)=>s===0?n+o:n+t+o,"")}function Qo(e){let t=e;return()=>++t}const er=e=>!de(e)||Oe(e);function tr(e,t){if(er(e)||er(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:o,des:s}=n.pop();Object.keys(o).forEach(r=>{r!=="__proto__"&&(de(o[r])&&!de(s[r])&&(s[r]=Array.isArray(o[r])?[]:me()),er(s[r])||er(o[r])?s[r]=o[r]:n.push({src:o[r],des:s[r]}))})}}/*! * message-compiler v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Nf(e,t,n){return{line:e,column:t,offset:n}}function nr(e,t,n){return{start:e,end:t}}const Cf=/\{([0-9a-zA-Z]+)\}/g;function Na(e,...t){return t.length===1&&Af(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(Cf,(n,o)=>t.hasOwnProperty(o)?t[o]:"")}const Ca=Object.assign,Aa=e=>typeof e=="string",Af=e=>e!==null&&typeof e=="object";function Ea(e,t=""){return e.reduce((n,o,s)=>s===0?n+o:n+t+o,"")}const Zr={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},Ef={[Zr.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function Tf(e,t,...n){const o=Na(Ef[e],...n||[]),s={message:String(o),code:e};return t&&(s.location=t),s}const ne={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},Lf={[ne.EXPECTED_TOKEN]:"Expected token: '{0}'",[ne.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[ne.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[ne.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[ne.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[ne.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[ne.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[ne.EMPTY_PLACEHOLDER]:"Empty placeholder",[ne.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[ne.INVALID_LINKED_FORMAT]:"Invalid linked format",[ne.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[ne.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[ne.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[ne.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[ne.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[ne.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function An(e,t,n={}){const{domain:o,messages:s,args:r}=n,i=Na((s||Lf)[e]||"",...r||[]),a=new SyntaxError(String(i));return a.code=e,t&&(a.location=t),a.domain=o,a}function Sf(e){throw e}const Bt=" ",If="\r",Ve=` -`,Ff="\u2028",xf="\u2029";function Pf(e){const t=e;let n=0,o=1,s=1,r=0;const i=$=>t[$]===If&&t[$+1]===Ve,a=$=>t[$]===Ve,l=$=>t[$]===xf,c=$=>t[$]===Ff,u=$=>i($)||a($)||l($)||c($),f=()=>n,h=()=>o,_=()=>s,v=()=>r,k=$=>i($)||l($)||c($)?Ve:t[$],F=()=>k(n),C=()=>k(n+r);function L(){return r=0,u(n)&&(o++,s=0),i(n)&&n++,n++,s++,t[n]}function y(){return i(n+r)&&r++,r++,t[n+r]}function m(){n=0,o=1,s=1,r=0}function A($=0){r=$}function S(){const $=n+r;for(;$!==n;)L();r=0}return{index:f,line:h,column:_,peekOffset:v,charAt:k,currentChar:F,currentPeek:C,next:L,peek:y,reset:m,resetPeek:A,skipToPeek:S}}const Kt=void 0,Mf=".",Ta="'",Df="tokenizer";function Bf(e,t={}){const n=t.location!==!1,o=Pf(e),s=()=>o.index(),r=()=>Nf(o.line(),o.column(),o.index()),i=r(),a=s(),l={currentType:14,offset:a,startLoc:i,endLoc:i,lastType:14,lastOffset:a,lastStartLoc:i,lastEndLoc:i,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function f(p,d,E,...x){const H=c();if(d.column+=E,d.offset+=E,u){const W=n?nr(H.startLoc,d):null,N=An(p,W,{domain:Df,args:x});u(N)}}function h(p,d,E){p.endLoc=r(),p.currentType=d;const x={type:d};return n&&(x.loc=nr(p.startLoc,p.endLoc)),E!=null&&(x.value=E),x}const _=p=>h(p,14);function v(p,d){return p.currentChar()===d?(p.next(),d):(f(ne.EXPECTED_TOKEN,r(),0,d),"")}function k(p){let d="";for(;p.currentPeek()===Bt||p.currentPeek()===Ve;)d+=p.currentPeek(),p.peek();return d}function F(p){const d=k(p);return p.skipToPeek(),d}function C(p){if(p===Kt)return!1;const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d===95}function L(p){if(p===Kt)return!1;const d=p.charCodeAt(0);return d>=48&&d<=57}function y(p,d){const{currentType:E}=d;if(E!==2)return!1;k(p);const x=C(p.currentPeek());return p.resetPeek(),x}function m(p,d){const{currentType:E}=d;if(E!==2)return!1;k(p);const x=p.currentPeek()==="-"?p.peek():p.currentPeek(),H=L(x);return p.resetPeek(),H}function A(p,d){const{currentType:E}=d;if(E!==2)return!1;k(p);const x=p.currentPeek()===Ta;return p.resetPeek(),x}function S(p,d){const{currentType:E}=d;if(E!==8)return!1;k(p);const x=p.currentPeek()===".";return p.resetPeek(),x}function $(p,d){const{currentType:E}=d;if(E!==9)return!1;k(p);const x=C(p.currentPeek());return p.resetPeek(),x}function O(p,d){const{currentType:E}=d;if(!(E===8||E===12))return!1;k(p);const x=p.currentPeek()===":";return p.resetPeek(),x}function T(p,d){const{currentType:E}=d;if(E!==10)return!1;const x=()=>{const W=p.currentPeek();return W==="{"?C(p.peek()):W==="@"||W==="%"||W==="|"||W===":"||W==="."||W===Bt||!W?!1:W===Ve?(p.peek(),x()):U(p,!1)},H=x();return p.resetPeek(),H}function J(p){k(p);const d=p.currentPeek()==="|";return p.resetPeek(),d}function ee(p){const d=k(p),E=p.currentPeek()==="%"&&p.peek()==="{";return p.resetPeek(),{isModulo:E,hasSpace:d.length>0}}function U(p,d=!0){const E=(H=!1,W="",N=!1)=>{const P=p.currentPeek();return P==="{"?W==="%"?!1:H:P==="@"||!P?W==="%"?!0:H:P==="%"?(p.peek(),E(H,"%",!0)):P==="|"?W==="%"||N?!0:!(W===Bt||W===Ve):P===Bt?(p.peek(),E(!0,Bt,N)):P===Ve?(p.peek(),E(!0,Ve,N)):!0},x=E();return d&&p.resetPeek(),x}function Y(p,d){const E=p.currentChar();return E===Kt?Kt:d(E)?(p.next(),E):null}function re(p){const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36}function V(p){return Y(p,re)}function R(p){const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36||d===45}function K(p){return Y(p,R)}function ae(p){const d=p.charCodeAt(0);return d>=48&&d<=57}function Ce(p){return Y(p,ae)}function Qe(p){const d=p.charCodeAt(0);return d>=48&&d<=57||d>=65&&d<=70||d>=97&&d<=102}function Ae(p){return Y(p,Qe)}function Me(p){let d="",E="";for(;d=Ce(p);)E+=d;return E}function en(p){F(p);const d=p.currentChar();return d!=="%"&&f(ne.EXPECTED_TOKEN,r(),0,d),p.next(),"%"}function tn(p){let d="";for(;;){const E=p.currentChar();if(E==="{"||E==="}"||E==="@"||E==="|"||!E)break;if(E==="%")if(U(p))d+=E,p.next();else break;else if(E===Bt||E===Ve)if(U(p))d+=E,p.next();else{if(J(p))break;d+=E,p.next()}else d+=E,p.next()}return d}function fn(p){F(p);let d="",E="";for(;d=K(p);)E+=d;return p.currentChar()===Kt&&f(ne.UNTERMINATED_CLOSING_BRACE,r(),0),E}function dt(p){F(p);let d="";return p.currentChar()==="-"?(p.next(),d+=`-${Me(p)}`):d+=Me(p),p.currentChar()===Kt&&f(ne.UNTERMINATED_CLOSING_BRACE,r(),0),d}function Wt(p){return p!==Ta&&p!==Ve}function Ut(p){F(p),v(p,"'");let d="",E="";for(;d=Y(p,Wt);)d==="\\"?E+=nn(p):E+=d;const x=p.currentChar();return x===Ve||x===Kt?(f(ne.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),x===Ve&&(p.next(),v(p,"'")),E):(v(p,"'"),E)}function nn(p){const d=p.currentChar();switch(d){case"\\":case"'":return p.next(),`\\${d}`;case"u":return rt(p,d,4);case"U":return rt(p,d,6);default:return f(ne.UNKNOWN_ESCAPE_SEQUENCE,r(),0,d),""}}function rt(p,d,E){v(p,d);let x="";for(let H=0;H{const x=p.currentChar();return x==="{"||x==="%"||x==="@"||x==="|"||x==="("||x===")"||!x||x===Bt?E:(E+=x,p.next(),d(E))};return d("")}function I(p){F(p);const d=v(p,"|");return F(p),d}function B(p,d){let E=null;switch(p.currentChar()){case"{":return d.braceNest>=1&&f(ne.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),p.next(),E=h(d,2,"{"),F(p),d.braceNest++,E;case"}":return d.braceNest>0&&d.currentType===2&&f(ne.EMPTY_PLACEHOLDER,r(),0),p.next(),E=h(d,3,"}"),d.braceNest--,d.braceNest>0&&F(p),d.inLinked&&d.braceNest===0&&(d.inLinked=!1),E;case"@":return d.braceNest>0&&f(ne.UNTERMINATED_CLOSING_BRACE,r(),0),E=D(p,d)||_(d),d.braceNest=0,E;default:{let H=!0,W=!0,N=!0;if(J(p))return d.braceNest>0&&f(ne.UNTERMINATED_CLOSING_BRACE,r(),0),E=h(d,1,I(p)),d.braceNest=0,d.inLinked=!1,E;if(d.braceNest>0&&(d.currentType===5||d.currentType===6||d.currentType===7))return f(ne.UNTERMINATED_CLOSING_BRACE,r(),0),d.braceNest=0,G(p,d);if(H=y(p,d))return E=h(d,5,fn(p)),F(p),E;if(W=m(p,d))return E=h(d,6,dt(p)),F(p),E;if(N=A(p,d))return E=h(d,7,Ut(p)),F(p),E;if(!H&&!W&&!N)return E=h(d,13,g(p)),f(ne.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,E.value),F(p),E;break}}return E}function D(p,d){const{currentType:E}=d;let x=null;const H=p.currentChar();switch((E===8||E===9||E===12||E===10)&&(H===Ve||H===Bt)&&f(ne.INVALID_LINKED_FORMAT,r(),0),H){case"@":return p.next(),x=h(d,8,"@"),d.inLinked=!0,x;case".":return F(p),p.next(),h(d,9,".");case":":return F(p),p.next(),h(d,10,":");default:return J(p)?(x=h(d,1,I(p)),d.braceNest=0,d.inLinked=!1,x):S(p,d)||O(p,d)?(F(p),D(p,d)):$(p,d)?(F(p),h(d,12,w(p))):T(p,d)?(F(p),H==="{"?B(p,d)||x:h(d,11,b(p))):(E===8&&f(ne.INVALID_LINKED_FORMAT,r(),0),d.braceNest=0,d.inLinked=!1,G(p,d))}}function G(p,d){let E={type:14};if(d.braceNest>0)return B(p,d)||_(d);if(d.inLinked)return D(p,d)||_(d);switch(p.currentChar()){case"{":return B(p,d)||_(d);case"}":return f(ne.UNBALANCED_CLOSING_BRACE,r(),0),p.next(),h(d,3,"}");case"@":return D(p,d)||_(d);default:{if(J(p))return E=h(d,1,I(p)),d.braceNest=0,d.inLinked=!1,E;const{isModulo:H,hasSpace:W}=ee(p);if(H)return W?h(d,0,tn(p)):h(d,4,en(p));if(U(p))return h(d,0,tn(p));break}}return E}function j(){const{currentType:p,offset:d,startLoc:E,endLoc:x}=l;return l.lastType=p,l.lastOffset=d,l.lastStartLoc=E,l.lastEndLoc=x,l.offset=s(),l.startLoc=r(),o.currentChar()===Kt?h(l,14):G(o,l)}return{nextToken:j,currentOffset:s,currentPosition:r,context:c}}const Rf="parser",Wf=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Uf(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const o=parseInt(t||n,16);return o<=55295||o>=57344?String.fromCodePoint(o):"�"}}}function jf(e={}){const t=e.location!==!1,{onError:n,onWarn:o}=e;function s(y,m,A,S,...$){const O=y.currentPosition();if(O.offset+=S,O.column+=S,n){const T=t?nr(A,O):null,J=An(m,T,{domain:Rf,args:$});n(J)}}function r(y,m,A,S,...$){const O=y.currentPosition();if(O.offset+=S,O.column+=S,o){const T=t?nr(A,O):null;o(Tf(m,T,$))}}function i(y,m,A){const S={type:y};return t&&(S.start=m,S.end=m,S.loc={start:A,end:A}),S}function a(y,m,A,S){t&&(y.end=m,y.loc&&(y.loc.end=A))}function l(y,m){const A=y.context(),S=i(3,A.offset,A.startLoc);return S.value=m,a(S,y.currentOffset(),y.currentPosition()),S}function c(y,m){const A=y.context(),{lastOffset:S,lastStartLoc:$}=A,O=i(5,S,$);return O.index=parseInt(m,10),y.nextToken(),a(O,y.currentOffset(),y.currentPosition()),O}function u(y,m,A){const S=y.context(),{lastOffset:$,lastStartLoc:O}=S,T=i(4,$,O);return T.key=m,A===!0&&(T.modulo=!0),y.nextToken(),a(T,y.currentOffset(),y.currentPosition()),T}function f(y,m){const A=y.context(),{lastOffset:S,lastStartLoc:$}=A,O=i(9,S,$);return O.value=m.replace(Wf,Uf),y.nextToken(),a(O,y.currentOffset(),y.currentPosition()),O}function h(y){const m=y.nextToken(),A=y.context(),{lastOffset:S,lastStartLoc:$}=A,O=i(8,S,$);return m.type!==12?(s(y,ne.UNEXPECTED_EMPTY_LINKED_MODIFIER,A.lastStartLoc,0),O.value="",a(O,S,$),{nextConsumeToken:m,node:O}):(m.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,A.lastStartLoc,0,ut(m)),O.value=m.value||"",a(O,y.currentOffset(),y.currentPosition()),{node:O})}function _(y,m){const A=y.context(),S=i(7,A.offset,A.startLoc);return S.value=m,a(S,y.currentOffset(),y.currentPosition()),S}function v(y){const m=y.context(),A=i(6,m.offset,m.startLoc);let S=y.nextToken();if(S.type===9){const $=h(y);A.modifier=$.node,S=$.nextConsumeToken||y.nextToken()}switch(S.type!==10&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),S=y.nextToken(),S.type===2&&(S=y.nextToken()),S.type){case 11:S.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),A.key=_(y,S.value||"");break;case 5:S.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),A.key=u(y,S.value||"");break;case 6:S.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),A.key=c(y,S.value||"");break;case 7:S.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),A.key=f(y,S.value||"");break;default:{s(y,ne.UNEXPECTED_EMPTY_LINKED_KEY,m.lastStartLoc,0);const $=y.context(),O=i(7,$.offset,$.startLoc);return O.value="",a(O,$.offset,$.startLoc),A.key=O,a(A,$.offset,$.startLoc),{nextConsumeToken:S,node:A}}}return a(A,y.currentOffset(),y.currentPosition()),{node:A}}function k(y){const m=y.context(),A=m.currentType===1?y.currentOffset():m.offset,S=m.currentType===1?m.endLoc:m.startLoc,$=i(2,A,S);$.items=[];let O=null,T=null;do{const U=O||y.nextToken();switch(O=null,U.type){case 0:U.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(U)),$.items.push(l(y,U.value||""));break;case 6:U.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(U)),$.items.push(c(y,U.value||""));break;case 4:T=!0;break;case 5:U.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(U)),$.items.push(u(y,U.value||"",!!T)),T&&(r(y,Zr.USE_MODULO_SYNTAX,m.lastStartLoc,0,ut(U)),T=null);break;case 7:U.value==null&&s(y,ne.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(U)),$.items.push(f(y,U.value||""));break;case 8:{const Y=v(y);$.items.push(Y.node),O=Y.nextConsumeToken||null;break}}}while(m.currentType!==14&&m.currentType!==1);const J=m.currentType===1?m.lastOffset:y.currentOffset(),ee=m.currentType===1?m.lastEndLoc:y.currentPosition();return a($,J,ee),$}function F(y,m,A,S){const $=y.context();let O=S.items.length===0;const T=i(1,m,A);T.cases=[],T.cases.push(S);do{const J=k(y);O||(O=J.items.length===0),T.cases.push(J)}while($.currentType!==14);return O&&s(y,ne.MUST_HAVE_MESSAGES_IN_PLURAL,A,0),a(T,y.currentOffset(),y.currentPosition()),T}function C(y){const m=y.context(),{offset:A,startLoc:S}=m,$=k(y);return m.currentType===14?$:F(y,A,S,$)}function L(y){const m=Bf(y,Ca({},e)),A=m.context(),S=i(0,A.offset,A.startLoc);return t&&S.loc&&(S.loc.source=y),S.body=C(m),e.onCacheKey&&(S.cacheKey=e.onCacheKey(y)),A.currentType!==14&&s(m,ne.UNEXPECTED_LEXICAL_ANALYSIS,A.lastStartLoc,0,y[A.offset]||""),a(S,m.currentOffset(),m.currentPosition()),S}return{parse:L}}function ut(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function Gf(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:r=>(n.helpers.add(r),r)}}function La(e,t){for(let n=0;nSa(n)),e}function Sa(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;ni;function l(k,F){i.code+=k}function c(k,F=!0){const C=F?o:"";l(s?C+" ".repeat(k):C)}function u(k=!0){const F=++i.indentLevel;k&&c(F)}function f(k=!0){const F=--i.indentLevel;k&&c(F)}function h(){c(i.indentLevel)}return{context:a,push:l,indent:u,deindent:f,newline:h,helper:k=>`_${k}`,needIndent:()=>i.needIndent}}function Kf(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),Tn(e,t.key),t.modifier?(e.push(", "),Tn(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Xf(e,t){const{helper:n,needIndent:o}=e;e.push(`${n("normalize")}([`),e.indent(o());const s=t.items.length;for(let r=0;r1){e.push(`${n("plural")}([`),e.indent(o());const s=t.cases.length;for(let r=0;r{const n=Aa(t.mode)?t.mode:"normal",o=Aa(t.filename)?t.filename:"message.intl";t.sourceMap;const s=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` -`,r=t.needIndent?t.needIndent:n!=="arrow",i=e.helpers||[],a=zf(e,{filename:o,breakLineCode:s,needIndent:r});a.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),a.indent(r),i.length>0&&(a.push(`const { ${Ea(i.map(u=>`${u}: _${u}`),", ")} } = ctx`),a.newline()),a.push("return "),Tn(a,e),a.deindent(r),a.push("}"),delete e.helpers;const{code:l,map:c}=a.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function eh(e,t={}){const n=Ca({},t),o=!!n.jit,s=!!n.minify,r=n.optimize==null?!0:n.optimize,a=jf(n).parse(e);return o?(r&&Vf(a),s&&En(a),{ast:a,code:""}):(Yf(a,n),Qf(a,n))}/*! + */function Cf(e,t,n){return{line:e,column:t,offset:n}}function nr(e,t,n){return{start:e,end:t}}const Af=/\{([0-9a-zA-Z]+)\}/g;function Ca(e,...t){return t.length===1&&Ef(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(Af,(n,o)=>t.hasOwnProperty(o)?t[o]:"")}const Aa=Object.assign,Ea=e=>typeof e=="string",Ef=e=>e!==null&&typeof e=="object";function Ta(e,t=""){return e.reduce((n,o,s)=>s===0?n+o:n+t+o,"")}const Qr={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},Tf={[Qr.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function Lf(e,t,...n){const o=Ca(Tf[e],...n||[]),s={message:String(o),code:e};return t&&(s.location=t),s}const ee={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},Sf={[ee.EXPECTED_TOKEN]:"Expected token: '{0}'",[ee.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[ee.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[ee.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[ee.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[ee.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[ee.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[ee.EMPTY_PLACEHOLDER]:"Empty placeholder",[ee.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[ee.INVALID_LINKED_FORMAT]:"Invalid linked format",[ee.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[ee.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[ee.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[ee.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[ee.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[ee.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function An(e,t,n={}){const{domain:o,messages:s,args:r}=n,i=Ca((s||Sf)[e]||"",...r||[]),a=new SyntaxError(String(i));return a.code=e,t&&(a.location=t),a.domain=o,a}function If(e){throw e}const Bt=" ",Ff="\r",He=` +`,xf="\u2028",Pf="\u2029";function Mf(e){const t=e;let n=0,o=1,s=1,r=0;const i=w=>t[w]===Ff&&t[w+1]===He,a=w=>t[w]===He,l=w=>t[w]===Pf,c=w=>t[w]===xf,u=w=>i(w)||a(w)||l(w)||c(w),f=()=>n,h=()=>o,_=()=>s,v=()=>r,k=w=>i(w)||l(w)||c(w)?He:t[w],I=()=>k(n),N=()=>k(n+r);function A(){return r=0,u(n)&&(o++,s=0),i(n)&&n++,n++,s++,t[n]}function b(){return i(n+r)&&r++,r++,t[n+r]}function m(){n=0,o=1,s=1,r=0}function C(w=0){r=w}function S(){const w=n+r;for(;w!==n;)A();r=0}return{index:f,line:h,column:_,peekOffset:v,charAt:k,currentChar:I,currentPeek:N,next:A,peek:b,reset:m,resetPeek:C,skipToPeek:S}}const Jt=void 0,Df=".",La="'",Bf="tokenizer";function Rf(e,t={}){const n=t.location!==!1,o=Mf(e),s=()=>o.index(),r=()=>Cf(o.line(),o.column(),o.index()),i=r(),a=s(),l={currentType:14,offset:a,startLoc:i,endLoc:i,lastType:14,lastOffset:a,lastStartLoc:i,lastEndLoc:i,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function f(p,d,L,...x){const G=c();if(d.column+=L,d.offset+=L,u){const R=n?nr(G.startLoc,d):null,E=An(p,R,{domain:Bf,args:x});u(E)}}function h(p,d,L){p.endLoc=r(),p.currentType=d;const x={type:d};return n&&(x.loc=nr(p.startLoc,p.endLoc)),L!=null&&(x.value=L),x}const _=p=>h(p,14);function v(p,d){return p.currentChar()===d?(p.next(),d):(f(ee.EXPECTED_TOKEN,r(),0,d),"")}function k(p){let d="";for(;p.currentPeek()===Bt||p.currentPeek()===He;)d+=p.currentPeek(),p.peek();return d}function I(p){const d=k(p);return p.skipToPeek(),d}function N(p){if(p===Jt)return!1;const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d===95}function A(p){if(p===Jt)return!1;const d=p.charCodeAt(0);return d>=48&&d<=57}function b(p,d){const{currentType:L}=d;if(L!==2)return!1;k(p);const x=N(p.currentPeek());return p.resetPeek(),x}function m(p,d){const{currentType:L}=d;if(L!==2)return!1;k(p);const x=p.currentPeek()==="-"?p.peek():p.currentPeek(),G=A(x);return p.resetPeek(),G}function C(p,d){const{currentType:L}=d;if(L!==2)return!1;k(p);const x=p.currentPeek()===La;return p.resetPeek(),x}function S(p,d){const{currentType:L}=d;if(L!==8)return!1;k(p);const x=p.currentPeek()===".";return p.resetPeek(),x}function w(p,d){const{currentType:L}=d;if(L!==9)return!1;k(p);const x=N(p.currentPeek());return p.resetPeek(),x}function O(p,d){const{currentType:L}=d;if(!(L===8||L===12))return!1;k(p);const x=p.currentPeek()===":";return p.resetPeek(),x}function T(p,d){const{currentType:L}=d;if(L!==10)return!1;const x=()=>{const R=p.currentPeek();return R==="{"?N(p.peek()):R==="@"||R==="%"||R==="|"||R===":"||R==="."||R===Bt||!R?!1:R===He?(p.peek(),x()):H(p,!1)},G=x();return p.resetPeek(),G}function X(p){k(p);const d=p.currentPeek()==="|";return p.resetPeek(),d}function te(p){const d=k(p),L=p.currentPeek()==="%"&&p.peek()==="{";return p.resetPeek(),{isModulo:L,hasSpace:d.length>0}}function H(p,d=!0){const L=(G=!1,R="",E=!1)=>{const M=p.currentPeek();return M==="{"?R==="%"?!1:G:M==="@"||!M?R==="%"?!0:G:M==="%"?(p.peek(),L(G,"%",!0)):M==="|"?R==="%"||E?!0:!(R===Bt||R===He):M===Bt?(p.peek(),L(!0,Bt,E)):M===He?(p.peek(),L(!0,He,E)):!0},x=L();return d&&p.resetPeek(),x}function se(p,d){const L=p.currentChar();return L===Jt?Jt:d(L)?(p.next(),L):null}function he(p){const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36}function K(p){return se(p,he)}function W(p){const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36||d===45}function q(p){return se(p,W)}function le(p){const d=p.charCodeAt(0);return d>=48&&d<=57}function Ee(p){return se(p,le)}function Nt(p){const d=p.charCodeAt(0);return d>=48&&d<=57||d>=65&&d<=70||d>=97&&d<=102}function Fe(p){return se(p,Nt)}function Me(p){let d="",L="";for(;d=Ee(p);)L+=d;return L}function tn(p){I(p);const d=p.currentChar();return d!=="%"&&f(ee.EXPECTED_TOKEN,r(),0,d),p.next(),"%"}function nn(p){let d="";for(;;){const L=p.currentChar();if(L==="{"||L==="}"||L==="@"||L==="|"||!L)break;if(L==="%")if(H(p))d+=L,p.next();else break;else if(L===Bt||L===He)if(H(p))d+=L,p.next();else{if(X(p))break;d+=L,p.next()}else d+=L,p.next()}return d}function fn(p){I(p);let d="",L="";for(;d=q(p);)L+=d;return p.currentChar()===Jt&&f(ee.UNTERMINATED_CLOSING_BRACE,r(),0),L}function dt(p){I(p);let d="";return p.currentChar()==="-"?(p.next(),d+=`-${Me(p)}`):d+=Me(p),p.currentChar()===Jt&&f(ee.UNTERMINATED_CLOSING_BRACE,r(),0),d}function Ut(p){return p!==La&&p!==He}function jt(p){I(p),v(p,"'");let d="",L="";for(;d=se(p,Ut);)d==="\\"?L+=on(p):L+=d;const x=p.currentChar();return x===He||x===Jt?(f(ee.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),x===He&&(p.next(),v(p,"'")),L):(v(p,"'"),L)}function on(p){const d=p.currentChar();switch(d){case"\\":case"'":return p.next(),`\\${d}`;case"u":return ot(p,d,4);case"U":return ot(p,d,6);default:return f(ee.UNKNOWN_ESCAPE_SEQUENCE,r(),0,d),""}}function ot(p,d,L){v(p,d);let x="";for(let G=0;G{const x=p.currentChar();return x==="{"||x==="%"||x==="@"||x==="|"||x==="("||x===")"||!x||x===Bt?L:(L+=x,p.next(),d(L))};return d("")}function F(p){I(p);const d=v(p,"|");return I(p),d}function B(p,d){let L=null;switch(p.currentChar()){case"{":return d.braceNest>=1&&f(ee.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),p.next(),L=h(d,2,"{"),I(p),d.braceNest++,L;case"}":return d.braceNest>0&&d.currentType===2&&f(ee.EMPTY_PLACEHOLDER,r(),0),p.next(),L=h(d,3,"}"),d.braceNest--,d.braceNest>0&&I(p),d.inLinked&&d.braceNest===0&&(d.inLinked=!1),L;case"@":return d.braceNest>0&&f(ee.UNTERMINATED_CLOSING_BRACE,r(),0),L=D(p,d)||_(d),d.braceNest=0,L;default:{let G=!0,R=!0,E=!0;if(X(p))return d.braceNest>0&&f(ee.UNTERMINATED_CLOSING_BRACE,r(),0),L=h(d,1,F(p)),d.braceNest=0,d.inLinked=!1,L;if(d.braceNest>0&&(d.currentType===5||d.currentType===6||d.currentType===7))return f(ee.UNTERMINATED_CLOSING_BRACE,r(),0),d.braceNest=0,j(p,d);if(G=b(p,d))return L=h(d,5,fn(p)),I(p),L;if(R=m(p,d))return L=h(d,6,dt(p)),I(p),L;if(E=C(p,d))return L=h(d,7,jt(p)),I(p),L;if(!G&&!R&&!E)return L=h(d,13,g(p)),f(ee.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,L.value),I(p),L;break}}return L}function D(p,d){const{currentType:L}=d;let x=null;const G=p.currentChar();switch((L===8||L===9||L===12||L===10)&&(G===He||G===Bt)&&f(ee.INVALID_LINKED_FORMAT,r(),0),G){case"@":return p.next(),x=h(d,8,"@"),d.inLinked=!0,x;case".":return I(p),p.next(),h(d,9,".");case":":return I(p),p.next(),h(d,10,":");default:return X(p)?(x=h(d,1,F(p)),d.braceNest=0,d.inLinked=!1,x):S(p,d)||O(p,d)?(I(p),D(p,d)):w(p,d)?(I(p),h(d,12,$(p))):T(p,d)?(I(p),G==="{"?B(p,d)||x:h(d,11,y(p))):(L===8&&f(ee.INVALID_LINKED_FORMAT,r(),0),d.braceNest=0,d.inLinked=!1,j(p,d))}}function j(p,d){let L={type:14};if(d.braceNest>0)return B(p,d)||_(d);if(d.inLinked)return D(p,d)||_(d);switch(p.currentChar()){case"{":return B(p,d)||_(d);case"}":return f(ee.UNBALANCED_CLOSING_BRACE,r(),0),p.next(),h(d,3,"}");case"@":return D(p,d)||_(d);default:{if(X(p))return L=h(d,1,F(p)),d.braceNest=0,d.inLinked=!1,L;const{isModulo:G,hasSpace:R}=te(p);if(G)return R?h(d,0,nn(p)):h(d,4,tn(p));if(H(p))return h(d,0,nn(p));break}}return L}function U(){const{currentType:p,offset:d,startLoc:L,endLoc:x}=l;return l.lastType=p,l.lastOffset=d,l.lastStartLoc=L,l.lastEndLoc=x,l.offset=s(),l.startLoc=r(),o.currentChar()===Jt?h(l,14):j(o,l)}return{nextToken:U,currentOffset:s,currentPosition:r,context:c}}const Wf="parser",Uf=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function jf(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const o=parseInt(t||n,16);return o<=55295||o>=57344?String.fromCodePoint(o):"�"}}}function Gf(e={}){const t=e.location!==!1,{onError:n,onWarn:o}=e;function s(b,m,C,S,...w){const O=b.currentPosition();if(O.offset+=S,O.column+=S,n){const T=t?nr(C,O):null,X=An(m,T,{domain:Wf,args:w});n(X)}}function r(b,m,C,S,...w){const O=b.currentPosition();if(O.offset+=S,O.column+=S,o){const T=t?nr(C,O):null;o(Lf(m,T,w))}}function i(b,m,C){const S={type:b};return t&&(S.start=m,S.end=m,S.loc={start:C,end:C}),S}function a(b,m,C,S){t&&(b.end=m,b.loc&&(b.loc.end=C))}function l(b,m){const C=b.context(),S=i(3,C.offset,C.startLoc);return S.value=m,a(S,b.currentOffset(),b.currentPosition()),S}function c(b,m){const C=b.context(),{lastOffset:S,lastStartLoc:w}=C,O=i(5,S,w);return O.index=parseInt(m,10),b.nextToken(),a(O,b.currentOffset(),b.currentPosition()),O}function u(b,m,C){const S=b.context(),{lastOffset:w,lastStartLoc:O}=S,T=i(4,w,O);return T.key=m,C===!0&&(T.modulo=!0),b.nextToken(),a(T,b.currentOffset(),b.currentPosition()),T}function f(b,m){const C=b.context(),{lastOffset:S,lastStartLoc:w}=C,O=i(9,S,w);return O.value=m.replace(Uf,jf),b.nextToken(),a(O,b.currentOffset(),b.currentPosition()),O}function h(b){const m=b.nextToken(),C=b.context(),{lastOffset:S,lastStartLoc:w}=C,O=i(8,S,w);return m.type!==12?(s(b,ee.UNEXPECTED_EMPTY_LINKED_MODIFIER,C.lastStartLoc,0),O.value="",a(O,S,w),{nextConsumeToken:m,node:O}):(m.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,C.lastStartLoc,0,ut(m)),O.value=m.value||"",a(O,b.currentOffset(),b.currentPosition()),{node:O})}function _(b,m){const C=b.context(),S=i(7,C.offset,C.startLoc);return S.value=m,a(S,b.currentOffset(),b.currentPosition()),S}function v(b){const m=b.context(),C=i(6,m.offset,m.startLoc);let S=b.nextToken();if(S.type===9){const w=h(b);C.modifier=w.node,S=w.nextConsumeToken||b.nextToken()}switch(S.type!==10&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),S=b.nextToken(),S.type===2&&(S=b.nextToken()),S.type){case 11:S.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),C.key=_(b,S.value||"");break;case 5:S.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),C.key=u(b,S.value||"");break;case 6:S.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),C.key=c(b,S.value||"");break;case 7:S.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(S)),C.key=f(b,S.value||"");break;default:{s(b,ee.UNEXPECTED_EMPTY_LINKED_KEY,m.lastStartLoc,0);const w=b.context(),O=i(7,w.offset,w.startLoc);return O.value="",a(O,w.offset,w.startLoc),C.key=O,a(C,w.offset,w.startLoc),{nextConsumeToken:S,node:C}}}return a(C,b.currentOffset(),b.currentPosition()),{node:C}}function k(b){const m=b.context(),C=m.currentType===1?b.currentOffset():m.offset,S=m.currentType===1?m.endLoc:m.startLoc,w=i(2,C,S);w.items=[];let O=null,T=null;do{const H=O||b.nextToken();switch(O=null,H.type){case 0:H.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(H)),w.items.push(l(b,H.value||""));break;case 6:H.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(H)),w.items.push(c(b,H.value||""));break;case 4:T=!0;break;case 5:H.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(H)),w.items.push(u(b,H.value||"",!!T)),T&&(r(b,Qr.USE_MODULO_SYNTAX,m.lastStartLoc,0,ut(H)),T=null);break;case 7:H.value==null&&s(b,ee.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,ut(H)),w.items.push(f(b,H.value||""));break;case 8:{const se=v(b);w.items.push(se.node),O=se.nextConsumeToken||null;break}}}while(m.currentType!==14&&m.currentType!==1);const X=m.currentType===1?m.lastOffset:b.currentOffset(),te=m.currentType===1?m.lastEndLoc:b.currentPosition();return a(w,X,te),w}function I(b,m,C,S){const w=b.context();let O=S.items.length===0;const T=i(1,m,C);T.cases=[],T.cases.push(S);do{const X=k(b);O||(O=X.items.length===0),T.cases.push(X)}while(w.currentType!==14);return O&&s(b,ee.MUST_HAVE_MESSAGES_IN_PLURAL,C,0),a(T,b.currentOffset(),b.currentPosition()),T}function N(b){const m=b.context(),{offset:C,startLoc:S}=m,w=k(b);return m.currentType===14?w:I(b,C,S,w)}function A(b){const m=Rf(b,Aa({},e)),C=m.context(),S=i(0,C.offset,C.startLoc);return t&&S.loc&&(S.loc.source=b),S.body=N(m),e.onCacheKey&&(S.cacheKey=e.onCacheKey(b)),C.currentType!==14&&s(m,ee.UNEXPECTED_LEXICAL_ANALYSIS,C.lastStartLoc,0,b[C.offset]||""),a(S,m.currentOffset(),m.currentPosition()),S}return{parse:A}}function ut(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function Yf(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:r=>(n.helpers.add(r),r)}}function Sa(e,t){for(let n=0;nIa(n)),e}function Ia(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;ni;function l(k,I){i.code+=k}function c(k,I=!0){const N=I?o:"";l(s?N+" ".repeat(k):N)}function u(k=!0){const I=++i.indentLevel;k&&c(I)}function f(k=!0){const I=--i.indentLevel;k&&c(I)}function h(){c(i.indentLevel)}return{context:a,push:l,indent:u,deindent:f,newline:h,helper:k=>`_${k}`,needIndent:()=>i.needIndent}}function Xf(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),Tn(e,t.key),t.modifier?(e.push(", "),Tn(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Jf(e,t){const{helper:n,needIndent:o}=e;e.push(`${n("normalize")}([`),e.indent(o());const s=t.items.length;for(let r=0;r1){e.push(`${n("plural")}([`),e.indent(o());const s=t.cases.length;for(let r=0;r{const n=Ea(t.mode)?t.mode:"normal",o=Ea(t.filename)?t.filename:"message.intl";t.sourceMap;const s=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` +`,r=t.needIndent?t.needIndent:n!=="arrow",i=e.helpers||[],a=Kf(e,{filename:o,breakLineCode:s,needIndent:r});a.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),a.indent(r),i.length>0&&(a.push(`const { ${Ta(i.map(u=>`${u}: _${u}`),", ")} } = ctx`),a.newline()),a.push("return "),Tn(a,e),a.deindent(r),a.push("}"),delete e.helpers;const{code:l,map:c}=a.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function th(e,t={}){const n=Aa({},t),o=!!n.jit,s=!!n.minify,r=n.optimize==null?!0:n.optimize,a=Gf(n).parse(e);return o?(r&&Hf(a),s&&En(a),{ast:a,code:""}):(Vf(a,n),eh(a,n))}/*! * core-base v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function th(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Dt().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Dt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Dt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function Ot(e){return fe(e)&&es(e)===0&&(ct(e,"b")||ct(e,"body"))}const Ia=["b","body"];function nh(e){return Xt(e,Ia)}const Fa=["c","cases"];function oh(e){return Xt(e,Fa,[])}const xa=["s","static"];function rh(e){return Xt(e,xa)}const Pa=["i","items"];function sh(e){return Xt(e,Pa,[])}const Ma=["t","type"];function es(e){return Xt(e,Ma)}const Da=["v","value"];function or(e,t){const n=Xt(e,Da);if(n!=null)return n;throw so(t)}const Ba=["m","modifier"];function ih(e){return Xt(e,Ba)}const Ra=["k","key"];function ah(e){const t=Xt(e,Ra);if(t)return t;throw so(6)}function Xt(e,t,n){for(let o=0;o{i===void 0?i=a:i+=a},h[1]=()=>{i!==void 0&&(t.push(i),i=void 0)},h[2]=()=>{h[0](),s++},h[3]=()=>{if(s>0)s--,o=4,h[0]();else{if(s=0,i===void 0||(i=dh(i),i===!1))return!1;h[1]()}};function _(){const v=e[n+1];if(o===5&&v==="'"||o===6&&v==='"')return n++,a="\\"+v,h[0](),!0}for(;o!==null;)if(n++,r=e[n],!(r==="\\"&&_())){if(l=ph(r),f=Jt[o],c=f[l]||f.l||8,c===8||(o=c[0],c[1]!==void 0&&(u=h[c[1]],u&&(a=r,u()===!1))))return;if(o===7)return t}}const Ua=new Map;function hh(e,t){return fe(e)?e[t]:null}function gh(e,t){if(!fe(e))return null;let n=Ua.get(t);if(n||(n=fh(t),n&&Ua.set(t,n)),!n)return null;const o=n.length;let s=e,r=0;for(;re,_h=e=>"",bh="text",yh=e=>e.length===0?"":Of(e),vh=$f;function ja(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function wh(e){const t=Te(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Te(e.named.count)||Te(e.named.n))?Te(e.named.count)?e.named.count:Te(e.named.n)?e.named.n:t:t}function kh(e,t){t.count||(t.count=e),t.n||(t.n=e)}function $h(e={}){const t=e.locale,n=wh(e),o=fe(e.pluralRules)&&z(t)&&ve(e.pluralRules[t])?e.pluralRules[t]:ja,s=fe(e.pluralRules)&&z(t)&&ve(e.pluralRules[t])?ja:void 0,r=C=>C[o(n,C.length,s)],i=e.list||[],a=C=>i[C],l=e.named||me();Te(e.pluralIndex)&&kh(n,l);const c=C=>l[C];function u(C){const L=ve(e.messages)?e.messages(C):fe(e.messages)?e.messages[C]:!1;return L||(e.parent?e.parent.message(C):_h)}const f=C=>e.modifiers?e.modifiers[C]:mh,h=se(e.processor)&&ve(e.processor.normalize)?e.processor.normalize:yh,_=se(e.processor)&&ve(e.processor.interpolate)?e.processor.interpolate:vh,v=se(e.processor)&&z(e.processor.type)?e.processor.type:bh,F={list:a,named:c,plural:r,linked:(C,...L)=>{const[y,m]=L;let A="text",S="";L.length===1?fe(y)?(S=y.modifier||S,A=y.type||A):z(y)&&(S=y||S):L.length===2&&(z(y)&&(S=y||S),z(m)&&(A=m||A));const $=u(C)(F),O=A==="vnode"&&Oe($)&&S?$[0]:$;return S?f(S)(O,A):O},message:u,type:v,interpolate:_,normalize:h,values:Re(me(),i,l)};return F}let io=null;function Oh(e){io=e}function Nh(e,t,n){io&&io.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const Ch=Ah("function:translate");function Ah(e){return t=>io&&io.emit(e,t)}const Eh=Zr.__EXTEND_POINT__,pn=Qo(Eh),Th={FALLBACK_TO_TRANSLATE:pn(),CANNOT_FORMAT_NUMBER:pn(),FALLBACK_TO_NUMBER_FORMAT:pn(),CANNOT_FORMAT_DATE:pn(),FALLBACK_TO_DATE_FORMAT:pn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:pn(),__EXTEND_POINT__:pn()},Ga=ne.__EXTEND_POINT__,dn=Qo(Ga),pt={INVALID_ARGUMENT:Ga,INVALID_DATE_ARGUMENT:dn(),INVALID_ISO_DATE_ARGUMENT:dn(),NOT_SUPPORT_NON_STRING_MESSAGE:dn(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:dn(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:dn(),NOT_SUPPORT_LOCALE_TYPE:dn(),__EXTEND_POINT__:dn()};function Nt(e){return An(e,null,void 0)}function ts(e,t){return t.locale!=null?Ya(t.locale):Ya(e.locale)}let ns;function Ya(e){if(z(e))return e;if(ve(e)){if(e.resolvedOnce&&ns!=null)return ns;if(e.constructor.name==="Function"){const t=e();if(kf(t))throw Nt(pt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return ns=t}else throw Nt(pt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Nt(pt.NOT_SUPPORT_LOCALE_TYPE)}function Lh(e,t,n){return[...new Set([n,...Oe(t)?t:fe(t)?Object.keys(t):z(t)?[t]:[n]])]}function Va(e,t,n){const o=z(n)?n:Ln,s=e;s.__localeChainCache||(s.__localeChainCache=new Map);let r=s.__localeChainCache.get(o);if(!r){r=[];let i=[n];for(;Oe(i);)i=Ha(r,i,t);const a=Oe(t)||!se(t)?t:t.default?t.default:null;i=z(a)?[a]:a,Oe(i)&&Ha(r,i,!1),s.__localeChainCache.set(o,r)}return r}function Ha(e,t,n){let o=!0;for(let s=0;s`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function xh(){return{upper:(e,t)=>t==="text"&&z(e)?e.toUpperCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&z(e)?e.toLowerCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&z(e)?za(e):t==="vnode"&&fe(e)&&"__v_isVNode"in e?za(e.children):e}}let Ka;function Xa(e){Ka=e}let Ja;function Ph(e){Ja=e}let Za;function Mh(e){Za=e}let Qa=null;const Dh=e=>{Qa=e},Bh=()=>Qa;let el=null;const tl=e=>{el=e},Rh=()=>el;let nl=0;function Wh(e={}){const t=ve(e.onWarn)?e.onWarn:gf,n=z(e.version)?e.version:Fh,o=z(e.locale)||ve(e.locale)?e.locale:Ln,s=ve(o)?Ln:o,r=Oe(e.fallbackLocale)||se(e.fallbackLocale)||z(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:s,i=se(e.messages)?e.messages:os(s),a=se(e.datetimeFormats)?e.datetimeFormats:os(s),l=se(e.numberFormats)?e.numberFormats:os(s),c=Re(me(),e.modifiers,xh()),u=e.pluralRules||me(),f=ve(e.missing)?e.missing:null,h=ue(e.missingWarn)||zt(e.missingWarn)?e.missingWarn:!0,_=ue(e.fallbackWarn)||zt(e.fallbackWarn)?e.fallbackWarn:!0,v=!!e.fallbackFormat,k=!!e.unresolving,F=ve(e.postTranslation)?e.postTranslation:null,C=se(e.processor)?e.processor:null,L=ue(e.warnHtmlMessage)?e.warnHtmlMessage:!0,y=!!e.escapeParameter,m=ve(e.messageCompiler)?e.messageCompiler:Ka,A=ve(e.messageResolver)?e.messageResolver:Ja||hh,S=ve(e.localeFallbacker)?e.localeFallbacker:Za||Lh,$=fe(e.fallbackContext)?e.fallbackContext:void 0,O=e,T=fe(O.__datetimeFormatters)?O.__datetimeFormatters:new Map,J=fe(O.__numberFormatters)?O.__numberFormatters:new Map,ee=fe(O.__meta)?O.__meta:{};nl++;const U={version:n,cid:nl,locale:o,fallbackLocale:r,messages:i,modifiers:c,pluralRules:u,missing:f,missingWarn:h,fallbackWarn:_,fallbackFormat:v,unresolving:k,postTranslation:F,processor:C,warnHtmlMessage:L,escapeParameter:y,messageCompiler:m,messageResolver:A,localeFallbacker:S,fallbackContext:$,onWarn:t,__meta:ee};return U.datetimeFormats=a,U.numberFormats=l,U.__datetimeFormatters=T,U.__numberFormatters=J,__INTLIFY_PROD_DEVTOOLS__&&Nh(U,n,ee),U}const os=e=>({[e]:me()});function rs(e,t,n,o,s){const{missing:r,onWarn:i}=e;if(r!==null){const a=r(e,n,t,s);return z(a)?a:t}else return t}function ao(e,t,n){const o=e;o.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function Uh(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function jh(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let o=n+1;oGh(n,e)}function Gh(e,t){const n=nh(t);if(n==null)throw so(0);if(es(n)===1){const r=oh(n);return e.plural(r.reduce((i,a)=>[...i,ol(e,a)],[]))}else return ol(e,n)}function ol(e,t){const n=rh(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const o=sh(t).reduce((s,r)=>[...s,is(e,r)],[]);return e.normalize(o)}}function is(e,t){const n=es(t);switch(n){case 3:return or(t,n);case 9:return or(t,n);case 4:{const o=t;if(ct(o,"k")&&o.k)return e.interpolate(e.named(o.k));if(ct(o,"key")&&o.key)return e.interpolate(e.named(o.key));throw so(n)}case 5:{const o=t;if(ct(o,"i")&&Te(o.i))return e.interpolate(e.list(o.i));if(ct(o,"index")&&Te(o.index))return e.interpolate(e.list(o.index));throw so(n)}case 6:{const o=t,s=ih(o),r=ah(o);return e.linked(is(e,r),s?is(e,s):void 0,e.type)}case 7:return or(t,n);case 8:return or(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const rl=e=>e;let Sn=me();function sl(e,t={}){let n=!1;const o=t.onError||Sf;return t.onError=s=>{n=!0,o(s)},{...eh(e,t),detectError:n}}const Yh=(e,t)=>{if(!z(e))throw Nt(pt.NOT_SUPPORT_NON_STRING_MESSAGE);{ue(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||rl)(e),s=Sn[o];if(s)return s;const{code:r,detectError:i}=sl(e,t),a=new Function(`return ${r}`)();return i?a:Sn[o]=a}};function Vh(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&z(e)){ue(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||rl)(e),s=Sn[o];if(s)return s;const{ast:r,detectError:i}=sl(e,{...t,location:!1,jit:!0}),a=ss(r);return i?a:Sn[o]=a}else{const n=e.cacheKey;if(n){const o=Sn[n];return o||(Sn[n]=ss(e))}else return ss(e)}}const il=()=>"",ot=e=>ve(e);function al(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:s,messageCompiler:r,fallbackLocale:i,messages:a}=e,[l,c]=as(...t),u=ue(c.missingWarn)?c.missingWarn:e.missingWarn,f=ue(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,h=ue(c.escapeParameter)?c.escapeParameter:e.escapeParameter,_=!!c.resolvedMessage,v=z(c.default)||ue(c.default)?ue(c.default)?r?l:()=>l:c.default:n?r?l:()=>l:"",k=n||v!=="",F=ts(e,c);h&&Hh(c);let[C,L,y]=_?[l,F,a[F]||me()]:ll(e,l,F,i,f,u),m=C,A=l;if(!_&&!(z(m)||Ot(m)||ot(m))&&k&&(m=v,A=m),!_&&(!(z(m)||Ot(m)||ot(m))||!z(L)))return s?rr:l;let S=!1;const $=()=>{S=!0},O=ot(m)?m:cl(e,l,L,m,A,$);if(S)return m;const T=Kh(e,L,y,c),J=$h(T),ee=qh(e,O,J);let U=o?o(ee,l):ee;if(h&&z(U)&&(U=vf(U)),__INTLIFY_PROD_DEVTOOLS__){const Y={timestamp:Date.now(),key:z(l)?l:ot(m)?m.key:"",locale:L||(ot(m)?m.locale:""),format:z(m)?m:ot(m)?m.source:"",message:U};Y.meta=Re({},e.__meta,Bh()||{}),Ch(Y)}return U}function Hh(e){Oe(e.list)?e.list=e.list.map(t=>z(t)?wa(t):t):fe(e.named)&&Object.keys(e.named).forEach(t=>{z(e.named[t])&&(e.named[t]=wa(e.named[t]))})}function ll(e,t,n,o,s,r){const{messages:i,onWarn:a,messageResolver:l,localeFallbacker:c}=e,u=c(e,o,n);let f=me(),h,_=null;const v="translate";for(let k=0;ko;return c.locale=n,c.key=t,c}const l=i(o,zh(e,n,s,o,a,r));return l.locale=n,l.key=t,l.source=o,l}function qh(e,t,n){return t(n)}function as(...e){const[t,n,o]=e,s=me();if(!z(t)&&!Te(t)&&!ot(t)&&!Ot(t))throw Nt(pt.INVALID_ARGUMENT);const r=Te(t)?String(t):(ot(t),t);return Te(n)?s.plural=n:z(n)?s.default=n:se(n)&&!Zo(n)?s.named=n:Oe(n)&&(s.list=n),Te(o)?s.plural=o:z(o)?s.default=o:se(o)&&Re(s,o),[r,s]}function zh(e,t,n,o,s,r){return{locale:t,key:n,warnHtmlMessage:s,onError:i=>{throw r&&r(i),i},onCacheKey:i=>mf(t,n,i)}}function Kh(e,t,n,o){const{modifiers:s,pluralRules:r,messageResolver:i,fallbackLocale:a,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,h={locale:t,modifiers:s,pluralRules:r,messages:_=>{let v=i(n,_);if(v==null&&u){const[,,k]=ll(u,_,t,a,l,c);v=i(k,_)}if(z(v)||Ot(v)){let k=!1;const C=cl(e,_,t,v,_,()=>{k=!0});return k?il:C}else return ot(v)?v:il}};return e.processor&&(h.processor=e.processor),o.list&&(h.list=o.list),o.named&&(h.named=o.named),Te(o.plural)&&(h.pluralIndex=o.plural),h}function ul(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:s,onWarn:r,localeFallbacker:i}=e,{__datetimeFormatters:a}=e,[l,c,u,f]=ls(...t),h=ue(u.missingWarn)?u.missingWarn:e.missingWarn;ue(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const _=!!u.part,v=ts(e,u),k=i(e,s,v);if(!z(l)||l==="")return new Intl.DateTimeFormat(v,f).format(c);let F={},C,L=null;const y="datetime format";for(let S=0;S{pl.includes(l)?i[l]=n[l]:r[l]=n[l]}),z(o)?r.locale=o:se(o)&&(i=o),se(s)&&(i=s),[r.key||"",a,r,i]}function dl(e,t,n){const o=e;for(const s in n){const r=`${t}__${s}`;o.__datetimeFormatters.has(r)&&o.__datetimeFormatters.delete(r)}}function fl(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:s,onWarn:r,localeFallbacker:i}=e,{__numberFormatters:a}=e,[l,c,u,f]=cs(...t),h=ue(u.missingWarn)?u.missingWarn:e.missingWarn;ue(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const _=!!u.part,v=ts(e,u),k=i(e,s,v);if(!z(l)||l==="")return new Intl.NumberFormat(v,f).format(c);let F={},C,L=null;const y="number format";for(let S=0;S{hl.includes(l)?i[l]=n[l]:r[l]=n[l]}),z(o)?r.locale=o:se(o)&&(i=o),se(s)&&(i=s),[r.key||"",a,r,i]}function gl(e,t,n){const o=e;for(const s in n){const r=`${t}__${s}`;o.__numberFormatters.has(r)&&o.__numberFormatters.delete(r)}}th();/*! + */function nh(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Dt().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Dt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Dt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function $t(e){return de(e)&&ts(e)===0&&(ct(e,"b")||ct(e,"body"))}const Fa=["b","body"];function oh(e){return Zt(e,Fa)}const xa=["c","cases"];function rh(e){return Zt(e,xa,[])}const Pa=["s","static"];function sh(e){return Zt(e,Pa)}const Ma=["i","items"];function ih(e){return Zt(e,Ma,[])}const Da=["t","type"];function ts(e){return Zt(e,Da)}const Ba=["v","value"];function or(e,t){const n=Zt(e,Ba);if(n!=null)return n;throw ro(t)}const Ra=["m","modifier"];function ah(e){return Zt(e,Ra)}const Wa=["k","key"];function lh(e){const t=Zt(e,Wa);if(t)return t;throw ro(6)}function Zt(e,t,n){for(let o=0;o{i===void 0?i=a:i+=a},h[1]=()=>{i!==void 0&&(t.push(i),i=void 0)},h[2]=()=>{h[0](),s++},h[3]=()=>{if(s>0)s--,o=4,h[0]();else{if(s=0,i===void 0||(i=fh(i),i===!1))return!1;h[1]()}};function _(){const v=e[n+1];if(o===5&&v==="'"||o===6&&v==='"')return n++,a="\\"+v,h[0](),!0}for(;o!==null;)if(n++,r=e[n],!(r==="\\"&&_())){if(l=dh(r),f=Qt[o],c=f[l]||f.l||8,c===8||(o=c[0],c[1]!==void 0&&(u=h[c[1]],u&&(a=r,u()===!1))))return;if(o===7)return t}}const ja=new Map;function gh(e,t){return de(e)?e[t]:null}function mh(e,t){if(!de(e))return null;let n=ja.get(t);if(n||(n=hh(t),n&&ja.set(t,n)),!n)return null;const o=n.length;let s=e,r=0;for(;re,bh=e=>"",yh="text",vh=e=>e.length===0?"":Nf(e),wh=Of;function Ga(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function kh(e){const t=Ae(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Ae(e.named.count)||Ae(e.named.n))?Ae(e.named.count)?e.named.count:Ae(e.named.n)?e.named.n:t:t}function $h(e,t){t.count||(t.count=e),t.n||(t.n=e)}function Oh(e={}){const t=e.locale,n=kh(e),o=de(e.pluralRules)&&V(t)&&we(e.pluralRules[t])?e.pluralRules[t]:Ga,s=de(e.pluralRules)&&V(t)&&we(e.pluralRules[t])?Ga:void 0,r=N=>N[o(n,N.length,s)],i=e.list||[],a=N=>i[N],l=e.named||me();Ae(e.pluralIndex)&&$h(n,l);const c=N=>l[N];function u(N){const A=we(e.messages)?e.messages(N):de(e.messages)?e.messages[N]:!1;return A||(e.parent?e.parent.message(N):bh)}const f=N=>e.modifiers?e.modifiers[N]:_h,h=oe(e.processor)&&we(e.processor.normalize)?e.processor.normalize:vh,_=oe(e.processor)&&we(e.processor.interpolate)?e.processor.interpolate:wh,v=oe(e.processor)&&V(e.processor.type)?e.processor.type:yh,I={list:a,named:c,plural:r,linked:(N,...A)=>{const[b,m]=A;let C="text",S="";A.length===1?de(b)?(S=b.modifier||S,C=b.type||C):V(b)&&(S=b||S):A.length===2&&(V(b)&&(S=b||S),V(m)&&(C=m||C));const w=u(N)(I),O=C==="vnode"&&Oe(w)&&S?w[0]:w;return S?f(S)(O,C):O},message:u,type:v,interpolate:_,normalize:h,values:Re(me(),i,l)};return I}let so=null;function Nh(e){so=e}function Ch(e,t,n){so&&so.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const Ah=Eh("function:translate");function Eh(e){return t=>so&&so.emit(e,t)}const Th=Qr.__EXTEND_POINT__,pn=Qo(Th),Lh={FALLBACK_TO_TRANSLATE:pn(),CANNOT_FORMAT_NUMBER:pn(),FALLBACK_TO_NUMBER_FORMAT:pn(),CANNOT_FORMAT_DATE:pn(),FALLBACK_TO_DATE_FORMAT:pn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:pn(),__EXTEND_POINT__:pn()},Ya=ee.__EXTEND_POINT__,dn=Qo(Ya),pt={INVALID_ARGUMENT:Ya,INVALID_DATE_ARGUMENT:dn(),INVALID_ISO_DATE_ARGUMENT:dn(),NOT_SUPPORT_NON_STRING_MESSAGE:dn(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:dn(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:dn(),NOT_SUPPORT_LOCALE_TYPE:dn(),__EXTEND_POINT__:dn()};function Ot(e){return An(e,null,void 0)}function ns(e,t){return t.locale!=null?Va(t.locale):Va(e.locale)}let os;function Va(e){if(V(e))return e;if(we(e)){if(e.resolvedOnce&&os!=null)return os;if(e.constructor.name==="Function"){const t=e();if($f(t))throw Ot(pt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return os=t}else throw Ot(pt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Ot(pt.NOT_SUPPORT_LOCALE_TYPE)}function Sh(e,t,n){return[...new Set([n,...Oe(t)?t:de(t)?Object.keys(t):V(t)?[t]:[n]])]}function Ha(e,t,n){const o=V(n)?n:Ln,s=e;s.__localeChainCache||(s.__localeChainCache=new Map);let r=s.__localeChainCache.get(o);if(!r){r=[];let i=[n];for(;Oe(i);)i=qa(r,i,t);const a=Oe(t)||!oe(t)?t:t.default?t.default:null;i=V(a)?[a]:a,Oe(i)&&qa(r,i,!1),s.__localeChainCache.set(o,r)}return r}function qa(e,t,n){let o=!0;for(let s=0;s`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Ph(){return{upper:(e,t)=>t==="text"&&V(e)?e.toUpperCase():t==="vnode"&&de(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&V(e)?e.toLowerCase():t==="vnode"&&de(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&V(e)?Ka(e):t==="vnode"&&de(e)&&"__v_isVNode"in e?Ka(e.children):e}}let Xa;function Ja(e){Xa=e}let Za;function Mh(e){Za=e}let Qa;function Dh(e){Qa=e}let el=null;const Bh=e=>{el=e},Rh=()=>el;let tl=null;const nl=e=>{tl=e},Wh=()=>tl;let ol=0;function Uh(e={}){const t=we(e.onWarn)?e.onWarn:mf,n=V(e.version)?e.version:xh,o=V(e.locale)||we(e.locale)?e.locale:Ln,s=we(o)?Ln:o,r=Oe(e.fallbackLocale)||oe(e.fallbackLocale)||V(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:s,i=oe(e.messages)?e.messages:rs(s),a=oe(e.datetimeFormats)?e.datetimeFormats:rs(s),l=oe(e.numberFormats)?e.numberFormats:rs(s),c=Re(me(),e.modifiers,Ph()),u=e.pluralRules||me(),f=we(e.missing)?e.missing:null,h=ce(e.missingWarn)||Xt(e.missingWarn)?e.missingWarn:!0,_=ce(e.fallbackWarn)||Xt(e.fallbackWarn)?e.fallbackWarn:!0,v=!!e.fallbackFormat,k=!!e.unresolving,I=we(e.postTranslation)?e.postTranslation:null,N=oe(e.processor)?e.processor:null,A=ce(e.warnHtmlMessage)?e.warnHtmlMessage:!0,b=!!e.escapeParameter,m=we(e.messageCompiler)?e.messageCompiler:Xa,C=we(e.messageResolver)?e.messageResolver:Za||gh,S=we(e.localeFallbacker)?e.localeFallbacker:Qa||Sh,w=de(e.fallbackContext)?e.fallbackContext:void 0,O=e,T=de(O.__datetimeFormatters)?O.__datetimeFormatters:new Map,X=de(O.__numberFormatters)?O.__numberFormatters:new Map,te=de(O.__meta)?O.__meta:{};ol++;const H={version:n,cid:ol,locale:o,fallbackLocale:r,messages:i,modifiers:c,pluralRules:u,missing:f,missingWarn:h,fallbackWarn:_,fallbackFormat:v,unresolving:k,postTranslation:I,processor:N,warnHtmlMessage:A,escapeParameter:b,messageCompiler:m,messageResolver:C,localeFallbacker:S,fallbackContext:w,onWarn:t,__meta:te};return H.datetimeFormats=a,H.numberFormats=l,H.__datetimeFormatters=T,H.__numberFormatters=X,__INTLIFY_PROD_DEVTOOLS__&&Ch(H,n,te),H}const rs=e=>({[e]:me()});function ss(e,t,n,o,s){const{missing:r,onWarn:i}=e;if(r!==null){const a=r(e,n,t,s);return V(a)?a:t}else return t}function io(e,t,n){const o=e;o.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function jh(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Gh(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let o=n+1;oYh(n,e)}function Yh(e,t){const n=oh(t);if(n==null)throw ro(0);if(ts(n)===1){const r=rh(n);return e.plural(r.reduce((i,a)=>[...i,rl(e,a)],[]))}else return rl(e,n)}function rl(e,t){const n=sh(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const o=ih(t).reduce((s,r)=>[...s,as(e,r)],[]);return e.normalize(o)}}function as(e,t){const n=ts(t);switch(n){case 3:return or(t,n);case 9:return or(t,n);case 4:{const o=t;if(ct(o,"k")&&o.k)return e.interpolate(e.named(o.k));if(ct(o,"key")&&o.key)return e.interpolate(e.named(o.key));throw ro(n)}case 5:{const o=t;if(ct(o,"i")&&Ae(o.i))return e.interpolate(e.list(o.i));if(ct(o,"index")&&Ae(o.index))return e.interpolate(e.list(o.index));throw ro(n)}case 6:{const o=t,s=ah(o),r=lh(o);return e.linked(as(e,r),s?as(e,s):void 0,e.type)}case 7:return or(t,n);case 8:return or(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const sl=e=>e;let Sn=me();function il(e,t={}){let n=!1;const o=t.onError||If;return t.onError=s=>{n=!0,o(s)},{...th(e,t),detectError:n}}const Vh=(e,t)=>{if(!V(e))throw Ot(pt.NOT_SUPPORT_NON_STRING_MESSAGE);{ce(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||sl)(e),s=Sn[o];if(s)return s;const{code:r,detectError:i}=il(e,t),a=new Function(`return ${r}`)();return i?a:Sn[o]=a}};function Hh(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&V(e)){ce(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||sl)(e),s=Sn[o];if(s)return s;const{ast:r,detectError:i}=il(e,{...t,location:!1,jit:!0}),a=is(r);return i?a:Sn[o]=a}else{const n=e.cacheKey;if(n){const o=Sn[n];return o||(Sn[n]=is(e))}else return is(e)}}const al=()=>"",nt=e=>we(e);function ll(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:s,messageCompiler:r,fallbackLocale:i,messages:a}=e,[l,c]=ls(...t),u=ce(c.missingWarn)?c.missingWarn:e.missingWarn,f=ce(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,h=ce(c.escapeParameter)?c.escapeParameter:e.escapeParameter,_=!!c.resolvedMessage,v=V(c.default)||ce(c.default)?ce(c.default)?r?l:()=>l:c.default:n?r?l:()=>l:"",k=n||v!=="",I=ns(e,c);h&&qh(c);let[N,A,b]=_?[l,I,a[I]||me()]:cl(e,l,I,i,f,u),m=N,C=l;if(!_&&!(V(m)||$t(m)||nt(m))&&k&&(m=v,C=m),!_&&(!(V(m)||$t(m)||nt(m))||!V(A)))return s?rr:l;let S=!1;const w=()=>{S=!0},O=nt(m)?m:ul(e,l,A,m,C,w);if(S)return m;const T=Xh(e,A,b,c),X=Oh(T),te=zh(e,O,X);let H=o?o(te,l):te;if(h&&V(H)&&(H=wf(H)),__INTLIFY_PROD_DEVTOOLS__){const se={timestamp:Date.now(),key:V(l)?l:nt(m)?m.key:"",locale:A||(nt(m)?m.locale:""),format:V(m)?m:nt(m)?m.source:"",message:H};se.meta=Re({},e.__meta,Rh()||{}),Ah(se)}return H}function qh(e){Oe(e.list)?e.list=e.list.map(t=>V(t)?ka(t):t):de(e.named)&&Object.keys(e.named).forEach(t=>{V(e.named[t])&&(e.named[t]=ka(e.named[t]))})}function cl(e,t,n,o,s,r){const{messages:i,onWarn:a,messageResolver:l,localeFallbacker:c}=e,u=c(e,o,n);let f=me(),h,_=null;const v="translate";for(let k=0;ko;return c.locale=n,c.key=t,c}const l=i(o,Kh(e,n,s,o,a,r));return l.locale=n,l.key=t,l.source=o,l}function zh(e,t,n){return t(n)}function ls(...e){const[t,n,o]=e,s=me();if(!V(t)&&!Ae(t)&&!nt(t)&&!$t(t))throw Ot(pt.INVALID_ARGUMENT);const r=Ae(t)?String(t):(nt(t),t);return Ae(n)?s.plural=n:V(n)?s.default=n:oe(n)&&!Zo(n)?s.named=n:Oe(n)&&(s.list=n),Ae(o)?s.plural=o:V(o)?s.default=o:oe(o)&&Re(s,o),[r,s]}function Kh(e,t,n,o,s,r){return{locale:t,key:n,warnHtmlMessage:s,onError:i=>{throw r&&r(i),i},onCacheKey:i=>_f(t,n,i)}}function Xh(e,t,n,o){const{modifiers:s,pluralRules:r,messageResolver:i,fallbackLocale:a,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,h={locale:t,modifiers:s,pluralRules:r,messages:_=>{let v=i(n,_);if(v==null&&u){const[,,k]=cl(u,_,t,a,l,c);v=i(k,_)}if(V(v)||$t(v)){let k=!1;const N=ul(e,_,t,v,_,()=>{k=!0});return k?al:N}else return nt(v)?v:al}};return e.processor&&(h.processor=e.processor),o.list&&(h.list=o.list),o.named&&(h.named=o.named),Ae(o.plural)&&(h.pluralIndex=o.plural),h}function pl(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:s,onWarn:r,localeFallbacker:i}=e,{__datetimeFormatters:a}=e,[l,c,u,f]=cs(...t),h=ce(u.missingWarn)?u.missingWarn:e.missingWarn;ce(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const _=!!u.part,v=ns(e,u),k=i(e,s,v);if(!V(l)||l==="")return new Intl.DateTimeFormat(v,f).format(c);let I={},N,A=null;const b="datetime format";for(let S=0;S{dl.includes(l)?i[l]=n[l]:r[l]=n[l]}),V(o)?r.locale=o:oe(o)&&(i=o),oe(s)&&(i=s),[r.key||"",a,r,i]}function fl(e,t,n){const o=e;for(const s in n){const r=`${t}__${s}`;o.__datetimeFormatters.has(r)&&o.__datetimeFormatters.delete(r)}}function hl(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:s,onWarn:r,localeFallbacker:i}=e,{__numberFormatters:a}=e,[l,c,u,f]=us(...t),h=ce(u.missingWarn)?u.missingWarn:e.missingWarn;ce(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const _=!!u.part,v=ns(e,u),k=i(e,s,v);if(!V(l)||l==="")return new Intl.NumberFormat(v,f).format(c);let I={},N,A=null;const b="number format";for(let S=0;S{gl.includes(l)?i[l]=n[l]:r[l]=n[l]}),V(o)?r.locale=o:oe(o)&&(i=o),oe(s)&&(i=s),[r.key||"",a,r,i]}function ml(e,t,n){const o=e;for(const s in n){const r=`${t}__${s}`;o.__numberFormatters.has(r)&&o.__numberFormatters.delete(r)}}nh();/*! * vue-i18n v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const Xh="9.14.5";function Jh(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Dt().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Dt().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Dt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Dt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Dt().__INTLIFY_PROD_DEVTOOLS__=!1)}const Zh=Th.__EXTEND_POINT__,Rt=Qo(Zh);Rt(),Rt(),Rt(),Rt(),Rt(),Rt(),Rt(),Rt(),Rt();const ml=pt.__EXTEND_POINT__,ze=Qo(ml),Fe={UNEXPECTED_RETURN_TYPE:ml,INVALID_ARGUMENT:ze(),MUST_BE_CALL_SETUP_TOP:ze(),NOT_INSTALLED:ze(),NOT_AVAILABLE_IN_LEGACY_MODE:ze(),REQUIRED_VALUE:ze(),INVALID_VALUE:ze(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:ze(),NOT_INSTALLED_WITH_PROVIDE:ze(),UNEXPECTED_ERROR:ze(),NOT_COMPATIBLE_LEGACY_VUE_I18N:ze(),BRIDGE_SUPPORT_VUE_2_ONLY:ze(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:ze(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:ze(),__EXTEND_POINT__:ze()};function Pe(e,...t){return An(e,null,void 0)}const us=qt("__translateVNode"),ps=qt("__datetimeParts"),ds=qt("__numberParts"),_l=qt("__setPluralRules"),bl=qt("__injectWithOption"),fs=qt("__dispose");function lo(e){if(!fe(e)||Ot(e))return e;for(const t in e)if(ct(e,t))if(!t.includes("."))fe(e[t])&&lo(e[t]);else{const n=t.split("."),o=n.length-1;let s=e,r=!1;for(let i=0;i{if("locale"in a&&"resource"in a){const{locale:l,resource:c}=a;l?(i[l]=i[l]||me(),tr(c,i[l])):tr(c,i)}else z(a)&&tr(JSON.parse(a),i)}),s==null&&r)for(const a in i)ct(i,a)&&lo(i[a]);return i}function yl(e){return e.type}function vl(e,t,n){let o=fe(t.messages)?t.messages:me();"__i18nGlobal"in n&&(o=sr(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const s=Object.keys(o);s.length&&s.forEach(r=>{e.mergeLocaleMessage(r,o[r])});{if(fe(t.datetimeFormats)){const r=Object.keys(t.datetimeFormats);r.length&&r.forEach(i=>{e.mergeDateTimeFormat(i,t.datetimeFormats[i])})}if(fe(t.numberFormats)){const r=Object.keys(t.numberFormats);r.length&&r.forEach(i=>{e.mergeNumberFormat(i,t.numberFormats[i])})}}}function wl(e){return ke(Xn,null,e,0)}const kl="__INTLIFY_META__",$l=()=>[],Qh=()=>!1;let Ol=0;function Nl(e){return(t,n,o,s)=>e(n,o,Pt()||void 0,s)}const eg=()=>{const e=Pt();let t=null;return e&&(t=yl(e)[kl])?{[kl]:t}:null};function hs(e={},t){const{__root:n,__injectWithOption:o}=e,s=n===void 0,r=e.flatJson,i=Jo?ce:To,a=!!e.translateExistCompatible;let l=ue(e.inheritLocale)?e.inheritLocale:!0;const c=i(n&&l?n.locale.value:z(e.locale)?e.locale:Ln),u=i(n&&l?n.fallbackLocale.value:z(e.fallbackLocale)||Oe(e.fallbackLocale)||se(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:c.value),f=i(sr(c.value,e)),h=i(se(e.datetimeFormats)?e.datetimeFormats:{[c.value]:{}}),_=i(se(e.numberFormats)?e.numberFormats:{[c.value]:{}});let v=n?n.missingWarn:ue(e.missingWarn)||zt(e.missingWarn)?e.missingWarn:!0,k=n?n.fallbackWarn:ue(e.fallbackWarn)||zt(e.fallbackWarn)?e.fallbackWarn:!0,F=n?n.fallbackRoot:ue(e.fallbackRoot)?e.fallbackRoot:!0,C=!!e.fallbackFormat,L=ve(e.missing)?e.missing:null,y=ve(e.missing)?Nl(e.missing):null,m=ve(e.postTranslation)?e.postTranslation:null,A=n?n.warnHtmlMessage:ue(e.warnHtmlMessage)?e.warnHtmlMessage:!0,S=!!e.escapeParameter;const $=n?n.modifiers:se(e.modifiers)?e.modifiers:{};let O=e.pluralRules||n&&n.pluralRules,T;T=(()=>{s&&tl(null);const N={version:Xh,locale:c.value,fallbackLocale:u.value,messages:f.value,modifiers:$,pluralRules:O,missing:y===null?void 0:y,missingWarn:v,fallbackWarn:k,fallbackFormat:C,unresolving:!0,postTranslation:m===null?void 0:m,warnHtmlMessage:A,escapeParameter:S,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};N.datetimeFormats=h.value,N.numberFormats=_.value,N.__datetimeFormatters=se(T)?T.__datetimeFormatters:void 0,N.__numberFormatters=se(T)?T.__numberFormatters:void 0;const P=Wh(N);return s&&tl(P),P})(),ao(T,c.value,u.value);function ee(){return[c.value,u.value,f.value,h.value,_.value]}const U=ie({get:()=>c.value,set:N=>{c.value=N,T.locale=c.value}}),Y=ie({get:()=>u.value,set:N=>{u.value=N,T.fallbackLocale=u.value,ao(T,c.value,N)}}),re=ie(()=>f.value),V=ie(()=>h.value),R=ie(()=>_.value);function K(){return ve(m)?m:null}function ae(N){m=N,T.postTranslation=N}function Ce(){return L}function Qe(N){N!==null&&(y=Nl(N)),L=N,T.missing=y}const Ae=(N,P,Z,le,we,He)=>{ee();let We;try{__INTLIFY_PROD_DEVTOOLS__,s||(T.fallbackContext=n?Rh():void 0),We=N(T)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(T.fallbackContext=void 0)}if(Z!=="translate exists"&&Te(We)&&We===rr||Z==="translate exists"&&!We){const[hn,ys]=P();return n&&F?le(n):we(hn)}else{if(He(We))return We;throw Pe(Fe.UNEXPECTED_RETURN_TYPE)}};function Me(...N){return Ae(P=>Reflect.apply(al,null,[P,...N]),()=>as(...N),"translate",P=>Reflect.apply(P.t,P,[...N]),P=>P,P=>z(P))}function en(...N){const[P,Z,le]=N;if(le&&!fe(le))throw Pe(Fe.INVALID_ARGUMENT);return Me(P,Z,Re({resolvedMessage:!0},le||{}))}function tn(...N){return Ae(P=>Reflect.apply(ul,null,[P,...N]),()=>ls(...N),"datetime format",P=>Reflect.apply(P.d,P,[...N]),()=>qa,P=>z(P))}function fn(...N){return Ae(P=>Reflect.apply(fl,null,[P,...N]),()=>cs(...N),"number format",P=>Reflect.apply(P.n,P,[...N]),()=>qa,P=>z(P))}function dt(N){return N.map(P=>z(P)||Te(P)||ue(P)?wl(String(P)):P)}const Ut={normalize:dt,interpolate:N=>N,type:"vnode"};function nn(...N){return Ae(P=>{let Z;const le=P;try{le.processor=Ut,Z=Reflect.apply(al,null,[le,...N])}finally{le.processor=null}return Z},()=>as(...N),"translate",P=>P[us](...N),P=>[wl(P)],P=>Oe(P))}function rt(...N){return Ae(P=>Reflect.apply(fl,null,[P,...N]),()=>cs(...N),"number format",P=>P[ds](...N),$l,P=>z(P)||Oe(P))}function In(...N){return Ae(P=>Reflect.apply(ul,null,[P,...N]),()=>ls(...N),"datetime format",P=>P[ps](...N),$l,P=>z(P)||Oe(P))}function g(N){O=N,T.pluralRules=O}function w(N,P){return Ae(()=>{if(!N)return!1;const Z=z(P)?P:c.value,le=B(Z),we=T.messageResolver(le,N);return a?we!=null:Ot(we)||ot(we)||z(we)},()=>[N],"translate exists",Z=>Reflect.apply(Z.te,Z,[N,P]),Qh,Z=>ue(Z))}function b(N){let P=null;const Z=Va(T,u.value,c.value);for(let le=0;le{l&&(c.value=N,T.locale=N,ao(T,c.value,u.value))}),vt(n.fallbackLocale,N=>{l&&(u.value=N,T.fallbackLocale=N,ao(T,c.value,u.value))}));const W={id:Ol,locale:U,fallbackLocale:Y,get inheritLocale(){return l},set inheritLocale(N){l=N,N&&n&&(c.value=n.locale.value,u.value=n.fallbackLocale.value,ao(T,c.value,u.value))},get availableLocales(){return Object.keys(f.value).sort()},messages:re,get modifiers(){return $},get pluralRules(){return O||{}},get isGlobal(){return s},get missingWarn(){return v},set missingWarn(N){v=N,T.missingWarn=v},get fallbackWarn(){return k},set fallbackWarn(N){k=N,T.fallbackWarn=k},get fallbackRoot(){return F},set fallbackRoot(N){F=N},get fallbackFormat(){return C},set fallbackFormat(N){C=N,T.fallbackFormat=C},get warnHtmlMessage(){return A},set warnHtmlMessage(N){A=N,T.warnHtmlMessage=N},get escapeParameter(){return S},set escapeParameter(N){S=N,T.escapeParameter=N},t:Me,getLocaleMessage:B,setLocaleMessage:D,mergeLocaleMessage:G,getPostTranslationHandler:K,setPostTranslationHandler:ae,getMissingHandler:Ce,setMissingHandler:Qe,[_l]:g};return W.datetimeFormats=V,W.numberFormats=R,W.rt=en,W.te=w,W.tm=I,W.d=tn,W.n=fn,W.getDateTimeFormat=j,W.setDateTimeFormat=p,W.mergeDateTimeFormat=d,W.getNumberFormat=E,W.setNumberFormat=x,W.mergeNumberFormat=H,W[bl]=o,W[us]=nn,W[ps]=In,W[ds]=rt,W}function tg(e){const t=z(e.locale)?e.locale:Ln,n=z(e.fallbackLocale)||Oe(e.fallbackLocale)||se(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,o=ve(e.missing)?e.missing:void 0,s=ue(e.silentTranslationWarn)||zt(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,r=ue(e.silentFallbackWarn)||zt(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,i=ue(e.fallbackRoot)?e.fallbackRoot:!0,a=!!e.formatFallbackMessages,l=se(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=ve(e.postTranslation)?e.postTranslation:void 0,f=z(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,h=!!e.escapeParameterHtml,_=ue(e.sync)?e.sync:!0;let v=e.messages;if(se(e.sharedMessages)){const S=e.sharedMessages;v=Object.keys(S).reduce((O,T)=>{const J=O[T]||(O[T]={});return Re(J,S[T]),O},v||{})}const{__i18n:k,__root:F,__injectWithOption:C}=e,L=e.datetimeFormats,y=e.numberFormats,m=e.flatJson,A=e.translateExistCompatible;return{locale:t,fallbackLocale:n,messages:v,flatJson:m,datetimeFormats:L,numberFormats:y,missing:o,missingWarn:s,fallbackWarn:r,fallbackRoot:i,fallbackFormat:a,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:f,escapeParameter:h,messageResolver:e.messageResolver,inheritLocale:_,translateExistCompatible:A,__i18n:k,__root:F,__injectWithOption:C}}function gs(e={},t){{const n=hs(tg(e)),{__extender:o}=e,s={id:n.id,get locale(){return n.locale.value},set locale(r){n.locale.value=r},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(r){n.fallbackLocale.value=r},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(r){},get missing(){return n.getMissingHandler()},set missing(r){n.setMissingHandler(r)},get silentTranslationWarn(){return ue(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(r){n.missingWarn=ue(r)?!r:r},get silentFallbackWarn(){return ue(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(r){n.fallbackWarn=ue(r)?!r:r},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(r){n.fallbackFormat=r},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(r){n.setPostTranslationHandler(r)},get sync(){return n.inheritLocale},set sync(r){n.inheritLocale=r},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(r){n.warnHtmlMessage=r!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(r){n.escapeParameter=r},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(r){},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...r){const[i,a,l]=r,c={};let u=null,f=null;if(!z(i))throw Pe(Fe.INVALID_ARGUMENT);const h=i;return z(a)?c.locale=a:Oe(a)?u=a:se(a)&&(f=a),Oe(l)?u=l:se(l)&&(f=l),Reflect.apply(n.t,n,[h,u||f||{},c])},rt(...r){return Reflect.apply(n.rt,n,[...r])},tc(...r){const[i,a,l]=r,c={plural:1};let u=null,f=null;if(!z(i))throw Pe(Fe.INVALID_ARGUMENT);const h=i;return z(a)?c.locale=a:Te(a)?c.plural=a:Oe(a)?u=a:se(a)&&(f=a),z(l)?c.locale=l:Oe(l)?u=l:se(l)&&(f=l),Reflect.apply(n.t,n,[h,u||f||{},c])},te(r,i){return n.te(r,i)},tm(r){return n.tm(r)},getLocaleMessage(r){return n.getLocaleMessage(r)},setLocaleMessage(r,i){n.setLocaleMessage(r,i)},mergeLocaleMessage(r,i){n.mergeLocaleMessage(r,i)},d(...r){return Reflect.apply(n.d,n,[...r])},getDateTimeFormat(r){return n.getDateTimeFormat(r)},setDateTimeFormat(r,i){n.setDateTimeFormat(r,i)},mergeDateTimeFormat(r,i){n.mergeDateTimeFormat(r,i)},n(...r){return Reflect.apply(n.n,n,[...r])},getNumberFormat(r){return n.getNumberFormat(r)},setNumberFormat(r,i){n.setNumberFormat(r,i)},mergeNumberFormat(r,i){n.mergeNumberFormat(r,i)},getChoiceIndex(r,i){return-1}};return s.__extender=o,s}}const ms={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function ng({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((o,s)=>[...o,...s.type===de?s.children:[s]],[]):t.reduce((n,o)=>{const s=e[o];return s&&(n[o]=s()),n},me())}function Cl(e){return de}const Al=Hn({name:"i18n-t",props:Re({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Te(e)||!isNaN(e)}},ms),setup(e,t){const{slots:n,attrs:o}=t,s=e.i18n||Zt({useScope:e.scope,__useComponent:!0});return()=>{const r=Object.keys(n).filter(f=>f!=="_"),i=me();e.locale&&(i.locale=e.locale),e.plural!==void 0&&(i.plural=z(e.plural)?+e.plural:e.plural);const a=ng(t,r),l=s[us](e.keypath,a,i),c=Re(me(),o),u=z(e.tag)||fe(e.tag)?e.tag:Cl();return Qi(u,c,l)}}});function og(e){return Oe(e)&&!z(e[0])}function El(e,t,n,o){const{slots:s,attrs:r}=t;return()=>{const i={part:!0};let a=me();e.locale&&(i.locale=e.locale),z(e.format)?i.key=e.format:fe(e.format)&&(z(e.format.key)&&(i.key=e.format.key),a=Object.keys(e.format).reduce((h,_)=>n.includes(_)?Re(me(),h,{[_]:e.format[_]}):h,me()));const l=o(e.value,i,a);let c=[i.key];Oe(l)?c=l.map((h,_)=>{const v=s[h.type],k=v?v({[h.type]:h.value,index:_,parts:l}):[h.value];return og(k)&&(k[0].key=`${h.type}-${_}`),k}):z(l)&&(c=[l]);const u=Re(me(),r),f=z(e.tag)||fe(e.tag)?e.tag:Cl();return Qi(f,u,c)}}const Tl=Hn({name:"i18n-n",props:Re({value:{type:Number,required:!0},format:{type:[String,Object]}},ms),setup(e,t){const n=e.i18n||Zt({useScope:e.scope,__useComponent:!0});return El(e,t,hl,(...o)=>n[ds](...o))}}),Ll=Hn({name:"i18n-d",props:Re({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},ms),setup(e,t){const n=e.i18n||Zt({useScope:e.scope,__useComponent:!0});return El(e,t,pl,(...o)=>n[ps](...o))}});function rg(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const o=n.__getInstance(t);return o!=null?o.__composer:e.global.__composer}}function sg(e){const t=i=>{const{instance:a,modifiers:l,value:c}=i;if(!a||!a.$)throw Pe(Fe.UNEXPECTED_ERROR);const u=rg(e,a.$),f=Sl(c);return[Reflect.apply(u.t,u,[...Il(f)]),u]};return{created:(i,a)=>{const[l,c]=t(a);Jo&&e.global===c&&(i.__i18nWatcher=vt(c.locale,()=>{a.instance&&a.instance.$forceUpdate()})),i.__composer=c,i.textContent=l},unmounted:i=>{Jo&&i.__i18nWatcher&&(i.__i18nWatcher(),i.__i18nWatcher=void 0,delete i.__i18nWatcher),i.__composer&&(i.__composer=void 0,delete i.__composer)},beforeUpdate:(i,{value:a})=>{if(i.__composer){const l=i.__composer,c=Sl(a);i.textContent=Reflect.apply(l.t,l,[...Il(c)])}},getSSRProps:i=>{const[a]=t(i);return{textContent:a}}}}function Sl(e){if(z(e))return{path:e};if(se(e)){if(!("path"in e))throw Pe(Fe.REQUIRED_VALUE,"path");return e}else throw Pe(Fe.INVALID_VALUE)}function Il(e){const{path:t,locale:n,args:o,choice:s,plural:r}=e,i={},a=o||{};return z(n)&&(i.locale=n),Te(s)&&(i.plural=s),Te(r)&&(i.plural=r),[t,a,i]}function ig(e,t,...n){const o=se(n[0])?n[0]:{},s=!!o.useI18nComponentName;(ue(o.globalInstall)?o.globalInstall:!0)&&([s?"i18n":Al.name,"I18nT"].forEach(i=>e.component(i,Al)),[Tl.name,"I18nN"].forEach(i=>e.component(i,Tl)),[Ll.name,"I18nD"].forEach(i=>e.component(i,Ll))),e.directive("t",sg(t))}function ag(e,t,n){return{beforeCreate(){const o=Pt();if(!o)throw Pe(Fe.UNEXPECTED_ERROR);const s=this.$options;if(s.i18n){const r=s.i18n;if(s.__i18n&&(r.__i18n=s.__i18n),r.__root=t,this===this.$root)this.$i18n=Fl(e,r);else{r.__injectWithOption=!0,r.__extender=n.__vueI18nExtend,this.$i18n=gs(r);const i=this.$i18n;i.__extender&&(i.__disposer=i.__extender(this.$i18n))}}else if(s.__i18n)if(this===this.$root)this.$i18n=Fl(e,s);else{this.$i18n=gs({__i18n:s.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}else this.$i18n=e;s.__i18nGlobal&&vl(t,s,s),this.$t=(...r)=>this.$i18n.t(...r),this.$rt=(...r)=>this.$i18n.rt(...r),this.$tc=(...r)=>this.$i18n.tc(...r),this.$te=(r,i)=>this.$i18n.te(r,i),this.$d=(...r)=>this.$i18n.d(...r),this.$n=(...r)=>this.$i18n.n(...r),this.$tm=r=>this.$i18n.tm(r),n.__setInstance(o,this.$i18n)},mounted(){},unmounted(){const o=Pt();if(!o)throw Pe(Fe.UNEXPECTED_ERROR);const s=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,s.__disposer&&(s.__disposer(),delete s.__disposer,delete s.__extender),n.__deleteInstance(o),delete this.$i18n}}}function Fl(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[_l](t.pluralizationRules||e.pluralizationRules);const n=sr(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(o=>e.mergeLocaleMessage(o,n[o])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(o=>e.mergeDateTimeFormat(o,t.datetimeFormats[o])),t.numberFormats&&Object.keys(t.numberFormats).forEach(o=>e.mergeNumberFormat(o,t.numberFormats[o])),e}const lg=qt("global-vue-i18n");function cg(e={},t){const n=__VUE_I18N_LEGACY_API__&&ue(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,o=ue(e.globalInjection)?e.globalInjection:!0,s=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,r=new Map,[i,a]=ug(e,n),l=qt("");function c(h){return r.get(h)||null}function u(h,_){r.set(h,_)}function f(h){r.delete(h)}{const h={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return s},async install(_,...v){if(_.__VUE_I18N_SYMBOL__=l,_.provide(_.__VUE_I18N_SYMBOL__,h),se(v[0])){const C=v[0];h.__composerExtend=C.__composerExtend,h.__vueI18nExtend=C.__vueI18nExtend}let k=null;!n&&o&&(k=yg(_,h.global)),__VUE_I18N_FULL_INSTALL__&&ig(_,h,...v),__VUE_I18N_LEGACY_API__&&n&&_.mixin(ag(a,a.__composer,h));const F=_.unmount;_.unmount=()=>{k&&k(),h.dispose(),F()}},get global(){return a},dispose(){i.stop()},__instances:r,__getInstance:c,__setInstance:u,__deleteInstance:f};return h}}function Zt(e={}){const t=Pt();if(t==null)throw Pe(Fe.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Pe(Fe.NOT_INSTALLED);const n=pg(t),o=fg(n),s=yl(t),r=dg(e,s);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Pe(Fe.NOT_AVAILABLE_IN_LEGACY_MODE);return _g(t,r,o,e)}if(r==="global")return vl(o,e,s),o;if(r==="parent"){let l=hg(n,t,e.__useComponent);return l==null&&(l=o),l}const i=n;let a=i.__getInstance(t);if(a==null){const l=Re({},e);"__i18n"in s&&(l.__i18n=s.__i18n),o&&(l.__root=o),a=hs(l),i.__composerExtend&&(a[fs]=i.__composerExtend(a)),mg(i,t,a),i.__setInstance(t,a)}return a}function ug(e,t,n){const o=fr();{const s=__VUE_I18N_LEGACY_API__&&t?o.run(()=>gs(e)):o.run(()=>hs(e));if(s==null)throw Pe(Fe.UNEXPECTED_ERROR);return[o,s]}}function pg(e){{const t=qe(e.isCE?lg:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Pe(e.isCE?Fe.NOT_INSTALLED_WITH_PROVIDE:Fe.UNEXPECTED_ERROR);return t}}function dg(e,t){return Zo(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function fg(e){return e.mode==="composition"?e.global:e.global.__composer}function hg(e,t,n=!1){let o=null;const s=t.root;let r=gg(t,n);for(;r!=null;){const i=e;if(e.mode==="composition")o=i.__getInstance(r);else if(__VUE_I18N_LEGACY_API__){const a=i.__getInstance(r);a!=null&&(o=a.__composer,n&&o&&!o[bl]&&(o=null))}if(o!=null||s===r)break;r=r.parent}return o}function gg(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function mg(e,t,n){Vt(()=>{},t),Wo(()=>{const o=n;e.__deleteInstance(t);const s=o[fs];s&&(s(),delete o[fs])},t)}function _g(e,t,n,o={}){const s=t==="local",r=To(null);if(s&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Pe(Fe.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const i=ue(o.inheritLocale)?o.inheritLocale:!z(o.locale),a=ce(!s||i?n.locale.value:z(o.locale)?o.locale:Ln),l=ce(!s||i?n.fallbackLocale.value:z(o.fallbackLocale)||Oe(o.fallbackLocale)||se(o.fallbackLocale)||o.fallbackLocale===!1?o.fallbackLocale:a.value),c=ce(sr(a.value,o)),u=ce(se(o.datetimeFormats)?o.datetimeFormats:{[a.value]:{}}),f=ce(se(o.numberFormats)?o.numberFormats:{[a.value]:{}}),h=s?n.missingWarn:ue(o.missingWarn)||zt(o.missingWarn)?o.missingWarn:!0,_=s?n.fallbackWarn:ue(o.fallbackWarn)||zt(o.fallbackWarn)?o.fallbackWarn:!0,v=s?n.fallbackRoot:ue(o.fallbackRoot)?o.fallbackRoot:!0,k=!!o.fallbackFormat,F=ve(o.missing)?o.missing:null,C=ve(o.postTranslation)?o.postTranslation:null,L=s?n.warnHtmlMessage:ue(o.warnHtmlMessage)?o.warnHtmlMessage:!0,y=!!o.escapeParameter,m=s?n.modifiers:se(o.modifiers)?o.modifiers:{},A=o.pluralRules||s&&n.pluralRules;function S(){return[a.value,l.value,c.value,u.value,f.value]}const $=ie({get:()=>r.value?r.value.locale.value:a.value,set:b=>{r.value&&(r.value.locale.value=b),a.value=b}}),O=ie({get:()=>r.value?r.value.fallbackLocale.value:l.value,set:b=>{r.value&&(r.value.fallbackLocale.value=b),l.value=b}}),T=ie(()=>r.value?r.value.messages.value:c.value),J=ie(()=>u.value),ee=ie(()=>f.value);function U(){return r.value?r.value.getPostTranslationHandler():C}function Y(b){r.value&&r.value.setPostTranslationHandler(b)}function re(){return r.value?r.value.getMissingHandler():F}function V(b){r.value&&r.value.setMissingHandler(b)}function R(b){return S(),b()}function K(...b){return r.value?R(()=>Reflect.apply(r.value.t,null,[...b])):R(()=>"")}function ae(...b){return r.value?Reflect.apply(r.value.rt,null,[...b]):""}function Ce(...b){return r.value?R(()=>Reflect.apply(r.value.d,null,[...b])):R(()=>"")}function Qe(...b){return r.value?R(()=>Reflect.apply(r.value.n,null,[...b])):R(()=>"")}function Ae(b){return r.value?r.value.tm(b):{}}function Me(b,I){return r.value?r.value.te(b,I):!1}function en(b){return r.value?r.value.getLocaleMessage(b):{}}function tn(b,I){r.value&&(r.value.setLocaleMessage(b,I),c.value[b]=I)}function fn(b,I){r.value&&r.value.mergeLocaleMessage(b,I)}function dt(b){return r.value?r.value.getDateTimeFormat(b):{}}function Wt(b,I){r.value&&(r.value.setDateTimeFormat(b,I),u.value[b]=I)}function Ut(b,I){r.value&&r.value.mergeDateTimeFormat(b,I)}function nn(b){return r.value?r.value.getNumberFormat(b):{}}function rt(b,I){r.value&&(r.value.setNumberFormat(b,I),f.value[b]=I)}function In(b,I){r.value&&r.value.mergeNumberFormat(b,I)}const g={get id(){return r.value?r.value.id:-1},locale:$,fallbackLocale:O,messages:T,datetimeFormats:J,numberFormats:ee,get inheritLocale(){return r.value?r.value.inheritLocale:i},set inheritLocale(b){r.value&&(r.value.inheritLocale=b)},get availableLocales(){return r.value?r.value.availableLocales:Object.keys(c.value)},get modifiers(){return r.value?r.value.modifiers:m},get pluralRules(){return r.value?r.value.pluralRules:A},get isGlobal(){return r.value?r.value.isGlobal:!1},get missingWarn(){return r.value?r.value.missingWarn:h},set missingWarn(b){r.value&&(r.value.missingWarn=b)},get fallbackWarn(){return r.value?r.value.fallbackWarn:_},set fallbackWarn(b){r.value&&(r.value.missingWarn=b)},get fallbackRoot(){return r.value?r.value.fallbackRoot:v},set fallbackRoot(b){r.value&&(r.value.fallbackRoot=b)},get fallbackFormat(){return r.value?r.value.fallbackFormat:k},set fallbackFormat(b){r.value&&(r.value.fallbackFormat=b)},get warnHtmlMessage(){return r.value?r.value.warnHtmlMessage:L},set warnHtmlMessage(b){r.value&&(r.value.warnHtmlMessage=b)},get escapeParameter(){return r.value?r.value.escapeParameter:y},set escapeParameter(b){r.value&&(r.value.escapeParameter=b)},t:K,getPostTranslationHandler:U,setPostTranslationHandler:Y,getMissingHandler:re,setMissingHandler:V,rt:ae,d:Ce,n:Qe,tm:Ae,te:Me,getLocaleMessage:en,setLocaleMessage:tn,mergeLocaleMessage:fn,getDateTimeFormat:dt,setDateTimeFormat:Wt,mergeDateTimeFormat:Ut,getNumberFormat:nn,setNumberFormat:rt,mergeNumberFormat:In};function w(b){b.locale.value=a.value,b.fallbackLocale.value=l.value,Object.keys(c.value).forEach(I=>{b.mergeLocaleMessage(I,c.value[I])}),Object.keys(u.value).forEach(I=>{b.mergeDateTimeFormat(I,u.value[I])}),Object.keys(f.value).forEach(I=>{b.mergeNumberFormat(I,f.value[I])}),b.escapeParameter=y,b.fallbackFormat=k,b.fallbackRoot=v,b.fallbackWarn=_,b.missingWarn=h,b.warnHtmlMessage=L}return gi(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Pe(Fe.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const b=r.value=e.proxy.$i18n.__composer;t==="global"?(a.value=b.locale.value,l.value=b.fallbackLocale.value,c.value=b.messages.value,u.value=b.datetimeFormats.value,f.value=b.numberFormats.value):s&&w(b)}),g}const bg=["locale","fallbackLocale","availableLocales"],xl=["t","rt","d","n","tm","te"];function yg(e,t){const n=Object.create(null);return bg.forEach(s=>{const r=Object.getOwnPropertyDescriptor(t,s);if(!r)throw Pe(Fe.UNEXPECTED_ERROR);const i=Ne(r.value)?{get(){return r.value.value},set(a){r.value.value=a}}:{get(){return r.get&&r.get()}};Object.defineProperty(n,s,i)}),e.config.globalProperties.$i18n=n,xl.forEach(s=>{const r=Object.getOwnPropertyDescriptor(t,s);if(!r||!r.value)throw Pe(Fe.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${s}`,r)}),()=>{delete e.config.globalProperties.$i18n,xl.forEach(s=>{delete e.config.globalProperties[`$${s}`]})}}if(Jh(),__INTLIFY_JIT_COMPILATION__?Xa(Vh):Xa(Yh),Ph(gh),Mh(Va),__INTLIFY_PROD_DEVTOOLS__){const e=Dt();e.__INTLIFY__=!0,Oh(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const vg=Object.assign({"./locales/ar/aria.json":Np,"./locales/ar/buttons.json":Cp,"./locales/ar/detail.json":Ap,"./locales/ar/legend.json":Ep,"./locales/ar/messages.json":Tp,"./locales/ar/options.json":Lp,"./locales/ar/prayerLaps.json":Sp,"./locales/ar/search.json":Ip,"./locales/ar/tabs.json":Fp,"./locales/de/aria.json":xp,"./locales/de/buttons.json":Pp,"./locales/de/detail.json":Mp,"./locales/de/legend.json":Dp,"./locales/de/messages.json":Bp,"./locales/de/options.json":Rp,"./locales/de/prayerLaps.json":Wp,"./locales/de/search.json":Up,"./locales/de/tabs.json":jp,"./locales/en/aria.json":Gp,"./locales/en/buttons.json":Yp,"./locales/en/detail.json":Vp,"./locales/en/legend.json":Hp,"./locales/en/messages.json":qp,"./locales/en/options.json":zp,"./locales/en/popup.json":Kp,"./locales/en/prayerLaps.json":Xp,"./locales/en/search.json":Jp,"./locales/en/tabs.json":Zp,"./locales/es/aria.json":Qp,"./locales/es/buttons.json":ed,"./locales/es/detail.json":td,"./locales/es/legend.json":nd,"./locales/es/messages.json":od,"./locales/es/options.json":rd,"./locales/es/prayerLaps.json":sd,"./locales/es/search.json":id,"./locales/es/tabs.json":ad,"./locales/fr/aria.json":ld,"./locales/fr/buttons.json":cd,"./locales/fr/detail.json":ud,"./locales/fr/legend.json":pd,"./locales/fr/messages.json":dd,"./locales/fr/options.json":fd,"./locales/fr/popup.json":hd,"./locales/fr/prayerLaps.json":gd,"./locales/fr/search.json":md,"./locales/fr/tabs.json":_d,"./locales/hi/aria.json":bd,"./locales/hi/buttons.json":yd,"./locales/hi/detail.json":vd,"./locales/hi/legend.json":wd,"./locales/hi/messages.json":kd,"./locales/hi/options.json":$d,"./locales/hi/prayerLaps.json":Od,"./locales/hi/search.json":Nd,"./locales/it/aria.json":Cd,"./locales/it/buttons.json":Ad,"./locales/it/detail.json":Ed,"./locales/it/legend.json":Td,"./locales/it/messages.json":Ld,"./locales/it/options.json":Sd,"./locales/it/prayerLaps.json":Id,"./locales/it/search.json":Fd,"./locales/pt/aria.json":xd,"./locales/pt/buttons.json":Pd,"./locales/pt/detail.json":Md,"./locales/pt/legend.json":Dd,"./locales/pt/messages.json":Bd,"./locales/pt/options.json":Rd,"./locales/pt/prayerLaps.json":Wd,"./locales/pt/search.json":Ud,"./locales/pt/tabs.json":jd,"./locales/ro/aria.json":Gd,"./locales/ro/buttons.json":Yd,"./locales/ro/detail.json":Vd,"./locales/ro/legend.json":Hd,"./locales/ro/messages.json":qd,"./locales/ro/options.json":zd,"./locales/ro/prayerLaps.json":Kd,"./locales/ro/search.json":Xd,"./locales/ru/aria.json":Jd,"./locales/ru/buttons.json":Zd,"./locales/ru/detail.json":Qd,"./locales/ru/legend.json":ef,"./locales/ru/messages.json":tf,"./locales/ru/options.json":nf,"./locales/ru/prayerLaps.json":of,"./locales/ru/search.json":rf,"./locales/ru/tabs.json":sf,"./locales/zh/aria.json":af,"./locales/zh/buttons.json":lf,"./locales/zh/detail.json":cf,"./locales/zh/legend.json":uf,"./locales/zh/messages.json":pf,"./locales/zh/options.json":df,"./locales/zh/prayerLaps.json":ff,"./locales/zh/search.json":hf}),co={};for(const[e,t]of Object.entries(vg)){const n=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!n)continue;const[,o,s]=n;co[o]??(co[o]={}),co[o][s]=t}const Pl=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function wg(){var n;const t=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return Pl.includes(t)?t:"en"}function kg(){return cg({legacy:!1,globalInjection:!0,locale:wg(),fallbackLocale:"en",messages:co,missingWarn:!1,fallbackWarn:!1})}function Qt(e,t){const n=t||$g(e);Vt(()=>{var a;const o=Pt();if(!o)return;const s=(a=o.proxy)==null?void 0:a.$el;if(!s)return;const r=s.getRootNode();if(!(r instanceof ShadowRoot)||r.querySelector(`style[data-shadow-styles="${n}"]`))return;const i=document.createElement("style");i.setAttribute("data-shadow-styles",n),i.textContent=e,r.appendChild(i)})}function $g(e){let t=0;for(let n=0;n(t==null?void 0:t.theme)==="dark"),s=ie(()=>{var v;return((v=n==null?void 0:n.value)==null?void 0:v.pinHintLabel)||"Tap a red dot — someone still needs prayer"}),r=ce(!1);let i=null,a=null,l=null;function c(){return"doxa-pin-hint-seen"}function u(){try{return sessionStorage.getItem(c())==="1"}catch{return!1}}function f(){try{sessionStorage.setItem(c(),"1")}catch{}}function h(){r.value&&(r.value=!1,f(),l&&(l.removeEventListener("pointerdown",_,!0),l=null),i&&(clearTimeout(i),i=null))}function _(){h()}return Vt(()=>{var C,L,y;if(u())return;const v=Pt(),k=(y=(L=(C=v==null?void 0:v.proxy)==null?void 0:C.$el)==null?void 0:L.getRootNode)==null?void 0:y.call(L);if(!k||typeof k.querySelector!="function")return;let F=0;a=setInterval(()=>{F++,k.querySelector("canvas")?(clearInterval(a),a=null,r.value=!0,l=k,k.addEventListener("pointerdown",_,!0),i=setTimeout(h,14e3)):F>40&&(clearInterval(a),a=null)},300)}),$n(()=>{a&&clearInterval(a),i&&clearTimeout(i),l&&l.removeEventListener("pointerdown",_,!0)}),Qt(` + */const Jh="9.14.5";function Zh(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Dt().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Dt().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Dt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Dt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Dt().__INTLIFY_PROD_DEVTOOLS__=!1)}const Qh=Lh.__EXTEND_POINT__,Rt=Qo(Qh);Rt(),Rt(),Rt(),Rt(),Rt(),Rt(),Rt(),Rt(),Rt();const _l=pt.__EXTEND_POINT__,ze=Qo(_l),Ie={UNEXPECTED_RETURN_TYPE:_l,INVALID_ARGUMENT:ze(),MUST_BE_CALL_SETUP_TOP:ze(),NOT_INSTALLED:ze(),NOT_AVAILABLE_IN_LEGACY_MODE:ze(),REQUIRED_VALUE:ze(),INVALID_VALUE:ze(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:ze(),NOT_INSTALLED_WITH_PROVIDE:ze(),UNEXPECTED_ERROR:ze(),NOT_COMPATIBLE_LEGACY_VUE_I18N:ze(),BRIDGE_SUPPORT_VUE_2_ONLY:ze(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:ze(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:ze(),__EXTEND_POINT__:ze()};function Pe(e,...t){return An(e,null,void 0)}const ps=Kt("__translateVNode"),ds=Kt("__datetimeParts"),fs=Kt("__numberParts"),bl=Kt("__setPluralRules"),yl=Kt("__injectWithOption"),hs=Kt("__dispose");function ao(e){if(!de(e)||$t(e))return e;for(const t in e)if(ct(e,t))if(!t.includes("."))de(e[t])&&ao(e[t]);else{const n=t.split("."),o=n.length-1;let s=e,r=!1;for(let i=0;i{if("locale"in a&&"resource"in a){const{locale:l,resource:c}=a;l?(i[l]=i[l]||me(),tr(c,i[l])):tr(c,i)}else V(a)&&tr(JSON.parse(a),i)}),s==null&&r)for(const a in i)ct(i,a)&&ao(i[a]);return i}function vl(e){return e.type}function wl(e,t,n){let o=de(t.messages)?t.messages:me();"__i18nGlobal"in n&&(o=sr(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const s=Object.keys(o);s.length&&s.forEach(r=>{e.mergeLocaleMessage(r,o[r])});{if(de(t.datetimeFormats)){const r=Object.keys(t.datetimeFormats);r.length&&r.forEach(i=>{e.mergeDateTimeFormat(i,t.datetimeFormats[i])})}if(de(t.numberFormats)){const r=Object.keys(t.numberFormats);r.length&&r.forEach(i=>{e.mergeNumberFormat(i,t.numberFormats[i])})}}}function kl(e){return ve(Kn,null,e,0)}const $l="__INTLIFY_META__",Ol=()=>[],eg=()=>!1;let Nl=0;function Cl(e){return(t,n,o,s)=>e(n,o,Pt()||void 0,s)}const tg=()=>{const e=Pt();let t=null;return e&&(t=vl(e)[$l])?{[$l]:t}:null};function gs(e={},t){const{__root:n,__injectWithOption:o}=e,s=n===void 0,r=e.flatJson,i=Jo?ie:Eo,a=!!e.translateExistCompatible;let l=ce(e.inheritLocale)?e.inheritLocale:!0;const c=i(n&&l?n.locale.value:V(e.locale)?e.locale:Ln),u=i(n&&l?n.fallbackLocale.value:V(e.fallbackLocale)||Oe(e.fallbackLocale)||oe(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:c.value),f=i(sr(c.value,e)),h=i(oe(e.datetimeFormats)?e.datetimeFormats:{[c.value]:{}}),_=i(oe(e.numberFormats)?e.numberFormats:{[c.value]:{}});let v=n?n.missingWarn:ce(e.missingWarn)||Xt(e.missingWarn)?e.missingWarn:!0,k=n?n.fallbackWarn:ce(e.fallbackWarn)||Xt(e.fallbackWarn)?e.fallbackWarn:!0,I=n?n.fallbackRoot:ce(e.fallbackRoot)?e.fallbackRoot:!0,N=!!e.fallbackFormat,A=we(e.missing)?e.missing:null,b=we(e.missing)?Cl(e.missing):null,m=we(e.postTranslation)?e.postTranslation:null,C=n?n.warnHtmlMessage:ce(e.warnHtmlMessage)?e.warnHtmlMessage:!0,S=!!e.escapeParameter;const w=n?n.modifiers:oe(e.modifiers)?e.modifiers:{};let O=e.pluralRules||n&&n.pluralRules,T;T=(()=>{s&&nl(null);const E={version:Jh,locale:c.value,fallbackLocale:u.value,messages:f.value,modifiers:w,pluralRules:O,missing:b===null?void 0:b,missingWarn:v,fallbackWarn:k,fallbackFormat:N,unresolving:!0,postTranslation:m===null?void 0:m,warnHtmlMessage:C,escapeParameter:S,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};E.datetimeFormats=h.value,E.numberFormats=_.value,E.__datetimeFormatters=oe(T)?T.__datetimeFormatters:void 0,E.__numberFormatters=oe(T)?T.__numberFormatters:void 0;const M=Uh(E);return s&&nl(M),M})(),io(T,c.value,u.value);function te(){return[c.value,u.value,f.value,h.value,_.value]}const H=re({get:()=>c.value,set:E=>{c.value=E,T.locale=c.value}}),se=re({get:()=>u.value,set:E=>{u.value=E,T.fallbackLocale=u.value,io(T,c.value,E)}}),he=re(()=>f.value),K=re(()=>h.value),W=re(()=>_.value);function q(){return we(m)?m:null}function le(E){m=E,T.postTranslation=E}function Ee(){return A}function Nt(E){E!==null&&(b=Cl(E)),A=E,T.missing=b}const Fe=(E,M,J,ae,ke,qe)=>{te();let We;try{__INTLIFY_PROD_DEVTOOLS__,s||(T.fallbackContext=n?Wh():void 0),We=E(T)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(T.fallbackContext=void 0)}if(J!=="translate exists"&&Ae(We)&&We===rr||J==="translate exists"&&!We){const[hn,ws]=M();return n&&I?ae(n):ke(hn)}else{if(qe(We))return We;throw Pe(Ie.UNEXPECTED_RETURN_TYPE)}};function Me(...E){return Fe(M=>Reflect.apply(ll,null,[M,...E]),()=>ls(...E),"translate",M=>Reflect.apply(M.t,M,[...E]),M=>M,M=>V(M))}function tn(...E){const[M,J,ae]=E;if(ae&&!de(ae))throw Pe(Ie.INVALID_ARGUMENT);return Me(M,J,Re({resolvedMessage:!0},ae||{}))}function nn(...E){return Fe(M=>Reflect.apply(pl,null,[M,...E]),()=>cs(...E),"datetime format",M=>Reflect.apply(M.d,M,[...E]),()=>za,M=>V(M))}function fn(...E){return Fe(M=>Reflect.apply(hl,null,[M,...E]),()=>us(...E),"number format",M=>Reflect.apply(M.n,M,[...E]),()=>za,M=>V(M))}function dt(E){return E.map(M=>V(M)||Ae(M)||ce(M)?kl(String(M)):M)}const jt={normalize:dt,interpolate:E=>E,type:"vnode"};function on(...E){return Fe(M=>{let J;const ae=M;try{ae.processor=jt,J=Reflect.apply(ll,null,[ae,...E])}finally{ae.processor=null}return J},()=>ls(...E),"translate",M=>M[ps](...E),M=>[kl(M)],M=>Oe(M))}function ot(...E){return Fe(M=>Reflect.apply(hl,null,[M,...E]),()=>us(...E),"number format",M=>M[fs](...E),Ol,M=>V(M)||Oe(M))}function In(...E){return Fe(M=>Reflect.apply(pl,null,[M,...E]),()=>cs(...E),"datetime format",M=>M[ds](...E),Ol,M=>V(M)||Oe(M))}function g(E){O=E,T.pluralRules=O}function $(E,M){return Fe(()=>{if(!E)return!1;const J=V(M)?M:c.value,ae=B(J),ke=T.messageResolver(ae,E);return a?ke!=null:$t(ke)||nt(ke)||V(ke)},()=>[E],"translate exists",J=>Reflect.apply(J.te,J,[E,M]),eg,J=>ce(J))}function y(E){let M=null;const J=Ha(T,u.value,c.value);for(let ae=0;ae{l&&(c.value=E,T.locale=E,io(T,c.value,u.value))}),yt(n.fallbackLocale,E=>{l&&(u.value=E,T.fallbackLocale=E,io(T,c.value,u.value))}));const R={id:Nl,locale:H,fallbackLocale:se,get inheritLocale(){return l},set inheritLocale(E){l=E,E&&n&&(c.value=n.locale.value,u.value=n.fallbackLocale.value,io(T,c.value,u.value))},get availableLocales(){return Object.keys(f.value).sort()},messages:he,get modifiers(){return w},get pluralRules(){return O||{}},get isGlobal(){return s},get missingWarn(){return v},set missingWarn(E){v=E,T.missingWarn=v},get fallbackWarn(){return k},set fallbackWarn(E){k=E,T.fallbackWarn=k},get fallbackRoot(){return I},set fallbackRoot(E){I=E},get fallbackFormat(){return N},set fallbackFormat(E){N=E,T.fallbackFormat=N},get warnHtmlMessage(){return C},set warnHtmlMessage(E){C=E,T.warnHtmlMessage=E},get escapeParameter(){return S},set escapeParameter(E){S=E,T.escapeParameter=E},t:Me,getLocaleMessage:B,setLocaleMessage:D,mergeLocaleMessage:j,getPostTranslationHandler:q,setPostTranslationHandler:le,getMissingHandler:Ee,setMissingHandler:Nt,[bl]:g};return R.datetimeFormats=K,R.numberFormats=W,R.rt=tn,R.te=$,R.tm=F,R.d=nn,R.n=fn,R.getDateTimeFormat=U,R.setDateTimeFormat=p,R.mergeDateTimeFormat=d,R.getNumberFormat=L,R.setNumberFormat=x,R.mergeNumberFormat=G,R[yl]=o,R[ps]=on,R[ds]=In,R[fs]=ot,R}function ng(e){const t=V(e.locale)?e.locale:Ln,n=V(e.fallbackLocale)||Oe(e.fallbackLocale)||oe(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,o=we(e.missing)?e.missing:void 0,s=ce(e.silentTranslationWarn)||Xt(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,r=ce(e.silentFallbackWarn)||Xt(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,i=ce(e.fallbackRoot)?e.fallbackRoot:!0,a=!!e.formatFallbackMessages,l=oe(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=we(e.postTranslation)?e.postTranslation:void 0,f=V(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,h=!!e.escapeParameterHtml,_=ce(e.sync)?e.sync:!0;let v=e.messages;if(oe(e.sharedMessages)){const S=e.sharedMessages;v=Object.keys(S).reduce((O,T)=>{const X=O[T]||(O[T]={});return Re(X,S[T]),O},v||{})}const{__i18n:k,__root:I,__injectWithOption:N}=e,A=e.datetimeFormats,b=e.numberFormats,m=e.flatJson,C=e.translateExistCompatible;return{locale:t,fallbackLocale:n,messages:v,flatJson:m,datetimeFormats:A,numberFormats:b,missing:o,missingWarn:s,fallbackWarn:r,fallbackRoot:i,fallbackFormat:a,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:f,escapeParameter:h,messageResolver:e.messageResolver,inheritLocale:_,translateExistCompatible:C,__i18n:k,__root:I,__injectWithOption:N}}function ms(e={},t){{const n=gs(ng(e)),{__extender:o}=e,s={id:n.id,get locale(){return n.locale.value},set locale(r){n.locale.value=r},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(r){n.fallbackLocale.value=r},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(r){},get missing(){return n.getMissingHandler()},set missing(r){n.setMissingHandler(r)},get silentTranslationWarn(){return ce(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(r){n.missingWarn=ce(r)?!r:r},get silentFallbackWarn(){return ce(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(r){n.fallbackWarn=ce(r)?!r:r},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(r){n.fallbackFormat=r},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(r){n.setPostTranslationHandler(r)},get sync(){return n.inheritLocale},set sync(r){n.inheritLocale=r},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(r){n.warnHtmlMessage=r!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(r){n.escapeParameter=r},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(r){},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...r){const[i,a,l]=r,c={};let u=null,f=null;if(!V(i))throw Pe(Ie.INVALID_ARGUMENT);const h=i;return V(a)?c.locale=a:Oe(a)?u=a:oe(a)&&(f=a),Oe(l)?u=l:oe(l)&&(f=l),Reflect.apply(n.t,n,[h,u||f||{},c])},rt(...r){return Reflect.apply(n.rt,n,[...r])},tc(...r){const[i,a,l]=r,c={plural:1};let u=null,f=null;if(!V(i))throw Pe(Ie.INVALID_ARGUMENT);const h=i;return V(a)?c.locale=a:Ae(a)?c.plural=a:Oe(a)?u=a:oe(a)&&(f=a),V(l)?c.locale=l:Oe(l)?u=l:oe(l)&&(f=l),Reflect.apply(n.t,n,[h,u||f||{},c])},te(r,i){return n.te(r,i)},tm(r){return n.tm(r)},getLocaleMessage(r){return n.getLocaleMessage(r)},setLocaleMessage(r,i){n.setLocaleMessage(r,i)},mergeLocaleMessage(r,i){n.mergeLocaleMessage(r,i)},d(...r){return Reflect.apply(n.d,n,[...r])},getDateTimeFormat(r){return n.getDateTimeFormat(r)},setDateTimeFormat(r,i){n.setDateTimeFormat(r,i)},mergeDateTimeFormat(r,i){n.mergeDateTimeFormat(r,i)},n(...r){return Reflect.apply(n.n,n,[...r])},getNumberFormat(r){return n.getNumberFormat(r)},setNumberFormat(r,i){n.setNumberFormat(r,i)},mergeNumberFormat(r,i){n.mergeNumberFormat(r,i)},getChoiceIndex(r,i){return-1}};return s.__extender=o,s}}const _s={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function og({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((o,s)=>[...o,...s.type===pe?s.children:[s]],[]):t.reduce((n,o)=>{const s=e[o];return s&&(n[o]=s()),n},me())}function Al(e){return pe}const El=Vn({name:"i18n-t",props:Re({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Ae(e)||!isNaN(e)}},_s),setup(e,t){const{slots:n,attrs:o}=t,s=e.i18n||en({useScope:e.scope,__useComponent:!0});return()=>{const r=Object.keys(n).filter(f=>f!=="_"),i=me();e.locale&&(i.locale=e.locale),e.plural!==void 0&&(i.plural=V(e.plural)?+e.plural:e.plural);const a=og(t,r),l=s[ps](e.keypath,a,i),c=Re(me(),o),u=V(e.tag)||de(e.tag)?e.tag:Al();return ea(u,c,l)}}});function rg(e){return Oe(e)&&!V(e[0])}function Tl(e,t,n,o){const{slots:s,attrs:r}=t;return()=>{const i={part:!0};let a=me();e.locale&&(i.locale=e.locale),V(e.format)?i.key=e.format:de(e.format)&&(V(e.format.key)&&(i.key=e.format.key),a=Object.keys(e.format).reduce((h,_)=>n.includes(_)?Re(me(),h,{[_]:e.format[_]}):h,me()));const l=o(e.value,i,a);let c=[i.key];Oe(l)?c=l.map((h,_)=>{const v=s[h.type],k=v?v({[h.type]:h.value,index:_,parts:l}):[h.value];return rg(k)&&(k[0].key=`${h.type}-${_}`),k}):V(l)&&(c=[l]);const u=Re(me(),r),f=V(e.tag)||de(e.tag)?e.tag:Al();return ea(f,u,c)}}const Ll=Vn({name:"i18n-n",props:Re({value:{type:Number,required:!0},format:{type:[String,Object]}},_s),setup(e,t){const n=e.i18n||en({useScope:e.scope,__useComponent:!0});return Tl(e,t,gl,(...o)=>n[fs](...o))}}),Sl=Vn({name:"i18n-d",props:Re({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},_s),setup(e,t){const n=e.i18n||en({useScope:e.scope,__useComponent:!0});return Tl(e,t,dl,(...o)=>n[ds](...o))}});function sg(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const o=n.__getInstance(t);return o!=null?o.__composer:e.global.__composer}}function ig(e){const t=i=>{const{instance:a,modifiers:l,value:c}=i;if(!a||!a.$)throw Pe(Ie.UNEXPECTED_ERROR);const u=sg(e,a.$),f=Il(c);return[Reflect.apply(u.t,u,[...Fl(f)]),u]};return{created:(i,a)=>{const[l,c]=t(a);Jo&&e.global===c&&(i.__i18nWatcher=yt(c.locale,()=>{a.instance&&a.instance.$forceUpdate()})),i.__composer=c,i.textContent=l},unmounted:i=>{Jo&&i.__i18nWatcher&&(i.__i18nWatcher(),i.__i18nWatcher=void 0,delete i.__i18nWatcher),i.__composer&&(i.__composer=void 0,delete i.__composer)},beforeUpdate:(i,{value:a})=>{if(i.__composer){const l=i.__composer,c=Il(a);i.textContent=Reflect.apply(l.t,l,[...Fl(c)])}},getSSRProps:i=>{const[a]=t(i);return{textContent:a}}}}function Il(e){if(V(e))return{path:e};if(oe(e)){if(!("path"in e))throw Pe(Ie.REQUIRED_VALUE,"path");return e}else throw Pe(Ie.INVALID_VALUE)}function Fl(e){const{path:t,locale:n,args:o,choice:s,plural:r}=e,i={},a=o||{};return V(n)&&(i.locale=n),Ae(s)&&(i.plural=s),Ae(r)&&(i.plural=r),[t,a,i]}function ag(e,t,...n){const o=oe(n[0])?n[0]:{},s=!!o.useI18nComponentName;(ce(o.globalInstall)?o.globalInstall:!0)&&([s?"i18n":El.name,"I18nT"].forEach(i=>e.component(i,El)),[Ll.name,"I18nN"].forEach(i=>e.component(i,Ll)),[Sl.name,"I18nD"].forEach(i=>e.component(i,Sl))),e.directive("t",ig(t))}function lg(e,t,n){return{beforeCreate(){const o=Pt();if(!o)throw Pe(Ie.UNEXPECTED_ERROR);const s=this.$options;if(s.i18n){const r=s.i18n;if(s.__i18n&&(r.__i18n=s.__i18n),r.__root=t,this===this.$root)this.$i18n=xl(e,r);else{r.__injectWithOption=!0,r.__extender=n.__vueI18nExtend,this.$i18n=ms(r);const i=this.$i18n;i.__extender&&(i.__disposer=i.__extender(this.$i18n))}}else if(s.__i18n)if(this===this.$root)this.$i18n=xl(e,s);else{this.$i18n=ms({__i18n:s.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}else this.$i18n=e;s.__i18nGlobal&&wl(t,s,s),this.$t=(...r)=>this.$i18n.t(...r),this.$rt=(...r)=>this.$i18n.rt(...r),this.$tc=(...r)=>this.$i18n.tc(...r),this.$te=(r,i)=>this.$i18n.te(r,i),this.$d=(...r)=>this.$i18n.d(...r),this.$n=(...r)=>this.$i18n.n(...r),this.$tm=r=>this.$i18n.tm(r),n.__setInstance(o,this.$i18n)},mounted(){},unmounted(){const o=Pt();if(!o)throw Pe(Ie.UNEXPECTED_ERROR);const s=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,s.__disposer&&(s.__disposer(),delete s.__disposer,delete s.__extender),n.__deleteInstance(o),delete this.$i18n}}}function xl(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[bl](t.pluralizationRules||e.pluralizationRules);const n=sr(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(o=>e.mergeLocaleMessage(o,n[o])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(o=>e.mergeDateTimeFormat(o,t.datetimeFormats[o])),t.numberFormats&&Object.keys(t.numberFormats).forEach(o=>e.mergeNumberFormat(o,t.numberFormats[o])),e}const cg=Kt("global-vue-i18n");function ug(e={},t){const n=__VUE_I18N_LEGACY_API__&&ce(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,o=ce(e.globalInjection)?e.globalInjection:!0,s=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,r=new Map,[i,a]=pg(e,n),l=Kt("");function c(h){return r.get(h)||null}function u(h,_){r.set(h,_)}function f(h){r.delete(h)}{const h={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return s},async install(_,...v){if(_.__VUE_I18N_SYMBOL__=l,_.provide(_.__VUE_I18N_SYMBOL__,h),oe(v[0])){const N=v[0];h.__composerExtend=N.__composerExtend,h.__vueI18nExtend=N.__vueI18nExtend}let k=null;!n&&o&&(k=vg(_,h.global)),__VUE_I18N_FULL_INSTALL__&&ag(_,h,...v),__VUE_I18N_LEGACY_API__&&n&&_.mixin(lg(a,a.__composer,h));const I=_.unmount;_.unmount=()=>{k&&k(),h.dispose(),I()}},get global(){return a},dispose(){i.stop()},__instances:r,__getInstance:c,__setInstance:u,__deleteInstance:f};return h}}function en(e={}){const t=Pt();if(t==null)throw Pe(Ie.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Pe(Ie.NOT_INSTALLED);const n=dg(t),o=hg(n),s=vl(t),r=fg(e,s);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Pe(Ie.NOT_AVAILABLE_IN_LEGACY_MODE);return bg(t,r,o,e)}if(r==="global")return wl(o,e,s),o;if(r==="parent"){let l=gg(n,t,e.__useComponent);return l==null&&(l=o),l}const i=n;let a=i.__getInstance(t);if(a==null){const l=Re({},e);"__i18n"in s&&(l.__i18n=s.__i18n),o&&(l.__root=o),a=gs(l),i.__composerExtend&&(a[hs]=i.__composerExtend(a)),_g(i,t,a),i.__setInstance(t,a)}return a}function pg(e,t,n){const o=fr();{const s=__VUE_I18N_LEGACY_API__&&t?o.run(()=>ms(e)):o.run(()=>gs(e));if(s==null)throw Pe(Ie.UNEXPECTED_ERROR);return[o,s]}}function dg(e){{const t=Ge(e.isCE?cg:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Pe(e.isCE?Ie.NOT_INSTALLED_WITH_PROVIDE:Ie.UNEXPECTED_ERROR);return t}}function fg(e,t){return Zo(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function hg(e){return e.mode==="composition"?e.global:e.global.__composer}function gg(e,t,n=!1){let o=null;const s=t.root;let r=mg(t,n);for(;r!=null;){const i=e;if(e.mode==="composition")o=i.__getInstance(r);else if(__VUE_I18N_LEGACY_API__){const a=i.__getInstance(r);a!=null&&(o=a.__composer,n&&o&&!o[yl]&&(o=null))}if(o!=null||s===r)break;r=r.parent}return o}function mg(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function _g(e,t,n){qt(()=>{},t),Wo(()=>{const o=n;e.__deleteInstance(t);const s=o[hs];s&&(s(),delete o[hs])},t)}function bg(e,t,n,o={}){const s=t==="local",r=Eo(null);if(s&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Pe(Ie.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const i=ce(o.inheritLocale)?o.inheritLocale:!V(o.locale),a=ie(!s||i?n.locale.value:V(o.locale)?o.locale:Ln),l=ie(!s||i?n.fallbackLocale.value:V(o.fallbackLocale)||Oe(o.fallbackLocale)||oe(o.fallbackLocale)||o.fallbackLocale===!1?o.fallbackLocale:a.value),c=ie(sr(a.value,o)),u=ie(oe(o.datetimeFormats)?o.datetimeFormats:{[a.value]:{}}),f=ie(oe(o.numberFormats)?o.numberFormats:{[a.value]:{}}),h=s?n.missingWarn:ce(o.missingWarn)||Xt(o.missingWarn)?o.missingWarn:!0,_=s?n.fallbackWarn:ce(o.fallbackWarn)||Xt(o.fallbackWarn)?o.fallbackWarn:!0,v=s?n.fallbackRoot:ce(o.fallbackRoot)?o.fallbackRoot:!0,k=!!o.fallbackFormat,I=we(o.missing)?o.missing:null,N=we(o.postTranslation)?o.postTranslation:null,A=s?n.warnHtmlMessage:ce(o.warnHtmlMessage)?o.warnHtmlMessage:!0,b=!!o.escapeParameter,m=s?n.modifiers:oe(o.modifiers)?o.modifiers:{},C=o.pluralRules||s&&n.pluralRules;function S(){return[a.value,l.value,c.value,u.value,f.value]}const w=re({get:()=>r.value?r.value.locale.value:a.value,set:y=>{r.value&&(r.value.locale.value=y),a.value=y}}),O=re({get:()=>r.value?r.value.fallbackLocale.value:l.value,set:y=>{r.value&&(r.value.fallbackLocale.value=y),l.value=y}}),T=re(()=>r.value?r.value.messages.value:c.value),X=re(()=>u.value),te=re(()=>f.value);function H(){return r.value?r.value.getPostTranslationHandler():N}function se(y){r.value&&r.value.setPostTranslationHandler(y)}function he(){return r.value?r.value.getMissingHandler():I}function K(y){r.value&&r.value.setMissingHandler(y)}function W(y){return S(),y()}function q(...y){return r.value?W(()=>Reflect.apply(r.value.t,null,[...y])):W(()=>"")}function le(...y){return r.value?Reflect.apply(r.value.rt,null,[...y]):""}function Ee(...y){return r.value?W(()=>Reflect.apply(r.value.d,null,[...y])):W(()=>"")}function Nt(...y){return r.value?W(()=>Reflect.apply(r.value.n,null,[...y])):W(()=>"")}function Fe(y){return r.value?r.value.tm(y):{}}function Me(y,F){return r.value?r.value.te(y,F):!1}function tn(y){return r.value?r.value.getLocaleMessage(y):{}}function nn(y,F){r.value&&(r.value.setLocaleMessage(y,F),c.value[y]=F)}function fn(y,F){r.value&&r.value.mergeLocaleMessage(y,F)}function dt(y){return r.value?r.value.getDateTimeFormat(y):{}}function Ut(y,F){r.value&&(r.value.setDateTimeFormat(y,F),u.value[y]=F)}function jt(y,F){r.value&&r.value.mergeDateTimeFormat(y,F)}function on(y){return r.value?r.value.getNumberFormat(y):{}}function ot(y,F){r.value&&(r.value.setNumberFormat(y,F),f.value[y]=F)}function In(y,F){r.value&&r.value.mergeNumberFormat(y,F)}const g={get id(){return r.value?r.value.id:-1},locale:w,fallbackLocale:O,messages:T,datetimeFormats:X,numberFormats:te,get inheritLocale(){return r.value?r.value.inheritLocale:i},set inheritLocale(y){r.value&&(r.value.inheritLocale=y)},get availableLocales(){return r.value?r.value.availableLocales:Object.keys(c.value)},get modifiers(){return r.value?r.value.modifiers:m},get pluralRules(){return r.value?r.value.pluralRules:C},get isGlobal(){return r.value?r.value.isGlobal:!1},get missingWarn(){return r.value?r.value.missingWarn:h},set missingWarn(y){r.value&&(r.value.missingWarn=y)},get fallbackWarn(){return r.value?r.value.fallbackWarn:_},set fallbackWarn(y){r.value&&(r.value.missingWarn=y)},get fallbackRoot(){return r.value?r.value.fallbackRoot:v},set fallbackRoot(y){r.value&&(r.value.fallbackRoot=y)},get fallbackFormat(){return r.value?r.value.fallbackFormat:k},set fallbackFormat(y){r.value&&(r.value.fallbackFormat=y)},get warnHtmlMessage(){return r.value?r.value.warnHtmlMessage:A},set warnHtmlMessage(y){r.value&&(r.value.warnHtmlMessage=y)},get escapeParameter(){return r.value?r.value.escapeParameter:b},set escapeParameter(y){r.value&&(r.value.escapeParameter=y)},t:q,getPostTranslationHandler:H,setPostTranslationHandler:se,getMissingHandler:he,setMissingHandler:K,rt:le,d:Ee,n:Nt,tm:Fe,te:Me,getLocaleMessage:tn,setLocaleMessage:nn,mergeLocaleMessage:fn,getDateTimeFormat:dt,setDateTimeFormat:Ut,mergeDateTimeFormat:jt,getNumberFormat:on,setNumberFormat:ot,mergeNumberFormat:In};function $(y){y.locale.value=a.value,y.fallbackLocale.value=l.value,Object.keys(c.value).forEach(F=>{y.mergeLocaleMessage(F,c.value[F])}),Object.keys(u.value).forEach(F=>{y.mergeDateTimeFormat(F,u.value[F])}),Object.keys(f.value).forEach(F=>{y.mergeNumberFormat(F,f.value[F])}),y.escapeParameter=b,y.fallbackFormat=k,y.fallbackRoot=v,y.fallbackWarn=_,y.missingWarn=h,y.warnHtmlMessage=A}return _i(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Pe(Ie.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const y=r.value=e.proxy.$i18n.__composer;t==="global"?(a.value=y.locale.value,l.value=y.fallbackLocale.value,c.value=y.messages.value,u.value=y.datetimeFormats.value,f.value=y.numberFormats.value):s&&$(y)}),g}const yg=["locale","fallbackLocale","availableLocales"],Pl=["t","rt","d","n","tm","te"];function vg(e,t){const n=Object.create(null);return yg.forEach(s=>{const r=Object.getOwnPropertyDescriptor(t,s);if(!r)throw Pe(Ie.UNEXPECTED_ERROR);const i=Ne(r.value)?{get(){return r.value.value},set(a){r.value.value=a}}:{get(){return r.get&&r.get()}};Object.defineProperty(n,s,i)}),e.config.globalProperties.$i18n=n,Pl.forEach(s=>{const r=Object.getOwnPropertyDescriptor(t,s);if(!r||!r.value)throw Pe(Ie.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${s}`,r)}),()=>{delete e.config.globalProperties.$i18n,Pl.forEach(s=>{delete e.config.globalProperties[`$${s}`]})}}if(Zh(),__INTLIFY_JIT_COMPILATION__?Ja(Hh):Ja(Vh),Mh(mh),Dh(Ha),__INTLIFY_PROD_DEVTOOLS__){const e=Dt();e.__INTLIFY__=!0,Nh(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const wg=Object.assign({"./locales/ar/aria.json":Cp,"./locales/ar/buttons.json":Ap,"./locales/ar/detail.json":Ep,"./locales/ar/legend.json":Tp,"./locales/ar/messages.json":Lp,"./locales/ar/options.json":Sp,"./locales/ar/prayerLaps.json":Ip,"./locales/ar/search.json":Fp,"./locales/ar/tabs.json":xp,"./locales/de/aria.json":Pp,"./locales/de/buttons.json":Mp,"./locales/de/detail.json":Dp,"./locales/de/legend.json":Bp,"./locales/de/messages.json":Rp,"./locales/de/options.json":Wp,"./locales/de/prayerLaps.json":Up,"./locales/de/search.json":jp,"./locales/de/tabs.json":Gp,"./locales/en/aria.json":Yp,"./locales/en/buttons.json":Vp,"./locales/en/detail.json":Hp,"./locales/en/legend.json":qp,"./locales/en/messages.json":zp,"./locales/en/options.json":Kp,"./locales/en/popup.json":Xp,"./locales/en/prayerLaps.json":Jp,"./locales/en/search.json":Zp,"./locales/en/tabs.json":Qp,"./locales/es/aria.json":ed,"./locales/es/buttons.json":td,"./locales/es/detail.json":nd,"./locales/es/legend.json":od,"./locales/es/messages.json":rd,"./locales/es/options.json":sd,"./locales/es/prayerLaps.json":id,"./locales/es/search.json":ad,"./locales/es/tabs.json":ld,"./locales/fr/aria.json":cd,"./locales/fr/buttons.json":ud,"./locales/fr/detail.json":pd,"./locales/fr/legend.json":dd,"./locales/fr/messages.json":fd,"./locales/fr/options.json":hd,"./locales/fr/popup.json":gd,"./locales/fr/prayerLaps.json":md,"./locales/fr/search.json":_d,"./locales/fr/tabs.json":bd,"./locales/hi/aria.json":yd,"./locales/hi/buttons.json":vd,"./locales/hi/detail.json":wd,"./locales/hi/legend.json":kd,"./locales/hi/messages.json":$d,"./locales/hi/options.json":Od,"./locales/hi/prayerLaps.json":Nd,"./locales/hi/search.json":Cd,"./locales/it/aria.json":Ad,"./locales/it/buttons.json":Ed,"./locales/it/detail.json":Td,"./locales/it/legend.json":Ld,"./locales/it/messages.json":Sd,"./locales/it/options.json":Id,"./locales/it/prayerLaps.json":Fd,"./locales/it/search.json":xd,"./locales/pt/aria.json":Pd,"./locales/pt/buttons.json":Md,"./locales/pt/detail.json":Dd,"./locales/pt/legend.json":Bd,"./locales/pt/messages.json":Rd,"./locales/pt/options.json":Wd,"./locales/pt/prayerLaps.json":Ud,"./locales/pt/search.json":jd,"./locales/pt/tabs.json":Gd,"./locales/ro/aria.json":Yd,"./locales/ro/buttons.json":Vd,"./locales/ro/detail.json":Hd,"./locales/ro/legend.json":qd,"./locales/ro/messages.json":zd,"./locales/ro/options.json":Kd,"./locales/ro/prayerLaps.json":Xd,"./locales/ro/search.json":Jd,"./locales/ru/aria.json":Zd,"./locales/ru/buttons.json":Qd,"./locales/ru/detail.json":ef,"./locales/ru/legend.json":tf,"./locales/ru/messages.json":nf,"./locales/ru/options.json":of,"./locales/ru/prayerLaps.json":rf,"./locales/ru/search.json":sf,"./locales/ru/tabs.json":af,"./locales/zh/aria.json":lf,"./locales/zh/buttons.json":cf,"./locales/zh/detail.json":uf,"./locales/zh/legend.json":pf,"./locales/zh/messages.json":df,"./locales/zh/options.json":ff,"./locales/zh/prayerLaps.json":hf,"./locales/zh/search.json":gf}),lo={};for(const[e,t]of Object.entries(wg)){const n=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!n)continue;const[,o,s]=n;lo[o]??(lo[o]={}),lo[o][s]=t}const Ml=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function kg(){var n;const t=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return Ml.includes(t)?t:"en"}function $g(){return ug({legacy:!1,globalInjection:!0,locale:kg(),fallbackLocale:"en",messages:lo,missingWarn:!1,fallbackWarn:!1})}function Wt(e,t){const n=t||Og(e);qt(()=>{var a;const o=Pt();if(!o)return;const s=(a=o.proxy)==null?void 0:a.$el;if(!s)return;const r=s.getRootNode();if(!(r instanceof ShadowRoot)||r.querySelector(`style[data-shadow-styles="${n}"]`))return;const i=document.createElement("style");i.setAttribute("data-shadow-styles",n),i.textContent=e,r.appendChild(i)})}function Og(e){let t=0;for(let n=0;n(t==null?void 0:t.theme)==="dark"),s=re(()=>{var v;return((v=n==null?void 0:n.value)==null?void 0:v.pinHintLabel)||"Tap a red dot — someone still needs prayer"}),r=ie(!1);let i=null,a=null,l=null;function c(){return"doxa-pin-hint-seen"}function u(){try{return sessionStorage.getItem(c())==="1"}catch{return!1}}function f(){try{sessionStorage.setItem(c(),"1")}catch{}}function h(){r.value&&(r.value=!1,f(),l&&(l.removeEventListener("pointerdown",_,!0),l=null),i&&(clearTimeout(i),i=null))}function _(){h()}return qt(()=>{var N,A,b;if(u())return;const v=Pt(),k=(b=(A=(N=v==null?void 0:v.proxy)==null?void 0:N.$el)==null?void 0:A.getRootNode)==null?void 0:b.call(A);if(!k||typeof k.querySelector!="function")return;let I=0;a=setInterval(()=>{I++,k.querySelector("canvas")?(clearInterval(a),a=null,r.value=!0,l=k,k.addEventListener("pointerdown",_,!0),i=setTimeout(h,14e3)):I>40&&(clearInterval(a),a=null)},300)}),$n(()=>{a&&clearInterval(a),i&&clearTimeout(i),l&&l.removeEventListener("pointerdown",_,!0)}),Wt(` .pin-hint { position: absolute; left: 50%; bottom: 26px; transform: translateX(-50%); z-index: 2147482000; pointer-events: none; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; @@ -67,11 +67,11 @@ @media (prefers-reduced-motion: reduce) { .pin-hint, .pin-hint-pill, .pin-hint-dot::after { animation: none !important; } } -`,"pin-hint"),(v,k)=>r.value?(q(),X("div",{key:0,class:Se(["pin-hint",{dark:o.value}]),role:"status"},[M("span",Og,[k[0]||(k[0]=M("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),$e(" "+Q(s.value)+" ",1),M("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:h},"×")])],2)):Le("",!0)}};let Cg=0;const Ag=Jr("ui",{state:()=>({_storeInstanceId:++Cg,theme:"light",colorScheme:"default",reducedMotion:!1,highContrast:!1,activeTab:"doxa-regions",sidebarCollapsed:!1,mobileMenuOpen:!1,legendState:"collapsed",_customLegendHeight:null,searchMode:!1,hamburgerMenuOpen:!1,legendMode:"prayer",prayerFilter:null,engagementFilter:null,adoptionFilter:null,religionFilter:null,selectedPeopleGroup:null,breakpoint:"desktop",windowSize:{width:window.innerWidth,height:window.innerHeight},toasts:[],nextToastId:1,toastDuration:5e3,openModals:[],modalData:new Map,isGlobalLoading:!1,globalLoadingMessage:"Loading...",loadingStates:new Map,interactionHistory:[],maxHistoryLength:20,keyboardShortcutsEnabled:!0,screenReaderAnnouncement:"",focusTrapActive:!1,debugMode:!1,showPerformanceOverlay:!1}),getters:{isDarkTheme:e=>!1,isMobile:e=>e.breakpoint==="mobile",isTablet:e=>e.breakpoint==="tablet",isDesktop:e=>e.breakpoint==="desktop"||e.breakpoint==="wide",legendHeight:e=>e._customLegendHeight?e._customLegendHeight:e.legendState==="collapsed"?"48px":e.legendState==="open"?"30%":e.legendState==="fullyOpen"?"calc(100% - 80px)":"48px",caretRotation:e=>e.legendState==="collapsed"?0:90,showPullTab:e=>e.legendState==="open"||e.legendState==="fullyOpen",getToastsByType:e=>t=>e.toasts.filter(n=>n.type===t),hasOpenModal:e=>e.openModals.length>0,topModal:e=>e.openModals.length===0?null:e.openModals[e.openModals.length-1],isModalOpen:e=>t=>e.openModals.includes(t),isAnyLoading:e=>e.isGlobalLoading||e.loadingStates.size>0,isLoading:e=>t=>e.loadingStates.get(t)||!1},actions:{setTheme(e){if(!["light","dark","auto"].includes(e))return;e="light",this.theme=e;const n=this.isDarkTheme;document.documentElement.setAttribute("data-theme",n?"dark":"light");try{localStorage.setItem("theme",e)}catch{}},toggleTheme(){const e=this.theme==="light"?"dark":"light";this.setTheme(e)},setColorScheme(e){this.colorScheme=e,document.documentElement.setAttribute("data-color-scheme",e)},toggleReducedMotion(){this.reducedMotion=!this.reducedMotion,document.documentElement.setAttribute("data-reduced-motion",this.reducedMotion)},toggleHighContrast(){this.highContrast=!this.highContrast,document.documentElement.setAttribute("data-high-contrast",this.highContrast)},setActiveTab(e){this.activeTab=e,this.addToHistory({type:"tab-change",tabId:e,timestamp:Date.now()})},toggleSidebar(){this.sidebarCollapsed=!this.sidebarCollapsed},openMobileMenu(){this.mobileMenuOpen=!0},closeMobileMenu(){this.mobileMenuOpen=!1},setLegendMode(e){["prayer","detail"].includes(e)&&(this.legendMode=e)},setPrayerFilter(e){[null,"noPrayer","hasPrayer","fullPrayer"].includes(e)&&(this.prayerFilter=e)},setEngagementFilter(e){[null,"notEngaged","hasEngagement"].includes(e)&&(this.engagementFilter=e)},setAdoptionFilter(e){[null,"notAdopted","hasAdoption"].includes(e)&&(this.adoptionFilter=e)},setReligionFilter(e){[null,"C","M","H","B","E","J","S","N","O","U"].includes(e)&&(this.religionFilter=e)},selectPeopleGroup(e){this.selectedPeopleGroup=e,e?(this._legendStateBeforeDetail=this.legendState,this.legendState="open",this._customLegendHeight=null,this.setLegendMode("detail")):(this.legendState=this._legendStateBeforeDetail||"open",this._customLegendHeight=null,this.setLegendMode("prayer"))},setLegendState(e){["collapsed","open","fullyOpen"].includes(e)&&(this.legendState=e)},toggleSearchMode(){this.searchMode=!this.searchMode},setSearchMode(e){this.searchMode=e},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},updateBreakpoint(e){let t;e<768?t="mobile":e<1024?t="tablet":e<1920?t="desktop":t="wide",t!==this.breakpoint&&(this.breakpoint=t)},updateWindowSize(e,t){this.windowSize.width=e,this.windowSize.height=t,this.updateBreakpoint(e)},showToast(e){const{message:t,type:n="info",duration:o=this.toastDuration,action:s=null,persistent:r=!1}=e,i={id:this.nextToastId++,message:t,type:n,duration:o,action:s,persistent:r,createdAt:Date.now()};return this.toasts.push(i),!r&&o>0&&setTimeout(()=>{this.removeToast(i.id)},o),i.id},showSuccess(e,t={}){return this.showToast({message:e,type:"success",...t})},showError(e,t={}){return this.showToast({message:e,type:"error",duration:7e3,...t})},showWarning(e,t={}){return this.showToast({message:e,type:"warning",...t})},showInfo(e,t={}){return this.showToast({message:e,type:"info",...t})},removeToast(e){const t=this.toasts.findIndex(n=>n.id===e);t!==-1&&this.toasts.splice(t,1)},clearAllToasts(){this.toasts=[]},openModal(e,t={}){this.openModals.includes(e)||(this.openModals.push(e),this.modalData.set(e,t),this.focusTrapActive=!0)},closeModal(e=null){if(e){const t=this.openModals.indexOf(e);t!==-1&&(this.openModals.splice(t,1),this.modalData.delete(e))}else{const t=this.openModals.pop();t&&this.modalData.delete(t)}this.openModals.length===0&&(this.focusTrapActive=!1)},closeAllModals(){this.openModals=[],this.modalData.clear(),this.focusTrapActive=!1},getModalData(e){return this.modalData.get(e)},showGlobalLoading(e="Loading..."){this.isGlobalLoading=!0,this.globalLoadingMessage=e},hideGlobalLoading(){this.isGlobalLoading=!1},setLoading(e,t=!0){t?this.loadingStates.set(e,!0):this.loadingStates.delete(e)},addToHistory(e){this.interactionHistory.push(e),this.interactionHistory.length>this.maxHistoryLength&&this.interactionHistory.shift()},clearHistory(){this.interactionHistory=[]},announce(e,t="polite"){this.screenReaderAnnouncement=e,setTimeout(()=>{this.screenReaderAnnouncement===e&&(this.screenReaderAnnouncement="")},1e3)},toggleKeyboardShortcuts(){this.keyboardShortcutsEnabled=!this.keyboardShortcutsEnabled},toggleDebugMode(){this.debugMode=!this.debugMode},togglePerformanceOverlay(){this.showPerformanceOverlay=!this.showPerformanceOverlay},toggleLegend(){this.legendState==="fullyOpen"?this.legendState="open":this.legendState==="open"?this.legendState="collapsed":this.legendState="open",this._customLegendHeight=null},openLegend(){this.legendState="open",this._customLegendHeight=null},fullyOpenLegend(){this.legendState="fullyOpen",this._customLegendHeight=null},collapseLegend(){this.legendState="collapsed",this._customLegendHeight=null},setLegendHeight(e){this._customLegendHeight=e},handleLegendItemClick(){this.legendState==="fullyOpen"&&(this.legendState="open")},enableSearchMode(){this.searchMode=!0},disableSearchMode(){this.searchMode=!1},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},openHamburgerMenu(){this.hamburgerMenuOpen=!0},closeHamburgerMenu(){this.hamburgerMenuOpen=!1},init(){let e=null;try{e=localStorage.getItem("theme")}catch{}e&&this.setTheme(e),new ResizeObserver(n=>{for(const o of n)this.updateWindowSize(o.contentRect.width,o.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",n=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",n.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",n=>{this.reducedMotion=n.matches,document.documentElement.setAttribute("data-reduced-motion",n.matches)}))}}}),Eg=Jr("map",{state:()=>({maps:{},activeMapId:null,selectedRegion:null,selectedFamily:null,selectedAffinityBlock:null,selectedLanguage:null,selectedDialect:null,activeLegendTab:"family",selectedResource:null,selectedPeopleGroup:null,selectedPinIds:[],globalFilters:{},searchQuery:"",autoFly:{isActive:!1,speed:1,interval:5e3,currentIndex:0,items:[],timerId:null},guidedTour:{isActive:!1,currentStep:0,steps:[]},showClusters:!1,clusterMode:"region",clusterFilterProperty:null,clusterFilterValue:null,flySpeed:"normal",fullscreenMapId:null,preferences:{theme:"light",defaultMapStyle:"streets",enableAnimations:!0,autoSavePreferences:!0}}),getters:{getMapById:e=>t=>e.maps[t],activeMap:e=>e.activeMapId?e.maps[e.activeMapId]:null,hasMap:e=>t=>t in e.maps,allMapIds:e=>Object.keys(e.maps),hasSelection:e=>!!(e.selectedRegion||e.selectedFamily||e.selectedAffinityBlock||e.selectedPeopleGroup),isAutoFlying:e=>e.autoFly.isActive,isGuidedTourActive:e=>e.guidedTour.isActive,isMapFullscreen:e=>t=>e.fullscreenMapId===t},actions:{registerMap(e,t,n={}){let o=1.5;n.zoom!==void 0?o=n.zoom:t&&typeof t.getZoom=="function"&&(o=t.getZoom());let s=[0,0];if(n.center)s=n.center;else if(t&&typeof t.getCenter=="function"){const r=t.getCenter();r&&(s=[r.lng,r.lat])}this.maps[e]={instance:t,config:n,isReady:!1,zoom:o,center:s,registeredAt:Date.now()},this.activeMapId||(this.activeMapId=e)},setMapReady(e){const t=this.maps[e];t&&(t.isReady=!0)},updateMapState(e,t){const n=this.maps[e];n&&Object.assign(n,t)},unregisterMap(e){if(delete this.maps[e],this.activeMapId===e){const t=this.allMapIds;this.activeMapId=t.length>0?t[0]:null}},setActiveMap(e){e in this.maps&&(this.activeMapId=e)},selectRegion(e){this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedRegion=e},selectFamily(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedFamily=e},setActiveLegendTab(e){this.activeLegendTab=e},selectLanguage(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedFamily=null,this.selectedDialect=null,this.selectedLanguage=e},selectDialect(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedDialect=e},selectAffinityBlock(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedPeopleGroup=null,this.selectedAffinityBlock=e},selectPeopleGroup(e){this.selectedPeopleGroup=e},selectResource(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedResource===e?this.selectedResource=null:this.selectedResource=e},clearSelections(){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedAffinityBlock=null,this.selectedResource=null,this.selectedPeopleGroup=null,this.selectedPinIds=[],this.showClusters=!1,this.clusterMode="region"},setSelectedPinIds(e){this.selectedPinIds=e||[]},setFilter(e,t){this.globalFilters[e]=t},removeFilter(e){delete this.globalFilters[e]},clearFilters(){this.globalFilters={},this.searchQuery=""},setSearchQuery(e){this.searchQuery=e},startAutoFly(e,t=1){this.stopAutoFly(),this.autoFly.isActive=!0,this.autoFly.speed=t,this.autoFly.items=e,this.autoFly.currentIndex=0},stopAutoFly(){this.autoFly.timerId&&(clearInterval(this.autoFly.timerId),this.autoFly.timerId=null),this.autoFly.isActive=!1,this.autoFly.currentIndex=0},setAutoFlySpeed(e){this.autoFly.speed=Math.max(.5,Math.min(2,e))},nextAutoFlyItem(){if(!this.autoFly.isActive||this.autoFly.items.length===0)return;this.autoFly.currentIndex=(this.autoFly.currentIndex+1)%this.autoFly.items.length;const e=this.autoFly.items[this.autoFly.currentIndex];e.type==="region"?this.selectRegion(e):e.type==="family"&&this.selectFamily(e)},toggleClusters(e){typeof e=="boolean"?this.showClusters=e:this.showClusters=!this.showClusters},setClusterMode(e){["region","language-family","affinity-block","mst","resource"].includes(e)&&(this.clusterMode=e)},setClusterFilter(e,t){this.clusterFilterProperty=e||null,this.clusterFilterValue=t||null},clearClusterFilter(){this.clusterFilterProperty=null,this.clusterFilterValue=null},setFlySpeed(e){["slow","normal","fast"].includes(e)&&(this.flySpeed=e)},setSelectedFamily(e){this.selectFamily(e)},clearSelectedFamily(){this.selectFamily(null)},setSelectedRegion(e){this.selectRegion(e)},clearSelectedRegion(){this.selectRegion(null)},clearSelectedResource(){this.selectResource(null)},clearSelectedLanguage(){this.selectLanguage(null)},clearSelectedDialect(){this.selectDialect(null)},toggleFullscreen(e){this.fullscreenMapId===e?this.fullscreenMapId=null:this.fullscreenMapId=e},loadPreferences(){try{const e=localStorage.getItem("mapUserPreferences");if(e){const t=JSON.parse(e);this.preferences={...this.preferences,...t}}}catch(e){console.error("[mapStore] Failed to load preferences:",e)}},savePreferences(){try{localStorage.setItem("mapUserPreferences",JSON.stringify(this.preferences))}catch(e){console.error("[mapStore] Failed to save preferences:",e)}},setPreference(e,t){this.preferences[e]=t,this.preferences.autoSavePreferences&&this.savePreferences()}}}),Tg=Jr("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const n=await t();this.sources[e]=_n({features:n,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(n){console.error(`[dataStore] Failed to load source "${e}":`,n),this.loadingStates[e]={isLoading:!1,error:n}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=_n({features:t.normalizedData||[],timestamp:t.timestamp||Date.now()})},hasSourceData(e){return!!this.sources[e]},getSourceData(e){return this.sources[e]?{normalizedData:this.sources[e].features}:null}},getters:{getData:e=>t=>{var n;return((n=e.sources[t])==null?void 0:n.features)??null},isLoading:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.isLoading)??!1},getError:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.error)??null}}}),Lg={activeSource:"pray-tools"},Sg=(e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;return n},Ig={class:"profile-loader"},Fg={key:0,class:"profile-error"},xg={key:1,class:"profile-error"},Pg=Sg({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var y;const n=e,o=ie(()=>{if(!n.profileConfig)return null;try{return JSON.parse(n.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",n.profileConfig),null}}),s=ie(()=>{var m;return((m=o.value)==null?void 0:m.profile)||null}),r=ie(()=>{var m;return((m=o.value)==null?void 0:m.tk)||""}),i=ie(()=>{var m;return((m=o.value)==null?void 0:m.dataSource)||Lg.activeSource}),a=ie(()=>{var m;return((m=o.value)==null?void 0:m.colorSet)||"default"}),l=ie(()=>!1),c=ie(()=>{var m;return((m=o.value)==null?void 0:m.pinHint)!==!1}),u=ie(()=>{var A,S;const m=(((A=o.value)==null?void 0:A.locale)||((S=o.value)==null?void 0:S.lang)||"").split("-")[0].toLowerCase();return Pl.includes(m)?m:""}),f=qe("appI18n",null);Pc(()=>{u.value&&f&&(f.global.locale.value=u.value)});const h=ie(()=>{var m,A;return u.value||((A=(m=f==null?void 0:f.global)==null?void 0:m.locale)==null?void 0:A.value)||"en"}),_=ie(()=>{var m;return((m=o.value)==null?void 0:m.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),v=qe("profileModules",null);if(!v)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const k=ie(()=>{if(!s.value)return null;const m=`./${s.value}.vue`;return v[m]?Gc(v[m]):(console.error(`[ProfileLoader] Profile not found: "${s.value}". Available:`,Object.keys(v)),null)});yt("mapboxToken",r),yt("dataSource",i),yt("colorSet",a),yt("profileConfig",o),yt("instanceId",_),yt("lang",h);const F=Ag(),C=Eg(),L=Tg();try{const m=typeof localStorage<"u"?localStorage.getItem("theme"):null;m&&((y=F.setTheme)==null||y.call(F,m))}catch{}return yt("uiStore",F),yt("mapStore",C),yt("dataStore",L),(m,A)=>(q(),X("div",Ig,[o.value?k.value?(q(),Ze(_i(k.value),{key:2})):(q(),X("div",xg,[M("p",null,[A[1]||(A[1]=$e("⚠️ Profile ",-1)),M("strong",null,'"'+Q(s.value)+'"',1),A[2]||(A[2]=$e(" not found.",-1))])])):(q(),X("div",Fg,[...A[0]||(A[0]=[M("p",null,[$e("⚠️ "),M("strong",null,"doxa-map"),$e(": missing or invalid "),M("code",null,"profile-config"),$e(" prop.")],-1),M("p",null,[$e("Example: "),M("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),k.value&&l.value?(q(),Ze(_i(nt(null)),{key:3})):Le("",!0),k.value&&c.value?(q(),Ze(Ng,{key:4})):Le("",!0)]))}},[["__scopeId","data-v-b7582f77"]]),Mg=Object.assign({"./connectivity-list.vue":()=>ar(()=>Promise.resolve().then(()=>Qg),void 0),"./connectivity-map.vue":()=>ar(()=>Promise.resolve().then(()=>jm),void 0),"./data-tables.vue":()=>ar(()=>Promise.resolve().then(()=>p_),void 0)});function Dg(){return up(Pg,{configureApp(e){e.use(yp()),e.use(kg()),e.provide("profileModules",Mg)}})}const Bg=Dg();typeof customElements<"u"&&(customElements.get("cities-internet-map")||customElements.define("cities-internet-map",Bg));const Rg={countries:[{iso3:"IND",country:"India",region:"Asia",clusters:541,people_groups:856,multi:164,internet_access:"yes",internet_pct:64.9,internet_year:"2024",mobile_per_100:79.4,mobile_year:"2024",national_population:1450935791,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CHN",country:"People's Republic of China",region:"Asia",clusters:130,people_groups:154,multi:19,internet_access:"yes",internet_pct:92,internet_year:"2024",mobile_per_100:131.8,mobile_year:"2024",national_population:1408975e3,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SDN",country:"Sudan",region:"Middle East",clusters:75,people_groups:105,multi:20,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:70.2,mobile_year:"2022",national_population:50448963,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BRA",country:"Brazil",region:"Latin America & Caribbean",clusters:99,people_groups:104,multi:5,internet_access:"yes",internet_pct:84.5,internet_year:"2024",mobile_per_100:101.9,mobile_year:"2024",national_population:211998573,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LAO",country:"Lao People's Democratic Republic",region:"Asia",clusters:65,people_groups:95,multi:24,internet_access:"yes",internet_pct:65.6,internet_year:"2024",mobile_per_100:64.8,mobile_year:"2023",national_population:7769819,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TCD",country:"Chad",region:"Africa",clusters:48,people_groups:54,multi:6,internet_access:"no",internet_pct:12.6,internet_year:"2024",mobile_per_100:72.9,mobile_year:"2024",national_population:20299123,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NGA",country:"Nigeria",region:"Africa",clusters:35,people_groups:38,multi:3,internet_access:"partial",internet_pct:41.2,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:232679478,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"IDN",country:"Indonesia",region:"Asia",clusters:35,people_groups:36,multi:1,internet_access:"yes",internet_pct:72.8,internet_year:"2024",mobile_per_100:122.5,mobile_year:"2024",national_population:283487931,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NPL",country:"Nepal",region:"Asia",clusters:25,people_groups:33,multi:5,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:99.8,mobile_year:"2024",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ETH",country:"Ethiopia",region:"Africa",clusters:29,people_groups:29,multi:0,internet_access:"no",internet_pct:21.9,internet_year:"2024",mobile_per_100:65.1,mobile_year:"2024",national_population:132059767,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COL",country:"Colombia",region:"Latin America & Caribbean",clusters:26,people_groups:26,multi:0,internet_access:"yes",internet_pct:79.3,internet_year:"2024",mobile_per_100:174.1,mobile_year:"2024",national_population:52886363,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PAK",country:"Pakistan",region:"Asia",clusters:21,people_groups:24,multi:2,internet_access:"partial",internet_pct:57.3,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:251269164,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SSD",country:"South Sudan",region:"Africa",clusters:22,people_groups:22,multi:0,internet_access:"no",internet_pct:6.7,internet_year:"2019",mobile_per_100:46.6,mobile_year:"2023",national_population:11943408,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"RUS",country:"Russian Federation",region:"Europe",clusters:17,people_groups:21,multi:2,internet_access:"yes",internet_pct:94.4,internet_year:"2024",mobile_per_100:186.1,mobile_year:"2024",national_population:143669648,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"AFG",country:"Afghanistan",region:"Asia",clusters:15,people_groups:21,multi:5,internet_access:"no",internet_pct:16.1,internet_year:"2024",mobile_per_100:60.1,mobile_year:"2024",national_population:42647492,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"IRN",country:"Islamic Republic of Iran",region:"Middle East",clusters:19,people_groups:20,multi:1,internet_access:"yes",internet_pct:85.3,internet_year:"2024",mobile_per_100:174.1,mobile_year:"2024",national_population:91567738,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"DZA",country:"Algeria",region:"Middle East",clusters:15,people_groups:17,multi:2,internet_access:"yes",internet_pct:77.4,internet_year:"2024",mobile_per_100:115.5,mobile_year:"2024",national_population:46814308,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VNM",country:"Vietnam",region:"Asia",clusters:15,people_groups:16,multi:1,internet_access:"yes",internet_pct:84.2,internet_year:"2024",mobile_per_100:127.6,mobile_year:"2024",national_population:100987686,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TZA",country:"United Republic of Tanzania",region:"Africa",clusters:16,people_groups:16,multi:0,internet_access:"partial",internet_pct:31.2,internet_year:"2024",mobile_per_100:126.6,mobile_year:"2024",national_population:68560157,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LBY",country:"Libya",region:"Middle East",clusters:13,people_groups:15,multi:2,internet_access:"yes",internet_pct:82,internet_year:"2024",mobile_per_100:193,mobile_year:"2022",national_population:7381023,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BTN",country:"Bhutan",region:"Asia",clusters:12,people_groups:13,multi:1,internet_access:"yes",internet_pct:91.3,internet_year:"2024",mobile_per_100:99.8,mobile_year:"2024",national_population:791524,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GIN",country:"Guinea",region:"Africa",clusters:13,people_groups:13,multi:0,internet_access:"partial",internet_pct:33.3,internet_year:"2024",mobile_per_100:97.9,mobile_year:"2023",national_population:14754785,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MLI",country:"Mali",region:"Africa",clusters:13,people_groups:13,multi:0,internet_access:"partial",internet_pct:36.8,internet_year:"2024",mobile_per_100:112.1,mobile_year:"2022",national_population:24478595,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MYS",country:"Malaysia",region:"Asia",clusters:11,people_groups:12,multi:1,internet_access:"yes",internet_pct:98,internet_year:"2024",mobile_per_100:139.7,mobile_year:"2024",national_population:35557673,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"AGO",country:"Angola",region:"Africa",clusters:9,people_groups:10,multi:1,internet_access:"partial",internet_pct:40.7,internet_year:"2024",mobile_per_100:69.7,mobile_year:"2024",national_population:37885849,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PER",country:"Peru",region:"Latin America & Caribbean",clusters:10,people_groups:10,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:124.6,mobile_year:"2024",national_population:34217848,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"YEM",country:"Yemen",region:"Middle East",clusters:8,people_groups:9,multi:1,internet_access:"no",internet_pct:17.5,internet_year:"2019",mobile_per_100:50.9,mobile_year:"2023",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COD",country:"Democratic Republic of the Congo",region:"Africa",clusters:8,people_groups:9,multi:1,internet_access:"no",internet_pct:19.7,internet_year:"2024",mobile_per_100:58.5,mobile_year:"2024",national_population:109276265,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BEN",country:"Benin",region:"Africa",clusters:8,people_groups:9,multi:1,internet_access:"partial",internet_pct:34,internet_year:"2024",mobile_per_100:125.9,mobile_year:"2024",national_population:14462724,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SOM",country:"Somalia",region:"Africa",clusters:9,people_groups:9,multi:0,internet_access:"partial",internet_pct:27.9,internet_year:"2024",mobile_per_100:54,mobile_year:"2023",national_population:19009151,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ERI",country:"Eritrea",region:"Africa",clusters:7,people_groups:8,multi:1,internet_access:"no",internet_pct:14.3,internet_year:"2020",mobile_per_100:59.1,mobile_year:"2022",national_population:3535603,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"IRQ",country:"Iraq",region:"Middle East",clusters:7,people_groups:8,multi:1,internet_access:"yes",internet_pct:81.5,internet_year:"2024",mobile_per_100:100.1,mobile_year:"2024",national_population:46042015,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BFA",country:"Burkina Faso",region:"Africa",clusters:7,people_groups:8,multi:1,internet_access:"partial",internet_pct:28.3,internet_year:"2024",mobile_per_100:116.6,mobile_year:"2024",national_population:23548781,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"THA",country:"Thailand",region:"Asia",clusters:8,people_groups:8,multi:0,internet_access:"yes",internet_pct:90.9,internet_year:"2024",mobile_per_100:160.6,mobile_year:"2024",national_population:71668011,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PSE",country:"State of Palestine",region:"Middle East",clusters:3,people_groups:7,multi:1,internet_access:"yes",internet_pct:86.6,internet_year:"2023",mobile_per_100:76.7,mobile_year:"2023",national_population:5289152,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"OMN",country:"Oman",region:"Middle East",clusters:7,people_groups:7,multi:0,internet_access:"yes",internet_pct:95.3,internet_year:"2024",mobile_per_100:120.6,mobile_year:"2024",national_population:5281538,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MMR",country:"Myanmar",region:"Asia",clusters:7,people_groups:7,multi:0,internet_access:"partial",internet_pct:45.4,internet_year:"2020",mobile_per_100:114.3,mobile_year:"2024",national_population:54500091,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CMR",country:"Cameroon",region:"Africa",clusters:7,people_groups:7,multi:0,internet_access:"partial",internet_pct:46.3,internet_year:"2024",mobile_per_100:108.2,mobile_year:"2024",national_population:29123744,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TGO",country:"Togo",region:"Africa",clusters:5,people_groups:6,multi:1,internet_access:"partial",internet_pct:39.5,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:8406558,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"JPN",country:"Japan",region:"Asia",clusters:6,people_groups:6,multi:0,internet_access:"yes",internet_pct:85.5,internet_year:"2024",mobile_per_100:178.4,mobile_year:"2023",national_population:123975371,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"UGA",country:"Uganda",region:"Africa",clusters:6,people_groups:6,multi:0,internet_access:"no",internet_pct:8.9,internet_year:"2024",mobile_per_100:83.2,mobile_year:"2024",national_population:50015092,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ZMB",country:"Zambia",region:"Africa",clusters:6,people_groups:6,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:108.7,mobile_year:"2024",national_population:21314956,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VEN",country:"Venezuela",region:"Latin America & Caribbean",clusters:6,people_groups:6,multi:0,internet_access:"yes",internet_pct:76.7,internet_year:"2024",mobile_per_100:71,mobile_year:"2024",national_population:28405543,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NAM",country:"Namibia",region:"Africa",clusters:6,people_groups:6,multi:0,internet_access:"yes",internet_pct:64.9,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:3030131,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BRN",country:"Brunei Darussalam",region:"Asia",clusters:4,people_groups:5,multi:1,internet_access:"yes",internet_pct:96.3,internet_year:"2024",mobile_per_100:118.1,mobile_year:"2024",national_population:462721,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KEN",country:"Kenya",region:"Africa",clusters:5,people_groups:5,multi:0,internet_access:"partial",internet_pct:35,internet_year:"2024",mobile_per_100:126.5,mobile_year:"2024",national_population:56432944,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SYR",country:"Syrian Arab Republic",region:"Middle East",clusters:5,people_groups:5,multi:0,internet_access:"partial",internet_pct:33.8,internet_year:"2018",mobile_per_100:71.2,mobile_year:"2024",national_population:24672760,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LBN",country:"Lebanon",region:"Middle East",clusters:4,people_groups:4,multi:0,internet_access:"yes",internet_pct:80.6,internet_year:"2024",mobile_per_100:74,mobile_year:"2022",national_population:5805962,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MOZ",country:"Mozambique",region:"Africa",clusters:4,people_groups:4,multi:0,internet_access:"no",internet_pct:20.5,internet_year:"2024",mobile_per_100:49.5,mobile_year:"2024",national_population:34631766,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MAR",country:"Morocco",region:"Middle East",clusters:4,people_groups:4,multi:0,internet_access:"yes",internet_pct:91.2,internet_year:"2024",mobile_per_100:153.1,mobile_year:"2024",national_population:38081173,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"QAT",country:"Qatar",region:"Middle East",clusters:1,people_groups:3,multi:1,internet_access:"yes",internet_pct:98.1,internet_year:"2024",mobile_per_100:153.6,mobile_year:"2024",national_population:2857822,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SAU",country:"Saudi Arabia",region:"Middle East",clusters:2,people_groups:3,multi:1,internet_access:"yes",internet_pct:100,internet_year:"2024",mobile_per_100:159.5,mobile_year:"2024",national_population:35300280,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TUR",country:"Türkiye",region:"Europe",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:87.3,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:85518661,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"AZE",country:"Azerbaijan",region:"Asia",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:90.4,internet_year:"2024",mobile_per_100:109.5,mobile_year:"2024",national_population:10202830,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GMB",country:"Republic of The Gambia",region:"Africa",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:49.5,internet_year:"2024",mobile_per_100:126.2,mobile_year:"2024",national_population:2759988,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"JOR",country:"Jordan",region:"Middle East",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:95.6,internet_year:"2024",mobile_per_100:69.6,mobile_year:"2024",national_population:11552876,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ZWE",country:"Zimbabwe",region:"Africa",clusters:3,people_groups:3,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:94.2,mobile_year:"2024",national_population:16634373,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COM",country:"Comoros",region:"Africa",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:32.5,internet_year:"2024",mobile_per_100:109.9,mobile_year:"2023",national_population:866628,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"USA",country:"United States of America",region:"Other",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:94.7,internet_year:"2024",mobile_per_100:113.2,mobile_year:"2024",national_population:340003797,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BGD",country:"Bangladesh",region:"Asia",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:53.4,internet_year:"2024",mobile_per_100:108.1,mobile_year:"2024",national_population:173562364,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GNB",country:"Guinea-Bissau",region:"Africa",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:29.8,internet_year:"2024",mobile_per_100:147.2,mobile_year:"2024",national_population:2201352,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KOS",country:"KOS",region:"Europe",clusters:3,people_groups:3,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MRT",country:"Mauritania",region:"Middle East",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:45.8,internet_year:"2024",mobile_per_100:92.1,mobile_year:"2024",national_population:5169395,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ESH",country:"Western Sahara",region:"Middle East",clusters:3,people_groups:3,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TJK",country:"Tajikistan",region:"Asia",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:55.8,internet_year:"2024",mobile_per_100:76.2,mobile_year:"2023",national_population:10590927,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"EGY",country:"Egypt",region:"Middle East",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:74.6,internet_year:"2024",mobile_per_100:97.1,mobile_year:"2024",national_population:116538258,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MNG",country:"Mongolia",region:"Asia",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:85.1,internet_year:"2024",mobile_per_100:140.7,mobile_year:"2024",national_population:3524788,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BHR",country:"Bahrain",region:"Middle East",clusters:1,people_groups:2,multi:1,internet_access:"yes",internet_pct:100,internet_year:"2024",mobile_per_100:159.5,mobile_year:"2024",national_population:1588670,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SUR",country:"Suriname",region:"North America & Non-Spanish Caribbean",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:142.1,mobile_year:"2024",national_population:634431,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NER",country:"Niger",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:60.6,mobile_year:"2024",national_population:27032412,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ZAF",country:"South Africa",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:78.4,internet_year:"2024",mobile_per_100:179.3,mobile_year:"2024",national_population:64007187,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CCK",country:"Cocos (Keeling) Islands",region:"N/A",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COG",country:"Republic of the Congo",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"partial",internet_pct:47.3,internet_year:"2024",mobile_per_100:95.5,mobile_year:"2024",national_population:6332961,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ARE",country:"United Arab Emirates",region:"Middle East",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:100,internet_year:"2024",mobile_per_100:203.2,mobile_year:"2024",national_population:10986400,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GAB",country:"Gabon",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:68.7,internet_year:"2024",mobile_per_100:125.3,mobile_year:"2024",national_population:2538952,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GUF",country:"French Guiana",region:"N/A",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CIV",country:"Cote d'Ivoire",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"partial",internet_pct:41.4,internet_year:"2024",mobile_per_100:183.9,mobile_year:"2024",national_population:31934230,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KGZ",country:"Kyrgyzstan",region:"Asia",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:92,internet_year:"2024",mobile_per_100:107.5,mobile_year:"2024",national_population:7221868,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LBR",country:"Liberia",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"partial",internet_pct:32.2,internet_year:"2024",mobile_per_100:32.1,mobile_year:"2022",national_population:5612817,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SWE",country:"Sweden",region:"Europe",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:140.7,mobile_year:"2024",national_population:10569709,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TUN",country:"Tunisia",region:"Middle East",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:76.5,internet_year:"2024",mobile_per_100:117.6,mobile_year:"2024",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SLE",country:"Sierra Leone",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"partial",internet_pct:25.1,internet_year:"2024",mobile_per_100:107.9,mobile_year:"2022",national_population:8642022,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"AND",country:"Andorra",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:94.4,internet_year:"2024",mobile_per_100:155.7,mobile_year:"2024",national_population:81938,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SEN",country:"Senegal",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:60.1,internet_year:"2024",mobile_per_100:123.9,mobile_year:"2024",national_population:18501984,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MNE",country:"Montenegro",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:88.9,internet_year:"2024",mobile_per_100:221.7,mobile_year:"2024",national_population:623525,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BOL",country:"Bolivia",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:79.7,internet_year:"2024",mobile_per_100:98,mobile_year:"2024",national_population:12413315,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ECU",country:"Ecuador",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:77.2,internet_year:"2024",mobile_per_100:101.6,mobile_year:"2024",national_population:18135478,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VIR",country:"Virgin Islands, U.S.",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:91.5,mobile_year:"2022",national_population:104377,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ATG",country:"Antigua and Barbuda",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:72.7,internet_year:"2024",mobile_per_100:200.5,mobile_year:"2022",national_population:93772,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ARM",country:"Armenia",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:81.3,internet_year:"2024",mobile_per_100:134.9,mobile_year:"2024",national_population:3033500,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ABW",country:"Aruba",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:130.6,mobile_year:"2022",national_population:107995,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BHS",country:"Bahamas",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:92.5,internet_year:"2024",mobile_per_100:96.7,mobile_year:"2024",national_population:401283,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BRB",country:"Barbados",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:70.4,internet_year:"2024",mobile_per_100:114.6,mobile_year:"2022",national_population:282467,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BLR",country:"Belarus",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:94.3,internet_year:"2024",mobile_per_100:131.1,mobile_year:"2024",national_population:9132629,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BMU",country:"Bermuda",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:96.7,mobile_year:"2024",national_population:64636,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BIH",country:"Bosnia and Herzegovina",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:86.1,internet_year:"2024",mobile_per_100:121.2,mobile_year:"2024",national_population:3164253,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VGB",country:"Virgin Islands, British",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:39471,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BGR",country:"Bulgaria",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:82.4,internet_year:"2024",mobile_per_100:118.1,mobile_year:"2024",national_population:6441421,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KHM",country:"Cambodia",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:68.5,internet_year:"2024",mobile_per_100:116.1,mobile_year:"2024",national_population:17638801,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CYM",country:"Cayman Islands",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:139.3,mobile_year:"2022",national_population:74457,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CAF",country:"Central African Republic",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"no",internet_pct:13.8,internet_year:"2024",mobile_per_100:38.8,mobile_year:"2022",national_population:5330690,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CXR",country:"Christmas Island",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COK",country:"Cook Islands",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CUB",country:"Cuba",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:70.5,internet_year:"2024",mobile_per_100:72.9,mobile_year:"2024",national_population:10979783,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CUW",country:"Curaçao",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:93.8,mobile_year:"2023",national_population:155967,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CYP",country:"Cyprus",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:89.6,internet_year:"2024",mobile_per_100:156.2,mobile_year:"2024",national_population:1358282,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"DJI",country:"Djibouti",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:65.3,internet_year:"2024",mobile_per_100:48.5,mobile_year:"2023",national_population:1168722,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"DMA",country:"Dominica",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:82,internet_year:"2024",mobile_per_100:85.2,mobile_year:"2022",national_population:66205,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GNQ",country:"Equatorial Guinea",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:63.3,internet_year:"2024",mobile_per_100:49.5,mobile_year:"2022",national_population:1892516,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"FRO",country:"Faroe Islands",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:105.8,mobile_year:"2022",national_population:54640,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"FJI",country:"Fiji",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:74.7,internet_year:"2024",mobile_per_100:574.2,mobile_year:"2024",national_population:928784,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PYF",country:"French Polynesia",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:118.8,mobile_year:"2023",national_population:281807,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GEO",country:"Georgia",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:83.8,internet_year:"2024",mobile_per_100:161.2,mobile_year:"2024",national_population:3812518,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GIB",country:"Gibraltar",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:97.6,mobile_year:"2022",national_population:39329,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GRC",country:"Greece",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:86.3,internet_year:"2024",mobile_per_100:113.6,mobile_year:"2024",national_population:10405134,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GRD",country:"Grenada",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:70.2,internet_year:"2024",mobile_per_100:95.8,mobile_year:"2022",national_population:117207,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GLP",country:"Guadeloupe",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GUM",country:"Guam",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:167777,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GGY",country:"Guernsey",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ISL",country:"Iceland",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:98.2,internet_year:"2024",mobile_per_100:120.9,mobile_year:"2024",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KIR",country:"Kiribati",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:89.4,internet_year:"2024",mobile_per_100:53.5,mobile_year:"2024",national_population:134518,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"JAM",country:"Jamaica",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:90.1,internet_year:"2024",mobile_per_100:117.7,mobile_year:"2024",national_population:2839175,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"JEY",country:"Jersey",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KAZ",country:"Kazakhstan",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:93.4,internet_year:"2024",mobile_per_100:127.1,mobile_year:"2024",national_population:20592571,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PRK",country:"North Korea",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:24.1,mobile_year:"2022",national_population:26498823,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KWT",country:"Kuwait",region:"Middle East",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:99.7,internet_year:"2024",mobile_per_100:167.7,mobile_year:"2023",national_population:4897263,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LIE",country:"Liechtenstein",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:98.3,internet_year:"2024",mobile_per_100:128.9,mobile_year:"2024",national_population:40450,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LUX",country:"Luxembourg",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:98.8,internet_year:"2024",mobile_per_100:144.5,mobile_year:"2023",national_population:677012,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MYT",country:"Mayotte",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MDV",country:"Maldives",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:85.2,internet_year:"2024",mobile_per_100:148.1,mobile_year:"2024",national_population:527799,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MLT",country:"Malta",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:93.9,internet_year:"2024",mobile_per_100:142.1,mobile_year:"2024",national_population:568847,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MNP",country:"Northern Mariana Islands",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:44278,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MHL",country:"Marshall Islands",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:65.9,internet_year:"2024",mobile_per_100:39.7,mobile_year:"2022",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MUS",country:"Mauritius",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:73.3,internet_year:"2024",mobile_per_100:172.7,mobile_year:"2024",national_population:1245779,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"FSM",country:"Micronesia, Federated States of",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"partial",internet_pct:39.5,internet_year:"2024",mobile_per_100:20,mobile_year:"2022",national_population:113160,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MCO",country:"Monaco",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:99,internet_year:"2024",mobile_per_100:107.4,mobile_year:"2024",national_population:38631,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MSR",country:"Montserrat",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NCL",country:"New Caledonia",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:91.7,mobile_year:"2022",national_population:292639,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NIU",country:"Niue",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VUT",country:"Vanuatu",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:89.3,mobile_year:"2023",national_population:327777,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NFK",country:"Norfolk Island",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"HKG",country:"Hong Kong",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:95.8,internet_year:"2024",mobile_per_100:364.8,mobile_year:"2024",national_population:7524100,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MAC",country:"Macao",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:89.8,internet_year:"2024",mobile_per_100:201.1,mobile_year:"2024",national_population:687e3,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PLW",country:"Palau",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:83.9,internet_year:"2024",mobile_per_100:135.4,mobile_year:"2023",national_population:17695,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PNG",country:"Papua New Guinea",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"no",internet_pct:18.8,internet_year:"2024",mobile_per_100:38.8,mobile_year:"2024",national_population:10576502,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BLM",country:"Saint Barthélemy",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SHN",country:"Saint Helena",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LCA",country:"Saint Lucia",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:68.2,internet_year:"2024",mobile_per_100:98.7,mobile_year:"2022",national_population:179744,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SMR",country:"San Marino",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:97.4,internet_year:"2024",mobile_per_100:120.3,mobile_year:"2022",national_population:33977,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ASM",country:"American Samoa",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:46765,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"WSM",country:"Samoa",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:62.4,mobile_year:"2022",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"STP",country:"Sao Tome and Principe",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"partial",internet_pct:59.1,internet_year:"2024",mobile_per_100:62.4,mobile_year:"2024",national_population:235536,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SXM",country:"Sint Maarten (Dutch part)",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:205.4,mobile_year:"2022",national_population:43350,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SLB",country:"Solomon Islands",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"partial",internet_pct:29,internet_year:"2024",mobile_per_100:62.1,mobile_year:"2022",national_population:819198,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LKA",country:"Sri Lanka",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"partial",internet_pct:54.6,internet_year:"2024",mobile_per_100:132.5,mobile_year:"2024",national_population:21916e3,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SJM",country:"Svalbard and Jan Mayen",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SWZ",country:"Eswatini",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:63.4,internet_year:"2024",mobile_per_100:139.8,mobile_year:"2024",national_population:1242822,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TKL",country:"Tokelau",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TON",country:"Tonga",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:67.4,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:104175,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TCA",country:"Turks and Caicos Islands",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:46535,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VCT",country:"Saint Vincent and the Grenadines",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:76.2,internet_year:"2024",mobile_per_100:108.4,mobile_year:"2024",national_population:100616,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"WLF",country:"Wallis and Futuna",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PRY",country:"Paraguay",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:81.6,internet_year:"2024",mobile_per_100:126.6,mobile_year:"2023",national_population:6929153,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"FIN",country:"Finland",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:93.7,internet_year:"2024",mobile_per_100:125.9,mobile_year:"2024",national_population:5619911,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ALB",country:"Albania",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:85.9,internet_year:"2024",mobile_per_100:89.1,mobile_year:"2024",national_population:2377128,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PAN",country:"Panama",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:72.8,internet_year:"2024",mobile_per_100:156.6,mobile_year:"2023",national_population:4515577,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NZL",country:"New Zealand",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:130.1,mobile_year:"2024",national_population:529e4,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CZE",country:"Czech Republic",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:87.7,internet_year:"2024",mobile_per_100:126.6,mobile_year:"2024",national_population:10905028,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GHA",country:"Ghana",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:72.2,internet_year:"2024",mobile_per_100:113.6,mobile_year:"2024",national_population:34427414,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PHL",country:"Philippines",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:67.3,internet_year:"2024",mobile_per_100:115.3,mobile_year:"2024",national_population:115843670,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ISR",country:"Israel",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:88.2,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:10002200,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GUY",country:"Guyana",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:83,internet_year:"2024",mobile_per_100:112.6,mobile_year:"2022",national_population:831087,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"UZB",country:"Uzbekistan",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:89.5,internet_year:"2024",mobile_per_100:110.5,mobile_year:"2024",national_population:36361859,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ESP",country:"Spain",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:95.8,internet_year:"2024",mobile_per_100:130.3,mobile_year:"2024",national_population:48848840,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MWI",country:"Malawi",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:69.3,mobile_year:"2024",national_population:21655286,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}}]},Wg={class:"ci-tot"},Ug={class:"ci-chip"},jg={class:"ci-chip"},Gg={class:"ci-chip"},Yg={class:"ci-chip"},Vg=["onClick"],Hg={class:"sec-name"},qg={class:"sec-meta"},zg={class:"r-name"},Kg={class:"r-sub"},Xg={class:"r-num"},Jg={class:"r-sub"},Zg={class:"r-num"},Qg=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"connectivity-list",setup(e){const t=qe("profileConfig",ce(null)),n=ie(()=>{var f;return((f=t.value)==null?void 0:f.isDark)===!0}),o=ie(()=>Rg.countries||[]),s=ie(()=>{const f=new Map;for(const h of o.value){const _=h.region||"Other";f.has(_)||f.set(_,[]),f.get(_).push(h)}return[...f.entries()].map(([h,_])=>({name:h,items:_.slice().sort((v,k)=>k.people_groups-v.people_groups),groups:_.reduce((v,k)=>v+k.people_groups,0),unknown:_.filter(v=>v.internet_access==="unknown").length})).sort((h,_)=>_.groups-h.groups)}),r=ce({}),i=f=>!!r.value[f],a=f=>{r.value={...r.value,[f]:!r.value[f]}},l=ie(()=>{const f=o.value;return{countries:f.length,resolved:f.filter(h=>h.internet_access!=="unknown").length,unknown:f.filter(h=>h.internet_access==="unknown").length,low:f.filter(h=>h.internet_access==="no").length}}),c=f=>f==="yes"?"ok":f==="partial"?"mid":f==="no"?"low":"unk",u=f=>f==="yes"?"connected":f==="partial"?"partial":f==="no"?"low":"unknown";return Qt(".ci{position:absolute;inset:0;overflow-y:auto;padding:20px 18px 44px;background:#f6f7f9;color:#0f1419;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.ci.is-dark{background:#0a1410;color:#e5e7eb}.ci-h{margin:0 0 4px;font-size:19px;font-weight:700;text-align:center}.ci-sub{margin:0 auto 18px;max-width:640px;font-size:12.5px;line-height:1.55;text-align:center;opacity:.75}.ci-tot{display:flex;gap:14px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}.ci-chip{font-size:11.5px;padding:4px 11px;border-radius:999px;background:rgba(0,0,0,.06);font-weight:600}.is-dark .ci-chip{background:rgba(255,255,255,.10)}.sec{max-width:1080px;margin:0 auto;padding-bottom:34px}.sec-head{position:sticky;top:0;z-index:6;background:#f6f7f9;display:flex;align-items:baseline;gap:10px;padding:10px 10px 8px;margin:0 2px 10px;border-bottom:1px solid rgba(0,0,0,.10);cursor:pointer;user-select:none;width:100%;text-align:left;border-top:0;border-left:0;border-right:0;font:inherit;color:inherit;box-shadow:0 6px 10px -8px rgba(0,0,0,.35);border-radius:4px 4px 0 0}.is-dark .sec-head{background:#0a1410;border-bottom-color:rgba(255,255,255,.12)}.sec-caret{display:inline-block;width:12px;font-size:10px;opacity:.55;transition:transform .18s}.sec-caret.open{transform:rotate(90deg)}.sec-name{margin:0;font-size:15px;font-weight:700}.sec-meta{font-size:11px;opacity:.6;font-variant-numeric:tabular-nums}.row{display:grid;grid-template-columns:1fr auto auto auto;gap:12px;align-items:center;padding:8px 10px;border-bottom:1px solid rgba(0,0,0,.06)}.is-dark .row{border-bottom-color:rgba(255,255,255,.07)}.r-name{font-size:13.5px;font-weight:600}.r-sub{font-size:11px;opacity:.6}.r-num{font-size:12.5px;font-variant-numeric:tabular-nums;text-align:right;min-width:72px}.pill{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}.pill.ok{background:rgba(16,185,129,.15);color:#0b7a5b}.pill.mid{background:rgba(245,158,11,.16);color:#8a6414}.pill.low{background:rgba(220,38,38,.13);color:#a12020}.pill.unk{background:rgba(0,0,0,.07);color:#6b7280}.is-dark .pill.unk{background:rgba(255,255,255,.10);color:#9ca3af}.src{max-width:1080px;margin:8px auto 0;font-size:11px;line-height:1.6;opacity:.6;text-align:center}","doxa-cities-internet"),(f,h)=>(q(),X("div",{class:Se(["ci",{"is-dark":n.value}])},[h[1]||(h[1]=M("h2",{class:"ci-h"},"Cities with Internet",-1)),h[2]||(h[2]=M("p",{class:"ci-sub"},[$e(" Connectivity where the unengaged people groups live. Every figure is a measured national statistic with its observation year — "),M("strong",null,"unknown means unmeasured, never assumed"),$e(". ")],-1)),M("div",Wg,[M("span",Ug,Q(l.value.countries)+" countries",1),M("span",jg,Q(l.value.resolved)+" measured",1),M("span",Gg,Q(l.value.unknown)+" unknown",1),M("span",Yg,Q(l.value.low)+" low-connectivity",1)]),(q(!0),X(de,null,lt(s.value,_=>(q(),X("section",{key:_.name,class:"sec"},[M("button",{type:"button",class:"sec-head",onClick:v=>a(_.name)},[M("span",{class:Se(["sec-caret",{open:!i(_.name)}])},"▶",2),M("h3",Hg,Q(_.name),1),M("span",qg,[$e(Q(_.items.length)+" countries · "+Q(_.groups.toLocaleString())+" people groups ",1),_.unknown?(q(),X(de,{key:0},[$e(" · "+Q(_.unknown)+" unmeasured",1)],64)):Le("",!0)])],8,Vg),Sc(M("div",null,[(q(!0),X(de,null,lt(_.items,v=>(q(),X("div",{key:v.iso3,class:"row"},[M("div",null,[M("div",zg,Q(v.country),1),M("div",Kg,[$e(Q(v.people_groups)+" people groups · "+Q(v.clusters)+" locations ",1),v.multi?(q(),X(de,{key:0},[$e(" · "+Q(v.multi)+" population centres",1)],64)):Le("",!0)])]),M("div",Xg,[v.internet_pct!==null&&v.internet_pct!==void 0?(q(),X(de,{key:0},[$e(Q(v.internet_pct)+"% ",1),M("div",Jg,Q(v.internet_year),1)],64)):(q(),X(de,{key:1},[$e("—")],64))]),M("div",Zg,[v.mobile_per_100!==null&&v.mobile_per_100!==void 0?(q(),X(de,{key:0},[$e(Q(v.mobile_per_100)+" ",1),h[0]||(h[0]=M("div",{class:"r-sub"},"mob/100",-1))],64)):(q(),X(de,{key:1},[$e("—")],64))]),M("span",{class:Se(["pill",c(v.internet_access)])},Q(u(v.internet_access)),3)]))),128))],512),[[Hu,!i(_.name)]])]))),128)),h[3]||(h[3]=M("p",{class:"src"}," Internet and mobile figures: World Bank Open Data (CC BY 4.0), most recent observation 2018–2024. Banding: connected ≥60% · partial 25–59% · low <25% of population using the internet. Country-resolution — per-city measurements are not publicly available at this scale. ISP names, carrier names and censorship history require per-country cited reporting and are not shown. ",-1))],2))}}},Symbol.toStringTag,{value:"Module"})),_s={boundaries:{label:"geoBoundaries",href:"https://www.geoboundaries.org",title:"Country and administrative boundaries — geoBoundaries gbOpen (mixed upstream licences; see docs)"},mapbox:{label:"Mapbox",href:"https://www.mapbox.com/about/maps/"},osm:{label:"© OpenStreetMap",href:"https://www.openstreetmap.org/copyright"}};function em(e,t={}){if(!e||typeof e.addControl!="function")return null;const{boundaries:n=!0,basemap:o=!0}=t,s=document.createElement("div");s.className="doxa-attribution mapboxgl-ctrl",s.style.cssText=["font:11px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif","background:rgba(255,255,255,.82)","color:#3a4048","padding:2px 6px","border-radius:3px 0 0 0","pointer-events:auto","max-width:min(92vw,420px)"].join(";");const r=[];n&&r.push(_s.boundaries),o&&(r.push(_s.mapbox),r.push(_s.osm)),s.innerHTML=r.map(a=>`${a.label}`).join(" · ");const i={onAdd:()=>s,onRemove:()=>{s.parentNode&&s.parentNode.removeChild(s)},getDefaultPosition:()=>"bottom-right"};return e.addControl(i,"bottom-right"),i}const tm={__name:"MapToolbar",props:{hasGeocoder:{type:Boolean,default:!0}},setup(e){return Qt(` +`,"pin-hint"),(v,k)=>r.value?(Y(),z("div",{key:0,class:Te(["pin-hint",{dark:o.value}]),role:"status"},[P("span",Ng,[k[0]||(k[0]=P("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),$e(" "+Z(s.value)+" ",1),P("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:h},"×")])],2)):Le("",!0)}};let Ag=0;const Eg=Zr("ui",{state:()=>({_storeInstanceId:++Ag,theme:"light",colorScheme:"default",reducedMotion:!1,highContrast:!1,activeTab:"doxa-regions",sidebarCollapsed:!1,mobileMenuOpen:!1,legendState:"collapsed",_customLegendHeight:null,searchMode:!1,hamburgerMenuOpen:!1,legendMode:"prayer",prayerFilter:null,engagementFilter:null,adoptionFilter:null,religionFilter:null,selectedPeopleGroup:null,breakpoint:"desktop",windowSize:{width:window.innerWidth,height:window.innerHeight},toasts:[],nextToastId:1,toastDuration:5e3,openModals:[],modalData:new Map,isGlobalLoading:!1,globalLoadingMessage:"Loading...",loadingStates:new Map,interactionHistory:[],maxHistoryLength:20,keyboardShortcutsEnabled:!0,screenReaderAnnouncement:"",focusTrapActive:!1,debugMode:!1,showPerformanceOverlay:!1}),getters:{isDarkTheme:e=>!1,isMobile:e=>e.breakpoint==="mobile",isTablet:e=>e.breakpoint==="tablet",isDesktop:e=>e.breakpoint==="desktop"||e.breakpoint==="wide",legendHeight:e=>e._customLegendHeight?e._customLegendHeight:e.legendState==="collapsed"?"48px":e.legendState==="open"?"30%":e.legendState==="fullyOpen"?"calc(100% - 80px)":"48px",caretRotation:e=>e.legendState==="collapsed"?0:90,showPullTab:e=>e.legendState==="open"||e.legendState==="fullyOpen",getToastsByType:e=>t=>e.toasts.filter(n=>n.type===t),hasOpenModal:e=>e.openModals.length>0,topModal:e=>e.openModals.length===0?null:e.openModals[e.openModals.length-1],isModalOpen:e=>t=>e.openModals.includes(t),isAnyLoading:e=>e.isGlobalLoading||e.loadingStates.size>0,isLoading:e=>t=>e.loadingStates.get(t)||!1},actions:{setTheme(e){if(!["light","dark","auto"].includes(e))return;e="light",this.theme=e;const n=this.isDarkTheme;document.documentElement.setAttribute("data-theme",n?"dark":"light");try{localStorage.setItem("theme",e)}catch{}},toggleTheme(){const e=this.theme==="light"?"dark":"light";this.setTheme(e)},setColorScheme(e){this.colorScheme=e,document.documentElement.setAttribute("data-color-scheme",e)},toggleReducedMotion(){this.reducedMotion=!this.reducedMotion,document.documentElement.setAttribute("data-reduced-motion",this.reducedMotion)},toggleHighContrast(){this.highContrast=!this.highContrast,document.documentElement.setAttribute("data-high-contrast",this.highContrast)},setActiveTab(e){this.activeTab=e,this.addToHistory({type:"tab-change",tabId:e,timestamp:Date.now()})},toggleSidebar(){this.sidebarCollapsed=!this.sidebarCollapsed},openMobileMenu(){this.mobileMenuOpen=!0},closeMobileMenu(){this.mobileMenuOpen=!1},setLegendMode(e){["prayer","detail"].includes(e)&&(this.legendMode=e)},setPrayerFilter(e){[null,"noPrayer","hasPrayer","fullPrayer"].includes(e)&&(this.prayerFilter=e)},setEngagementFilter(e){[null,"notEngaged","hasEngagement"].includes(e)&&(this.engagementFilter=e)},setAdoptionFilter(e){[null,"notAdopted","hasAdoption"].includes(e)&&(this.adoptionFilter=e)},setReligionFilter(e){[null,"C","M","H","B","E","J","S","N","O","U"].includes(e)&&(this.religionFilter=e)},selectPeopleGroup(e){this.selectedPeopleGroup=e,e?(this._legendStateBeforeDetail=this.legendState,this.legendState="open",this._customLegendHeight=null,this.setLegendMode("detail")):(this.legendState=this._legendStateBeforeDetail||"open",this._customLegendHeight=null,this.setLegendMode("prayer"))},setLegendState(e){["collapsed","open","fullyOpen"].includes(e)&&(this.legendState=e)},toggleSearchMode(){this.searchMode=!this.searchMode},setSearchMode(e){this.searchMode=e},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},updateBreakpoint(e){let t;e<768?t="mobile":e<1024?t="tablet":e<1920?t="desktop":t="wide",t!==this.breakpoint&&(this.breakpoint=t)},updateWindowSize(e,t){this.windowSize.width=e,this.windowSize.height=t,this.updateBreakpoint(e)},showToast(e){const{message:t,type:n="info",duration:o=this.toastDuration,action:s=null,persistent:r=!1}=e,i={id:this.nextToastId++,message:t,type:n,duration:o,action:s,persistent:r,createdAt:Date.now()};return this.toasts.push(i),!r&&o>0&&setTimeout(()=>{this.removeToast(i.id)},o),i.id},showSuccess(e,t={}){return this.showToast({message:e,type:"success",...t})},showError(e,t={}){return this.showToast({message:e,type:"error",duration:7e3,...t})},showWarning(e,t={}){return this.showToast({message:e,type:"warning",...t})},showInfo(e,t={}){return this.showToast({message:e,type:"info",...t})},removeToast(e){const t=this.toasts.findIndex(n=>n.id===e);t!==-1&&this.toasts.splice(t,1)},clearAllToasts(){this.toasts=[]},openModal(e,t={}){this.openModals.includes(e)||(this.openModals.push(e),this.modalData.set(e,t),this.focusTrapActive=!0)},closeModal(e=null){if(e){const t=this.openModals.indexOf(e);t!==-1&&(this.openModals.splice(t,1),this.modalData.delete(e))}else{const t=this.openModals.pop();t&&this.modalData.delete(t)}this.openModals.length===0&&(this.focusTrapActive=!1)},closeAllModals(){this.openModals=[],this.modalData.clear(),this.focusTrapActive=!1},getModalData(e){return this.modalData.get(e)},showGlobalLoading(e="Loading..."){this.isGlobalLoading=!0,this.globalLoadingMessage=e},hideGlobalLoading(){this.isGlobalLoading=!1},setLoading(e,t=!0){t?this.loadingStates.set(e,!0):this.loadingStates.delete(e)},addToHistory(e){this.interactionHistory.push(e),this.interactionHistory.length>this.maxHistoryLength&&this.interactionHistory.shift()},clearHistory(){this.interactionHistory=[]},announce(e,t="polite"){this.screenReaderAnnouncement=e,setTimeout(()=>{this.screenReaderAnnouncement===e&&(this.screenReaderAnnouncement="")},1e3)},toggleKeyboardShortcuts(){this.keyboardShortcutsEnabled=!this.keyboardShortcutsEnabled},toggleDebugMode(){this.debugMode=!this.debugMode},togglePerformanceOverlay(){this.showPerformanceOverlay=!this.showPerformanceOverlay},toggleLegend(){this.legendState==="fullyOpen"?this.legendState="open":this.legendState==="open"?this.legendState="collapsed":this.legendState="open",this._customLegendHeight=null},openLegend(){this.legendState="open",this._customLegendHeight=null},fullyOpenLegend(){this.legendState="fullyOpen",this._customLegendHeight=null},collapseLegend(){this.legendState="collapsed",this._customLegendHeight=null},setLegendHeight(e){this._customLegendHeight=e},handleLegendItemClick(){this.legendState==="fullyOpen"&&(this.legendState="open")},enableSearchMode(){this.searchMode=!0},disableSearchMode(){this.searchMode=!1},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},openHamburgerMenu(){this.hamburgerMenuOpen=!0},closeHamburgerMenu(){this.hamburgerMenuOpen=!1},init(){let e=null;try{e=localStorage.getItem("theme")}catch{}e&&this.setTheme(e),new ResizeObserver(n=>{for(const o of n)this.updateWindowSize(o.contentRect.width,o.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",n=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",n.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",n=>{this.reducedMotion=n.matches,document.documentElement.setAttribute("data-reduced-motion",n.matches)}))}}}),Tg=Zr("map",{state:()=>({maps:{},activeMapId:null,selectedRegion:null,selectedFamily:null,selectedAffinityBlock:null,selectedLanguage:null,selectedDialect:null,activeLegendTab:"family",selectedResource:null,selectedPeopleGroup:null,selectedPinIds:[],globalFilters:{},searchQuery:"",autoFly:{isActive:!1,speed:1,interval:5e3,currentIndex:0,items:[],timerId:null},guidedTour:{isActive:!1,currentStep:0,steps:[]},showClusters:!1,clusterMode:"region",clusterFilterProperty:null,clusterFilterValue:null,flySpeed:"normal",fullscreenMapId:null,preferences:{theme:"light",defaultMapStyle:"streets",enableAnimations:!0,autoSavePreferences:!0}}),getters:{getMapById:e=>t=>e.maps[t],activeMap:e=>e.activeMapId?e.maps[e.activeMapId]:null,hasMap:e=>t=>t in e.maps,allMapIds:e=>Object.keys(e.maps),hasSelection:e=>!!(e.selectedRegion||e.selectedFamily||e.selectedAffinityBlock||e.selectedPeopleGroup),isAutoFlying:e=>e.autoFly.isActive,isGuidedTourActive:e=>e.guidedTour.isActive,isMapFullscreen:e=>t=>e.fullscreenMapId===t},actions:{registerMap(e,t,n={}){let o=1.5;n.zoom!==void 0?o=n.zoom:t&&typeof t.getZoom=="function"&&(o=t.getZoom());let s=[0,0];if(n.center)s=n.center;else if(t&&typeof t.getCenter=="function"){const r=t.getCenter();r&&(s=[r.lng,r.lat])}this.maps[e]={instance:t,config:n,isReady:!1,zoom:o,center:s,registeredAt:Date.now()},this.activeMapId||(this.activeMapId=e)},setMapReady(e){const t=this.maps[e];t&&(t.isReady=!0)},updateMapState(e,t){const n=this.maps[e];n&&Object.assign(n,t)},unregisterMap(e){if(delete this.maps[e],this.activeMapId===e){const t=this.allMapIds;this.activeMapId=t.length>0?t[0]:null}},setActiveMap(e){e in this.maps&&(this.activeMapId=e)},selectRegion(e){this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedRegion=e},selectFamily(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedFamily=e},setActiveLegendTab(e){this.activeLegendTab=e},selectLanguage(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedFamily=null,this.selectedDialect=null,this.selectedLanguage=e},selectDialect(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedDialect=e},selectAffinityBlock(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedPeopleGroup=null,this.selectedAffinityBlock=e},selectPeopleGroup(e){this.selectedPeopleGroup=e},selectResource(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedResource===e?this.selectedResource=null:this.selectedResource=e},clearSelections(){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedAffinityBlock=null,this.selectedResource=null,this.selectedPeopleGroup=null,this.selectedPinIds=[],this.showClusters=!1,this.clusterMode="region"},setSelectedPinIds(e){this.selectedPinIds=e||[]},setFilter(e,t){this.globalFilters[e]=t},removeFilter(e){delete this.globalFilters[e]},clearFilters(){this.globalFilters={},this.searchQuery=""},setSearchQuery(e){this.searchQuery=e},startAutoFly(e,t=1){this.stopAutoFly(),this.autoFly.isActive=!0,this.autoFly.speed=t,this.autoFly.items=e,this.autoFly.currentIndex=0},stopAutoFly(){this.autoFly.timerId&&(clearInterval(this.autoFly.timerId),this.autoFly.timerId=null),this.autoFly.isActive=!1,this.autoFly.currentIndex=0},setAutoFlySpeed(e){this.autoFly.speed=Math.max(.5,Math.min(2,e))},nextAutoFlyItem(){if(!this.autoFly.isActive||this.autoFly.items.length===0)return;this.autoFly.currentIndex=(this.autoFly.currentIndex+1)%this.autoFly.items.length;const e=this.autoFly.items[this.autoFly.currentIndex];e.type==="region"?this.selectRegion(e):e.type==="family"&&this.selectFamily(e)},toggleClusters(e){typeof e=="boolean"?this.showClusters=e:this.showClusters=!this.showClusters},setClusterMode(e){["region","language-family","affinity-block","mst","resource"].includes(e)&&(this.clusterMode=e)},setClusterFilter(e,t){this.clusterFilterProperty=e||null,this.clusterFilterValue=t||null},clearClusterFilter(){this.clusterFilterProperty=null,this.clusterFilterValue=null},setFlySpeed(e){["slow","normal","fast"].includes(e)&&(this.flySpeed=e)},setSelectedFamily(e){this.selectFamily(e)},clearSelectedFamily(){this.selectFamily(null)},setSelectedRegion(e){this.selectRegion(e)},clearSelectedRegion(){this.selectRegion(null)},clearSelectedResource(){this.selectResource(null)},clearSelectedLanguage(){this.selectLanguage(null)},clearSelectedDialect(){this.selectDialect(null)},toggleFullscreen(e){this.fullscreenMapId===e?this.fullscreenMapId=null:this.fullscreenMapId=e},loadPreferences(){try{const e=localStorage.getItem("mapUserPreferences");if(e){const t=JSON.parse(e);this.preferences={...this.preferences,...t}}}catch(e){console.error("[mapStore] Failed to load preferences:",e)}},savePreferences(){try{localStorage.setItem("mapUserPreferences",JSON.stringify(this.preferences))}catch(e){console.error("[mapStore] Failed to save preferences:",e)}},setPreference(e,t){this.preferences[e]=t,this.preferences.autoSavePreferences&&this.savePreferences()}}}),Lg=Zr("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const n=await t();this.sources[e]=_n({features:n,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(n){console.error(`[dataStore] Failed to load source "${e}":`,n),this.loadingStates[e]={isLoading:!1,error:n}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=_n({features:t.normalizedData||[],timestamp:t.timestamp||Date.now()})},hasSourceData(e){return!!this.sources[e]},getSourceData(e){return this.sources[e]?{normalizedData:this.sources[e].features}:null}},getters:{getData:e=>t=>{var n;return((n=e.sources[t])==null?void 0:n.features)??null},isLoading:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.isLoading)??!1},getError:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.error)??null}}}),Sg={activeSource:"pray-tools"},Ig=(e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;return n},Fg={class:"profile-loader"},xg={key:0,class:"profile-error"},Pg={key:1,class:"profile-error"},Mg=Ig({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var b;const n=e,o=re(()=>{if(!n.profileConfig)return null;try{return JSON.parse(n.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",n.profileConfig),null}}),s=re(()=>{var m;return((m=o.value)==null?void 0:m.profile)||null}),r=re(()=>{var m;return((m=o.value)==null?void 0:m.tk)||""}),i=re(()=>{var m;return((m=o.value)==null?void 0:m.dataSource)||Sg.activeSource}),a=re(()=>{var m;return((m=o.value)==null?void 0:m.colorSet)||"default"}),l=re(()=>!1),c=re(()=>{var m;return((m=o.value)==null?void 0:m.pinHint)!==!1}),u=re(()=>{var C,S;const m=(((C=o.value)==null?void 0:C.locale)||((S=o.value)==null?void 0:S.lang)||"").split("-")[0].toLowerCase();return Ml.includes(m)?m:""}),f=Ge("appI18n",null);Mc(()=>{u.value&&f&&(f.global.locale.value=u.value)});const h=re(()=>{var m,C;return u.value||((C=(m=f==null?void 0:f.global)==null?void 0:m.locale)==null?void 0:C.value)||"en"}),_=re(()=>{var m;return((m=o.value)==null?void 0:m.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),v=Ge("profileModules",null);if(!v)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const k=re(()=>{if(!s.value)return null;const m=`./${s.value}.vue`;return v[m]?Yc(v[m]):(console.error(`[ProfileLoader] Profile not found: "${s.value}". Available:`,Object.keys(v)),null)});at("mapboxToken",r),at("dataSource",i),at("colorSet",a),at("profileConfig",o),at("instanceId",_),at("lang",h);const I=Eg(),N=Tg(),A=Lg();try{const m=typeof localStorage<"u"?localStorage.getItem("theme"):null;m&&((b=I.setTheme)==null||b.call(I,m))}catch{}return at("uiStore",I),at("mapStore",N),at("dataStore",A),(m,C)=>(Y(),z("div",Fg,[o.value?k.value?(Y(),Qe(yi(k.value),{key:2})):(Y(),z("div",Pg,[P("p",null,[C[1]||(C[1]=$e("⚠️ Profile ",-1)),P("strong",null,'"'+Z(s.value)+'"',1),C[2]||(C[2]=$e(" not found.",-1))])])):(Y(),z("div",xg,[...C[0]||(C[0]=[P("p",null,[$e("⚠️ "),P("strong",null,"doxa-map"),$e(": missing or invalid "),P("code",null,"profile-config"),$e(" prop.")],-1),P("p",null,[$e("Example: "),P("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),k.value&&l.value?(Y(),Qe(yi(Je(null)),{key:3})):Le("",!0),k.value&&c.value?(Y(),Qe(Cg,{key:4})):Le("",!0)]))}},[["__scopeId","data-v-b7582f77"]]),Dg=Object.assign({"./connectivity-list.vue":()=>ar(()=>Promise.resolve().then(()=>em),void 0),"./connectivity-map.vue":()=>ar(()=>Promise.resolve().then(()=>Km),void 0),"./data-tables.vue":()=>ar(()=>Promise.resolve().then(()=>b_),void 0)});function Bg(){return pp(Mg,{configureApp(e){e.use(vp()),e.use($g()),e.provide("profileModules",Dg)}})}const Rg=Bg();typeof customElements<"u"&&(customElements.get("cities-internet-map")||customElements.define("cities-internet-map",Rg));const Wg={countries:[{iso3:"IND",country:"India",region:"Asia",clusters:541,people_groups:856,multi:164,internet_access:"yes",internet_pct:64.9,internet_year:"2024",mobile_per_100:79.4,mobile_year:"2024",national_population:1450935791,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CHN",country:"People's Republic of China",region:"Asia",clusters:130,people_groups:154,multi:19,internet_access:"yes",internet_pct:92,internet_year:"2024",mobile_per_100:131.8,mobile_year:"2024",national_population:1408975e3,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SDN",country:"Sudan",region:"Middle East",clusters:75,people_groups:105,multi:20,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:70.2,mobile_year:"2022",national_population:50448963,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BRA",country:"Brazil",region:"Latin America & Caribbean",clusters:99,people_groups:104,multi:5,internet_access:"yes",internet_pct:84.5,internet_year:"2024",mobile_per_100:101.9,mobile_year:"2024",national_population:211998573,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LAO",country:"Lao People's Democratic Republic",region:"Asia",clusters:65,people_groups:95,multi:24,internet_access:"yes",internet_pct:65.6,internet_year:"2024",mobile_per_100:64.8,mobile_year:"2023",national_population:7769819,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TCD",country:"Chad",region:"Africa",clusters:48,people_groups:54,multi:6,internet_access:"no",internet_pct:12.6,internet_year:"2024",mobile_per_100:72.9,mobile_year:"2024",national_population:20299123,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NGA",country:"Nigeria",region:"Africa",clusters:35,people_groups:38,multi:3,internet_access:"partial",internet_pct:41.2,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:232679478,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"IDN",country:"Indonesia",region:"Asia",clusters:35,people_groups:36,multi:1,internet_access:"yes",internet_pct:72.8,internet_year:"2024",mobile_per_100:122.5,mobile_year:"2024",national_population:283487931,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NPL",country:"Nepal",region:"Asia",clusters:25,people_groups:33,multi:5,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:99.8,mobile_year:"2024",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ETH",country:"Ethiopia",region:"Africa",clusters:29,people_groups:29,multi:0,internet_access:"no",internet_pct:21.9,internet_year:"2024",mobile_per_100:65.1,mobile_year:"2024",national_population:132059767,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COL",country:"Colombia",region:"Latin America & Caribbean",clusters:26,people_groups:26,multi:0,internet_access:"yes",internet_pct:79.3,internet_year:"2024",mobile_per_100:174.1,mobile_year:"2024",national_population:52886363,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PAK",country:"Pakistan",region:"Asia",clusters:21,people_groups:24,multi:2,internet_access:"partial",internet_pct:57.3,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:251269164,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SSD",country:"South Sudan",region:"Africa",clusters:22,people_groups:22,multi:0,internet_access:"no",internet_pct:6.7,internet_year:"2019",mobile_per_100:46.6,mobile_year:"2023",national_population:11943408,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"RUS",country:"Russian Federation",region:"Europe",clusters:17,people_groups:21,multi:2,internet_access:"yes",internet_pct:94.4,internet_year:"2024",mobile_per_100:186.1,mobile_year:"2024",national_population:143669648,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"AFG",country:"Afghanistan",region:"Asia",clusters:15,people_groups:21,multi:5,internet_access:"no",internet_pct:16.1,internet_year:"2024",mobile_per_100:60.1,mobile_year:"2024",national_population:42647492,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"IRN",country:"Islamic Republic of Iran",region:"Middle East",clusters:19,people_groups:20,multi:1,internet_access:"yes",internet_pct:85.3,internet_year:"2024",mobile_per_100:174.1,mobile_year:"2024",national_population:91567738,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"DZA",country:"Algeria",region:"Middle East",clusters:15,people_groups:17,multi:2,internet_access:"yes",internet_pct:77.4,internet_year:"2024",mobile_per_100:115.5,mobile_year:"2024",national_population:46814308,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VNM",country:"Vietnam",region:"Asia",clusters:15,people_groups:16,multi:1,internet_access:"yes",internet_pct:84.2,internet_year:"2024",mobile_per_100:127.6,mobile_year:"2024",national_population:100987686,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TZA",country:"United Republic of Tanzania",region:"Africa",clusters:16,people_groups:16,multi:0,internet_access:"partial",internet_pct:31.2,internet_year:"2024",mobile_per_100:126.6,mobile_year:"2024",national_population:68560157,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LBY",country:"Libya",region:"Middle East",clusters:13,people_groups:15,multi:2,internet_access:"yes",internet_pct:82,internet_year:"2024",mobile_per_100:193,mobile_year:"2022",national_population:7381023,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BTN",country:"Bhutan",region:"Asia",clusters:12,people_groups:13,multi:1,internet_access:"yes",internet_pct:91.3,internet_year:"2024",mobile_per_100:99.8,mobile_year:"2024",national_population:791524,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GIN",country:"Guinea",region:"Africa",clusters:13,people_groups:13,multi:0,internet_access:"partial",internet_pct:33.3,internet_year:"2024",mobile_per_100:97.9,mobile_year:"2023",national_population:14754785,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MLI",country:"Mali",region:"Africa",clusters:13,people_groups:13,multi:0,internet_access:"partial",internet_pct:36.8,internet_year:"2024",mobile_per_100:112.1,mobile_year:"2022",national_population:24478595,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MYS",country:"Malaysia",region:"Asia",clusters:11,people_groups:12,multi:1,internet_access:"yes",internet_pct:98,internet_year:"2024",mobile_per_100:139.7,mobile_year:"2024",national_population:35557673,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"AGO",country:"Angola",region:"Africa",clusters:9,people_groups:10,multi:1,internet_access:"partial",internet_pct:40.7,internet_year:"2024",mobile_per_100:69.7,mobile_year:"2024",national_population:37885849,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PER",country:"Peru",region:"Latin America & Caribbean",clusters:10,people_groups:10,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:124.6,mobile_year:"2024",national_population:34217848,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"YEM",country:"Yemen",region:"Middle East",clusters:8,people_groups:9,multi:1,internet_access:"no",internet_pct:17.5,internet_year:"2019",mobile_per_100:50.9,mobile_year:"2023",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COD",country:"Democratic Republic of the Congo",region:"Africa",clusters:8,people_groups:9,multi:1,internet_access:"no",internet_pct:19.7,internet_year:"2024",mobile_per_100:58.5,mobile_year:"2024",national_population:109276265,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BEN",country:"Benin",region:"Africa",clusters:8,people_groups:9,multi:1,internet_access:"partial",internet_pct:34,internet_year:"2024",mobile_per_100:125.9,mobile_year:"2024",national_population:14462724,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SOM",country:"Somalia",region:"Africa",clusters:9,people_groups:9,multi:0,internet_access:"partial",internet_pct:27.9,internet_year:"2024",mobile_per_100:54,mobile_year:"2023",national_population:19009151,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ERI",country:"Eritrea",region:"Africa",clusters:7,people_groups:8,multi:1,internet_access:"no",internet_pct:14.3,internet_year:"2020",mobile_per_100:59.1,mobile_year:"2022",national_population:3535603,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"IRQ",country:"Iraq",region:"Middle East",clusters:7,people_groups:8,multi:1,internet_access:"yes",internet_pct:81.5,internet_year:"2024",mobile_per_100:100.1,mobile_year:"2024",national_population:46042015,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BFA",country:"Burkina Faso",region:"Africa",clusters:7,people_groups:8,multi:1,internet_access:"partial",internet_pct:28.3,internet_year:"2024",mobile_per_100:116.6,mobile_year:"2024",national_population:23548781,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"THA",country:"Thailand",region:"Asia",clusters:8,people_groups:8,multi:0,internet_access:"yes",internet_pct:90.9,internet_year:"2024",mobile_per_100:160.6,mobile_year:"2024",national_population:71668011,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PSE",country:"State of Palestine",region:"Middle East",clusters:3,people_groups:7,multi:1,internet_access:"yes",internet_pct:86.6,internet_year:"2023",mobile_per_100:76.7,mobile_year:"2023",national_population:5289152,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"OMN",country:"Oman",region:"Middle East",clusters:7,people_groups:7,multi:0,internet_access:"yes",internet_pct:95.3,internet_year:"2024",mobile_per_100:120.6,mobile_year:"2024",national_population:5281538,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MMR",country:"Myanmar",region:"Asia",clusters:7,people_groups:7,multi:0,internet_access:"partial",internet_pct:45.4,internet_year:"2020",mobile_per_100:114.3,mobile_year:"2024",national_population:54500091,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CMR",country:"Cameroon",region:"Africa",clusters:7,people_groups:7,multi:0,internet_access:"partial",internet_pct:46.3,internet_year:"2024",mobile_per_100:108.2,mobile_year:"2024",national_population:29123744,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TGO",country:"Togo",region:"Africa",clusters:5,people_groups:6,multi:1,internet_access:"partial",internet_pct:39.5,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:8406558,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"JPN",country:"Japan",region:"Asia",clusters:6,people_groups:6,multi:0,internet_access:"yes",internet_pct:85.5,internet_year:"2024",mobile_per_100:178.4,mobile_year:"2023",national_population:123975371,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"UGA",country:"Uganda",region:"Africa",clusters:6,people_groups:6,multi:0,internet_access:"no",internet_pct:8.9,internet_year:"2024",mobile_per_100:83.2,mobile_year:"2024",national_population:50015092,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ZMB",country:"Zambia",region:"Africa",clusters:6,people_groups:6,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:108.7,mobile_year:"2024",national_population:21314956,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VEN",country:"Venezuela",region:"Latin America & Caribbean",clusters:6,people_groups:6,multi:0,internet_access:"yes",internet_pct:76.7,internet_year:"2024",mobile_per_100:71,mobile_year:"2024",national_population:28405543,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NAM",country:"Namibia",region:"Africa",clusters:6,people_groups:6,multi:0,internet_access:"yes",internet_pct:64.9,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:3030131,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BRN",country:"Brunei Darussalam",region:"Asia",clusters:4,people_groups:5,multi:1,internet_access:"yes",internet_pct:96.3,internet_year:"2024",mobile_per_100:118.1,mobile_year:"2024",national_population:462721,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KEN",country:"Kenya",region:"Africa",clusters:5,people_groups:5,multi:0,internet_access:"partial",internet_pct:35,internet_year:"2024",mobile_per_100:126.5,mobile_year:"2024",national_population:56432944,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SYR",country:"Syrian Arab Republic",region:"Middle East",clusters:5,people_groups:5,multi:0,internet_access:"partial",internet_pct:33.8,internet_year:"2018",mobile_per_100:71.2,mobile_year:"2024",national_population:24672760,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LBN",country:"Lebanon",region:"Middle East",clusters:4,people_groups:4,multi:0,internet_access:"yes",internet_pct:80.6,internet_year:"2024",mobile_per_100:74,mobile_year:"2022",national_population:5805962,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MOZ",country:"Mozambique",region:"Africa",clusters:4,people_groups:4,multi:0,internet_access:"no",internet_pct:20.5,internet_year:"2024",mobile_per_100:49.5,mobile_year:"2024",national_population:34631766,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MAR",country:"Morocco",region:"Middle East",clusters:4,people_groups:4,multi:0,internet_access:"yes",internet_pct:91.2,internet_year:"2024",mobile_per_100:153.1,mobile_year:"2024",national_population:38081173,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"QAT",country:"Qatar",region:"Middle East",clusters:1,people_groups:3,multi:1,internet_access:"yes",internet_pct:98.1,internet_year:"2024",mobile_per_100:153.6,mobile_year:"2024",national_population:2857822,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SAU",country:"Saudi Arabia",region:"Middle East",clusters:2,people_groups:3,multi:1,internet_access:"yes",internet_pct:100,internet_year:"2024",mobile_per_100:159.5,mobile_year:"2024",national_population:35300280,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TUR",country:"Türkiye",region:"Europe",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:87.3,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:85518661,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"AZE",country:"Azerbaijan",region:"Asia",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:90.4,internet_year:"2024",mobile_per_100:109.5,mobile_year:"2024",national_population:10202830,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GMB",country:"Republic of The Gambia",region:"Africa",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:49.5,internet_year:"2024",mobile_per_100:126.2,mobile_year:"2024",national_population:2759988,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"JOR",country:"Jordan",region:"Middle East",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:95.6,internet_year:"2024",mobile_per_100:69.6,mobile_year:"2024",national_population:11552876,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ZWE",country:"Zimbabwe",region:"Africa",clusters:3,people_groups:3,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:94.2,mobile_year:"2024",national_population:16634373,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COM",country:"Comoros",region:"Africa",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:32.5,internet_year:"2024",mobile_per_100:109.9,mobile_year:"2023",national_population:866628,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"USA",country:"United States of America",region:"Other",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:94.7,internet_year:"2024",mobile_per_100:113.2,mobile_year:"2024",national_population:340003797,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BGD",country:"Bangladesh",region:"Asia",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:53.4,internet_year:"2024",mobile_per_100:108.1,mobile_year:"2024",national_population:173562364,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GNB",country:"Guinea-Bissau",region:"Africa",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:29.8,internet_year:"2024",mobile_per_100:147.2,mobile_year:"2024",national_population:2201352,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KOS",country:"KOS",region:"Europe",clusters:3,people_groups:3,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MRT",country:"Mauritania",region:"Middle East",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:45.8,internet_year:"2024",mobile_per_100:92.1,mobile_year:"2024",national_population:5169395,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ESH",country:"Western Sahara",region:"Middle East",clusters:3,people_groups:3,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TJK",country:"Tajikistan",region:"Asia",clusters:3,people_groups:3,multi:0,internet_access:"partial",internet_pct:55.8,internet_year:"2024",mobile_per_100:76.2,mobile_year:"2023",national_population:10590927,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"EGY",country:"Egypt",region:"Middle East",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:74.6,internet_year:"2024",mobile_per_100:97.1,mobile_year:"2024",national_population:116538258,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MNG",country:"Mongolia",region:"Asia",clusters:3,people_groups:3,multi:0,internet_access:"yes",internet_pct:85.1,internet_year:"2024",mobile_per_100:140.7,mobile_year:"2024",national_population:3524788,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BHR",country:"Bahrain",region:"Middle East",clusters:1,people_groups:2,multi:1,internet_access:"yes",internet_pct:100,internet_year:"2024",mobile_per_100:159.5,mobile_year:"2024",national_population:1588670,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SUR",country:"Suriname",region:"North America & Non-Spanish Caribbean",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:142.1,mobile_year:"2024",national_population:634431,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NER",country:"Niger",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:60.6,mobile_year:"2024",national_population:27032412,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ZAF",country:"South Africa",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:78.4,internet_year:"2024",mobile_per_100:179.3,mobile_year:"2024",national_population:64007187,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CCK",country:"Cocos (Keeling) Islands",region:"N/A",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COG",country:"Republic of the Congo",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"partial",internet_pct:47.3,internet_year:"2024",mobile_per_100:95.5,mobile_year:"2024",national_population:6332961,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ARE",country:"United Arab Emirates",region:"Middle East",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:100,internet_year:"2024",mobile_per_100:203.2,mobile_year:"2024",national_population:10986400,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GAB",country:"Gabon",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:68.7,internet_year:"2024",mobile_per_100:125.3,mobile_year:"2024",national_population:2538952,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GUF",country:"French Guiana",region:"N/A",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CIV",country:"Cote d'Ivoire",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"partial",internet_pct:41.4,internet_year:"2024",mobile_per_100:183.9,mobile_year:"2024",national_population:31934230,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KGZ",country:"Kyrgyzstan",region:"Asia",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:92,internet_year:"2024",mobile_per_100:107.5,mobile_year:"2024",national_population:7221868,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LBR",country:"Liberia",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"partial",internet_pct:32.2,internet_year:"2024",mobile_per_100:32.1,mobile_year:"2022",national_population:5612817,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SWE",country:"Sweden",region:"Europe",clusters:2,people_groups:2,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:140.7,mobile_year:"2024",national_population:10569709,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TUN",country:"Tunisia",region:"Middle East",clusters:2,people_groups:2,multi:0,internet_access:"yes",internet_pct:76.5,internet_year:"2024",mobile_per_100:117.6,mobile_year:"2024",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SLE",country:"Sierra Leone",region:"Africa",clusters:2,people_groups:2,multi:0,internet_access:"partial",internet_pct:25.1,internet_year:"2024",mobile_per_100:107.9,mobile_year:"2022",national_population:8642022,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"AND",country:"Andorra",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:94.4,internet_year:"2024",mobile_per_100:155.7,mobile_year:"2024",national_population:81938,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SEN",country:"Senegal",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:60.1,internet_year:"2024",mobile_per_100:123.9,mobile_year:"2024",national_population:18501984,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MNE",country:"Montenegro",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:88.9,internet_year:"2024",mobile_per_100:221.7,mobile_year:"2024",national_population:623525,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BOL",country:"Bolivia",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:79.7,internet_year:"2024",mobile_per_100:98,mobile_year:"2024",national_population:12413315,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ECU",country:"Ecuador",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:77.2,internet_year:"2024",mobile_per_100:101.6,mobile_year:"2024",national_population:18135478,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VIR",country:"Virgin Islands, U.S.",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:91.5,mobile_year:"2022",national_population:104377,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ATG",country:"Antigua and Barbuda",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:72.7,internet_year:"2024",mobile_per_100:200.5,mobile_year:"2022",national_population:93772,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ARM",country:"Armenia",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:81.3,internet_year:"2024",mobile_per_100:134.9,mobile_year:"2024",national_population:3033500,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ABW",country:"Aruba",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:130.6,mobile_year:"2022",national_population:107995,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BHS",country:"Bahamas",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:92.5,internet_year:"2024",mobile_per_100:96.7,mobile_year:"2024",national_population:401283,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BRB",country:"Barbados",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:70.4,internet_year:"2024",mobile_per_100:114.6,mobile_year:"2022",national_population:282467,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BLR",country:"Belarus",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:94.3,internet_year:"2024",mobile_per_100:131.1,mobile_year:"2024",national_population:9132629,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BMU",country:"Bermuda",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:96.7,mobile_year:"2024",national_population:64636,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BIH",country:"Bosnia and Herzegovina",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:86.1,internet_year:"2024",mobile_per_100:121.2,mobile_year:"2024",national_population:3164253,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VGB",country:"Virgin Islands, British",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:39471,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BGR",country:"Bulgaria",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:82.4,internet_year:"2024",mobile_per_100:118.1,mobile_year:"2024",national_population:6441421,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KHM",country:"Cambodia",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:68.5,internet_year:"2024",mobile_per_100:116.1,mobile_year:"2024",national_population:17638801,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CYM",country:"Cayman Islands",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:139.3,mobile_year:"2022",national_population:74457,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CAF",country:"Central African Republic",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"no",internet_pct:13.8,internet_year:"2024",mobile_per_100:38.8,mobile_year:"2022",national_population:5330690,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CXR",country:"Christmas Island",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"COK",country:"Cook Islands",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CUB",country:"Cuba",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:70.5,internet_year:"2024",mobile_per_100:72.9,mobile_year:"2024",national_population:10979783,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CUW",country:"Curaçao",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:93.8,mobile_year:"2023",national_population:155967,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CYP",country:"Cyprus",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:89.6,internet_year:"2024",mobile_per_100:156.2,mobile_year:"2024",national_population:1358282,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"DJI",country:"Djibouti",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:65.3,internet_year:"2024",mobile_per_100:48.5,mobile_year:"2023",national_population:1168722,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"DMA",country:"Dominica",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:82,internet_year:"2024",mobile_per_100:85.2,mobile_year:"2022",national_population:66205,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GNQ",country:"Equatorial Guinea",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:63.3,internet_year:"2024",mobile_per_100:49.5,mobile_year:"2022",national_population:1892516,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"FRO",country:"Faroe Islands",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:105.8,mobile_year:"2022",national_population:54640,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"FJI",country:"Fiji",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:74.7,internet_year:"2024",mobile_per_100:574.2,mobile_year:"2024",national_population:928784,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PYF",country:"French Polynesia",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:118.8,mobile_year:"2023",national_population:281807,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GEO",country:"Georgia",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:83.8,internet_year:"2024",mobile_per_100:161.2,mobile_year:"2024",national_population:3812518,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GIB",country:"Gibraltar",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:97.6,mobile_year:"2022",national_population:39329,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GRC",country:"Greece",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:86.3,internet_year:"2024",mobile_per_100:113.6,mobile_year:"2024",national_population:10405134,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GRD",country:"Grenada",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:70.2,internet_year:"2024",mobile_per_100:95.8,mobile_year:"2022",national_population:117207,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GLP",country:"Guadeloupe",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GUM",country:"Guam",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:167777,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GGY",country:"Guernsey",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ISL",country:"Iceland",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:98.2,internet_year:"2024",mobile_per_100:120.9,mobile_year:"2024",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KIR",country:"Kiribati",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:89.4,internet_year:"2024",mobile_per_100:53.5,mobile_year:"2024",national_population:134518,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"JAM",country:"Jamaica",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:90.1,internet_year:"2024",mobile_per_100:117.7,mobile_year:"2024",national_population:2839175,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"JEY",country:"Jersey",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KAZ",country:"Kazakhstan",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:93.4,internet_year:"2024",mobile_per_100:127.1,mobile_year:"2024",national_population:20592571,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PRK",country:"North Korea",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:24.1,mobile_year:"2022",national_population:26498823,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"KWT",country:"Kuwait",region:"Middle East",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:99.7,internet_year:"2024",mobile_per_100:167.7,mobile_year:"2023",national_population:4897263,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LIE",country:"Liechtenstein",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:98.3,internet_year:"2024",mobile_per_100:128.9,mobile_year:"2024",national_population:40450,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LUX",country:"Luxembourg",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:98.8,internet_year:"2024",mobile_per_100:144.5,mobile_year:"2023",national_population:677012,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MYT",country:"Mayotte",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MDV",country:"Maldives",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:85.2,internet_year:"2024",mobile_per_100:148.1,mobile_year:"2024",national_population:527799,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MLT",country:"Malta",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:93.9,internet_year:"2024",mobile_per_100:142.1,mobile_year:"2024",national_population:568847,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MNP",country:"Northern Mariana Islands",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:44278,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MHL",country:"Marshall Islands",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:65.9,internet_year:"2024",mobile_per_100:39.7,mobile_year:"2022",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MUS",country:"Mauritius",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:73.3,internet_year:"2024",mobile_per_100:172.7,mobile_year:"2024",national_population:1245779,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"FSM",country:"Micronesia, Federated States of",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"partial",internet_pct:39.5,internet_year:"2024",mobile_per_100:20,mobile_year:"2022",national_population:113160,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MCO",country:"Monaco",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:99,internet_year:"2024",mobile_per_100:107.4,mobile_year:"2024",national_population:38631,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MSR",country:"Montserrat",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NCL",country:"New Caledonia",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:91.7,mobile_year:"2022",national_population:292639,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NIU",country:"Niue",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VUT",country:"Vanuatu",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:89.3,mobile_year:"2023",national_population:327777,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NFK",country:"Norfolk Island",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"HKG",country:"Hong Kong",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:95.8,internet_year:"2024",mobile_per_100:364.8,mobile_year:"2024",national_population:7524100,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MAC",country:"Macao",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:89.8,internet_year:"2024",mobile_per_100:201.1,mobile_year:"2024",national_population:687e3,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PLW",country:"Palau",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:83.9,internet_year:"2024",mobile_per_100:135.4,mobile_year:"2023",national_population:17695,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PNG",country:"Papua New Guinea",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"no",internet_pct:18.8,internet_year:"2024",mobile_per_100:38.8,mobile_year:"2024",national_population:10576502,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"BLM",country:"Saint Barthélemy",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SHN",country:"Saint Helena",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LCA",country:"Saint Lucia",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:68.2,internet_year:"2024",mobile_per_100:98.7,mobile_year:"2022",national_population:179744,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SMR",country:"San Marino",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:97.4,internet_year:"2024",mobile_per_100:120.3,mobile_year:"2022",national_population:33977,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ASM",country:"American Samoa",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:46765,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"WSM",country:"Samoa",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:62.4,mobile_year:"2022",national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"STP",country:"Sao Tome and Principe",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"partial",internet_pct:59.1,internet_year:"2024",mobile_per_100:62.4,mobile_year:"2024",national_population:235536,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SXM",country:"Sint Maarten (Dutch part)",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:205.4,mobile_year:"2022",national_population:43350,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SLB",country:"Solomon Islands",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"partial",internet_pct:29,internet_year:"2024",mobile_per_100:62.1,mobile_year:"2022",national_population:819198,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"LKA",country:"Sri Lanka",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"partial",internet_pct:54.6,internet_year:"2024",mobile_per_100:132.5,mobile_year:"2024",national_population:21916e3,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SJM",country:"Svalbard and Jan Mayen",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"SWZ",country:"Eswatini",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:63.4,internet_year:"2024",mobile_per_100:139.8,mobile_year:"2024",national_population:1242822,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TKL",country:"Tokelau",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TON",country:"Tonga",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:67.4,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:104175,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"TCA",country:"Turks and Caicos Islands",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:46535,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"VCT",country:"Saint Vincent and the Grenadines",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:76.2,internet_year:"2024",mobile_per_100:108.4,mobile_year:"2024",national_population:100616,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"WLF",country:"Wallis and Futuna",region:"N/A",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:null,mobile_year:null,national_population:null,population_year:null,censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PRY",country:"Paraguay",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:81.6,internet_year:"2024",mobile_per_100:126.6,mobile_year:"2023",national_population:6929153,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"FIN",country:"Finland",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:93.7,internet_year:"2024",mobile_per_100:125.9,mobile_year:"2024",national_population:5619911,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ALB",country:"Albania",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:85.9,internet_year:"2024",mobile_per_100:89.1,mobile_year:"2024",national_population:2377128,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PAN",country:"Panama",region:"Latin America & Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:72.8,internet_year:"2024",mobile_per_100:156.6,mobile_year:"2023",national_population:4515577,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"NZL",country:"New Zealand",region:"Oceania",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:130.1,mobile_year:"2024",national_population:529e4,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"CZE",country:"Czech Republic",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:87.7,internet_year:"2024",mobile_per_100:126.6,mobile_year:"2024",national_population:10905028,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GHA",country:"Ghana",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:72.2,internet_year:"2024",mobile_per_100:113.6,mobile_year:"2024",national_population:34427414,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"PHL",country:"Philippines",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:67.3,internet_year:"2024",mobile_per_100:115.3,mobile_year:"2024",national_population:115843670,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ISR",country:"Israel",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:88.2,internet_year:"2024",mobile_per_100:null,mobile_year:null,national_population:10002200,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"GUY",country:"Guyana",region:"North America & Non-Spanish Caribbean",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:83,internet_year:"2024",mobile_per_100:112.6,mobile_year:"2022",national_population:831087,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"UZB",country:"Uzbekistan",region:"Asia",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:89.5,internet_year:"2024",mobile_per_100:110.5,mobile_year:"2024",national_population:36361859,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"ESP",country:"Spain",region:"Europe",clusters:1,people_groups:1,multi:0,internet_access:"yes",internet_pct:95.8,internet_year:"2024",mobile_per_100:130.3,mobile_year:"2024",national_population:48848840,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}},{iso3:"MWI",country:"Malawi",region:"Africa",clusters:1,people_groups:1,multi:0,internet_access:"unknown",internet_pct:null,internet_year:null,mobile_per_100:69.3,mobile_year:"2024",national_population:21655286,population_year:"2024",censorship:"unknown",censorship_note:"not machine-readable from this source; requires a cited report (OONI / Access Now / Freedom on the Net)",resolution:"country",banding:"yes >=60% · partial 25-59% · no <25% of population using the internet",source:{name:"World Bank Open Data",url:"https://api.worldbank.org/v2",licence:"CC BY 4.0",accessed:"2026-08-01"}}]},Ug={class:"ci-tot"},jg={class:"ci-chip"},Gg={class:"ci-chip"},Yg={class:"ci-chip"},Vg={class:"ci-chip"},Hg=["onClick"],qg={class:"sec-name"},zg={class:"sec-meta"},Kg={class:"r-name"},Xg={class:"r-sub"},Jg={class:"r-num"},Zg={class:"r-sub"},Qg={class:"r-num"},em=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"connectivity-list",setup(e){const t=Ge("profileConfig",ie(null)),n=re(()=>{var f;return((f=t.value)==null?void 0:f.isDark)===!0}),o=re(()=>Wg.countries||[]),s=re(()=>{const f=new Map;for(const h of o.value){const _=h.region||"Other";f.has(_)||f.set(_,[]),f.get(_).push(h)}return[...f.entries()].map(([h,_])=>({name:h,items:_.slice().sort((v,k)=>k.people_groups-v.people_groups),groups:_.reduce((v,k)=>v+k.people_groups,0),unknown:_.filter(v=>v.internet_access==="unknown").length})).sort((h,_)=>_.groups-h.groups)}),r=ie({}),i=f=>!!r.value[f],a=f=>{r.value={...r.value,[f]:!r.value[f]}},l=re(()=>{const f=o.value;return{countries:f.length,resolved:f.filter(h=>h.internet_access!=="unknown").length,unknown:f.filter(h=>h.internet_access==="unknown").length,low:f.filter(h=>h.internet_access==="no").length}}),c=f=>f==="yes"?"ok":f==="partial"?"mid":f==="no"?"low":"unk",u=f=>f==="yes"?"connected":f==="partial"?"partial":f==="no"?"low":"unknown";return Wt(".ci{position:absolute;inset:0;overflow-y:auto;padding:20px 18px 44px;background:#f6f7f9;color:#0f1419;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.ci.is-dark{background:#0a1410;color:#e5e7eb}.ci-h{margin:0 0 4px;font-size:19px;font-weight:700;text-align:center}.ci-sub{margin:0 auto 18px;max-width:640px;font-size:12.5px;line-height:1.55;text-align:center;opacity:.75}.ci-tot{display:flex;gap:14px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}.ci-chip{font-size:11.5px;padding:4px 11px;border-radius:999px;background:rgba(0,0,0,.06);font-weight:600}.is-dark .ci-chip{background:rgba(255,255,255,.10)}.sec{max-width:1080px;margin:0 auto;padding-bottom:34px}.sec-head{position:sticky;top:0;z-index:6;background:#f6f7f9;display:flex;align-items:baseline;gap:10px;padding:10px 10px 8px;margin:0 2px 10px;border-bottom:1px solid rgba(0,0,0,.10);cursor:pointer;user-select:none;width:100%;text-align:left;border-top:0;border-left:0;border-right:0;font:inherit;color:inherit;box-shadow:0 6px 10px -8px rgba(0,0,0,.35);border-radius:4px 4px 0 0}.is-dark .sec-head{background:#0a1410;border-bottom-color:rgba(255,255,255,.12)}.sec-caret{display:inline-block;width:12px;font-size:10px;opacity:.55;transition:transform .18s}.sec-caret.open{transform:rotate(90deg)}.sec-name{margin:0;font-size:15px;font-weight:700}.sec-meta{font-size:11px;opacity:.6;font-variant-numeric:tabular-nums}.row{display:grid;grid-template-columns:1fr auto auto auto;gap:12px;align-items:center;padding:8px 10px;border-bottom:1px solid rgba(0,0,0,.06)}.is-dark .row{border-bottom-color:rgba(255,255,255,.07)}.r-name{font-size:13.5px;font-weight:600}.r-sub{font-size:11px;opacity:.6}.r-num{font-size:12.5px;font-variant-numeric:tabular-nums;text-align:right;min-width:72px}.pill{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}.pill.ok{background:rgba(16,185,129,.15);color:#0b7a5b}.pill.mid{background:rgba(245,158,11,.16);color:#8a6414}.pill.low{background:rgba(220,38,38,.13);color:#a12020}.pill.unk{background:rgba(0,0,0,.07);color:#6b7280}.is-dark .pill.unk{background:rgba(255,255,255,.10);color:#9ca3af}.src{max-width:1080px;margin:8px auto 0;font-size:11px;line-height:1.6;opacity:.6;text-align:center}","doxa-cities-internet"),(f,h)=>(Y(),z("div",{class:Te(["ci",{"is-dark":n.value}])},[h[1]||(h[1]=P("h2",{class:"ci-h"},"Cities with Internet",-1)),h[2]||(h[2]=P("p",{class:"ci-sub"},[$e(" Connectivity where the unengaged people groups live. Every figure is a measured national statistic with its observation year — "),P("strong",null,"unknown means unmeasured, never assumed"),$e(". ")],-1)),P("div",Ug,[P("span",jg,Z(l.value.countries)+" countries",1),P("span",Gg,Z(l.value.resolved)+" measured",1),P("span",Yg,Z(l.value.unknown)+" unknown",1),P("span",Vg,Z(l.value.low)+" low-connectivity",1)]),(Y(!0),z(pe,null,lt(s.value,_=>(Y(),z("section",{key:_.name,class:"sec"},[P("button",{type:"button",class:"sec-head",onClick:v=>a(_.name)},[P("span",{class:Te(["sec-caret",{open:!i(_.name)}])},"▶",2),P("h3",qg,Z(_.name),1),P("span",zg,[$e(Z(_.items.length)+" countries · "+Z(_.groups.toLocaleString())+" people groups ",1),_.unknown?(Y(),z(pe,{key:0},[$e(" · "+Z(_.unknown)+" unmeasured",1)],64)):Le("",!0)])],8,Hg),Ic(P("div",null,[(Y(!0),z(pe,null,lt(_.items,v=>(Y(),z("div",{key:v.iso3,class:"row"},[P("div",null,[P("div",Kg,Z(v.country),1),P("div",Xg,[$e(Z(v.people_groups)+" people groups · "+Z(v.clusters)+" locations ",1),v.multi?(Y(),z(pe,{key:0},[$e(" · "+Z(v.multi)+" population centres",1)],64)):Le("",!0)])]),P("div",Jg,[v.internet_pct!==null&&v.internet_pct!==void 0?(Y(),z(pe,{key:0},[$e(Z(v.internet_pct)+"% ",1),P("div",Zg,Z(v.internet_year),1)],64)):(Y(),z(pe,{key:1},[$e("—")],64))]),P("div",Qg,[v.mobile_per_100!==null&&v.mobile_per_100!==void 0?(Y(),z(pe,{key:0},[$e(Z(v.mobile_per_100)+" ",1),h[0]||(h[0]=P("div",{class:"r-sub"},"mob/100",-1))],64)):(Y(),z(pe,{key:1},[$e("—")],64))]),P("span",{class:Te(["pill",c(v.internet_access)])},Z(u(v.internet_access)),3)]))),128))],512),[[qu,!i(_.name)]])]))),128)),h[3]||(h[3]=P("p",{class:"src"}," Internet and mobile figures: World Bank Open Data (CC BY 4.0), most recent observation 2018–2024. Banding: connected ≥60% · partial 25–59% · low <25% of population using the internet. Country-resolution — per-city measurements are not publicly available at this scale. ISP names, carrier names and censorship history require per-country cited reporting and are not shown. ",-1))],2))}}},Symbol.toStringTag,{value:"Module"})),bs={boundaries:{label:"geoBoundaries",href:"https://www.geoboundaries.org",title:"Country and administrative boundaries — geoBoundaries gbOpen (mixed upstream licences; see docs)"},mapbox:{label:"Mapbox",href:"https://www.mapbox.com/about/maps/"},osm:{label:"© OpenStreetMap",href:"https://www.openstreetmap.org/copyright"}};function tm(e,t={}){if(!e||typeof e.addControl!="function")return null;const{boundaries:n=!0,basemap:o=!0}=t,s=document.createElement("div");s.className="doxa-attribution mapboxgl-ctrl",s.style.cssText=["font:11px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif","background:rgba(255,255,255,.82)","color:#3a4048","padding:2px 6px","border-radius:3px 0 0 0","pointer-events:auto","max-width:min(92vw,420px)"].join(";");const r=[];n&&r.push(bs.boundaries),o&&(r.push(bs.mapbox),r.push(bs.osm)),s.innerHTML=r.map(a=>`${a.label}`).join(" · ");const i={onAdd:()=>s,onRemove:()=>{s.parentNode&&s.parentNode.removeChild(s)},getDefaultPosition:()=>"bottom-right"};return e.addControl(i,"bottom-right"),i}const nm={__name:"MapToolbar",props:{hasGeocoder:{type:Boolean,default:!0}},setup(e){const t=ie(null);return at("mapToolbar",{el:t}),Wt(` .map-toolbar { position: absolute; top: 6px; - right: 3px; + inset-inline-end: 3px; display: flex; flex-direction: column; gap: var(--map-toolbar-gap, 8px); @@ -84,7 +84,7 @@ .map-toolbar { top: 72px; gap: 6px; } .map-toolbar.map-toolbar--no-geocoder { top: 6px; gap: 6px; } } -`,"map-toolbar"),(t,n)=>(q(),X("div",{class:Se(["map-toolbar",{"map-toolbar--no-geocoder":!e.hasGeocoder}])},[yi(t.$slots,"default")],2))}},nm=["title","disabled"],uo={__name:"MapControlButton",props:{isDark:{type:Boolean,default:!1},title:{type:String,default:""},active:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["click"],setup(e){return Qt(` +`,"map-toolbar"),(n,o)=>(Y(),z("div",{ref_key:"toolbarEl",ref:t,class:Te(["map-toolbar",{"map-toolbar--no-geocoder":!e.hasGeocoder}])},[Fr(n.$slots,"default")],2))}},om=["title","disabled"],co={__name:"MapControlButton",props:{isDark:{type:Boolean,default:!1},title:{type:String,default:""},active:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["click"],setup(e){return Wt(` .mcb{ width:var(--map-btn-size,40px);height:var(--map-btn-size,40px); background:#fff; @@ -108,7 +108,23 @@ .mcb.dark:hover:not(:disabled){background:#4e594f;box-shadow:0 2px 8px rgba(0,0,0,0.5);} .mcb.dark.active{background:#4e594f;color:#92b195;} @media(max-width:767px){.mcb{width:36px;height:36px;}} -`,"map-control-button"),(t,n)=>(q(),X("button",{class:Se(["mcb",{dark:e.isDark,active:e.active}]),title:e.title,disabled:e.disabled,onClick:n[0]||(n[0]=o=>t.$emit("click"))},[yi(t.$slots,"default")],10,nm))}},om={__name:"ZoomInButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1}},setup(e){const{t}=Zt(),n=e;function o(){var s;(s=n.map)==null||s.zoomIn()}return(s,r)=>(q(),Ze(uo,{"is-dark":e.isDark,title:nt(t)("buttons.zoomIn"),onClick:o},{default:sn(()=>[...r[0]||(r[0]=[M("span",{style:{"font-size":"20px","line-height":"1","font-weight":"600"}},"+",-1)])]),_:1},8,["is-dark","title"]))}},rm={__name:"ZoomOutButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1}},setup(e){const{t}=Zt(),n=e;function o(){var s;(s=n.map)==null||s.zoomOut()}return(s,r)=>(q(),Ze(uo,{"is-dark":e.isDark,title:nt(t)("buttons.zoomOut"),onClick:o},{default:sn(()=>[...r[0]||(r[0]=[M("span",{style:{"font-size":"22px","line-height":"1","font-weight":"600"}},"−",-1)])]),_:1},8,["is-dark","title"]))}},sm={__name:"LocationButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1},center:{type:Array,default:()=>[20,10]},zoom:{type:Number,default:1.8},userZoom:{type:Number,default:10}},setup(e){const{t}=Zt(),n=e;function o(){var r;(r=n.map)==null||r.flyTo({center:n.center,zoom:n.zoom,duration:1200})}function s(){if(n.map){if(typeof navigator>"u"||!navigator.geolocation){o();return}navigator.geolocation.getCurrentPosition(r=>{const{longitude:i,latitude:a}=r.coords;Number.isFinite(i)&&Number.isFinite(a)?n.map.flyTo({center:[i,a],zoom:n.userZoom,duration:1500}):o()},()=>o(),{enableHighAccuracy:!1,timeout:5e3,maximumAge:6e4})}}return(r,i)=>(q(),Ze(uo,{"is-dark":e.isDark,title:nt(t)("buttons.resetView"),onClick:s},{default:sn(()=>[...i[0]||(i[0]=[M("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"currentColor"},[M("path",{d:"M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z"})],-1)])]),_:1},8,["is-dark","title"]))}},im={key:0,xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 29 29",fill:"currentColor"},am={key:1,xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 29 29",fill:"currentColor"},lm={__name:"FullscreenButton",props:{mapContainer:{type:Object,default:null},isDark:{type:Boolean,default:!1}},emits:["change"],setup(e,{emit:t}){const{t:n}=Zt(),o=e,s=t,r=ce(!1);let i=null,a=null,l=null,c=null,u=null,f=null,h=null,_=null,v=null,k=null,F=null,C=0,L=0,y=null,m=null;function A(){if(typeof document>"u")return!1;const V=typeof navigator<"u"&&navigator.userAgent||"";return/iPad|iPhone|iPod/.test(V)||V.includes("Mac")&&typeof document<"u"&&"ontouchend"in document?!1:!!(document.fullscreenEnabled||document.webkitFullscreenEnabled)}function S(){var V,R,K;return((K=(R=(V=o.mapContainer)==null?void 0:V.getRootNode)==null?void 0:R.call(V))==null?void 0:K.host)??null}function $(){var R,K;const V=(K=(R=o.mapContainer)==null?void 0:R.getRootNode)==null?void 0:K.call(R);return document.fullscreenElement||document.webkitFullscreenElement||(V&&V instanceof ShadowRoot?V.fullscreenElement:null)||null}function O(V){const R=V.requestFullscreen||V.webkitRequestFullscreen;if(!R)return Promise.reject(new Error("Fullscreen API unavailable"));const K=R.call(V);return K&&typeof K.then=="function"?K:Promise.resolve()}function T(){const V=document.exitFullscreen||document.webkitExitFullscreen;if(!V)return Promise.reject(new Error("Fullscreen API unavailable"));const R=V.call(document);return R&&typeof R.then=="function"?R:Promise.resolve()}function J(){const V=S();if(!V)return!1;if(l=V,a=V.style.cssText,V.style.position="fixed",V.style.top="0",V.style.left="0",V.style.right="0",V.style.bottom="0",V.style.width="100vw",V.style.height="100vh",V.style.height="100dvh",V.style.zIndex="2147483647",V.style.margin="0",V.style.borderRadius="0",V.style.touchAction="pan-x pan-y pinch-zoom",typeof document<"u"){C=window.scrollY||window.pageYOffset||0,L=window.scrollX||window.pageXOffset||0;const R=document.body,K=document.documentElement;c=R?R.style.overflow:null,u=K?K.style.overflow:null,f=R?R.style.position:null,h=R?R.style.top:null,_=R?R.style.left:null,v=R?R.style.width:null,k=R?R.style.touchAction:null,F=K?K.style.touchAction:null,K&&(K.style.overflow="hidden",K.style.touchAction="none"),R&&(R.style.overflow="hidden",R.style.position="fixed",R.style.top=`-${C}px`,R.style.left=`-${L}px`,R.style.width="100%",R.style.touchAction="none"),y=ae=>{if(!l)return;const Ce=ae.target;Ce&&(Ce===l||l.contains&&l.contains(Ce))||ae.cancelable&&ae.preventDefault()},m=ae=>{if(!l)return;const Ce=ae.target;Ce&&(Ce===l||l.contains&&l.contains(Ce))||ae.cancelable&&ae.preventDefault()},document.addEventListener("touchmove",y,{passive:!1,capture:!0}),document.addEventListener("wheel",m,{passive:!1,capture:!0})}return!0}function ee(){if(l){if(l.style.cssText=a||"",l=null,a=null,typeof document<"u"){const V=document.body,R=document.documentElement;V&&(V.style.overflow=c??"",V.style.position=f??"",V.style.top=h??"",V.style.left=_??"",V.style.width=v??"",V.style.touchAction=k??""),R&&(R.style.overflow=u??"",R.style.touchAction=F??""),y&&(document.removeEventListener("touchmove",y,{capture:!0}),y=null),m&&(document.removeEventListener("wheel",m,{capture:!0}),m=null),typeof window<"u"&&(C||L)&&window.scrollTo(L,C)}c=null,u=null,f=null,h=null,_=null,v=null,k=null,F=null,C=0,L=0}}function U(){typeof window>"u"||window.requestAnimationFrame(()=>{window.dispatchEvent(new Event("resize"))})}function Y(){if(!A()){r.value?(ee(),r.value=!1,s("change",!1)):J()&&(r.value=!0,s("change",!0)),U();return}if($())T().then(()=>{r.value=!1,s("change",!1)}).catch(()=>{});else{const R=S()??document.documentElement;O(R).then(()=>{r.value=!0,s("change",!0)}).catch(()=>{O(document.documentElement).then(()=>{r.value=!0,s("change",!0)}).catch(()=>{})})}}function re(){r.value=!!$(),s("change",r.value)}return Vt(()=>{var R,K;document.addEventListener("fullscreenchange",re),document.addEventListener("webkitfullscreenchange",re);const V=(K=(R=o.mapContainer)==null?void 0:R.getRootNode)==null?void 0:K.call(R);V instanceof ShadowRoot&&(i=V,V.addEventListener("fullscreenchange",re),V.addEventListener("webkitfullscreenchange",re))}),$n(()=>{document.removeEventListener("fullscreenchange",re),document.removeEventListener("webkitfullscreenchange",re),i&&(i.removeEventListener("fullscreenchange",re),i.removeEventListener("webkitfullscreenchange",re),i=null),l&&ee()}),(V,R)=>(q(),Ze(uo,{"is-dark":e.isDark,active:r.value,title:nt(n)("buttons.toggleFullscreen"),onClick:Y},{default:sn(()=>[r.value?(q(),X("svg",am,[...R[1]||(R[1]=[M("path",{d:"M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z"},null,-1)])])):(q(),X("svg",im,[...R[0]||(R[0]=[M("path",{d:"M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z"},null,-1)])]))]),_:1},8,["is-dark","active","title"]))}},cm=ir&&ir.tagName.toUpperCase()==="SCRIPT"&&ir.src||new URL("cities-internet.js",document.baseURI).href,bs=e=>String(e||"").trim().replace(/\/+$/,"");function um(){try{const t=String(cm||"").split(/[?#]/)[0].match(/^(.*)\/([^/]+)\/([^/]+)\.js$/);return!t||t[2]!==t[3]?null:t[1]||null}catch{return null}}function pm(e){const t=e==null?void 0:e.embedBaseUrl;if(typeof t=="string"&&t.trim())return bs(t);if(typeof window<"u"){const n=window.MAP_EMBED_BASE_URL;if(typeof n=="string"&&n.trim())return bs(n)}return bs(um()||"")}function dm({shareUrl:e,embedPath:t,profileConfig:n}={}){const o=n||null,s=typeof window<"u",r=e||(o==null?void 0:o.shareUrl);if(typeof r=="string"&&r.trim())return r.trim();const i=String(t||(o==null?void 0:o.shareEmbedPath)||"").trim();if(i){if(/^https?:\/\//i.test(i))return i;if(i.startsWith("/"))return s?window.location.origin+i:i;const a=pm(o),l=i.replace(/^\.\//,"");if(a)return a+"/"+l;if(typeof document<"u")try{return new URL(l,document.baseURI).href}catch{}return l}return s?window.location.origin+window.location.pathname:""}const fm={class:"share-steps"},hm={class:"share-tabs"},gm={key:0,class:"share-body"},mm={class:"share-url-box"},_m={class:"share-url-text"},bm={key:0,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},ym={key:1,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},vm={key:1,class:"share-body"},wm={class:"share-size-pills"},km=["onClick"],$m={class:"share-code-box"},Om={key:0,width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},Nm={key:1,width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},Cm={__name:"ShareButton",props:{isDark:{type:Boolean,default:!1},embedPath:{type:String,default:""}},setup(e){Qt(` +`,"map-control-button"),(t,n)=>(Y(),z("button",{class:Te(["mcb",{dark:e.isDark,active:e.active}]),title:e.title,disabled:e.disabled,onClick:n[0]||(n[0]=o=>t.$emit("click"))},[Fr(t.$slots,"default")],10,om))}},rm={__name:"ZoomInButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1}},setup(e){const{t}=en(),n=e;function o(){var s;(s=n.map)==null||s.zoomIn()}return(s,r)=>(Y(),Qe(co,{"is-dark":e.isDark,title:Je(t)("buttons.zoomIn"),onClick:o},{default:Vt(()=>[...r[0]||(r[0]=[P("span",{style:{"font-size":"20px","line-height":"1","font-weight":"600"}},"+",-1)])]),_:1},8,["is-dark","title"]))}},sm={__name:"ZoomOutButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1}},setup(e){const{t}=en(),n=e;function o(){var s;(s=n.map)==null||s.zoomOut()}return(s,r)=>(Y(),Qe(co,{"is-dark":e.isDark,title:Je(t)("buttons.zoomOut"),onClick:o},{default:Vt(()=>[...r[0]||(r[0]=[P("span",{style:{"font-size":"22px","line-height":"1","font-weight":"600"}},"−",-1)])]),_:1},8,["is-dark","title"]))}},im={__name:"LocationButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1},center:{type:Array,default:()=>[20,10]},zoom:{type:Number,default:1.8},userZoom:{type:Number,default:10}},setup(e){const{t}=en(),n=e;function o(){var r;(r=n.map)==null||r.flyTo({center:n.center,zoom:n.zoom,duration:1200})}function s(){if(n.map){if(typeof navigator>"u"||!navigator.geolocation){o();return}navigator.geolocation.getCurrentPosition(r=>{const{longitude:i,latitude:a}=r.coords;Number.isFinite(i)&&Number.isFinite(a)?n.map.flyTo({center:[i,a],zoom:n.userZoom,duration:1500}):o()},()=>o(),{enableHighAccuracy:!1,timeout:5e3,maximumAge:6e4})}}return(r,i)=>(Y(),Qe(co,{"is-dark":e.isDark,title:Je(t)("buttons.resetView"),onClick:s},{default:Vt(()=>[...i[0]||(i[0]=[P("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"currentColor"},[P("path",{d:"M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z"})],-1)])]),_:1},8,["is-dark","title"]))}},am={key:0,xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 29 29",fill:"currentColor"},lm={key:1,xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 29 29",fill:"currentColor"},cm={__name:"FullscreenButton",props:{mapContainer:{type:Object,default:null},isDark:{type:Boolean,default:!1}},emits:["change"],setup(e,{emit:t}){const{t:n}=en(),o=e,s=t,r=ie(!1);let i=null,a=null,l=null,c=null,u=null,f=null,h=null,_=null,v=null,k=null,I=null,N=0,A=0,b=null,m=null;function C(){if(typeof document>"u")return!1;const K=typeof navigator<"u"&&navigator.userAgent||"";return/iPad|iPhone|iPod/.test(K)||K.includes("Mac")&&typeof document<"u"&&"ontouchend"in document?!1:!!(document.fullscreenEnabled||document.webkitFullscreenEnabled)}function S(){var K,W,q;return((q=(W=(K=o.mapContainer)==null?void 0:K.getRootNode)==null?void 0:W.call(K))==null?void 0:q.host)??null}function w(){var W,q;const K=(q=(W=o.mapContainer)==null?void 0:W.getRootNode)==null?void 0:q.call(W);return document.fullscreenElement||document.webkitFullscreenElement||(K&&K instanceof ShadowRoot?K.fullscreenElement:null)||null}function O(K){const W=K.requestFullscreen||K.webkitRequestFullscreen;if(!W)return Promise.reject(new Error("Fullscreen API unavailable"));const q=W.call(K);return q&&typeof q.then=="function"?q:Promise.resolve()}function T(){const K=document.exitFullscreen||document.webkitExitFullscreen;if(!K)return Promise.reject(new Error("Fullscreen API unavailable"));const W=K.call(document);return W&&typeof W.then=="function"?W:Promise.resolve()}function X(){const K=S();if(!K)return!1;if(l=K,a=K.style.cssText,K.style.position="fixed",K.style.top="0",K.style.left="0",K.style.right="0",K.style.bottom="0",K.style.width="100vw",K.style.height="100vh",K.style.height="100dvh",K.style.zIndex="2147483647",K.style.margin="0",K.style.borderRadius="0",K.style.touchAction="pan-x pan-y pinch-zoom",typeof document<"u"){N=window.scrollY||window.pageYOffset||0,A=window.scrollX||window.pageXOffset||0;const W=document.body,q=document.documentElement;c=W?W.style.overflow:null,u=q?q.style.overflow:null,f=W?W.style.position:null,h=W?W.style.top:null,_=W?W.style.left:null,v=W?W.style.width:null,k=W?W.style.touchAction:null,I=q?q.style.touchAction:null,q&&(q.style.overflow="hidden",q.style.touchAction="none"),W&&(W.style.overflow="hidden",W.style.position="fixed",W.style.top=`-${N}px`,W.style.left=`-${A}px`,W.style.width="100%",W.style.touchAction="none"),b=le=>{if(!l)return;const Ee=le.target;Ee&&(Ee===l||l.contains&&l.contains(Ee))||le.cancelable&&le.preventDefault()},m=le=>{if(!l)return;const Ee=le.target;Ee&&(Ee===l||l.contains&&l.contains(Ee))||le.cancelable&&le.preventDefault()},document.addEventListener("touchmove",b,{passive:!1,capture:!0}),document.addEventListener("wheel",m,{passive:!1,capture:!0})}return!0}function te(){if(l){if(l.style.cssText=a||"",l=null,a=null,typeof document<"u"){const K=document.body,W=document.documentElement;K&&(K.style.overflow=c??"",K.style.position=f??"",K.style.top=h??"",K.style.left=_??"",K.style.width=v??"",K.style.touchAction=k??""),W&&(W.style.overflow=u??"",W.style.touchAction=I??""),b&&(document.removeEventListener("touchmove",b,{capture:!0}),b=null),m&&(document.removeEventListener("wheel",m,{capture:!0}),m=null),typeof window<"u"&&(N||A)&&window.scrollTo(A,N)}c=null,u=null,f=null,h=null,_=null,v=null,k=null,I=null,N=0,A=0}}function H(){typeof window>"u"||window.requestAnimationFrame(()=>{window.dispatchEvent(new Event("resize"))})}function se(){if(!C()){r.value?(te(),r.value=!1,s("change",!1)):X()&&(r.value=!0,s("change",!0)),H();return}if(w())T().then(()=>{r.value=!1,s("change",!1)}).catch(()=>{});else{const W=S()??document.documentElement;O(W).then(()=>{r.value=!0,s("change",!0)}).catch(()=>{O(document.documentElement).then(()=>{r.value=!0,s("change",!0)}).catch(()=>{})})}}function he(){r.value=!!w(),s("change",r.value)}return qt(()=>{var W,q;document.addEventListener("fullscreenchange",he),document.addEventListener("webkitfullscreenchange",he);const K=(q=(W=o.mapContainer)==null?void 0:W.getRootNode)==null?void 0:q.call(W);K instanceof ShadowRoot&&(i=K,K.addEventListener("fullscreenchange",he),K.addEventListener("webkitfullscreenchange",he))}),$n(()=>{document.removeEventListener("fullscreenchange",he),document.removeEventListener("webkitfullscreenchange",he),i&&(i.removeEventListener("fullscreenchange",he),i.removeEventListener("webkitfullscreenchange",he),i=null),l&&te()}),(K,W)=>(Y(),Qe(co,{"is-dark":e.isDark,active:r.value,title:Je(n)("buttons.toggleFullscreen"),onClick:se},{default:Vt(()=>[r.value?(Y(),z("svg",lm,[...W[1]||(W[1]=[P("path",{d:"M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z"},null,-1)])])):(Y(),z("svg",am,[...W[0]||(W[0]=[P("path",{d:"M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z"},null,-1)])]))]),_:1},8,["is-dark","active","title"]))}},um=ir&&ir.tagName.toUpperCase()==="SCRIPT"&&ir.src||new URL("cities-internet.js",document.baseURI).href,ys=e=>String(e||"").trim().replace(/\/+$/,"");function pm(){try{const t=String(um||"").split(/[?#]/)[0].match(/^(.*)\/([^/]+)\/([^/]+)\.js$/);return!t||t[2]!==t[3]?null:t[1]||null}catch{return null}}function dm(e){const t=e==null?void 0:e.embedBaseUrl;if(typeof t=="string"&&t.trim())return ys(t);if(typeof window<"u"){const n=window.MAP_EMBED_BASE_URL;if(typeof n=="string"&&n.trim())return ys(n)}return ys(pm()||"")}function fm({shareUrl:e,embedPath:t,profileConfig:n}={}){const o=n||null,s=typeof window<"u",r=e||(o==null?void 0:o.shareUrl);if(typeof r=="string"&&r.trim())return r.trim();const i=String(t||(o==null?void 0:o.shareEmbedPath)||"").trim();if(i){if(/^https?:\/\//i.test(i))return i;if(i.startsWith("/"))return s?window.location.origin+i:i;const a=dm(o),l=i.replace(/^\.\//,"");if(a)return a+"/"+l;if(typeof document<"u")try{return new URL(l,document.baseURI).href}catch{}return l}return s?window.location.origin+window.location.pathname:""}const hm=["aria-label"],gm={class:"mcm-header"},mm={class:"mcm-title"},_m={class:"mcm-body"},bm=".dsm-map-area, .rm-map-area, .dm-map-area, [data-map-area]",vs="doxa-map-menu-open",ym={__name:"MapControlMenu",props:{open:{type:Boolean,default:!1},title:{type:String,default:""},width:{type:Number,default:340},isDark:{type:Boolean,default:!1},maxHeight:{type:Number,default:null},height:{type:Number,default:null}},emits:["close"],setup(e,{emit:t}){Wt(` +.mcm{position:absolute;z-index:var(--z-menu,3000);display:flex;flex-direction:column;box-sizing:border-box; + background:#161b22;border:1px solid #30363d;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,0.45); + color:#e6edf3;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:13px; + overflow:hidden;opacity:0;transform:translateY(-4px) scale(0.98);animation:mcm-in 0.18s ease-out forwards;} +@keyframes mcm-in{to{opacity:1;transform:translateY(0) scale(1);}} +.mcm.light{background:#ffffff;border-color:#d8dee4;box-shadow:0 6px 24px rgba(0,0,0,0.16);color:#1f2328;} +.mcm-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;min-height:32px;flex:0 0 auto;border-bottom:1px solid #21262d;} +.mcm.light .mcm-header{border-bottom-color:#d8dee4;} +.mcm-title{font:600 10px ui-monospace,monospace;color:#73A17F;text-transform:uppercase;letter-spacing:0.07em;} +.mcm.light .mcm-title{color:#3b463d;} +.mcm-close{width:22px;height:20px;border:1px solid #30363d;background:rgba(110,118,129,0.12);border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#8b949e;padding:0;transition:color 0.1s,background 0.1s,border-color 0.1s;} +.mcm-close:hover{color:#c9d1d9;background:rgba(59,70,61,0.18);border-color:#73A17F;} +.mcm.light .mcm-close{background:rgba(208,215,222,0.4);border-color:#d0d7de;color:#57606a;} +.mcm.light .mcm-close:hover{color:#3b463d;background:rgba(59,70,61,0.12);border-color:#3b463d;} +.mcm-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;} +`,"map-control-menu");const n=e,o=t,s=Ge("mapToolbar",null),r=ie(null),i=ie(null),a=ie({});function l(){var O;const _=(O=s==null?void 0:s.el)==null?void 0:O.value,v=r.value;if(!_||!v){a.value={};return}const k=v.getBoundingClientRect(),I=_.getBoundingClientRect(),N=(I.left+I.right)/2>(k.left+k.right)/2,A=8,b=12,m=N?k.right-I.left+A:I.right-k.left+A,C=Math.max(200,Math.min(n.width,k.width-m-b)),S=Math.max(0,I.top-k.top);let w=Math.max(120,Math.min(I.height,k.height-S-b));n.maxHeight&&(w=Math.min(w,n.maxHeight)),a.value={top:`${Math.round(S)}px`,[N?"right":"left"]:`${Math.round(m)}px`,width:`${Math.round(C)}px`,maxHeight:`${Math.round(w)}px`,...n.height?{height:`${Math.round(Math.min(n.height,w))}px`}:{}}}function c(_){n.open&&_.detail!==i.value&&o("close")}yt(()=>n.open,async _=>{var v;if(_){await Io(),l();try{(v=r.value)==null||v.dispatchEvent(new CustomEvent(vs,{detail:i.value}))}catch{}}});function u(){n.open&&l()}function f(_){_.key==="Escape"&&n.open&&o("close")}function h(_){var k;if(!n.open)return;const v=_.composedPath?_.composedPath():[_.target];i.value&&v.includes(i.value)||(k=s==null?void 0:s.el)!=null&&k.value&&v.includes(s.el.value)||v.some(I=>{var N,A,b,m;return((A=(N=I==null?void 0:I.classList)==null?void 0:N.contains)==null?void 0:A.call(N,"mapboxgl-canvas"))||((m=(b=I==null?void 0:I.classList)==null?void 0:b.contains)==null?void 0:m.call(b,"maplibregl-canvas"))})&&o("close")}return qt(()=>{var _,v,k;r.value=((v=(_=s==null?void 0:s.el)==null?void 0:_.value)==null?void 0:v.closest(bm))||null,(k=r.value)==null||k.addEventListener(vs,c),window.addEventListener("resize",u),document.addEventListener("click",h,!0),document.addEventListener("keydown",f)}),$n(()=>{var _;(_=r.value)==null||_.removeEventListener(vs,c),window.removeEventListener("resize",u),document.removeEventListener("click",h,!0),document.removeEventListener("keydown",f)}),(_,v)=>(Y(),Qe(Uc,{to:r.value,disabled:!r.value},[e.open?(Y(),z("div",{key:0,ref_key:"el",ref:i,class:Te(["mcm",{light:!e.isDark}]),style:Pn(a.value),role:"dialog","aria-label":e.title},[P("div",gm,[P("span",mm,Z(e.title),1),P("button",{class:"mcm-close",type:"button","aria-label":"Close",onClick:v[0]||(v[0]=k=>o("close"))},[...v[1]||(v[1]=[P("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round"},[P("line",{x1:"2",y1:"2",x2:"12",y2:"12"}),P("line",{x1:"12",y1:"2",x2:"2",y2:"12"})],-1)])])]),P("div",_m,[Fr(_.$slots,"default")])],14,hm)):Le("",!0)],8,["to","disabled"]))}},vm={class:"share-steps"},wm={class:"share-tabs"},km={key:0,class:"share-body"},$m={class:"share-url-box"},Om={class:"share-url-text"},Nm={key:0,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},Cm={key:1,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},Am={key:1,class:"share-body"},Em={class:"share-size-pills"},Tm=["onClick"],Lm={class:"share-code-box"},Sm={key:0,width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},Im={key:1,width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},Fm={__name:"ShareButton",props:{isDark:{type:Boolean,default:!1},embedPath:{type:String,default:""}},setup(e){Wt(` .share-wrap{position:relative;display:inline-block;border-radius:50%;} .share-wrap::before{content:'';position:absolute;inset:-2px;border-radius:50%;padding:2px;pointer-events:none; background:conic-gradient(#ff6b6b,#ffd166,#6bd67b,#4dabf7,#9775fa,#f783ac,#ff6b6b); @@ -123,59 +139,11 @@ .share-pop.light .share-steps{color:#3b463d;} .share-pop.light .share-steps li:last-child{color:#3b463d;} .share-pop{ - position:absolute; - background:#161b22; - border:1px solid #30363d; - border-radius:12px; - box-shadow:0 6px 24px rgba(0,0,0,0.45); - padding:0; - z-index:3000; - color:#e6edf3; font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; font-size:13px; - overflow:hidden; - opacity:0; - transform:translateY(-4px) scale(0.98); - animation:share-pop-in 0.18s ease-out forwards; + color:#e6edf3; } -@keyframes share-pop-in{ - to{opacity:1;transform:translateY(0) scale(1);} -} -.share-pop.light{ - background:#ffffff; - border:1px solid #d8dee4; - box-shadow:0 6px 24px rgba(0,0,0,0.16); - color:#1f2328; -} -.share-header{ - display:flex; - align-items:center; - justify-content:space-between; - padding:8px 12px; - min-height:32px; - border-bottom:1px solid #21262d; -} -.share-pop.light .share-header{border-bottom:1px solid #d8dee4;} -.share-title{ - font:600 10px ui-monospace,monospace; - color:#73A17F; - text-transform:uppercase; - letter-spacing:0.07em; -} -.share-pop.light .share-title{color:#3b463d;} -.share-close{ - width:22px;height:20px; - border:1px solid #30363d; - background:rgba(110,118,129,0.12); - border-radius:5px; - display:flex;align-items:center;justify-content:center; - cursor:pointer;color:#8b949e; - padding:0; - transition:color 0.1s,background 0.1s,border-color 0.1s; -} -.share-close:hover{color:#c9d1d9;background:rgba(59,70,61,0.18);border-color:#73A17F;} -.share-pop.light .share-close{background:rgba(208,215,222,0.4);border-color:#d0d7de;color:#57606a;} -.share-pop.light .share-close:hover{color:#3b463d;background:rgba(59,70,61,0.12);border-color:#3b463d;} +.share-pop.light{color:#1f2328;} .share-tabs{ display:flex; gap:0; @@ -409,13 +377,4 @@ border-color:rgba(46,164,79,0.30); color:#2ea44f; } -@media(max-width:767px){ - .share-pop{ - max-width:none; - max-height:calc(100vh - 96px); - overflow-y:auto; - -webkit-overflow-scrolling:touch; - z-index:9999; - } -} -`,"share-button");const{t,tm:n,rt:o}=Zt(),s=e,r=ce(null),i=ce(!1),a=ce(null),l=ce({});function c(){var Qe;const U=a.value,Y=((Qe=h.value)==null?void 0:Qe.$el)||h.value;if(!U||!Y){l.value={};return}const re=U.getBoundingClientRect(),V=Y.getBoundingClientRect(),R=Math.max(8,re.right-V.left+8),K=Math.max(200,Math.min(340,re.width-R-12));let ae=V.top-re.top;const Ce=f.value;if(Ce){const Ae=Ce.offsetHeight;ae+Ae>re.height-8&&(ae=Math.max(8,re.height-8-Ae))}l.value={position:"absolute",top:`${Math.round(ae)}px`,right:`${Math.round(R)}px`,width:`${Math.round(K)}px`}}vt(i,async U=>{U&&(await Gn(),c(),await Gn(),c())});function u(){i.value&&c()}const f=ce(null),h=ce(null),_=ce("link"),v=ce(!1),k=ce(!1),F=ce("medium"),C={small:{label:"Small",height:400},medium:{label:"Medium",height:600},large:{label:"Large",height:800}},L=qe("profileConfig",null),y=ie(()=>dm({embedPath:s.embedPath,profileConfig:nt(L)||null})),m=ie(()=>{const U=C[F.value].height;return''});function A(){i.value=!i.value,i.value&&(_.value="link",v.value=!1,k.value=!1)}function S(){i.value=!1}async function $(U){try{if(navigator.clipboard&&window.isSecureContext)return await navigator.clipboard.writeText(U),!0}catch{}try{const Y=document.createElement("textarea");Y.value=U,Y.setAttribute("readonly",""),Y.style.cssText="position:fixed;top:-1000px;opacity:0",document.body.appendChild(Y),Y.select();const re=document.execCommand("copy");return document.body.removeChild(Y),re}catch{return!1}}async function O(){await $(y.value)&&(v.value=!0,setTimeout(()=>{v.value=!1},2e3))}async function T(){await $(m.value)&&(k.value=!0,setTimeout(()=>{k.value=!1},2e3))}function J(U){if(!i.value)return;const Y=U.composedPath?U.composedPath():[U.target];f.value&&Y.some(V=>V===f.value)||h.value&&Y.some(V=>V===h.value||V===h.value.$el)||!Y.some(V=>{var R,K;return(K=(R=V==null?void 0:V.classList)==null?void 0:R.contains)==null?void 0:K.call(R,"mapboxgl-canvas")})||S()}function ee(U){U.key==="Escape"&&i.value&&S()}return Vt(()=>{var U;document.addEventListener("click",J,!0),window.addEventListener("resize",u),a.value=((U=r.value)==null?void 0:U.closest(".dsm-map-area, .rm-map-area, .dm-map-area, [data-map-area]"))||null,document.addEventListener("keydown",ee)}),$n(()=>{document.removeEventListener("click",J,!0),window.removeEventListener("resize",u),document.removeEventListener("keydown",ee)}),(U,Y)=>(q(),X("div",{ref_key:"rootEl",ref:r,class:"share-wrap"},[ke(uo,{ref_key:"btnEl",ref:h,"is-dark":e.isDark,active:i.value,title:nt(t)("buttons.shareEmbed"),onClick:A},{default:sn(()=>[...Y[2]||(Y[2]=[M("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[M("path",{d:"M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"}),M("polyline",{points:"16 6 12 2 8 6"}),M("line",{x1:"12",y1:"2",x2:"12",y2:"15"})],-1)])]),_:1},8,["is-dark","active","title"]),(q(),Ze(Wc,{to:a.value,disabled:!a.value},[i.value?(q(),X("div",{key:0,ref_key:"popoverEl",ref:f,class:Se(["share-pop",{light:!e.isDark}]),style:Pn(l.value)},[M("div",{class:"share-header"},[Y[4]||(Y[4]=M("span",{class:"share-title"},"Share",-1)),M("button",{class:"share-close",onClick:S,"aria-label":"Close"},[...Y[3]||(Y[3]=[M("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round"},[M("line",{x1:"2",y1:"2",x2:"12",y2:"12"}),M("line",{x1:"12",y1:"2",x2:"2",y2:"12"})],-1)])])]),M("ul",fm,[(q(!0),X(de,null,lt(nt(n)("buttons.shareSteps"),(re,V)=>(q(),X("li",{key:V},Q(nt(o)(re)),1))),128))]),M("div",hm,[M("button",{class:Se(["share-tab",{active:_.value==="link"}]),onClick:Y[0]||(Y[0]=re=>_.value="link")},"Embed link",2),M("button",{class:Se(["share-tab",{active:_.value==="embed"}]),onClick:Y[1]||(Y[1]=re=>_.value="embed")},"Add to Your Website",2)]),_.value==="link"?(q(),X("div",gm,[M("div",mm,[M("div",_m,Q(y.value),1)]),M("button",{class:Se(["share-primary-btn",{copied:v.value}]),onClick:O},[v.value?(q(),X("svg",ym,[...Y[6]||(Y[6]=[M("polyline",{points:"20 6 9 17 4 12"},null,-1)])])):(q(),X("svg",bm,[...Y[5]||(Y[5]=[M("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"},null,-1),M("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"},null,-1)])])),$e(" "+Q(v.value?"Copied!":"Copy Link"),1)],2)])):Le("",!0),_.value==="embed"?(q(),X("div",vm,[Y[9]||(Y[9]=M("div",{class:"share-embed-desc"}," Paste this code into your website builder (WordPress, Squarespace, Wix, or any site that accepts HTML widgets). ",-1)),M("div",wm,[(q(),X(de,null,lt(C,(re,V)=>M("button",{key:V,class:Se(["share-size-pill",{active:F.value===V}]),onClick:R=>F.value=V},Q(re.label),11,km)),64))]),M("div",$m,Q(m.value),1),M("button",{class:Se(["share-secondary-btn",{copied:k.value}]),onClick:T},[k.value?(q(),X("svg",Nm,[...Y[8]||(Y[8]=[M("polyline",{points:"20 6 9 17 4 12"},null,-1)])])):(q(),X("svg",Om,[...Y[7]||(Y[7]=[M("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"},null,-1),M("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"},null,-1)])])),$e(" "+Q(k.value?"Copied!":"Copy Code"),1)],2)])):Le("",!0)],6)):Le("",!0)],8,["to","disabled"]))],512))}},Am={class:"gm-legend"},Em={class:"gm-keys"},Tm={key:1,class:"gm-err"},Lm={key:2,class:"gm-sheet"},Sm={class:"gm-sh-head"},Im={class:"gm-sh-name"},Fm={key:0,class:"gm-ai"},xm={class:"gm-stat"},Pm={class:"gm-stat"},Mm={class:"gm-stat"},Dm={class:"gm-stat"},Bm={class:"gm-stat"},Rm={key:1,class:"gm-list"},Wm={class:"gm-list-h"},Um={key:2,class:"gm-list"},jm=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"connectivity-map",setup(e){const t=qe("profileConfig",ce(null)),n=ie(()=>{var C;return((C=t.value)==null?void 0:C.isDark)===!0}),o=ie(()=>{var C;return((C=t.value)==null?void 0:C.tk)||window.DOXA_TOKEN||""}),s=ie(()=>{var C;return String(((C=t.value)==null?void 0:C.assetsBase)||"./assets").replace(/\/+$/,"")}),r=ce(null),i=To(null),a=ce([]),l=ce(null),c=ce(!0),u=ce(null),f=[{id:"yes",label:"connected 60%+",color:"#10b981"},{id:"partial",label:"partial 25–59%",color:"#e8c15a"},{id:"no",label:"low, under 25%",color:"#b42318"},{id:"unknown",label:"not measured",color:"#9aa2ad"}],h=C=>(f.find(L=>L.id===C)||{}).color||"#9aa2ad",_=ie(()=>{const C={};for(const L of a.value)C[L.iso3]=L;return C});async function v(){const[C,L]=await Promise.all([fetch(`${s.value}/tables/internet-by-country.json`).then(y=>y.json()),fetch(`${s.value}/boundaries/world-adm0.geojson`).then(y=>y.json())]);return a.value=C.countries||[],L}function k(C,L){const y=_.value,A={type:"FeatureCollection",features:(L.features||[]).map(S=>{var T;const $=(T=S.properties)==null?void 0:T.iso3,O=y[$];return{type:"Feature",properties:{iso3:$,band:(O==null?void 0:O.band)||"none",color:O?h(O.band):"rgba(0,0,0,0)",hasData:!!O},geometry:S.geometry}})};if(C.getSource("ci-src")){C.getSource("ci-src").setData(A);return}C.addSource("ci-src",{type:"geojson",data:A}),C.addLayer({id:"ci-fill",type:"fill",source:"ci-src",paint:{"fill-color":["get","color"],"fill-opacity":["case",["get","hasData"],.72,0]}}),C.addLayer({id:"ci-line",type:"line",source:"ci-src",paint:{"line-color":"rgba(255,255,255,0.5)","line-width":.5}}),C.on("click","ci-fill",S=>{var O,T,J;const $=(J=(T=(O=S.features)==null?void 0:O[0])==null?void 0:T.properties)==null?void 0:J.iso3;$&&_.value[$]&&(l.value=_.value[$])}),C.on("mouseenter","ci-fill",()=>{C.getCanvas().style.cursor="pointer"}),C.on("mouseleave","ci-fill",()=>{C.getCanvas().style.cursor=""})}Vt(async()=>{const C=window.mapboxgl;if(!C||!r.value){u.value="mapbox-gl not loaded";return}try{const L=await v(),y=new C.Map({container:r.value,style:n.value?"mapbox://styles/mapbox/dark-v11":"mapbox://styles/mapbox/light-v11",accessToken:o.value,center:[42,18],zoom:1.3,projection:"mercator",attributionControl:!1});i.value=_n(y),em(y,{boundaries:!0}),y.once("load",()=>k(y,L))}catch(L){u.value=String(L.message||L)}}),$n(()=>{var C;try{(C=i.value)==null||C.remove()}catch{}});const F=C=>(Number(C)||0).toLocaleString();return Qt(".gm{position:absolute;inset:0;overflow:hidden}.gm-map{position:absolute;inset:0}.gm-legend{position:absolute;top:8px;left:8px;right:8px;z-index:4;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.94);color:#0f1419;font:12px/1.35 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;box-shadow:0 2px 10px rgba(0,0,0,.16)}.is-dark .gm-legend{background:rgba(19,32,25,.95);color:#e5e7eb}.gm-title{font-weight:700;font-size:12.5px;margin-bottom:5px}.gm-keys{display:flex;flex-wrap:wrap;gap:5px 12px}.gm-key{display:flex;align-items:center;gap:5px;font-size:11px;white-space:nowrap}.gm-sw{width:12px;height:12px;border-radius:3px;flex:none}.gm-caveat{margin-top:5px;font-size:10.5px;opacity:.72;line-height:1.4}.gm-sheet{position:absolute;left:0;right:0;bottom:0;z-index:6;max-height:62%;overflow-y:auto;background:#fff;color:#0f1419;border-radius:14px 14px 0 0;padding:14px 16px 22px;font:13px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;box-shadow:0 -6px 26px rgba(0,0,0,.28)}@media(min-width:700px){.gm-sheet{left:auto;right:14px;bottom:14px;width:330px;border-radius:12px}}.is-dark .gm-sheet{background:#132019;color:#e5e7eb}.gm-sh-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.gm-sh-name{font-weight:800;font-size:15px}.gm-ai{display:flex;align-items:flex-start;gap:8px;margin:0 0 10px;padding:7px 9px;border-radius:8px;font-size:11px;line-height:1.35;background:rgba(180,120,0,.12);color:#7a4f00;border:1px solid rgba(180,120,0,.25)}.is-dark .gm-ai{background:rgba(255,200,80,.10);color:#f0cf88;border-color:rgba(255,200,80,.22)}.gm-ai-x{margin-left:auto;flex:none;border:0;background:none;cursor:pointer;font-size:15px;line-height:1;color:inherit;opacity:.7;padding:0 2px}.gm-ai-x:hover{opacity:1}.gm-x{margin-left:auto;border:1px solid rgba(0,0,0,.16);background:transparent;color:inherit;font:600 12px inherit;padding:6px 12px;border-radius:8px;cursor:pointer;min-height:34px}.gm-stat{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.07);font-variant-numeric:tabular-nums}.is-dark .gm-stat{border-bottom-color:rgba(255,255,255,.09)}.gm-stat b{font-weight:700}.gm-list{margin-top:9px}.gm-list-h{font-weight:700;font-size:12px;margin-bottom:3px}.gm-list ul{margin:0;padding-left:17px;font-size:12px;line-height:1.5}.gm-note{margin-top:9px;font-size:11px;line-height:1.5;opacity:.75}.gm-err{position:absolute;top:50%;left:0;right:0;text-align:center;font-size:13px;opacity:.7}","doxa-connectivity-map"),(C,L)=>(q(),X("div",{class:Se(["gm",{"is-dark":n.value}])},[M("div",{ref_key:"mapEl",ref:r,class:"gm-map"},null,512),i.value?(q(),Ze(tm,{key:0},{default:sn(()=>[ke(om,{map:i.value,"is-dark":n.value},null,8,["map","is-dark"]),ke(rm,{map:i.value,"is-dark":n.value},null,8,["map","is-dark"]),ke(sm,{map:i.value,"is-dark":n.value},null,8,["map","is-dark"]),ke(lm,{"map-container":r.value,"is-dark":n.value},null,8,["map-container","is-dark"]),ke(Cm,{"is-dark":n.value,"embed-path":"cities-internet/connectivity-map/index.html"},null,8,["is-dark"])]),_:1})):Le("",!0),M("div",Am,[L[2]||(L[2]=M("div",{class:"gm-title"},"Internet access where unengaged people groups live",-1)),M("div",Em,[(q(),X(de,null,lt(f,y=>M("span",{key:y.id,class:"gm-key"},[M("i",{class:"gm-sw",style:Pn({background:y.color})},null,4),$e(Q(y.label),1)])),64))]),L[3]||(L[3]=M("div",{class:"gm-caveat"}," NATIONAL figures (World Bank). Per-city connectivity is not publicly available — do not read a city off a country. ",-1))]),u.value?(q(),X("div",Tm,Q(u.value),1)):Le("",!0),l.value?(q(),X("div",Lm,[M("div",Sm,[M("span",Im,Q(l.value.country),1),M("button",{type:"button",class:"gm-x",onClick:L[0]||(L[0]=y=>l.value=null)},"Close")]),c.value?(q(),X("div",Fm,[L[4]||(L[4]=M("span",null,"Data was found by AI deep research — it is subject to false information.",-1)),M("button",{type:"button",class:"gm-ai-x",onClick:L[1]||(L[1]=y=>c.value=!1),"aria-label":"Dismiss"},"×")])):Le("",!0),M("div",xm,[L[5]||(L[5]=M("span",null,"Internet users",-1)),M("b",null,Q(l.value.internet_pct!=null?l.value.internet_pct+"%":"unknown"),1)]),M("div",Pm,[L[6]||(L[6]=M("span",null,"Measured",-1)),M("b",null,Q(l.value.internet_year||"—"),1)]),M("div",Mm,[L[7]||(L[7]=M("span",null,"Mobile per 100",-1)),M("b",null,Q(l.value.mobile_per_100??"—"),1)]),M("div",Dm,[L[8]||(L[8]=M("span",null,"People groups",-1)),M("b",null,Q(F(l.value.people_groups)),1)]),M("div",Bm,[L[9]||(L[9]=M("span",null,"Top platform",-1)),M("b",null,[$e(Q(l.value.top_platform||"unknown"),1),l.value.top_platform_pct?(q(),X(de,{key:0},[$e(" · "+Q(l.value.top_platform_pct)+"%",1)],64)):Le("",!0)])]),l.value.carriers&&l.value.carriers.length?(q(),X("div",Rm,[M("div",Wm,"Carriers & ISPs ("+Q(l.value.carrier_count)+")",1),M("ul",null,[(q(!0),X(de,null,lt(l.value.carriers,(y,m)=>(q(),X("li",{key:m},Q(y),1))),128))])])):Le("",!0),l.value.platforms&&l.value.platforms.length?(q(),X("div",Um,[L[10]||(L[10]=M("div",{class:"gm-list-h"},"Social platforms",-1)),M("ul",null,[(q(!0),X(de,null,lt(l.value.platforms,(y,m)=>(q(),X("li",{key:m},Q(y.name)+" · "+Q(y.pct)+"%",1))),128))])])):Le("",!0),L[11]||(L[11]=M("p",{class:"gm-note"}," National figures, not city measurements. Carrier names are ASN registry holders — that set includes banks and universities as well as ISPs, so the carrier flag is a name heuristic, not a verified classification. ",-1))])):Le("",!0)],2))}}},Symbol.toStringTag,{value:"Module"})),Gm={class:"dt-head"},Ym={class:"dt-title"},Vm={class:"dt-count"},Hm={key:0,class:"dt-grain"},qm={class:"dt-actions"},zm={key:0,class:"dt-err"},Km={class:"dt-wrap"},Xm={class:"dt-hint"},Jm={class:"dt-sheet",role:"dialog","aria-label":"Row detail"},Zm={class:"dt-sheet-head"},Qm={class:"dt-dl"},e_=["href"],t_={key:1},n_={key:2},o_={key:2,class:"dt-caveats"},r_={class:"dt-cav-k"},s_={__name:"DataTable",props:{table:{type:Object,required:!0},assetsBase:{type:String,default:"./assets"},isDark:{type:Boolean,default:!1},height:{type:String,default:"560px"},frozen:{type:Number,default:1},pageSize:{type:Number,default:50}},emits:["row-click"],setup(e,{emit:t}){const n=e,o=t,s=ce(!1),r=ce(null),i=ce(null),a=To(null),l=ce(null),c=ce(!1),u=ie(()=>String(n.assetsBase||"./assets").replace(/\/+$/,"")),f=ie(()=>{var $;return(($=n.table)==null?void 0:$.meta)||{}}),h=ie(()=>{var $;return((($=n.table)==null?void 0:$.rows)||[]).length}),_=ie(()=>Object.entries(f.value).filter(([$,O])=>typeof O=="string"&&/caveat|meaning|note|boundary|measures|does_not/i.test($)).map(([$,O])=>({key:$.replace(/_/g," "),text:O})));let v=null;function k(){return window.Tabulator?Promise.resolve(window.Tabulator):v||(v=new Promise(($,O)=>{const T=document.createElement("script");T.src=`${u.value}/vendor/tabulator/tabulator.min.js`,T.onload=()=>$(window.Tabulator),T.onerror=()=>O(new Error("Tabulator failed to load — is public/assets/vendor/tabulator/ present?")),document.head.appendChild(T)}),v)}async function F($){if(!(!$||$.querySelector("style[data-tabulator]")))try{const O=await fetch(`${u.value}/vendor/tabulator/tabulator.min.css`);if(!O.ok)return;const T=document.createElement("style");T.setAttribute("data-tabulator",""),T.textContent=await O.text(),$.appendChild(T)}catch{}}function C($){var ee,U;if(!i.value)return;s.value=typeof window<"u"&&window.innerWidth<700;const O=((ee=n.table)==null?void 0:ee.columns)||[],J=(s.value?O.slice(0,3):O).map((Y,re)=>({title:Y.title,field:Y.field,headerFilter:Y.type==="boolean"?"tickCross":"input",headerFilterPlaceholder:"filter…",sorter:Y.type==="number"?"number":Y.type==="boolean"?"boolean":"string",formatter:Y.type==="boolean"?"tickCross":void 0,.../_url$/.test(Y.field)?{formatter:"link",formatterParams:{target:"_blank",label:()=>"open"}}:{},frozen:!s.value&&re{r.value=re.getData(),o("row-click",re.getData())}),a.value.on("tableBuilt",()=>{c.value=!0})}const L=$=>{var O,T;return((T=(((O=n.table)==null?void 0:O.columns)||[]).find(J=>J.field===$))==null?void 0:T.title)||$.replace(/_/g," ")},y=$=>typeof $=="string"&&$.includes(", ")&&$.length>40?$.split(", "):null,m=$=>typeof $=="string"&&/^https?:\/\//.test($),A=ie(()=>r.value?Object.entries(r.value).filter(([,$])=>$!==""&&$!==null&&$!==void 0):[]);function S($){var O;try{(O=a.value)==null||O.download($,`${(f.value.title||"table").replace(/\W+/g,"-").toLowerCase()}.${$}`)}catch(T){l.value=String(T.message||T)}}return Vt(async()=>{var $,O;try{await F((O=($=i.value)==null?void 0:$.getRootNode)==null?void 0:O.call($)),C(await k())}catch(T){l.value=String(T.message||T)}}),$n(()=>{var $;try{($=a.value)==null||$.destroy()}catch{}}),vt(()=>n.table,()=>{var $,O;try{(O=a.value)==null||O.replaceData((($=n.table)==null?void 0:$.rows)||[])}catch{}}),Qt(".dt,.dt *{box-sizing:border-box}.dt{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.dt-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}.dt-title{font-size:15px;font-weight:700;margin:0}.dt-count{font-size:11.5px;opacity:.6;font-variant-numeric:tabular-nums}.dt-grain{font-size:11px;opacity:.55}.dt-actions{margin-left:auto;display:flex;gap:6px}.dt-btn{font:600 11.5px inherit;padding:5px 11px;border-radius:6px;cursor:pointer;border:1px solid rgba(0,0,0,.16);background:transparent;color:inherit}.dt-btn:hover{background:rgba(0,0,0,.05)}.dt-err{padding:10px 12px;border-radius:8px;background:rgba(220,38,38,.10);color:#a12020;font-size:12.5px}.dt-caveats{margin-top:10px;padding:10px 12px;border-radius:8px;background:rgba(0,0,0,.04);font-size:11.5px;line-height:1.6;opacity:.85}.is-dark .dt-caveats{background:rgba(255,255,255,.06)}.dt-cav-k{font-weight:700;text-transform:capitalize}.dt-scrim{position:fixed;inset:0;z-index:1200;background:rgba(8,12,16,.55);display:flex;align-items:flex-end;justify-content:center}@media(min-width:700px){.dt-scrim{align-items:center}}.dt-sheet{width:100%;max-width:560px;max-height:82vh;overflow-y:auto;background:#fff;color:#0f1419;border-radius:14px 14px 0 0;padding:16px 18px 26px;box-shadow:0 -6px 30px rgba(0,0,0,.3)}@media(min-width:700px){.dt-sheet{border-radius:14px}}.is-dark .dt-sheet{background:#132019;color:#e5e7eb}.dt-sheet-head{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid rgba(0,0,0,.10);font-size:15px}.dt-close{margin-left:auto;font:600 12px inherit;padding:7px 14px;border-radius:8px;cursor:pointer;min-height:36px;border:1px solid rgba(0,0,0,.16);background:transparent;color:inherit}.dt-dl{display:grid;grid-template-columns:minmax(96px,34%) 1fr;gap:7px 12px;margin:0;font-size:12.5px}.dt-dl dt{font-weight:700;opacity:.72;text-transform:capitalize}.dt-dl dd{margin:0;word-break:break-word}.dt-dl ul{margin:0;padding-left:16px}.dt-dl a{color:#0b7a5b;font-weight:600}.dt-hint{font-size:11px;opacity:.6;margin:6px 0 0}.dt-wrap{width:100%;overflow:hidden;border:1px solid rgba(0,0,0,.10);border-radius:8px}.is-dark .dt-wrap{border-color:rgba(255,255,255,.12)}","doxa-data-table"),($,O)=>{var T,J;return q(),X("div",{class:Se(["dt",{"is-dark":e.isDark}])},[M("div",Gm,[M("h3",Ym,Q(f.value.title||"Data"),1),M("span",Vm,Q(h.value.toLocaleString())+" rows",1),f.value.grain?(q(),X("span",Hm,"· "+Q(f.value.grain),1)):Le("",!0),M("span",qm,[M("button",{type:"button",class:"dt-btn",onClick:O[0]||(O[0]=ee=>S("csv"))},"CSV"),M("button",{type:"button",class:"dt-btn",onClick:O[1]||(O[1]=ee=>S("json"))},"JSON")])]),l.value?(q(),X("div",zm,Q(l.value),1)):Le("",!0),M("div",Km,[M("div",{ref_key:"host",ref:i},null,512)]),M("p",Xm,"Tap any row for its full detail"+Q(s.value?"":" — every field, including the lists the table flattens")+".",1),r.value?(q(),X("div",{key:1,class:"dt-scrim",onClick:O[3]||(O[3]=hp(ee=>r.value=null,["self"]))},[M("div",Jm,[M("div",Zm,[M("strong",null,Q(r.value[(J=(((T=e.table)==null?void 0:T.columns)||[])[0])==null?void 0:J.field]||"Detail"),1),M("button",{type:"button",class:"dt-close",onClick:O[2]||(O[2]=ee=>r.value=null)},"Close")]),M("dl",Qm,[(q(!0),X(de,null,lt(A.value,([ee,U])=>(q(),X(de,{key:ee},[M("dt",null,Q(L(ee)),1),M("dd",null,[m(U)?(q(),X("a",{key:0,href:U,target:"_blank",rel:"noopener"},Q(U),9,e_)):y(U)?(q(),X("ul",t_,[(q(!0),X(de,null,lt(y(U),(Y,re)=>(q(),X("li",{key:re},Q(Y),1))),128))])):(q(),X("span",n_,Q(U===!0?"yes":U===!1?"no":U),1))])],64))),128))])])])):Le("",!0),_.value.length?(q(),X("div",o_,[(q(!0),X(de,null,lt(_.value,ee=>(q(),X("div",{key:ee.key},[M("span",r_,Q(ee.key)+":",1),$e(" "+Q(ee.text),1)]))),128))])):Le("",!0)],2)}}},i_={class:"ct-tabs"},a_=["onClick"],l_={key:0,class:"ct-n"},c_={key:0,class:"ct-err"},u_={key:1,class:"ct-load"},p_=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"data-tables",setup(e){const t=qe("profileConfig",ce(null)),n=ie(()=>{var h;return((h=t.value)==null?void 0:h.isDark)===!0}),o=ie(()=>{var h;return String(((h=t.value)==null?void 0:h.assetsBase)||"./assets").replace(/\/+$/,"")}),s=[{id:"cities",label:"Key Cities",file:"key-cities"},{id:"internet",label:"Connectivity",file:"country-connectivity"},{id:"operators",label:"ISPs & Carriers",file:"network-operators"},{id:"social",label:"Social Platforms",file:"social-platforms"},{id:"messaging",label:"Messaging Apps",file:"messaging-channels"}],r=ce("cities"),i=ie(()=>s.find(h=>h.id===r.value)||s[0]),a=ce({}),l=ce(!1),c=ce(null);async function u(h){if(!a.value[h]){l.value=!0,c.value=null;try{const _=await fetch(`${o.value}/tables/${h}.json`);if(!_.ok)throw new Error(`table not found (${_.status})`);a.value={...a.value,[h]:await _.json()}}catch(_){c.value=String(_.message||_)}finally{l.value=!1}}}vt(i,h=>h&&u(h.file),{immediate:!0});const f=ie(()=>{var h;return a.value[(h=i.value)==null?void 0:h.file]||null});return Qt(".ct{position:absolute;inset:0;overflow-y:auto;padding:18px;background:#f6f7f9;color:#0f1419;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.ct.is-dark{background:#0a1410;color:#e5e7eb}.ct-h{margin:0 0 4px;font-size:18px;font-weight:700}.ct-sub{margin:0 0 14px;font-size:12.5px;opacity:.72;line-height:1.5}.ct-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.ct-tab{font:600 12px inherit;padding:7px 14px;border-radius:999px;cursor:pointer;border:1px solid rgba(0,0,0,.14);background:transparent;color:inherit}.ct-tab.on{background:#10b981;border-color:#10b981;color:#04241a}.ct-load{padding:22px;text-align:center;font-size:12.5px;opacity:.6}.ct-err{padding:11px 13px;border-radius:8px;background:rgba(220,38,38,.10);color:#a12020;font-size:12.5px}.ct-n{font-size:10.5px;opacity:.6;margin-left:5px;font-variant-numeric:tabular-nums}","doxa-cities-tables"),(h,_)=>(q(),X("div",{class:Se(["ct",{"is-dark":n.value}])},[_[0]||(_[0]=M("h2",{class:"ct-h"},"Cities Data",-1)),_[1]||(_[1]=M("p",{class:"ct-sub"}," Where the unengaged people groups live — and what reaches them. Sort, filter and export any table; each carries its own sources and limits. ",-1)),M("div",i_,[(q(),X(de,null,lt(s,v=>M("button",{key:v.id,type:"button",class:Se(["ct-tab",{on:r.value===v.id}]),onClick:k=>r.value=v.id},[$e(Q(v.label),1),a.value[v.file]?(q(),X("span",l_,Q((a.value[v.file].rows||[]).length.toLocaleString()),1)):Le("",!0)],10,a_)),64))]),c.value?(q(),X("div",c_,Q(c.value),1)):f.value?(q(),Ze(s_,{key:i.value.id,table:f.value,"assets-base":o.value,"is-dark":n.value,height:"600px"},null,8,["table","assets-base","is-dark"])):(q(),X("div",u_,"Loading "+Q(i.value.label)+"…",1))],2))}}},Symbol.toStringTag,{value:"Module"}))})(); +`,"share-button");const{t,tm:n,rt:o}=en(),s=e,r=ie(null),i=ie(!1),a=ie(null),l=ie(null),c=ie("link"),u=ie(!1),f=ie(!1),h=ie("medium"),_={small:{label:"Small",height:400},medium:{label:"Medium",height:600},large:{label:"Large",height:800}},v=Ge("profileConfig",null),k=re(()=>fm({embedPath:s.embedPath,profileConfig:Je(v)||null})),I=re(()=>{const S=_[h.value].height;return''});function N(){i.value=!i.value,i.value&&(c.value="link",u.value=!1,f.value=!1)}function A(){i.value=!1}async function b(S){try{if(navigator.clipboard&&window.isSecureContext)return await navigator.clipboard.writeText(S),!0}catch{}try{const w=document.createElement("textarea");w.value=S,w.setAttribute("readonly",""),w.style.cssText="position:fixed;top:-1000px;opacity:0",document.body.appendChild(w),w.select();const O=document.execCommand("copy");return document.body.removeChild(w),O}catch{return!1}}async function m(){await b(k.value)&&(u.value=!0,setTimeout(()=>{u.value=!1},2e3))}async function C(){await b(I.value)&&(f.value=!0,setTimeout(()=>{f.value=!1},2e3))}return(S,w)=>(Y(),z("div",{ref_key:"rootEl",ref:r,class:"share-wrap"},[ve(co,{ref_key:"btnEl",ref:l,"is-dark":e.isDark,active:i.value,title:Je(t)("buttons.shareEmbed"),onClick:N},{default:Vt(()=>[...w[2]||(w[2]=[P("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[P("path",{d:"M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"}),P("polyline",{points:"16 6 12 2 8 6"}),P("line",{x1:"12",y1:"2",x2:"12",y2:"15"})],-1)])]),_:1},8,["is-dark","active","title"]),ve(ym,{open:i.value,title:Je(t)("buttons.shareEmbed"),"is-dark":e.isDark,onClose:A},{default:Vt(()=>[P("div",{ref_key:"popoverEl",ref:a,class:Te(["share-pop",{light:!e.isDark}])},[P("ul",vm,[(Y(!0),z(pe,null,lt(Je(n)("buttons.shareSteps"),(O,T)=>(Y(),z("li",{key:T},Z(Je(o)(O)),1))),128))]),P("div",wm,[P("button",{class:Te(["share-tab",{active:c.value==="link"}]),onClick:w[0]||(w[0]=O=>c.value="link")},"Embed link",2),P("button",{class:Te(["share-tab",{active:c.value==="embed"}]),onClick:w[1]||(w[1]=O=>c.value="embed")},"Add to Your Website",2)]),c.value==="link"?(Y(),z("div",km,[P("div",$m,[P("div",Om,Z(k.value),1)]),P("button",{class:Te(["share-primary-btn",{copied:u.value}]),onClick:m},[u.value?(Y(),z("svg",Cm,[...w[4]||(w[4]=[P("polyline",{points:"20 6 9 17 4 12"},null,-1)])])):(Y(),z("svg",Nm,[...w[3]||(w[3]=[P("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"},null,-1),P("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"},null,-1)])])),$e(" "+Z(u.value?"Copied!":"Copy Link"),1)],2)])):Le("",!0),c.value==="embed"?(Y(),z("div",Am,[w[7]||(w[7]=P("div",{class:"share-embed-desc"}," Paste this code into your website builder (WordPress, Squarespace, Wix, or any site that accepts HTML widgets). ",-1)),P("div",Em,[(Y(),z(pe,null,lt(_,(O,T)=>P("button",{key:T,class:Te(["share-size-pill",{active:h.value===T}]),onClick:X=>h.value=T},Z(O.label),11,Tm)),64))]),P("div",Lm,Z(I.value),1),P("button",{class:Te(["share-secondary-btn",{copied:f.value}]),onClick:C},[f.value?(Y(),z("svg",Im,[...w[6]||(w[6]=[P("polyline",{points:"20 6 9 17 4 12"},null,-1)])])):(Y(),z("svg",Sm,[...w[5]||(w[5]=[P("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"},null,-1),P("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"},null,-1)])])),$e(" "+Z(f.value?"Copied!":"Copy Code"),1)],2)])):Le("",!0)],2)]),_:1},8,["open","title","is-dark"])],512))}},xm={class:"gm-legend"},Pm={class:"gm-keys"},Mm={key:1,class:"gm-err"},Dm={key:2,class:"gm-sheet"},Bm={class:"gm-sh-head"},Rm={class:"gm-sh-name"},Wm={key:0,class:"gm-ai"},Um={class:"gm-stat"},jm={class:"gm-stat"},Gm={class:"gm-stat"},Ym={class:"gm-stat"},Vm={class:"gm-stat"},Hm={key:1,class:"gm-list"},qm={class:"gm-list-h"},zm={key:2,class:"gm-list"},Km=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"connectivity-map",setup(e){const t=Ge("profileConfig",ie(null)),n=re(()=>{var N;return((N=t.value)==null?void 0:N.isDark)===!0}),o=re(()=>{var N;return((N=t.value)==null?void 0:N.tk)||window.DOXA_TOKEN||""}),s=re(()=>{var N;return String(((N=t.value)==null?void 0:N.assetsBase)||"./assets").replace(/\/+$/,"")}),r=ie(null),i=Eo(null),a=ie([]),l=ie(null),c=ie(!0),u=ie(null),f=[{id:"yes",label:"connected 60%+",color:"#10b981"},{id:"partial",label:"partial 25–59%",color:"#e8c15a"},{id:"no",label:"low, under 25%",color:"#b42318"},{id:"unknown",label:"not measured",color:"#9aa2ad"}],h=N=>(f.find(A=>A.id===N)||{}).color||"#9aa2ad",_=re(()=>{const N={};for(const A of a.value)N[A.iso3]=A;return N});async function v(){const[N,A]=await Promise.all([fetch(`${s.value}/tables/internet-by-country.json`).then(b=>b.json()),fetch(`${s.value}/boundaries/world-adm0.geojson`).then(b=>b.json())]);return a.value=N.countries||[],A}function k(N,A){const b=_.value,C={type:"FeatureCollection",features:(A.features||[]).map(S=>{var T;const w=(T=S.properties)==null?void 0:T.iso3,O=b[w];return{type:"Feature",properties:{iso3:w,band:(O==null?void 0:O.band)||"none",color:O?h(O.band):"rgba(0,0,0,0)",hasData:!!O},geometry:S.geometry}})};if(N.getSource("ci-src")){N.getSource("ci-src").setData(C);return}N.addSource("ci-src",{type:"geojson",data:C}),N.addLayer({id:"ci-fill",type:"fill",source:"ci-src",paint:{"fill-color":["get","color"],"fill-opacity":["case",["get","hasData"],.72,0]}}),N.addLayer({id:"ci-line",type:"line",source:"ci-src",paint:{"line-color":"rgba(255,255,255,0.5)","line-width":.5}}),N.on("click","ci-fill",S=>{var O,T,X;const w=(X=(T=(O=S.features)==null?void 0:O[0])==null?void 0:T.properties)==null?void 0:X.iso3;w&&_.value[w]&&(l.value=_.value[w])}),N.on("mouseenter","ci-fill",()=>{N.getCanvas().style.cursor="pointer"}),N.on("mouseleave","ci-fill",()=>{N.getCanvas().style.cursor=""})}qt(async()=>{const N=window.mapboxgl;if(!N||!r.value){u.value="mapbox-gl not loaded";return}try{const A=await v(),b=new N.Map({container:r.value,style:n.value?"mapbox://styles/mapbox/dark-v11":"mapbox://styles/mapbox/light-v11",accessToken:o.value,center:[42,18],zoom:1.3,projection:"mercator",attributionControl:!1});i.value=_n(b),tm(b,{boundaries:!0}),b.once("load",()=>k(b,A))}catch(A){u.value=String(A.message||A)}}),$n(()=>{var N;try{(N=i.value)==null||N.remove()}catch{}});const I=N=>(Number(N)||0).toLocaleString();return Wt(".gm{position:absolute;inset:0;overflow:hidden}.gm-map{position:absolute;inset:0}.gm-legend{position:absolute;top:8px;left:8px;right:8px;z-index:4;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.94);color:#0f1419;font:12px/1.35 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;box-shadow:0 2px 10px rgba(0,0,0,.16)}.is-dark .gm-legend{background:rgba(19,32,25,.95);color:#e5e7eb}.gm-title{font-weight:700;font-size:12.5px;margin-bottom:5px}.gm-keys{display:flex;flex-wrap:wrap;gap:5px 12px}.gm-key{display:flex;align-items:center;gap:5px;font-size:11px;white-space:nowrap}.gm-sw{width:12px;height:12px;border-radius:3px;flex:none}.gm-caveat{margin-top:5px;font-size:10.5px;opacity:.72;line-height:1.4}.gm-sheet{position:absolute;left:0;right:0;bottom:0;z-index:6;max-height:62%;overflow-y:auto;background:#fff;color:#0f1419;border-radius:14px 14px 0 0;padding:14px 16px 22px;font:13px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;box-shadow:0 -6px 26px rgba(0,0,0,.28)}@media(min-width:700px){.gm-sheet{left:auto;right:14px;bottom:14px;width:330px;border-radius:12px}}.is-dark .gm-sheet{background:#132019;color:#e5e7eb}.gm-sh-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.gm-sh-name{font-weight:800;font-size:15px}.gm-ai{display:flex;align-items:flex-start;gap:8px;margin:0 0 10px;padding:7px 9px;border-radius:8px;font-size:11px;line-height:1.35;background:rgba(180,120,0,.12);color:#7a4f00;border:1px solid rgba(180,120,0,.25)}.is-dark .gm-ai{background:rgba(255,200,80,.10);color:#f0cf88;border-color:rgba(255,200,80,.22)}.gm-ai-x{margin-left:auto;flex:none;border:0;background:none;cursor:pointer;font-size:15px;line-height:1;color:inherit;opacity:.7;padding:0 2px}.gm-ai-x:hover{opacity:1}.gm-x{margin-left:auto;border:1px solid rgba(0,0,0,.16);background:transparent;color:inherit;font:600 12px inherit;padding:6px 12px;border-radius:8px;cursor:pointer;min-height:34px}.gm-stat{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.07);font-variant-numeric:tabular-nums}.is-dark .gm-stat{border-bottom-color:rgba(255,255,255,.09)}.gm-stat b{font-weight:700}.gm-list{margin-top:9px}.gm-list-h{font-weight:700;font-size:12px;margin-bottom:3px}.gm-list ul{margin:0;padding-left:17px;font-size:12px;line-height:1.5}.gm-note{margin-top:9px;font-size:11px;line-height:1.5;opacity:.75}.gm-err{position:absolute;top:50%;left:0;right:0;text-align:center;font-size:13px;opacity:.7}","doxa-connectivity-map"),(N,A)=>(Y(),z("div",{class:Te(["gm",{"is-dark":n.value}])},[P("div",{ref_key:"mapEl",ref:r,class:"gm-map"},null,512),i.value?(Y(),Qe(nm,{key:0},{default:Vt(()=>[ve(rm,{map:i.value,"is-dark":n.value},null,8,["map","is-dark"]),ve(sm,{map:i.value,"is-dark":n.value},null,8,["map","is-dark"]),ve(im,{map:i.value,"is-dark":n.value},null,8,["map","is-dark"]),ve(cm,{"map-container":r.value,"is-dark":n.value},null,8,["map-container","is-dark"]),ve(Fm,{"is-dark":n.value,"embed-path":"cities-internet/connectivity-map/index.html"},null,8,["is-dark"])]),_:1})):Le("",!0),P("div",xm,[A[2]||(A[2]=P("div",{class:"gm-title"},"Internet access where unengaged people groups live",-1)),P("div",Pm,[(Y(),z(pe,null,lt(f,b=>P("span",{key:b.id,class:"gm-key"},[P("i",{class:"gm-sw",style:Pn({background:b.color})},null,4),$e(Z(b.label),1)])),64))]),A[3]||(A[3]=P("div",{class:"gm-caveat"}," NATIONAL figures (World Bank). Per-city connectivity is not publicly available — do not read a city off a country. ",-1))]),u.value?(Y(),z("div",Mm,Z(u.value),1)):Le("",!0),l.value?(Y(),z("div",Dm,[P("div",Bm,[P("span",Rm,Z(l.value.country),1),P("button",{type:"button",class:"gm-x",onClick:A[0]||(A[0]=b=>l.value=null)},"Close")]),c.value?(Y(),z("div",Wm,[A[4]||(A[4]=P("span",null,"Data was found by AI deep research — it is subject to false information.",-1)),P("button",{type:"button",class:"gm-ai-x",onClick:A[1]||(A[1]=b=>c.value=!1),"aria-label":"Dismiss"},"×")])):Le("",!0),P("div",Um,[A[5]||(A[5]=P("span",null,"Internet users",-1)),P("b",null,Z(l.value.internet_pct!=null?l.value.internet_pct+"%":"unknown"),1)]),P("div",jm,[A[6]||(A[6]=P("span",null,"Measured",-1)),P("b",null,Z(l.value.internet_year||"—"),1)]),P("div",Gm,[A[7]||(A[7]=P("span",null,"Mobile per 100",-1)),P("b",null,Z(l.value.mobile_per_100??"—"),1)]),P("div",Ym,[A[8]||(A[8]=P("span",null,"People groups",-1)),P("b",null,Z(I(l.value.people_groups)),1)]),P("div",Vm,[A[9]||(A[9]=P("span",null,"Top platform",-1)),P("b",null,[$e(Z(l.value.top_platform||"unknown"),1),l.value.top_platform_pct?(Y(),z(pe,{key:0},[$e(" · "+Z(l.value.top_platform_pct)+"%",1)],64)):Le("",!0)])]),l.value.carriers&&l.value.carriers.length?(Y(),z("div",Hm,[P("div",qm,"Carriers & ISPs ("+Z(l.value.carrier_count)+")",1),P("ul",null,[(Y(!0),z(pe,null,lt(l.value.carriers,(b,m)=>(Y(),z("li",{key:m},Z(b),1))),128))])])):Le("",!0),l.value.platforms&&l.value.platforms.length?(Y(),z("div",zm,[A[10]||(A[10]=P("div",{class:"gm-list-h"},"Social platforms",-1)),P("ul",null,[(Y(!0),z(pe,null,lt(l.value.platforms,(b,m)=>(Y(),z("li",{key:m},Z(b.name)+" · "+Z(b.pct)+"%",1))),128))])])):Le("",!0),A[11]||(A[11]=P("p",{class:"gm-note"}," National figures, not city measurements. Carrier names are ASN registry holders — that set includes banks and universities as well as ISPs, so the carrier flag is a name heuristic, not a verified classification. ",-1))])):Le("",!0)],2))}}},Symbol.toStringTag,{value:"Module"})),Xm={class:"dt-head"},Jm={class:"dt-title"},Zm={class:"dt-count"},Qm={key:0,class:"dt-grain"},e_={class:"dt-actions"},t_={key:0,class:"dt-err"},n_={class:"dt-wrap"},o_={class:"dt-hint"},r_={class:"dt-sheet",role:"dialog","aria-label":"Row detail"},s_={class:"dt-sheet-head"},i_={class:"dt-dl"},a_=["href"],l_={key:1},c_={key:2},u_={key:2,class:"dt-caveats"},p_={class:"dt-cav-k"},d_={__name:"DataTable",props:{table:{type:Object,required:!0},assetsBase:{type:String,default:"./assets"},isDark:{type:Boolean,default:!1},height:{type:String,default:"560px"},frozen:{type:Number,default:1},pageSize:{type:Number,default:50}},emits:["row-click"],setup(e,{emit:t}){const n=e,o=t,s=ie(!1),r=ie(null),i=ie(null),a=Eo(null),l=ie(null),c=ie(!1),u=re(()=>String(n.assetsBase||"./assets").replace(/\/+$/,"")),f=re(()=>{var w;return((w=n.table)==null?void 0:w.meta)||{}}),h=re(()=>{var w;return(((w=n.table)==null?void 0:w.rows)||[]).length}),_=re(()=>Object.entries(f.value).filter(([w,O])=>typeof O=="string"&&/caveat|meaning|note|boundary|measures|does_not/i.test(w)).map(([w,O])=>({key:w.replace(/_/g," "),text:O})));let v=null;function k(){return window.Tabulator?Promise.resolve(window.Tabulator):v||(v=new Promise((w,O)=>{const T=document.createElement("script");T.src=`${u.value}/vendor/tabulator/tabulator.min.js`,T.onload=()=>w(window.Tabulator),T.onerror=()=>O(new Error("Tabulator failed to load — is public/assets/vendor/tabulator/ present?")),document.head.appendChild(T)}),v)}async function I(w){if(!(!w||w.querySelector("style[data-tabulator]")))try{const O=await fetch(`${u.value}/vendor/tabulator/tabulator.min.css`);if(!O.ok)return;const T=document.createElement("style");T.setAttribute("data-tabulator",""),T.textContent=await O.text(),w.appendChild(T)}catch{}}function N(w){var te,H;if(!i.value)return;s.value=typeof window<"u"&&window.innerWidth<700;const O=((te=n.table)==null?void 0:te.columns)||[],X=(s.value?O.slice(0,3):O).map((se,he)=>({title:se.title,field:se.field,headerFilter:se.type==="boolean"?"tickCross":"input",headerFilterPlaceholder:"filter…",sorter:se.type==="number"?"number":se.type==="boolean"?"boolean":"string",formatter:se.type==="boolean"?"tickCross":void 0,.../_url$/.test(se.field)?{formatter:"link",formatterParams:{target:"_blank",label:()=>"open"}}:{},frozen:!s.value&&he{r.value=he.getData(),o("row-click",he.getData())}),a.value.on("tableBuilt",()=>{c.value=!0})}const A=w=>{var O,T;return((T=(((O=n.table)==null?void 0:O.columns)||[]).find(X=>X.field===w))==null?void 0:T.title)||w.replace(/_/g," ")},b=w=>typeof w=="string"&&w.includes(", ")&&w.length>40?w.split(", "):null,m=w=>typeof w=="string"&&/^https?:\/\//.test(w),C=re(()=>r.value?Object.entries(r.value).filter(([,w])=>w!==""&&w!==null&&w!==void 0):[]);function S(w){var O;try{(O=a.value)==null||O.download(w,`${(f.value.title||"table").replace(/\W+/g,"-").toLowerCase()}.${w}`)}catch(T){l.value=String(T.message||T)}}return qt(async()=>{var w,O;try{await I((O=(w=i.value)==null?void 0:w.getRootNode)==null?void 0:O.call(w)),N(await k())}catch(T){l.value=String(T.message||T)}}),$n(()=>{var w;try{(w=a.value)==null||w.destroy()}catch{}}),yt(()=>n.table,()=>{var w,O;try{(O=a.value)==null||O.replaceData(((w=n.table)==null?void 0:w.rows)||[])}catch{}}),Wt(".dt,.dt *{box-sizing:border-box}.dt{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.dt-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}.dt-title{font-size:15px;font-weight:700;margin:0}.dt-count{font-size:11.5px;opacity:.6;font-variant-numeric:tabular-nums}.dt-grain{font-size:11px;opacity:.55}.dt-actions{margin-left:auto;display:flex;gap:6px}.dt-btn{font:600 11.5px inherit;padding:5px 11px;border-radius:6px;cursor:pointer;border:1px solid rgba(0,0,0,.16);background:transparent;color:inherit}.dt-btn:hover{background:rgba(0,0,0,.05)}.dt-err{padding:10px 12px;border-radius:8px;background:rgba(220,38,38,.10);color:#a12020;font-size:12.5px}.dt-caveats{margin-top:10px;padding:10px 12px;border-radius:8px;background:rgba(0,0,0,.04);font-size:11.5px;line-height:1.6;opacity:.85}.is-dark .dt-caveats{background:rgba(255,255,255,.06)}.dt-cav-k{font-weight:700;text-transform:capitalize}.dt-scrim{position:fixed;inset:0;z-index:1200;background:rgba(8,12,16,.55);display:flex;align-items:flex-end;justify-content:center}@media(min-width:700px){.dt-scrim{align-items:center}}.dt-sheet{width:100%;max-width:560px;max-height:82vh;overflow-y:auto;background:#fff;color:#0f1419;border-radius:14px 14px 0 0;padding:16px 18px 26px;box-shadow:0 -6px 30px rgba(0,0,0,.3)}@media(min-width:700px){.dt-sheet{border-radius:14px}}.is-dark .dt-sheet{background:#132019;color:#e5e7eb}.dt-sheet-head{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid rgba(0,0,0,.10);font-size:15px}.dt-close{margin-left:auto;font:600 12px inherit;padding:7px 14px;border-radius:8px;cursor:pointer;min-height:36px;border:1px solid rgba(0,0,0,.16);background:transparent;color:inherit}.dt-dl{display:grid;grid-template-columns:minmax(96px,34%) 1fr;gap:7px 12px;margin:0;font-size:12.5px}.dt-dl dt{font-weight:700;opacity:.72;text-transform:capitalize}.dt-dl dd{margin:0;word-break:break-word}.dt-dl ul{margin:0;padding-left:16px}.dt-dl a{color:#0b7a5b;font-weight:600}.dt-hint{font-size:11px;opacity:.6;margin:6px 0 0}.dt-wrap{width:100%;overflow:hidden;border:1px solid rgba(0,0,0,.10);border-radius:8px}.is-dark .dt-wrap{border-color:rgba(255,255,255,.12)}","doxa-data-table"),(w,O)=>{var T,X;return Y(),z("div",{class:Te(["dt",{"is-dark":e.isDark}])},[P("div",Xm,[P("h3",Jm,Z(f.value.title||"Data"),1),P("span",Zm,Z(h.value.toLocaleString())+" rows",1),f.value.grain?(Y(),z("span",Qm,"· "+Z(f.value.grain),1)):Le("",!0),P("span",e_,[P("button",{type:"button",class:"dt-btn",onClick:O[0]||(O[0]=te=>S("csv"))},"CSV"),P("button",{type:"button",class:"dt-btn",onClick:O[1]||(O[1]=te=>S("json"))},"JSON")])]),l.value?(Y(),z("div",t_,Z(l.value),1)):Le("",!0),P("div",n_,[P("div",{ref_key:"host",ref:i},null,512)]),P("p",o_,"Tap any row for its full detail"+Z(s.value?"":" — every field, including the lists the table flattens")+".",1),r.value?(Y(),z("div",{key:1,class:"dt-scrim",onClick:O[3]||(O[3]=gp(te=>r.value=null,["self"]))},[P("div",r_,[P("div",s_,[P("strong",null,Z(r.value[(X=(((T=e.table)==null?void 0:T.columns)||[])[0])==null?void 0:X.field]||"Detail"),1),P("button",{type:"button",class:"dt-close",onClick:O[2]||(O[2]=te=>r.value=null)},"Close")]),P("dl",i_,[(Y(!0),z(pe,null,lt(C.value,([te,H])=>(Y(),z(pe,{key:te},[P("dt",null,Z(A(te)),1),P("dd",null,[m(H)?(Y(),z("a",{key:0,href:H,target:"_blank",rel:"noopener"},Z(H),9,a_)):b(H)?(Y(),z("ul",l_,[(Y(!0),z(pe,null,lt(b(H),(se,he)=>(Y(),z("li",{key:he},Z(se),1))),128))])):(Y(),z("span",c_,Z(H===!0?"yes":H===!1?"no":H),1))])],64))),128))])])])):Le("",!0),_.value.length?(Y(),z("div",u_,[(Y(!0),z(pe,null,lt(_.value,te=>(Y(),z("div",{key:te.key},[P("span",p_,Z(te.key)+":",1),$e(" "+Z(te.text),1)]))),128))])):Le("",!0)],2)}}},f_={class:"ct-tabs"},h_=["onClick"],g_={key:0,class:"ct-n"},m_={key:0,class:"ct-err"},__={key:1,class:"ct-load"},b_=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"data-tables",setup(e){const t=Ge("profileConfig",ie(null)),n=re(()=>{var h;return((h=t.value)==null?void 0:h.isDark)===!0}),o=re(()=>{var h;return String(((h=t.value)==null?void 0:h.assetsBase)||"./assets").replace(/\/+$/,"")}),s=[{id:"cities",label:"Key Cities",file:"key-cities"},{id:"internet",label:"Connectivity",file:"country-connectivity"},{id:"operators",label:"ISPs & Carriers",file:"network-operators"},{id:"social",label:"Social Platforms",file:"social-platforms"},{id:"messaging",label:"Messaging Apps",file:"messaging-channels"}],r=ie("cities"),i=re(()=>s.find(h=>h.id===r.value)||s[0]),a=ie({}),l=ie(!1),c=ie(null);async function u(h){if(!a.value[h]){l.value=!0,c.value=null;try{const _=await fetch(`${o.value}/tables/${h}.json`);if(!_.ok)throw new Error(`table not found (${_.status})`);a.value={...a.value,[h]:await _.json()}}catch(_){c.value=String(_.message||_)}finally{l.value=!1}}}yt(i,h=>h&&u(h.file),{immediate:!0});const f=re(()=>{var h;return a.value[(h=i.value)==null?void 0:h.file]||null});return Wt(".ct{position:absolute;inset:0;overflow-y:auto;padding:18px;background:#f6f7f9;color:#0f1419;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.ct.is-dark{background:#0a1410;color:#e5e7eb}.ct-h{margin:0 0 4px;font-size:18px;font-weight:700}.ct-sub{margin:0 0 14px;font-size:12.5px;opacity:.72;line-height:1.5}.ct-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.ct-tab{font:600 12px inherit;padding:7px 14px;border-radius:999px;cursor:pointer;border:1px solid rgba(0,0,0,.14);background:transparent;color:inherit}.ct-tab.on{background:#10b981;border-color:#10b981;color:#04241a}.ct-load{padding:22px;text-align:center;font-size:12.5px;opacity:.6}.ct-err{padding:11px 13px;border-radius:8px;background:rgba(220,38,38,.10);color:#a12020;font-size:12.5px}.ct-n{font-size:10.5px;opacity:.6;margin-left:5px;font-variant-numeric:tabular-nums}","doxa-cities-tables"),(h,_)=>(Y(),z("div",{class:Te(["ct",{"is-dark":n.value}])},[_[0]||(_[0]=P("h2",{class:"ct-h"},"Cities Data",-1)),_[1]||(_[1]=P("p",{class:"ct-sub"}," Where the unengaged people groups live — and what reaches them. Sort, filter and export any table; each carries its own sources and limits. ",-1)),P("div",f_,[(Y(),z(pe,null,lt(s,v=>P("button",{key:v.id,type:"button",class:Te(["ct-tab",{on:r.value===v.id}]),onClick:k=>r.value=v.id},[$e(Z(v.label),1),a.value[v.file]?(Y(),z("span",g_,Z((a.value[v.file].rows||[]).length.toLocaleString()),1)):Le("",!0)],10,h_)),64))]),c.value?(Y(),z("div",m_,Z(c.value),1)):f.value?(Y(),Qe(d_,{key:i.value.id,table:f.value,"assets-base":o.value,"is-dark":n.value,height:"600px"},null,8,["table","assets-base","is-dark"])):(Y(),z("div",__,"Loading "+Z(i.value.label)+"…",1))],2))}}},Symbol.toStringTag,{value:"Module"}))})(); diff --git a/public/doxa-maps/cities-internet/connectivity-list/index.html b/public/doxa-maps/cities-internet/connectivity-list/index.html index 9ad21e4a6..7879feb42 100644 --- a/public/doxa-maps/cities-internet/connectivity-list/index.html +++ b/public/doxa-maps/cities-internet/connectivity-list/index.html @@ -29,7 +29,7 @@ - + - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":10,"profileCount":19,"bundles":[{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-ge3Zq90iPdgXeeWrj3sW3iKkx1eY3WSvcWsWDKlyghaSpwva02ZBP0wPLfR0CMDZ","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-ge3Zq90iPdgXeeWrj3sW3iKkx1eY3WSvcWsWDKlyghaSpwva02ZBP0wPLfR0CMDZ\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-ge3Zq90iPdgXeeWrj3sW3iKkx1eY3WSvcWsWDKlyghaSpwva02ZBP0wPLfR0CMDZ\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-ge3Zq90iPdgXeeWrj3sW3iKkx1eY3WSvcWsWDKlyghaSpwva02ZBP0wPLfR0CMDZ\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/cities-internet-map>"}}]}]}; - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":10,"profileCount":19,"bundles":[{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-lU9YUdMqo3o/Q1TlRee+Cy5gt0Oxhsrth81GE4llre3bkdf3OaFVFVIL9/8P6Qwm","elements":["country-posters-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"","element":"country-posters-map","iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-lU9YUdMqo3o/Q1TlRee+Cy5gt0Oxhsrth81GE4llre3bkdf3OaFVFVIL9/8P6Qwm\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"","element":"country-posters-map","iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-lU9YUdMqo3o/Q1TlRee+Cy5gt0Oxhsrth81GE4llre3bkdf3OaFVFVIL9/8P6Qwm\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/country-posters-map>"}}]}]}; - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":10,"profileCount":19,"bundles":[{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-mfmRj8m2lOcWommgcrAeGrTVWOJwF0FIzjRViVcv/SdamrkJ0a6UQ/X0vzHdNUmv","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-mfmRj8m2lOcWommgcrAeGrTVWOJwF0FIzjRViVcv/SdamrkJ0a6UQ/X0vzHdNUmv\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]}]}; + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":10,"profileCount":19,"bundles":[{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-R3g5kZN1NWHYJQk9R7OG7dhopBnEe5Ju6SblAPd6FlGy5uRdnGWxbAq48KyXnE00","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"","element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-R3g5kZN1NWHYJQk9R7OG7dhopBnEe5Ju6SblAPd6FlGy5uRdnGWxbAq48KyXnE00\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/doxa-research-map>"}}]}]}; - + - + - + - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":10,"profileCount":19,"bundles":[{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-2SIuwg91tIEBrWFDyA6yMcVLO63UjnGI9NNPXFc2U7l1XLgIahbsNXPMUO3mBxMQ","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"","element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-2SIuwg91tIEBrWFDyA6yMcVLO63UjnGI9NNPXFc2U7l1XLgIahbsNXPMUO3mBxMQ\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]}]}; - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":10,"profileCount":19,"bundles":[{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/gospel-resources-map>"}}]}]}; - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":10,"profileCount":19,"bundles":[{"bundle":"all-people-groups","scriptUrl":"./all-people-groups/all-people-groups.js","output":"doxa-maps/all-people-groups/all-people-groups.js","integrity":"sha384-ZnhhkQKe4NOO96T23+c31QiLAD6xvVU4+MmH5cr2Iq1KvXMLmjYh0ogopwn2qngq","elements":["all-people-groups"],"profiles":[{"profile":"all-people-groups","file":"all-people-groups.vue","description":"All 12,379 people groups (peoplegroups.org) in four colors — reached,","element":"all-people-groups","iframeUrl":"./all-people-groups/all-people-groups/index.html","scriptUrl":"./all-people-groups/all-people-groups.js","embed":{"iframe":"\u003ciframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-ZnhhkQKe4NOO96T23+c31QiLAD6xvVU4+MmH5cr2Iq1KvXMLmjYh0ogopwn2qngq\" crossorigin=\"anonymous\">\u003c/script>\n\u003call-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/all-people-groups>"},"bundle":"all-people-groups"}]},{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-ge3Zq90iPdgXeeWrj3sW3iKkx1eY3WSvcWsWDKlyghaSpwva02ZBP0wPLfR0CMDZ","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-ge3Zq90iPdgXeeWrj3sW3iKkx1eY3WSvcWsWDKlyghaSpwva02ZBP0wPLfR0CMDZ\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-ge3Zq90iPdgXeeWrj3sW3iKkx1eY3WSvcWsWDKlyghaSpwva02ZBP0wPLfR0CMDZ\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-ge3Zq90iPdgXeeWrj3sW3iKkx1eY3WSvcWsWDKlyghaSpwva02ZBP0wPLfR0CMDZ\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-lU9YUdMqo3o/Q1TlRee+Cy5gt0Oxhsrth81GE4llre3bkdf3OaFVFVIL9/8P6Qwm","elements":["country-posters-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"","element":"country-posters-map","iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-lU9YUdMqo3o/Q1TlRee+Cy5gt0Oxhsrth81GE4llre3bkdf3OaFVFVIL9/8P6Qwm\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"","element":"country-posters-map","iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-lU9YUdMqo3o/Q1TlRee+Cy5gt0Oxhsrth81GE4llre3bkdf3OaFVFVIL9/8P6Qwm\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/country-posters-map>"}}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-mfmRj8m2lOcWommgcrAeGrTVWOJwF0FIzjRViVcv/SdamrkJ0a6UQ/X0vzHdNUmv","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-mfmRj8m2lOcWommgcrAeGrTVWOJwF0FIzjRViVcv/SdamrkJ0a6UQ/X0vzHdNUmv\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-R3g5kZN1NWHYJQk9R7OG7dhopBnEe5Ju6SblAPd6FlGy5uRdnGWxbAq48KyXnE00","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"","element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-R3g5kZN1NWHYJQk9R7OG7dhopBnEe5Ju6SblAPd6FlGy5uRdnGWxbAq48KyXnE00\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/doxa-research-map>"}}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-2SIuwg91tIEBrWFDyA6yMcVLO63UjnGI9NNPXFc2U7l1XLgIahbsNXPMUO3mBxMQ","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"","element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-2SIuwg91tIEBrWFDyA6yMcVLO63UjnGI9NNPXFc2U7l1XLgIahbsNXPMUO3mBxMQ\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD","elements":["my-upg-100-list-map"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"","element":"my-upg-100-list-map","iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"","element":"my-upg-100-list-map","iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"","element":"my-upg-100-list-map","iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-YbwXMIQIkPSFnB4EVR35AtlHApWzCG+2lb16xUEKxHLU6zo1jfpppUDZb7i+irxP","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-YbwXMIQIkPSFnB4EVR35AtlHApWzCG+2lb16xUEKxHLU6zo1jfpppUDZb7i+irxP\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-85Dt1LFnF/2QJuLwCA3wGUdyHVzzvSvn2yR5/yHocZAy0daRVTt4Ne/GQwxjcgfq","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-85Dt1LFnF/2QJuLwCA3wGUdyHVzzvSvn2yR5/yHocZAy0daRVTt4Ne/GQwxjcgfq\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-85Dt1LFnF/2QJuLwCA3wGUdyHVzzvSvn2yR5/yHocZAy0daRVTt4Ne/GQwxjcgfq\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]}]}; \n" + "script": "\n" } }, { @@ -59,7 +59,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } }, { @@ -71,7 +71,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } } ] @@ -80,7 +80,7 @@ "bundle": "country-posters", "scriptUrl": "./country-posters/country-posters.js", "output": "doxa-maps/country-posters/country-posters.js", - "integrity": "sha384-fIMbnht1sf/+kNwrAFg83DRA55pIsvsdpKAXyIEZ/j27yKMHKh2b44I3bFJGxfEj", + "integrity": "sha384-lU9YUdMqo3o/Q1TlRee+Cy5gt0Oxhsrth81GE4llre3bkdf3OaFVFVIL9/8P6Qwm", "elements": [ "country-posters-map" ], @@ -94,7 +94,7 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } }, { @@ -106,7 +106,7 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } } ] @@ -115,7 +115,7 @@ "bundle": "demo-map", "scriptUrl": "./demo-map/demo-map.js", "output": "doxa-maps/demo-map/demo-map.js", - "integrity": "sha384-jg5ScRngHrewcs32XqMikxcsAferksjyrX31zX1neQJ4OSpFqO2QhMZ+cY+JYY8z", + "integrity": "sha384-mfmRj8m2lOcWommgcrAeGrTVWOJwF0FIzjRViVcv/SdamrkJ0a6UQ/X0vzHdNUmv", "elements": [ "demo-map" ], @@ -129,7 +129,7 @@ "scriptUrl": "./demo-map/demo-map.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" }, "instances": [ { @@ -156,7 +156,7 @@ "bundle": "doxa-research-map", "scriptUrl": "./doxa-research-map/doxa-research-map.js", "output": "doxa-maps/doxa-research-map/doxa-research-map.js", - "integrity": "sha384-VuyP/T85ejCw4bzolDsc67H7EX8nfx1e+u2SZdFr2gbp/g4y4O5G5f889o/QwqDy", + "integrity": "sha384-R3g5kZN1NWHYJQk9R7OG7dhopBnEe5Ju6SblAPd6FlGy5uRdnGWxbAq48KyXnE00", "elements": [ "doxa-research-map" ], @@ -170,7 +170,7 @@ "scriptUrl": "./doxa-research-map/doxa-research-map.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } } ] @@ -179,7 +179,7 @@ "bundle": "doxa-simple-map", "scriptUrl": "./doxa-simple-map/doxa-simple-map.js", "output": "doxa-maps/doxa-simple-map/doxa-simple-map.js", - "integrity": "sha384-3NC50nEcvVurYb9nbkR7MmfCgmPXBSKzzVzRzrhdx4W+22JXky/Jcio1flr/UHVk", + "integrity": "sha384-2SIuwg91tIEBrWFDyA6yMcVLO63UjnGI9NNPXFc2U7l1XLgIahbsNXPMUO3mBxMQ", "elements": [ "doxa-map", "doxa-simple-map" @@ -194,7 +194,7 @@ "scriptUrl": "./doxa-simple-map/doxa-simple-map.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" }, "instances": [ { @@ -274,7 +274,7 @@ "bundle": "gospel-resources", "scriptUrl": "./gospel-resources/gospel-resources.js", "output": "doxa-maps/gospel-resources/gospel-resources.js", - "integrity": "sha384-vMOUZHe6eXriXcjtnLzgehBSWnTj6HDyDro57KAUw/l6SowCzqT1Puyibj36w7hb", + "integrity": "sha384-9OJ56vvcz2qcTshx0O6Wr/OzKle23YkbAUYI4JbxlQlEH/8zgxE9GF6TDWZDiHAn", "elements": [ "gospel-resources-map" ], @@ -288,7 +288,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } }, { @@ -300,7 +300,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } }, { @@ -312,7 +312,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } }, { @@ -324,7 +324,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } } ] @@ -333,7 +333,7 @@ "bundle": "my-upg-100-list", "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "output": "doxa-maps/my-upg-100-list/my-upg-100-list.js", - "integrity": "sha384-nd+Mr1e1F/8vGje+9UiBU2ryYAEBY1ABGgygyd23ulcVaCu2YBq3EuCBFCb61mLG", + "integrity": "sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD", "elements": [ "my-upg-100-list-map" ], @@ -347,7 +347,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } }, { @@ -359,7 +359,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } }, { @@ -371,7 +371,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n" + "script": "\n" } } ] diff --git a/public/doxa-maps/my-upg-100-list/index.html b/public/doxa-maps/my-upg-100-list/index.html index 06567db36..bdff5f120 100644 --- a/public/doxa-maps/my-upg-100-list/index.html +++ b/public/doxa-maps/my-upg-100-list/index.html @@ -130,7 +130,7 @@ header.top .sub { margin-top: 3px; font: 12px/1.4 var(--sans); color: var(--mut) + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":10,"profileCount":19,"bundles":[{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD","elements":["my-upg-100-list-map"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"","element":"my-upg-100-list-map","iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"","element":"my-upg-100-list-map","iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"","element":"my-upg-100-list-map","iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-a9FXP5lqRXCPsV5UvuhTGTIOSxmOaq8m0p2S8mRY45Iq6In9dlf8abswTUKXFVqD\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\"}'>\u003c/my-upg-100-list-map>"}}]}]}; - + - + - +