Urdatorn Claude Fable 5.1 commited on
Commit
1e15eec
·
1 Parent(s): 2a334a0

Publish combinations with the combination method chosen on validation

Browse files

Every two- and three-model combination now selects, per task, among
concatenation of prepared feature blocks and five training-free posterior
combiners, on validation macro-F1, and reads test once for the winner. That
admits the two strongest atomic contenders -- end-to-end GreBERTa and the
siamese encoder -- which emit predictions rather than stackable columns and
could not enter a concatenation at all.

Pooling wins 173 of 216 Sphragis cells and the geometric mean is the most
chosen method; the new best on one sentence is siamese with syntax rates and
lemma TF-IDF at 77.87, five points over the best atomic model. On the
source-held-out track concatenation still takes the top cells, so the choice
genuinely varies by track. Concatenation-only rows remain only for the
KainoBERT twins, which the method search did not cover. Rows containing the
authorial language models will be refreshed when their remake lands.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

.logs/publish-lb-2062343.err ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ The following modules were not unloaded:
2
+ (Use "module --force purge" to unload all):
3
+
4
+ 1) hpc_sysenv/.1 2) hpc/.2.1.0
5
+ Traceback (most recent call last):
6
+ File "/nobackup/proj/flash/dionysus/personal/cleland/sphragis-leaderboard/scripts/publish_atomic_results.py", line 801, in <module>
7
+ main()
8
+ ~~~~^^
9
+ File "/nobackup/proj/flash/dionysus/personal/cleland/sphragis-leaderboard/scripts/publish_atomic_results.py", line 780, in main
10
+ sphragis_rows, metre_rows = make_rows(
11
+ ~~~~~~~~~^
12
+ args.results_root, args.sphragis_data, args.metre_data
13
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
14
+ )
15
+ ^
16
+ File "/nobackup/proj/flash/dionysus/personal/cleland/sphragis-leaderboard/scripts/publish_atomic_results.py", line 544, in make_rows
17
+ sphragis_rows = [
18
+ ^
19
+ ...<109 lines>...
20
+ ]
21
+ ^
22
+ File "/nobackup/proj/flash/dionysus/personal/cleland/sphragis-leaderboard/scripts/publish_atomic_results.py", line 643, in <genexpr>
23
+ build_row(
24
+ ~~~~~~~~~^
25
+ model=pair_model_name(combo),
26
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
27
+ ...<5 lines>...
28
+ dataset_roots=roots,
29
+ ^^^^^^^^^^^^^^^^^^^^
30
+ )
31
+ ^
32
+ File "/nobackup/proj/flash/dionysus/personal/cleland/sphragis-leaderboard/scripts/publish_atomic_results.py", line 123, in build_row
33
+ score, accuracy, confusion = diagnostics(
34
+ ~~~~~~~~~~~^
35
+ predictions_path, dataset_root, task, saved_macro_f1
36
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
37
+ )
38
+ ^
39
+ File "/nobackup/proj/flash/dionysus/personal/cleland/sphragis-leaderboard/scripts/publish_atomic_results.py", line 60, in diagnostics
40
+ predictions = read_predictions(predictions_path)
41
+ File "/nobackup/proj/flash/dionysus/personal/cleland/sphragis-leaderboard/scripts/publish_atomic_results.py", line 29, in read_predictions
42
+ rows = [json.loads(line) for line in path.read_text().splitlines() if line.strip()]
43
+ ~~~~~~~~~~~~~~^^
44
+ File "/software/sse2/el9_gh200/easybuild/prefix/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/pathlib/_local.py", line 546, in read_text
45
+ return PathBase.read_text(self, encoding, errors, newline)
46
+ ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
47
+ File "/software/sse2/el9_gh200/easybuild/prefix/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/pathlib/_abc.py", line 632, in read_text
48
+ with self.open(mode='r', encoding=encoding, errors=errors, newline=newline) as f:
49
+ ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
50
+ File "/software/sse2/el9_gh200/easybuild/prefix/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/pathlib/_local.py", line 537, in open
51
+ return io.open(self, mode, buffering, encoding, errors, newline)
52
+ ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
53
+ FileNotFoundError: [Errno 2] No such file or directory: 'results/rebuilt-2026-08-27/combination-method/alm-burrows/sphragis-main/sentence_5/predictions.jsonl'
.logs/publish-lb-2062343.out ADDED
File without changes
.logs/publish-lb-2062418.err ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ The following modules were not unloaded:
2
+ (Use "module --force purge" to unload all):
3
+
4
+ 1) hpc_sysenv/.1 2) hpc/.2.1.0
.logs/publish-lb-2062418.out ADDED
@@ -0,0 +1 @@
 
 
1
+ {"output": "/nobackup/proj/flash/dionysus/personal/cleland/sphragis-leaderboard/src/lib/atomicModelResults.ts", "sphragis_rows": 105, "metre_rows": 96, "validated_tasks": 842}
404.html CHANGED
@@ -4,11 +4,11 @@
4
  <meta charset="utf-8" />
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
  <meta name="theme-color" content="#f7f5ef" />
7
- <link href="/_app/immutable/entry/start.CWAvbtCY.js" rel="modulepreload">
8
  <link href="/_app/immutable/chunks/Dnoir60M.js" rel="modulepreload">
9
- <link href="/_app/immutable/chunks/7n4STY6M.js" rel="modulepreload">
10
  <link href="/_app/immutable/chunks/CGlyOndm.js" rel="modulepreload">
11
- <link href="/_app/immutable/entry/app.BV2I02n0.js" rel="modulepreload">
12
  <link href="/_app/immutable/chunks/CLflRIDg.js" rel="modulepreload">
13
  <link href="/_app/immutable/chunks/CTfzyGBz.js" rel="modulepreload">
14
  <link href="/_app/immutable/chunks/7ar41ERE.js" rel="modulepreload">
@@ -21,15 +21,15 @@
21
  <div style="display: contents">
22
  <script>
23
  {
24
- __sveltekit_1ez977 = {
25
  base: ""
26
  };
27
 
28
  const element = document.currentScript.parentElement;
29
 
30
  Promise.all([
31
- import("/_app/immutable/entry/start.CWAvbtCY.js"),
32
- import("/_app/immutable/entry/app.BV2I02n0.js")
33
  ]).then(([kit, app]) => {
34
  kit.start(app, element);
35
  });
 
4
  <meta charset="utf-8" />
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
  <meta name="theme-color" content="#f7f5ef" />
7
+ <link href="/_app/immutable/entry/start.CVIQ-jrx.js" rel="modulepreload">
8
  <link href="/_app/immutable/chunks/Dnoir60M.js" rel="modulepreload">
9
+ <link href="/_app/immutable/chunks/BluVH81E.js" rel="modulepreload">
10
  <link href="/_app/immutable/chunks/CGlyOndm.js" rel="modulepreload">
11
+ <link href="/_app/immutable/entry/app.g6Xc-uhS.js" rel="modulepreload">
12
  <link href="/_app/immutable/chunks/CLflRIDg.js" rel="modulepreload">
13
  <link href="/_app/immutable/chunks/CTfzyGBz.js" rel="modulepreload">
14
  <link href="/_app/immutable/chunks/7ar41ERE.js" rel="modulepreload">
 
21
  <div style="display: contents">
22
  <script>
23
  {
24
+ __sveltekit_7v03y4 = {
25
  base: ""
26
  };
27
 
28
  const element = document.currentScript.parentElement;
29
 
30
  Promise.all([
31
+ import("/_app/immutable/entry/start.CVIQ-jrx.js"),
32
+ import("/_app/immutable/entry/app.g6Xc-uhS.js")
33
  ]).then(([kit, app]) => {
34
  kit.start(app, element);
35
  });
_app/immutable/chunks/{7n4STY6M.js → BluVH81E.js} RENAMED
@@ -1 +1 @@
1
- import{o as y}from"./CGlyOndm.js";import{b1 as p,b2 as N,q as u,g as f,s as d}from"./Dnoir60M.js";const h=[];function k(e,t=p){let n=null;const s=new Set;function r(o){if(N(e,o)&&(e=o,n)){const c=!h.length;for(const l of s)l[1](),h.push(l,e);if(c){for(let l=0;l<h.length;l+=2)h[l][0](h[l+1]);h.length=0}}}function i(o){r(o(e))}function a(o,c=p){const l=[o,c];return s.add(l),s.size===1&&(n=t(r,i)||p),o(e),()=>{s.delete(l),s.size===0&&n&&(n(),n=null)}}return{set:r,update:i,subscribe:a}}const L="1788339231393",O=globalThis.__sveltekit_1ez977?.base??"",x=globalThis.__sveltekit_1ez977?.assets??O??"";new URL("sveltekit-internal://");function H(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function K(e){return e.split("%25").map(decodeURI).join("%25")}function B(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}function D({href:e}){return e.split("#")[0]}function $(){}function q(...e){let t=5381;for(const n of e)if(typeof n=="string"){let s=n.length;for(;s;)t=t*33^n.charCodeAt(--s)}else if(ArrayBuffer.isView(n)){const s=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let r=s.length;for(;r;)t=t*33^s[--r]}else throw new TypeError("value must be a string or TypedArray");return(t>>>0).toString(36)}new TextEncoder;function C(e){const t=atob(e),n=new Uint8Array(t.length);for(let s=0;s<t.length;s++)n[s]=t.charCodeAt(s);return n}const P=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||"GET")!=="GET"&&b.delete(m(e)),P(e,t));const b=new Map;function W(e,t){const n=m(e,t),s=document.querySelector(n);if(s?.textContent){s.remove();let{body:r,...i}=JSON.parse(s.textContent);s.getAttribute("data-b64")!==null&&(r=C(r));const o=s.getAttribute("data-ttl");return o&&b.set(n,{body:r,init:i,ttl:1e3*Number(o)}),Promise.resolve(new Response(r,i))}return window.fetch(e,t)}function X(e,t,n){if(b.size>0){const s=m(e,n),r=b.get(s);if(r){if(performance.now()<r.ttl&&["default","force-cache","only-if-cached",void 0].includes(n?.cache))return new Response(r.body,r.init);b.delete(s)}}return window.fetch(t,n)}function m(e,t){let s=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){const r=[];t.headers&&r.push([...new Headers(t.headers)].join(",")),t.body&&(typeof t.body=="string"||ArrayBuffer.isView(t.body))&&r.push(t.body),s+=`[data-hash="${q(...r)}"]`}return s}const J="sveltekit:snapshot",M="sveltekit:scroll",F="sveltekit:states",Q="sveltekit:pageurl",Z="sveltekit:history",ee="sveltekit:navigation",v={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},E=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...E];const V=new Set([...E]);[...V];const T=location.origin;function te(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){const n=document.getElementsByTagName("base");t=n.length?n[0].href:document.URL}return new URL(e,t)}function ne(){return{x:pageXOffset,y:pageYOffset}}function g(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const S={...v,"":v.hover};function U(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function se(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=U(e)}}function re(e,t,n){let s;try{if(s=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&s.hash.match(/^#[^/]/)){const o=location.hash.split("#")[1]||"/";s.hash=`#${o}${s.hash}`}}catch{}const r=e instanceof SVGAElement?e.target.baseVal:e.target,i=!s||!!r||j(s,t,n)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),a=s?.origin===T&&e.hasAttribute("download");return{url:s,external:i,target:r,download:a}}function oe(e){let t=null,n=null,s=null,r=null,i=null,a=null,o=e;for(;o&&o!==document.documentElement;)s===null&&(s=g(o,"preload-code")),r===null&&(r=g(o,"preload-data")),t===null&&(t=g(o,"keepfocus")),n===null&&(n=g(o,"noscroll")),i===null&&(i=g(o,"reload")),a===null&&(a=g(o,"replacestate")),o=U(o);function c(l){switch(l){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:S[s??"off"],preload_data:S[r??"off"],keepfocus:c(t),noscroll:c(n),reload:c(i),replace_state:c(a)}}function ae(e){const t=k(e);let n=!0;function s(){n=!0,t.update(a=>a)}function r(a){n=!1,t.set(a)}function i(a){let o;return t.subscribe(c=>{(o===void 0||n&&c!==o)&&a(o=c)})}return{notify:s,set:r,subscribe:i}}const I={v:$};function ie(){const{set:e,subscribe:t}=k(!1);let n;async function s(){clearTimeout(n);try{const r=await fetch(`${x}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!r.ok)return!1;const a=(await r.json()).version!==L;return a&&(e(!0),I.v(),clearTimeout(n)),a}catch{return!1}}return{subscribe:t,check:s}}function j(e,t,n){return e.origin!==T||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function le(e){}let w,A,_;const z=y.toString().includes("$$")||/function \w+\(\) \{\}/.test(y.toString()),R="a:";z?(w={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(R)},A={current:null},_={current:!1}):(w=new class{#e=u({});get data(){return f(this.#e)}set data(t){d(this.#e,t)}#t=u(null);get form(){return f(this.#t)}set form(t){d(this.#t,t)}#n=u(null);get error(){return f(this.#n)}set error(t){d(this.#n,t)}#s=u({});get params(){return f(this.#s)}set params(t){d(this.#s,t)}#r=u({id:null});get route(){return f(this.#r)}set route(t){d(this.#r,t)}#o=u({});get state(){return f(this.#o)}set state(t){d(this.#o,t)}#a=u(-1);get status(){return f(this.#a)}set status(t){d(this.#a,t)}#i=u(new URL(R));get url(){return f(this.#i)}set url(t){d(this.#i,t)}},A=new class{#e=u(null);get current(){return f(this.#e)}set current(t){d(this.#e,t)}},_=new class{#e=u(!1);get current(){return f(this.#e)}set current(t){d(this.#e,t)}},I.v=()=>_.current=!0);function de(e){Object.assign(w,e)}export{Z as H,ee as N,Q as P,F as S,A as a,O as b,oe as c,D as d,B as e,se as f,re as g,H as h,j as i,ie as j,ae as k,v as l,K as m,$ as n,T as o,w as p,J as q,te as r,ne as s,X as t,de as u,W as v,k as w,M as x,le as y};
 
1
+ import{o as m}from"./CGlyOndm.js";import{b1 as p,b2 as N,q as u,g as f,s as d}from"./Dnoir60M.js";const h=[];function k(e,t=p){let n=null;const s=new Set;function r(o){if(N(e,o)&&(e=o,n)){const c=!h.length;for(const l of s)l[1](),h.push(l,e);if(c){for(let l=0;l<h.length;l+=2)h[l][0](h[l+1]);h.length=0}}}function i(o){r(o(e))}function a(o,c=p){const l=[o,c];return s.add(l),s.size===1&&(n=t(r,i)||p),o(e),()=>{s.delete(l),s.size===0&&n&&(n(),n=null)}}return{set:r,update:i,subscribe:a}}const L="1788621838584",O=globalThis.__sveltekit_7v03y4?.base??"",x=globalThis.__sveltekit_7v03y4?.assets??O??"";new URL("sveltekit-internal://");function H(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function K(e){return e.split("%25").map(decodeURI).join("%25")}function B(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}function D({href:e}){return e.split("#")[0]}function $(){}function q(...e){let t=5381;for(const n of e)if(typeof n=="string"){let s=n.length;for(;s;)t=t*33^n.charCodeAt(--s)}else if(ArrayBuffer.isView(n)){const s=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let r=s.length;for(;r;)t=t*33^s[--r]}else throw new TypeError("value must be a string or TypedArray");return(t>>>0).toString(36)}new TextEncoder;function C(e){const t=atob(e),n=new Uint8Array(t.length);for(let s=0;s<t.length;s++)n[s]=t.charCodeAt(s);return n}const P=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||"GET")!=="GET"&&b.delete(y(e)),P(e,t));const b=new Map;function W(e,t){const n=y(e,t),s=document.querySelector(n);if(s?.textContent){s.remove();let{body:r,...i}=JSON.parse(s.textContent);s.getAttribute("data-b64")!==null&&(r=C(r));const o=s.getAttribute("data-ttl");return o&&b.set(n,{body:r,init:i,ttl:1e3*Number(o)}),Promise.resolve(new Response(r,i))}return window.fetch(e,t)}function X(e,t,n){if(b.size>0){const s=y(e,n),r=b.get(s);if(r){if(performance.now()<r.ttl&&["default","force-cache","only-if-cached",void 0].includes(n?.cache))return new Response(r.body,r.init);b.delete(s)}}return window.fetch(t,n)}function y(e,t){let s=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){const r=[];t.headers&&r.push([...new Headers(t.headers)].join(",")),t.body&&(typeof t.body=="string"||ArrayBuffer.isView(t.body))&&r.push(t.body),s+=`[data-hash="${q(...r)}"]`}return s}const J="sveltekit:snapshot",M="sveltekit:scroll",F="sveltekit:states",Q="sveltekit:pageurl",Z="sveltekit:history",ee="sveltekit:navigation",v={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},E=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...E];const V=new Set([...E]);[...V];const T=location.origin;function te(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){const n=document.getElementsByTagName("base");t=n.length?n[0].href:document.URL}return new URL(e,t)}function ne(){return{x:pageXOffset,y:pageYOffset}}function g(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const S={...v,"":v.hover};function U(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function se(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=U(e)}}function re(e,t,n){let s;try{if(s=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&s.hash.match(/^#[^/]/)){const o=location.hash.split("#")[1]||"/";s.hash=`#${o}${s.hash}`}}catch{}const r=e instanceof SVGAElement?e.target.baseVal:e.target,i=!s||!!r||j(s,t,n)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),a=s?.origin===T&&e.hasAttribute("download");return{url:s,external:i,target:r,download:a}}function oe(e){let t=null,n=null,s=null,r=null,i=null,a=null,o=e;for(;o&&o!==document.documentElement;)s===null&&(s=g(o,"preload-code")),r===null&&(r=g(o,"preload-data")),t===null&&(t=g(o,"keepfocus")),n===null&&(n=g(o,"noscroll")),i===null&&(i=g(o,"reload")),a===null&&(a=g(o,"replacestate")),o=U(o);function c(l){switch(l){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:S[s??"off"],preload_data:S[r??"off"],keepfocus:c(t),noscroll:c(n),reload:c(i),replace_state:c(a)}}function ae(e){const t=k(e);let n=!0;function s(){n=!0,t.update(a=>a)}function r(a){n=!1,t.set(a)}function i(a){let o;return t.subscribe(c=>{(o===void 0||n&&c!==o)&&a(o=c)})}return{notify:s,set:r,subscribe:i}}const I={v:$};function ie(){const{set:e,subscribe:t}=k(!1);let n;async function s(){clearTimeout(n);try{const r=await fetch(`${x}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!r.ok)return!1;const a=(await r.json()).version!==L;return a&&(e(!0),I.v(),clearTimeout(n)),a}catch{return!1}}return{subscribe:t,check:s}}function j(e,t,n){return e.origin!==T||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function le(e){}let w,A,_;const G=m.toString().includes("$$")||/function \w+\(\) \{\}/.test(m.toString()),R="a:";G?(w={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(R)},A={current:null},_={current:!1}):(w=new class{#e=u({});get data(){return f(this.#e)}set data(t){d(this.#e,t)}#t=u(null);get form(){return f(this.#t)}set form(t){d(this.#t,t)}#n=u(null);get error(){return f(this.#n)}set error(t){d(this.#n,t)}#s=u({});get params(){return f(this.#s)}set params(t){d(this.#s,t)}#r=u({id:null});get route(){return f(this.#r)}set route(t){d(this.#r,t)}#o=u({});get state(){return f(this.#o)}set state(t){d(this.#o,t)}#a=u(-1);get status(){return f(this.#a)}set status(t){d(this.#a,t)}#i=u(new URL(R));get url(){return f(this.#i)}set url(t){d(this.#i,t)}},A=new class{#e=u(null);get current(){return f(this.#e)}set current(t){d(this.#e,t)}},_=new class{#e=u(!1);get current(){return f(this.#e)}set current(t){d(this.#e,t)}},I.v=()=>_.current=!0);function de(e){Object.assign(w,e)}export{Z as H,ee as N,Q as P,F as S,A as a,O as b,oe as c,D as d,B as e,se as f,re as g,H as h,j as i,ie as j,ae as k,v as l,K as m,$ as n,T as o,w as p,J as q,te as r,ne as s,X as t,de as u,W as v,k as w,M as x,le as y};
_app/immutable/entry/{app.BV2I02n0.js → app.g6Xc-uhS.js} RENAMED
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.CTSE026P.js","../chunks/CTfzyGBz.js","../chunks/Dnoir60M.js","../chunks/T86D3IO_.js","../assets/0.tQgOHL2x.css","../nodes/1.DVVp9ljg.js","../chunks/CLflRIDg.js","../chunks/7n4STY6M.js","../chunks/CGlyOndm.js","../nodes/2.DzYk_8Z6.js","../chunks/7ar41ERE.js"])))=>i.map(i=>d[i]);
2
- import{s as k,L as Y,g as f,f as G,d as W,m as z,h as D,a as J,b as K,E as Q,r as X,c as Z,e as $,i as I,H as ee,j as te,p as re,u as se,k as ne,t as ae,l as w,n as oe,o as ce,q as x,v as ie,w as le,x as ue,y as A}from"../chunks/Dnoir60M.js";import{h as de,m as fe,u as me,s as he}from"../chunks/CLflRIDg.js";import{a as P,c as S,f as V,t as _e}from"../chunks/CTfzyGBz.js";import{o as ve}from"../chunks/CGlyOndm.js";import{p as T,i as L,b as j}from"../chunks/7ar41ERE.js";import{B as ge}from"../chunks/T86D3IO_.js";const ye="modulepreload",Ee=function(a,e){return new URL(a,e).href},M={},O=function(e,s,l){let c=Promise.resolve();if(s&&s.length>0){let m=function(o){return Promise.all(o.map(d=>Promise.resolve(d).then(h=>({status:"fulfilled",value:h}),h=>({status:"rejected",reason:h}))))};const r=document.getElementsByTagName("link"),n=document.querySelector("meta[property=csp-nonce]"),E=n?.nonce||n?.getAttribute("nonce");c=m(s.map(o=>{if(o=Ee(o,l),o in M)return;M[o]=!0;const d=o.endsWith(".css"),h=d?'[rel="stylesheet"]':"";if(l)for(let _=r.length-1;_>=0;_--){const i=r[_];if(i.href===o&&(!d||i.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${o}"]${h}`))return;const u=document.createElement("link");if(u.rel=d?"stylesheet":ye,d||(u.as="script"),u.crossOrigin="",u.href=o,E&&u.setAttribute("nonce",E),document.head.appendChild(u),d)return new Promise((_,i)=>{u.addEventListener("load",_),u.addEventListener("error",()=>i(new Error(`Unable to preload CSS for ${o}`)))})}))}function t(r){const n=new Event("vite:preloadError",{cancelable:!0});if(n.payload=r,window.dispatchEvent(n),!n.defaultPrevented)throw r}return c.then(r=>{for(const n of r||[])n.status==="rejected"&&t(n.reason);return e().catch(t)})},Ce={};function be(a){return class extends Pe{constructor(e){super({component:a,...e})}}}class Pe{#t;#e;constructor(e){var s=new Map,l=(t,r)=>{var n=z(r,!1,!1);return s.set(t,n),n};const c=new Proxy({...e.props||{},$$events:{}},{get(t,r){return f(s.get(r)??l(r,Reflect.get(t,r)))},has(t,r){return r===Y?!0:(f(s.get(r)??l(r,Reflect.get(t,r))),Reflect.has(t,r))},set(t,r,n){return k(s.get(r)??l(r,n),n),Reflect.set(t,r,n)}});this.#e=(e.hydrate?de:fe)(e.component,{target:e.target,anchor:e.anchor,props:c,context:e.context,intro:e.intro??!1,recover:e.recover,transformError:e.transformError}),(!e?.props?.$$host||e.sync===!1)&&G(),this.#t=c.$$events;for(const t of Object.keys(this.#e))t==="$set"||t==="$destroy"||t==="$on"||W(this,t,{get(){return this.#e[t]},set(r){this.#e[t]=r},enumerable:!0});this.#e.$set=t=>{Object.assign(c,t)},this.#e.$destroy=()=>{me(this.#e)}}$set(e){this.#e.$set(e)}$on(e,s){this.#t[e]=this.#t[e]||[];const l=(...c)=>s.call(this,...c);return this.#t[e].push(l),()=>{this.#t[e]=this.#t[e].filter(c=>c!==l)}}$destroy(){this.#e.$destroy()}}function C(a,e,s){var l;D&&(l=te,J());var c=new ge(a);K(()=>{var t=e()??null;if(D){var r=X(l),n=r===ee,E=t!==null;if(n!==E){var m=Z();$(m),c.anchor=m,I(!1),c.ensure(t,t&&(o=>s(o,t))),I(!0);return}}c.ensure(t,t&&(o=>s(o,t)))},Q)}var Re=V('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),pe=V("<!> <!>",1);function we(a,e){re(e,!0);let s=T(e,"components",23,()=>[]),l=T(e,"data_0",3,null),c=T(e,"data_1",3,null);se(()=>e.stores.page.set(e.page)),ne(()=>{e.stores,e.page,e.constructors,s(),e.form,l(),c(),e.stores.page.notify()});let t=x(!1),r=x(!1),n=x(null);ve(()=>{const i=e.stores.page.subscribe(()=>{f(t)&&(k(r,!0),ae().then(()=>{k(n,document.title||"untitled page",!0)}))});return k(t,!0),i});const E=A(()=>e.constructors[1]);var m=pe(),o=w(m);{var d=i=>{const v=A(()=>e.constructors[0]);var g=S(),R=w(g);C(R,()=>f(v),(y,b)=>{j(b(y,{get data(){return l()},get form(){return e.form},get params(){return e.page.params},children:(p,Oe)=>{var N=S(),B=w(N);C(B,()=>f(E),(F,H)=>{j(H(F,{get data(){return c()},get form(){return e.form},get params(){return e.page.params}}),U=>s()[1]=U,()=>s()?.[1])}),P(p,N)},$$slots:{default:!0}}),p=>s()[0]=p,()=>s()?.[0])}),P(i,g)},h=i=>{const v=A(()=>e.constructors[0]);var g=S(),R=w(g);C(R,()=>f(v),(y,b)=>{j(b(y,{get data(){return l()},get form(){return e.form},get params(){return e.page.params}}),p=>s()[0]=p,()=>s()?.[0])}),P(i,g)};L(o,i=>{e.constructors[1]?i(d):i(h,-1)})}var u=oe(o,2);{var _=i=>{var v=Re(),g=ie(v);{var R=y=>{var b=_e();ue(()=>he(b,f(n))),P(y,b)};L(g,y=>{f(r)&&y(R)})}le(v),P(i,v)};L(u,i=>{f(t)&&i(_)})}P(a,m),ce()}const Ne=be(we),De=[()=>O(()=>import("../nodes/0.CTSE026P.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url),()=>O(()=>import("../nodes/1.DVVp9ljg.js"),__vite__mapDeps([5,1,2,6,7,8]),import.meta.url),()=>O(()=>import("../nodes/2.DzYk_8Z6.js"),__vite__mapDeps([9,1,2,6,10,3]),import.meta.url)],Ie=[],Me={"/":[2]},q={handleError:(({error:a})=>{console.error(a)}),reroute:(()=>{}),transport:{}},ke=Object.fromEntries(Object.entries(q.transport).map(([a,e])=>[a,e.decode])),Ve=Object.fromEntries(Object.entries(q.transport).map(([a,e])=>[a,e.encode])),qe=!1,Be=(a,e)=>ke[a](e),Fe=()=>O(()=>import("../chunks/wbPk3Yxo.js"),[],import.meta.url).then(a=>a.default);export{Be as decode,ke as decoders,Me as dictionary,Ve as encoders,Fe as get_error_template,qe as hash,q as hooks,Ce as matchers,De as nodes,Ne as root,Ie as server_loads};
 
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.CTSE026P.js","../chunks/CTfzyGBz.js","../chunks/Dnoir60M.js","../chunks/T86D3IO_.js","../assets/0.tQgOHL2x.css","../nodes/1.CyMVKWdX.js","../chunks/CLflRIDg.js","../chunks/BluVH81E.js","../chunks/CGlyOndm.js","../nodes/2.fwhEvbq6.js","../chunks/7ar41ERE.js"])))=>i.map(i=>d[i]);
2
+ import{s as k,L as Y,g as f,f as G,d as W,m as z,h as D,a as J,b as K,E as Q,r as X,c as Z,e as $,i as I,H as ee,j as te,p as re,u as se,k as ne,t as ae,l as w,n as oe,o as ce,q as x,v as ie,w as le,x as ue,y as A}from"../chunks/Dnoir60M.js";import{h as de,m as fe,u as me,s as he}from"../chunks/CLflRIDg.js";import{a as P,c as S,f as V,t as _e}from"../chunks/CTfzyGBz.js";import{o as ve}from"../chunks/CGlyOndm.js";import{p as T,i as L,b as j}from"../chunks/7ar41ERE.js";import{B as ge}from"../chunks/T86D3IO_.js";const ye="modulepreload",Ee=function(a,e){return new URL(a,e).href},M={},O=function(e,s,l){let c=Promise.resolve();if(s&&s.length>0){let m=function(o){return Promise.all(o.map(d=>Promise.resolve(d).then(h=>({status:"fulfilled",value:h}),h=>({status:"rejected",reason:h}))))};const r=document.getElementsByTagName("link"),n=document.querySelector("meta[property=csp-nonce]"),E=n?.nonce||n?.getAttribute("nonce");c=m(s.map(o=>{if(o=Ee(o,l),o in M)return;M[o]=!0;const d=o.endsWith(".css"),h=d?'[rel="stylesheet"]':"";if(l)for(let _=r.length-1;_>=0;_--){const i=r[_];if(i.href===o&&(!d||i.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${o}"]${h}`))return;const u=document.createElement("link");if(u.rel=d?"stylesheet":ye,d||(u.as="script"),u.crossOrigin="",u.href=o,E&&u.setAttribute("nonce",E),document.head.appendChild(u),d)return new Promise((_,i)=>{u.addEventListener("load",_),u.addEventListener("error",()=>i(new Error(`Unable to preload CSS for ${o}`)))})}))}function t(r){const n=new Event("vite:preloadError",{cancelable:!0});if(n.payload=r,window.dispatchEvent(n),!n.defaultPrevented)throw r}return c.then(r=>{for(const n of r||[])n.status==="rejected"&&t(n.reason);return e().catch(t)})},Ce={};function be(a){return class extends Pe{constructor(e){super({component:a,...e})}}}class Pe{#t;#e;constructor(e){var s=new Map,l=(t,r)=>{var n=z(r,!1,!1);return s.set(t,n),n};const c=new Proxy({...e.props||{},$$events:{}},{get(t,r){return f(s.get(r)??l(r,Reflect.get(t,r)))},has(t,r){return r===Y?!0:(f(s.get(r)??l(r,Reflect.get(t,r))),Reflect.has(t,r))},set(t,r,n){return k(s.get(r)??l(r,n),n),Reflect.set(t,r,n)}});this.#e=(e.hydrate?de:fe)(e.component,{target:e.target,anchor:e.anchor,props:c,context:e.context,intro:e.intro??!1,recover:e.recover,transformError:e.transformError}),(!e?.props?.$$host||e.sync===!1)&&G(),this.#t=c.$$events;for(const t of Object.keys(this.#e))t==="$set"||t==="$destroy"||t==="$on"||W(this,t,{get(){return this.#e[t]},set(r){this.#e[t]=r},enumerable:!0});this.#e.$set=t=>{Object.assign(c,t)},this.#e.$destroy=()=>{me(this.#e)}}$set(e){this.#e.$set(e)}$on(e,s){this.#t[e]=this.#t[e]||[];const l=(...c)=>s.call(this,...c);return this.#t[e].push(l),()=>{this.#t[e]=this.#t[e].filter(c=>c!==l)}}$destroy(){this.#e.$destroy()}}function C(a,e,s){var l;D&&(l=te,J());var c=new ge(a);K(()=>{var t=e()??null;if(D){var r=X(l),n=r===ee,E=t!==null;if(n!==E){var m=Z();$(m),c.anchor=m,I(!1),c.ensure(t,t&&(o=>s(o,t))),I(!0);return}}c.ensure(t,t&&(o=>s(o,t)))},Q)}var Re=V('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),pe=V("<!> <!>",1);function we(a,e){re(e,!0);let s=T(e,"components",23,()=>[]),l=T(e,"data_0",3,null),c=T(e,"data_1",3,null);se(()=>e.stores.page.set(e.page)),ne(()=>{e.stores,e.page,e.constructors,s(),e.form,l(),c(),e.stores.page.notify()});let t=x(!1),r=x(!1),n=x(null);ve(()=>{const i=e.stores.page.subscribe(()=>{f(t)&&(k(r,!0),ae().then(()=>{k(n,document.title||"untitled page",!0)}))});return k(t,!0),i});const E=A(()=>e.constructors[1]);var m=pe(),o=w(m);{var d=i=>{const v=A(()=>e.constructors[0]);var g=S(),R=w(g);C(R,()=>f(v),(y,b)=>{j(b(y,{get data(){return l()},get form(){return e.form},get params(){return e.page.params},children:(p,Oe)=>{var N=S(),B=w(N);C(B,()=>f(E),(F,H)=>{j(H(F,{get data(){return c()},get form(){return e.form},get params(){return e.page.params}}),U=>s()[1]=U,()=>s()?.[1])}),P(p,N)},$$slots:{default:!0}}),p=>s()[0]=p,()=>s()?.[0])}),P(i,g)},h=i=>{const v=A(()=>e.constructors[0]);var g=S(),R=w(g);C(R,()=>f(v),(y,b)=>{j(b(y,{get data(){return l()},get form(){return e.form},get params(){return e.page.params}}),p=>s()[0]=p,()=>s()?.[0])}),P(i,g)};L(o,i=>{e.constructors[1]?i(d):i(h,-1)})}var u=oe(o,2);{var _=i=>{var v=Re(),g=ie(v);{var R=y=>{var b=_e();ue(()=>he(b,f(n))),P(y,b)};L(g,y=>{f(r)&&y(R)})}le(v),P(i,v)};L(u,i=>{f(t)&&i(_)})}P(a,m),ce()}const Ne=be(we),De=[()=>O(()=>import("../nodes/0.CTSE026P.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url),()=>O(()=>import("../nodes/1.CyMVKWdX.js"),__vite__mapDeps([5,1,2,6,7,8]),import.meta.url),()=>O(()=>import("../nodes/2.fwhEvbq6.js"),__vite__mapDeps([9,1,2,6,10,3]),import.meta.url)],Ie=[],Me={"/":[2]},q={handleError:(({error:a})=>{console.error(a)}),reroute:(()=>{}),transport:{}},ke=Object.fromEntries(Object.entries(q.transport).map(([a,e])=>[a,e.decode])),Ve=Object.fromEntries(Object.entries(q.transport).map(([a,e])=>[a,e.encode])),qe=!1,Be=(a,e)=>ke[a](e),Fe=()=>O(()=>import("../chunks/wbPk3Yxo.js"),[],import.meta.url).then(a=>a.default);export{Be as decode,ke as decoders,Me as dictionary,Ve as encoders,Fe as get_error_template,qe as hash,q as hooks,Ce as matchers,De as nodes,Ne as root,Ie as server_loads};
_app/immutable/entry/{start.CWAvbtCY.js → start.CVIQ-jrx.js} RENAMED
@@ -1 +1 @@
1
- import{t as Q,b0 as rt}from"../chunks/Dnoir60M.js";import{H as $,N as V,r as De,n as C,i as we,b as R,s as j,a as pe,f as qe,g as me,c as Z,d as ue,S as Ke,P as ot,p as P,e as st,h as it,u as Me,o as ct,j as lt,w as ft,k as Ie,l as F,m as ut,q as Fe,t as dt,v as ht,x as He}from"../chunks/7n4STY6M.js";import{y as Jt}from"../chunks/7n4STY6M.js";const pt=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,mt=/^\/\((?:[^)]+)\)$/;function _t(e){const t=[];return{pattern:e==="/"||mt.test(e)?/^\/$/:new RegExp(`^${vt(e).map(n=>{const o=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(n);if(o)return t.push({name:o[1],matcher:o[2],optional:!1,rest:!0,chained:!0}),"(?:/([^]*))?";const i=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(n);if(i)return t.push({name:i[1],matcher:i[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!n)return;const r=n.split(/\[(.+?)\](?!\])/);return"/"+r.map((c,l)=>{if(l%2){if(c.startsWith("x+"))return de(String.fromCharCode(parseInt(c.slice(2),16)));if(c.startsWith("u+"))return de(String.fromCharCode(...c.slice(2).split("-").map(_=>parseInt(_,16))));const f=pt.exec(c),[,p,v,d,u]=f;return t.push({name:d,matcher:u,optional:!!p,rest:!!v,chained:v?l===1&&r[0]==="":!1}),v?"([^]*?)":p?"([^/]*)?":"([^/]+?)"}return de(c)}).join("")}).join("")}/?$`),params:t}}function gt(e){return e!==""&&!/^\([^)]+\)$/.test(e)}function vt(e){return e.slice(1).split("/").filter(gt)}function wt(e,t,a){const n={},o=e.slice(1),i=o.filter(s=>s!==void 0);let r=0;for(let s=0;s<t.length;s+=1){const c=t[s];let l=o[s-r];if(c.chained&&c.rest&&r&&(l=o.slice(s-r,s+1).filter(f=>f).join("/"),r=0),l===void 0)if(c.rest)l="";else continue;if(!c.matcher||a[c.matcher](l)){n[c.name]=l;const f=t[s+1],p=o[s+1];f&&!f.rest&&f.optional&&p&&c.chained&&(r=0),!f&&!p&&Object.keys(n).length===i.length&&(r=0);continue}if(c.optional&&c.chained){r++;continue}return}if(!r)return n}function de(e){return e.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}class ye{constructor(t,a){this.status=t,typeof a=="string"?this.body={message:a}:a?this.body=a:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class be{constructor(t,a){try{new Headers({location:a})}catch{throw new Error(`Invalid redirect location ${JSON.stringify(a)}: this string contains characters that cannot be used in HTTP headers`)}this.status=t,this.location=a}}class Ee extends Error{constructor(t,a,n){super(n),this.status=t,this.text=a}}function yt({nodes:e,server_loads:t,dictionary:a,matchers:n}){const o=new Set(t);return Object.entries(a).map(([s,[c,l,f]])=>{const{pattern:p,params:v}=_t(s),d={id:s,exec:u=>{const _=p.exec(u);if(_)return wt(_,v,n)},errors:[1,...f||[]].map(u=>e[u]),layouts:[0,...l||[]].map(r),leaf:i(c)};return d.errors.length=d.layouts.length=Math.max(d.errors.length,d.layouts.length),d});function i(s){const c=s<0;return c&&(s=~s),[c,e[s]]}function r(s){return s===void 0?s:[o.has(s),e[s]]}}function ze(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function Oe(e,t,a=JSON.stringify){const n=a(t);try{sessionStorage[e]=n}catch{}}function bt(e){return e.filter(t=>t!=null)}function G(e,t){return e+"/"+t}function ke(e){return e instanceof ye||e instanceof Ee?e.status:500}function Et(e){return e instanceof Ee?e.text:"Internal Error"}const kt=new Set(["icon","shortcut icon","apple-touch-icon"]);let H=null;const O=ze(He)??{},Y=ze(Fe)??{},I={url:Ie({}),page:Ie({}),navigating:ft(null),updated:lt()};function Se(e){O[e]=j()}function St(e,t){let a=e+1;for(;O[a];)delete O[a],a+=1;for(a=t+1;Y[a];)delete Y[a],a+=1}function J(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(C)}async function Be(){if("serviceWorker"in navigator){const e=await navigator.serviceWorker.getRegistration(R||"/");e&&await e.update()}}let xe,_e,ee,L,ge,w;const te=[],ae=[];let S=null;function ne(){S?.fork?.then(e=>e?.discard()),S=null,N={element:void 0,href:void 0}}const X=new Map,Ve=new Set,xt=new Set,B=new Set;let g={branch:[],error:null,url:null},Ye=!1,re=!1,Ce=!0,W=!1,z=!1,Je=!1,Re=!1,We,y,x,U;const oe=new Set,je=new Map,Ne=new Map;async function Bt(e,t,a){if(globalThis.__sveltekit_1ez977.data){const{q:i={},p:r={},l:s={},f:c={}}=globalThis.__sveltekit_1ez977.data;for(const l in i)i[l];for(const l in s)s[l];for(const l in c)c[l];for(const l in r)r[l]}document.URL!==location.href&&(location.href=location.href),w=e,await e.hooks.init?.(),xe=yt(e),L=document.documentElement,ge=t,_e=e.nodes[0],ee=e.nodes[1],_e(),ee(),y=history.state?.[$],x=history.state?.[V],y||(y=x=Date.now(),history.replaceState({...history.state,[$]:y,[V]:x},""));const n=O[y];function o(){n&&(history.scrollRestoration="manual",scrollTo(n.x,n.y))}a?(o(),await qt(ge,a)):(await D({type:"enter",url:De(w.hash?Ft(new URL(location.href)):location.href),replace_state:!0}),o()),Dt()}function Rt(){te.length=0,Re=!1}function Ge(e){ae.some(t=>t?.snapshot)&&(Y[e]=ae.map(t=>t?.snapshot?.capture()))}function Xe(e){Y[e]?.forEach((t,a)=>{ae[a]?.snapshot?.restore(t)})}function $e(){Se(y),Oe(He,O),Ge(x),Oe(Fe,Y)}async function Lt(e,t,a,n){let o,i;t.invalidateAll&&ne(),await D({type:"goto",url:De(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:a,nav_token:n,accept:()=>{if(t.invalidateAll){Re=!0,o=new Set;for(const[r,s]of je)for(const[c,l]of s)l.resource?.reset(),o.add(G(r,c));i=new Set;for(const[r,s]of Ne)for(const c of s.keys())i.add(G(r,c))}t.invalidate&&t.invalidate.forEach($t)}}),t.invalidateAll&&Q().then(Q).then(()=>{for(const[r,s]of je)for(const[c,{resource:l}]of s)o?.has(G(r,c))&&l.start();for(const[r,s]of Ne)for(const[c,{resource:l}]of s)i?.has(G(r,c))&&l.reconnect()})}async function Pt(e){if(e.id!==S?.id){ne();const t={};oe.add(t),S={id:e.id,token:t,promise:Ze({...e,preload:t}).then(a=>(oe.delete(t),a.type==="loaded"&&a.state.error&&ne(),a)),fork:null}}return S.promise}async function he(e){const t=(await ce(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(a=>a[1]()))}async function Qe(e,t,a){const n={params:g.params,route:{id:g.route?.id??null},url:new URL(location.href)};if(g={...e.state,nav:n},Me(e.props.page),We=new w.root({target:t,props:{...e.props,stores:I,components:ae},hydrate:a,sync:!1,transformError:void 0}),await Promise.resolve(),a){const o={from:null,to:{...n,scroll:O[y]??j()},willUnload:!1,type:"enter",complete:Promise.resolve()};B.forEach(i=>i(o))}Xe(x),re=!0}async function se({url:e,params:t,branch:a,errors:n,status:o,error:i,route:r,form:s}){let c="never";if(R&&(e.pathname===R||e.pathname===R+"/"))c="always";else for(const u of a)u?.slash!==void 0&&(c=u.slash);e.pathname=it(e.pathname,c),e.search=e.search;const l={type:"loaded",state:{url:e,params:t,branch:a,error:i,route:r},props:{constructors:bt(a).map(u=>u.node.component),page:Ue(P)}};s!==void 0&&(l.props.form=s);let f={},p=!P,v=0;for(let u=0;u<Math.max(a.length,g.branch.length);u+=1){const _=a[u],m=g.branch[u];_?.data!==m?.data&&(p=!0),_&&(f={...f,..._.data},p&&(l.props[`data_${v}`]=f),v+=1)}return(!g.url||e.href!==g.url.href||g.error!==i||s!==void 0&&s!==P.form||p)&&(l.props.page={error:i,params:t,route:{id:r?.id??null},state:{},status:o,url:new URL(e),form:s??null,data:p?f:P.data}),l}async function Le({loader:e,parent:t,url:a,params:n,route:o,server_data_node:i}){let r=null;const s={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},c=await e();return{node:c,loader:e,server:i,universal:c.universal?.load?{type:"data",data:r,uses:s}:null,data:r??i?.data??null,slash:c.universal?.trailingSlash??i?.slash}}function Tt(e,t,a){let n=e instanceof Request?e.url:e;const o=new URL(n,a);o.origin===a.origin&&(n=o.href.slice(a.origin.length));const i=re?dt(n,o.href,t):ht(n,t);return{resolved:o,promise:i}}function At(e,t,a,n,o,i){if(Re)return!0;if(!o)return!1;if(o.parent&&e||o.route&&t||o.url&&a)return!0;for(const r of o.search_params)if(n.has(r))return!0;for(const r of o.params)if(i[r]!==g.params[r])return!0;for(const r of o.dependencies)if(te.some(s=>s(new URL(r))))return!0;return!1}function Pe(e,t){return e?.type==="data"?e:e?.type==="skip"?t??null:null}function Ut(e,t){if(!e)return new Set(t.searchParams.keys());const a=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(const n of a){const o=e.searchParams.getAll(n),i=t.searchParams.getAll(n);o.every(r=>i.includes(r))&&i.every(r=>o.includes(r))&&a.delete(n)}return a}function It({error:e,url:t,route:a,params:n}){return{type:"loaded",state:{error:e,url:t,route:a,params:n,branch:[]},props:{page:Ue(P),constructors:[]}}}async function Ze({id:e,invalidating:t,url:a,params:n,route:o,preload:i}){if(S?.id===e)return oe.delete(S.token),S.promise;const{errors:r,layouts:s,leaf:c}=o,l=[...s,c];r.forEach(m=>m?.().catch(C)),l.forEach(m=>m?.[1]().catch(C));const f=g.url?e!==ie(g.url):!1,p=g.route?o.id!==g.route.id:!1,v=Ut(g.url,a);let d=!1;const u=l.map(async(m,h)=>{if(!m)return;const b=g.branch[h];return m[1]===b?.loader&&!At(d,p,f,v,b.universal?.uses,n)?b:(d=!0,Le({loader:m[1],url:a,params:n,route:o,parent:async()=>{const T={};for(let A=0;A<h;A+=1)Object.assign(T,(await u[A])?.data);return T},server_data_node:Pe(m[0]?{type:"skip"}:null,m[0]?b?.server:void 0)}))});for(const m of u)m.catch(C);const _=[];for(let m=0;m<l.length;m+=1)if(l[m])try{_.push(await u[m])}catch(h){if(h instanceof be)return{type:"redirect",location:h.location};if(i&&oe.has(i))return It({error:await q(h,{params:n,url:a,route:{id:o.id}}),url:a,params:n,route:o});let b=ke(h),k;if(h instanceof ye)k=h.body;else{if(await I.updated.check())return await Be(),await J(a);k=await q(h,{params:n,url:a,route:{id:o.id}})}const T=await Ot(m,_,r);return T?se({url:a,params:n,branch:_.slice(0,T.idx).concat(T.node),errors:r,status:b,error:k,route:o}):await tt(a,{id:o.id},k,b)}else _.push(void 0);return se({url:a,params:n,branch:_,errors:r,status:200,error:null,route:o,form:t?void 0:null})}async function Ot(e,t,a){for(;e--;)if(a[e]){let n=e;for(;!t[n];)n-=1;try{return{idx:n+1,node:{node:await a[e](),loader:a[e],data:{},server:null,universal:null}}}catch{continue}}}async function Te({status:e,error:t,url:a,route:n}){const o={};let i=null;try{const r=await Le({loader:_e,url:a,params:o,route:n,parent:()=>Promise.resolve({}),server_data_node:Pe(i)}),s={node:await ee(),loader:ee,universal:null,server:null,data:null};return se({url:a,params:o,branch:[r,s],status:e,error:t,errors:[],route:null})}catch(r){if(r instanceof be){await Lt(new URL(r.location,location.href),{},0);return}const s=await w.get_error_template(),c=await q(r,{url:a,params:o,route:n}),l=String(c?.message??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),f=s({status:e,message:l}),p=new DOMParser().parseFromString(f,"text/html");throw document.documentElement.replaceChild(document.adoptNode(p.head),document.head),document.documentElement.replaceChild(document.adoptNode(p.body),document.body),r}}async function Ct(e){const t=e.href;if(X.has(t))return X.get(t);let a;try{const n=(async()=>{let o=await w.hooks.reroute({url:new URL(e),fetch:async(i,r)=>Tt(i,r,e).promise})??e;if(typeof o=="string"){const i=new URL(e);w.hash?i.hash=o:i.pathname=o,o=i}return o})();X.set(t,n),a=await n}catch{X.delete(t);return}return a}async function ce(e,t){if(e&&!we(e,R,w.hash)){const a=await Ct(e);if(!a)return;const n=jt(a);for(const o of xe){const i=o.exec(n);if(i)return{id:ie(e),invalidating:t,route:o,params:st(i),url:e}}}}function jt(e){return ut(w.hash?e.hash.replace(/^#/,"").replace(/[?#].+/,""):e.pathname.slice(R.length))||"/"}function ie(e){return(w.hash?e.hash.replace(/^#/,""):e.pathname)+e.search}function et({url:e,type:t,intent:a,delta:n,event:o,scroll:i}){let r=!1;const s=Ae(g,a,e,t,i??null);n!==void 0&&(s.navigation.delta=n),o!==void 0&&(s.navigation.event=o);const c={...s.navigation,cancel:()=>{r=!0,s.reject(new Error("navigation cancelled"))}};return W||Ve.forEach(l=>l(c)),r?null:s}async function D({type:e,url:t,popped:a,keepfocus:n,noscroll:o,replace_state:i,state:r={},redirect_count:s=0,nav_token:c={},accept:l=C,block:f=C,event:p}){const v=U;U=c;const d=await ce(t,!1),u=e==="enter"?Ae(g,d,t,e):et({url:t,type:e,delta:a?.delta,intent:d,scroll:a?.scroll,event:p});if(!u){f(),U===c&&(U=v);return}const _=y,m=x;l(),W=!0,re&&u.navigation.type!=="enter"&&I.navigating.set(pe.current=u.navigation);let h=d&&await Ze(d);if(!h){if(we(t,R,w.hash))return await J(t,i);h=await tt(t,{id:null},await q(new Ee(404,"Not Found",`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,i)}if(t=d?.url||t,U!==c){u.reject(new Error("navigation aborted"));return}if(!h)return;if(h.type==="redirect"){if(s<20){await D({type:e,url:new URL(h.location,t),popped:a,keepfocus:n,noscroll:o,replace_state:i,state:r,redirect_count:s+1,nav_token:c}),u.fulfil(void 0);return}if(h=await Te({status:500,error:await q(new Error("Redirect loop"),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}}),!h)return}else if(h.props.page.status>=400&&await I.updated.check())return await Be(),await J(t,i);if(Rt(),Se(_),Ge(m),h.props.page.url.pathname!==t.pathname&&(t.pathname=h.props.page.url.pathname),r=a?a.state:r,!a){const E=i?0:1,K={[$]:y+=E,[V]:x+=E,[Ke]:r};(i?history.replaceState:history.pushState).call(history,K,"",t),i||St(y,x)}const b=d&&S?.id===d.id?S.fork:null;S?.fork&&!b?ne():(S=null,N={element:void 0,href:void 0}),h.props.page.state=r;let k;if(re){const E=(await Promise.all(Array.from(xt,M=>M(u.navigation)))).filter(M=>typeof M=="function");if(E.length>0){let M=function(){E.forEach(fe=>{B.delete(fe)})};E.push(M),E.forEach(fe=>{B.add(fe)})}const K=u.navigation.to;g={...h.state,nav:{params:K.params,route:K.route,url:K.url}},h.props.page&&(h.props.page.url=t),!n&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();const le=b&&await b;le?k=le.commit():(H=null,We.$set(h.props),H&&Object.assign(h.props.page,H),Me(h.props.page),k=rt?.()),Je=!0}else await Qe(h,ge,!1);const{activeElement:T}=document;if(await k,await Q(),await Q(),U!==c){u.reject(new Error("navigation aborted"));return}h.props.page&&H&&Object.assign(h.props.page,H);let A=null;if(Ce){const E=a?a.scroll:o?j():null;E?scrollTo(E.x,E.y):(A=t.hash&&document.getElementById(at(t)))?A.scrollIntoView():scrollTo(0,0)}const nt=document.activeElement!==T&&document.activeElement!==document.body;!n&&!nt&&Mt(t,!A),Ce=!0,W=!1,u.fulfil(void 0),u.navigation.to&&(u.navigation.to.scroll=j()),B.forEach(E=>E(u.navigation)),e==="popstate"&&Xe(x),I.navigating.set(pe.current=null)}async function tt(e,t,a,n,o){return e.origin===ct&&e.pathname===location.pathname&&!Ye?await Te({status:n,error:a,url:e,route:t}):await J(e,o)}let N={element:void 0,href:void 0};function Nt(){let e,t;L.addEventListener("mousemove",r=>{const s=r.target;clearTimeout(e),e=setTimeout(()=>{o(s,F.hover)},20)});function a(r){r.defaultPrevented||o(r.composedPath()[0],F.tap)}L.addEventListener("mousedown",a),L.addEventListener("touchstart",a,{passive:!0});const n=new IntersectionObserver(r=>{for(const s of r)s.isIntersecting&&(he(new URL(s.target.href)),n.unobserve(s.target))},{threshold:0});async function o(r,s){const c=qe(r,L),l=c===N.element&&c?.href===N.href&&s>=t;if(!c||l)return;const{url:f,external:p,download:v}=me(c,R,w.hash);if(p||v)return;const d=Z(c),u=f&&ie(g.url)===ie(f);if(!(d.reload||u))if(s<=d.preload_data){N={element:c,href:c.href},t=F.tap;const _=await ce(f,!1);if(!_)return;Pt(_)}else s<=d.preload_code&&(N={element:c,href:c.href},t=s,he(f))}function i(){n.disconnect();for(const r of L.querySelectorAll("a")){const{url:s,external:c,download:l}=me(r,R,w.hash);if(c||l)continue;const f=Z(r);f.reload||(f.preload_code===F.viewport&&n.observe(r),f.preload_code===F.eager&&he(s))}}B.add(i),i()}function q(e,t){if(e instanceof ye)return e.body;const a=ke(e),n=Et(e);return w.hooks.handleError({error:e,event:t,status:a,message:n})??{message:n}}function $t(e){if(typeof e=="function")te.push(e);else{const{href:t}=new URL(e,location.href);te.push(a=>a.href===t)}}function Dt(){history.scrollRestoration="manual",addEventListener("beforeunload",t=>{let a=!1;if($e(),!W){const n=Ae(g,void 0,null,"leave"),o={...n.navigation,cancel:()=>{a=!0,n.reject(new Error("navigation cancelled"))}};Ve.forEach(i=>i(o))}a?(t.preventDefault(),t.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&$e()}),navigator.connection?.saveData||Nt(),L.addEventListener("click",async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;const a=qe(t.composedPath()[0],L);if(!a)return;const{url:n,external:o,target:i,download:r}=me(a,R,w.hash);if(!n)return;if(i==="_parent"||i==="_top"){if(window.parent!==window)return}else if(i&&i!=="_self")return;const s=Z(a);if(!(a instanceof SVGAElement)&&n.protocol!==location.protocol&&!(n.protocol==="https:"||n.protocol==="http:")||r)return;const[l,f]=(w.hash?n.hash.replace(/^#/,""):n.href).split("#"),p=l===ue(location);if(o||s.reload&&(!p||!f)){et({url:n,type:"link",event:t})?W=!0:t.preventDefault();return}if(f!==void 0&&p){const[,v]=g.url.href.split("#");if(v===f){if(t.preventDefault(),f===""||f==="top"&&a.ownerDocument.getElementById("top")===null)scrollTo({top:0});else{const d=a.ownerDocument.getElementById(decodeURIComponent(f));d&&(d.scrollIntoView(),d.focus())}return}if(z=!0,Se(y),e(n),!s.replace_state)return;z=!1}t.preventDefault(),await new Promise(v=>{requestAnimationFrame(()=>{setTimeout(v,0)}),setTimeout(v,100)}),await D({type:"link",url:n,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??n.href===location.href,event:t})}),L.addEventListener("submit",t=>{if(t.defaultPrevented)return;const a=HTMLFormElement.prototype.cloneNode.call(t.target),n=t.submitter;if((n?.formTarget||a.target)==="_blank"||(n?.formMethod||a.method)!=="get")return;const r=new URL(n?.hasAttribute("formaction")&&n?.formAction||a.action);if(we(r,R,!1))return;const s=t.target,c=Z(s);if(c.reload)return;t.preventDefault(),t.stopPropagation();const l=new FormData(s,n);r.search=new URLSearchParams(l).toString(),D({type:"form",url:r,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??r.href===location.href,event:t})}),addEventListener("popstate",async t=>{if(!ve){if(t.state?.[$]){const a=t.state[$];if(U={},a===y)return;const n=O[a],o=t.state[Ke]??{},i=new URL(t.state[ot]??location.href),r=t.state[V],s=g.url?ue(location)===ue(g.url):!1;if(r===x&&(Je||s)){o!==P.state&&(P.state=o),e(i),O[y]=j(),n&&scrollTo(n.x,n.y),y=a;return}const l=a-y;await D({type:"popstate",url:i,popped:{state:o,scroll:n,delta:l},accept:()=>{y=a,x=r},block:()=>{history.go(-l)},nav_token:U,event:t})}else if(!z){const a=new URL(location.href);e(a),w.hash&&location.reload()}}}),addEventListener("hashchange",()=>{z&&(z=!1,history.replaceState({...history.state,[$]:++y,[V]:x},"",location.href))});for(const t of document.querySelectorAll("link"))kt.has(t.rel)&&(t.href=t.href);addEventListener("pageshow",t=>{t.persisted&&I.navigating.set(pe.current=null)});function e(t){g.url=P.url=t,I.page.set(Ue(P)),I.page.notify()}}async function qt(e,{status:t=200,error:a,node_ids:n,params:o,route:i,server_route:r,data:s,form:c}){Ye=!0;const l=new URL(location.href);let f;({params:o={},route:i={id:null}}=await ce(l,!1)||{}),f=xe.find(({id:d})=>d===i.id);let p,v=!0;try{const d=n.map(async(_,m)=>{const h=s[m];return h?.uses&&(h.uses=Kt(h.uses)),Le({loader:w.nodes[_],url:l,params:o,route:i,parent:async()=>{const b={};for(let k=0;k<m;k+=1)Object.assign(b,(await d[k]).data);return b},server_data_node:Pe(h)})}),u=await Promise.all(d);if(f){const _=f.layouts;for(let m=0;m<_.length;m++)_[m]||u.splice(m,0,void 0)}p=await se({url:l,params:o,branch:u,status:t,error:a,errors:f?.errors,form:c,route:f??null})}catch(d){if(d instanceof be)return await J(new URL(d.location,location.href));p=await Te({status:ke(d),error:await q(d,{url:l,params:o,route:i}),url:l,route:i}),e.textContent="",v=!1}p&&(p.props.page&&(p.props.page.state={}),await Qe(p,e,v))}function Kt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}let ve=!1;function Mt(e,t=!0){const a=document.querySelector("[autofocus]");if(a)a.focus();else{const n=at(e);if(n&&document.getElementById(n)){const{x:i,y:r}=j();setTimeout(()=>{const s=history.state;ve=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(s,"",e),t&&scrollTo(i,r),ve=!1})}else{const i=document.body,r=i.getAttribute("tabindex");i.tabIndex=-1,i.focus({preventScroll:!0,focusVisible:!1}),r!==null?i.setAttribute("tabindex",r):i.removeAttribute("tabindex")}const o=getSelection();if(o&&o.type!=="None"){const i=[];for(let r=0;r<o.rangeCount;r+=1)i.push(o.getRangeAt(r));setTimeout(()=>{if(o.rangeCount===i.length){for(let r=0;r<o.rangeCount;r+=1){const s=i[r],c=o.getRangeAt(r);if(s.commonAncestorContainer!==c.commonAncestorContainer||s.startContainer!==c.startContainer||s.endContainer!==c.endContainer||s.startOffset!==c.startOffset||s.endOffset!==c.endOffset)return}o.removeAllRanges()}})}}}function Ae(e,t,a,n,o=null){let i,r;const s=new Promise((l,f)=>{i=l,r=f});return s.catch(C),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:j()},to:a&&{params:t?.params??null,route:{id:t?.route?.id??null},url:a,scroll:o},willUnload:!t,type:n,complete:s},fulfil:i,reject:r}}function Ue(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Ft(e){const t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function at(e){let t;if(w.hash){const[,,a]=e.hash.split("#",3);t=a??""}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Jt as load_css,Bt as start};
 
1
+ import{t as Q,b0 as rt}from"../chunks/Dnoir60M.js";import{H as $,N as Y,r as De,n as C,i as we,b as R,s as j,a as pe,f as qe,g as me,c as Z,d as ue,S as Ke,P as ot,p as P,e as st,h as it,u as Me,o as ct,j as lt,w as ft,k as Ie,l as F,m as ut,q as Fe,t as dt,v as ht,x as He}from"../chunks/BluVH81E.js";import{y as Jt}from"../chunks/BluVH81E.js";const pt=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,mt=/^\/\((?:[^)]+)\)$/;function _t(e){const t=[];return{pattern:e==="/"||mt.test(e)?/^\/$/:new RegExp(`^${vt(e).map(n=>{const o=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(n);if(o)return t.push({name:o[1],matcher:o[2],optional:!1,rest:!0,chained:!0}),"(?:/([^]*))?";const i=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(n);if(i)return t.push({name:i[1],matcher:i[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!n)return;const r=n.split(/\[(.+?)\](?!\])/);return"/"+r.map((c,l)=>{if(l%2){if(c.startsWith("x+"))return de(String.fromCharCode(parseInt(c.slice(2),16)));if(c.startsWith("u+"))return de(String.fromCharCode(...c.slice(2).split("-").map(_=>parseInt(_,16))));const f=pt.exec(c),[,p,v,d,u]=f;return t.push({name:d,matcher:u,optional:!!p,rest:!!v,chained:v?l===1&&r[0]==="":!1}),v?"([^]*?)":p?"([^/]*)?":"([^/]+?)"}return de(c)}).join("")}).join("")}/?$`),params:t}}function gt(e){return e!==""&&!/^\([^)]+\)$/.test(e)}function vt(e){return e.slice(1).split("/").filter(gt)}function wt(e,t,a){const n={},o=e.slice(1),i=o.filter(s=>s!==void 0);let r=0;for(let s=0;s<t.length;s+=1){const c=t[s];let l=o[s-r];if(c.chained&&c.rest&&r&&(l=o.slice(s-r,s+1).filter(f=>f).join("/"),r=0),l===void 0)if(c.rest)l="";else continue;if(!c.matcher||a[c.matcher](l)){n[c.name]=l;const f=t[s+1],p=o[s+1];f&&!f.rest&&f.optional&&p&&c.chained&&(r=0),!f&&!p&&Object.keys(n).length===i.length&&(r=0);continue}if(c.optional&&c.chained){r++;continue}return}if(!r)return n}function de(e){return e.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}class ye{constructor(t,a){this.status=t,typeof a=="string"?this.body={message:a}:a?this.body=a:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class be{constructor(t,a){try{new Headers({location:a})}catch{throw new Error(`Invalid redirect location ${JSON.stringify(a)}: this string contains characters that cannot be used in HTTP headers`)}this.status=t,this.location=a}}class Ee extends Error{constructor(t,a,n){super(n),this.status=t,this.text=a}}function yt({nodes:e,server_loads:t,dictionary:a,matchers:n}){const o=new Set(t);return Object.entries(a).map(([s,[c,l,f]])=>{const{pattern:p,params:v}=_t(s),d={id:s,exec:u=>{const _=p.exec(u);if(_)return wt(_,v,n)},errors:[1,...f||[]].map(u=>e[u]),layouts:[0,...l||[]].map(r),leaf:i(c)};return d.errors.length=d.layouts.length=Math.max(d.errors.length,d.layouts.length),d});function i(s){const c=s<0;return c&&(s=~s),[c,e[s]]}function r(s){return s===void 0?s:[o.has(s),e[s]]}}function Be(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function Oe(e,t,a=JSON.stringify){const n=a(t);try{sessionStorage[e]=n}catch{}}function bt(e){return e.filter(t=>t!=null)}function G(e,t){return e+"/"+t}function ke(e){return e instanceof ye||e instanceof Ee?e.status:500}function Et(e){return e instanceof Ee?e.text:"Internal Error"}const kt=new Set(["icon","shortcut icon","apple-touch-icon"]);let H=null;const O=Be(He)??{},z=Be(Fe)??{},I={url:Ie({}),page:Ie({}),navigating:ft(null),updated:lt()};function Se(e){O[e]=j()}function St(e,t){let a=e+1;for(;O[a];)delete O[a],a+=1;for(a=t+1;z[a];)delete z[a],a+=1}function J(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(C)}async function Ve(){if("serviceWorker"in navigator){const e=await navigator.serviceWorker.getRegistration(R||"/");e&&await e.update()}}let xe,_e,ee,L,ge,w;const te=[],ae=[];let S=null;function ne(){S?.fork?.then(e=>e?.discard()),S=null,N={element:void 0,href:void 0}}const X=new Map,Ye=new Set,xt=new Set,V=new Set;let g={branch:[],error:null,url:null},ze=!1,re=!1,Ce=!0,W=!1,B=!1,Je=!1,Re=!1,We,y,x,U;const oe=new Set,je=new Map,Ne=new Map;async function Vt(e,t,a){if(globalThis.__sveltekit_7v03y4.data){const{q:i={},p:r={},l:s={},f:c={}}=globalThis.__sveltekit_7v03y4.data;for(const l in i)i[l];for(const l in s)s[l];for(const l in c)c[l];for(const l in r)r[l]}document.URL!==location.href&&(location.href=location.href),w=e,await e.hooks.init?.(),xe=yt(e),L=document.documentElement,ge=t,_e=e.nodes[0],ee=e.nodes[1],_e(),ee(),y=history.state?.[$],x=history.state?.[Y],y||(y=x=Date.now(),history.replaceState({...history.state,[$]:y,[Y]:x},""));const n=O[y];function o(){n&&(history.scrollRestoration="manual",scrollTo(n.x,n.y))}a?(o(),await qt(ge,a)):(await D({type:"enter",url:De(w.hash?Ft(new URL(location.href)):location.href),replace_state:!0}),o()),Dt()}function Rt(){te.length=0,Re=!1}function Ge(e){ae.some(t=>t?.snapshot)&&(z[e]=ae.map(t=>t?.snapshot?.capture()))}function Xe(e){z[e]?.forEach((t,a)=>{ae[a]?.snapshot?.restore(t)})}function $e(){Se(y),Oe(He,O),Ge(x),Oe(Fe,z)}async function Lt(e,t,a,n){let o,i;t.invalidateAll&&ne(),await D({type:"goto",url:De(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:a,nav_token:n,accept:()=>{if(t.invalidateAll){Re=!0,o=new Set;for(const[r,s]of je)for(const[c,l]of s)l.resource?.reset(),o.add(G(r,c));i=new Set;for(const[r,s]of Ne)for(const c of s.keys())i.add(G(r,c))}t.invalidate&&t.invalidate.forEach($t)}}),t.invalidateAll&&Q().then(Q).then(()=>{for(const[r,s]of je)for(const[c,{resource:l}]of s)o?.has(G(r,c))&&l.start();for(const[r,s]of Ne)for(const[c,{resource:l}]of s)i?.has(G(r,c))&&l.reconnect()})}async function Pt(e){if(e.id!==S?.id){ne();const t={};oe.add(t),S={id:e.id,token:t,promise:Ze({...e,preload:t}).then(a=>(oe.delete(t),a.type==="loaded"&&a.state.error&&ne(),a)),fork:null}}return S.promise}async function he(e){const t=(await ce(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(a=>a[1]()))}async function Qe(e,t,a){const n={params:g.params,route:{id:g.route?.id??null},url:new URL(location.href)};if(g={...e.state,nav:n},Me(e.props.page),We=new w.root({target:t,props:{...e.props,stores:I,components:ae},hydrate:a,sync:!1,transformError:void 0}),await Promise.resolve(),a){const o={from:null,to:{...n,scroll:O[y]??j()},willUnload:!1,type:"enter",complete:Promise.resolve()};V.forEach(i=>i(o))}Xe(x),re=!0}async function se({url:e,params:t,branch:a,errors:n,status:o,error:i,route:r,form:s}){let c="never";if(R&&(e.pathname===R||e.pathname===R+"/"))c="always";else for(const u of a)u?.slash!==void 0&&(c=u.slash);e.pathname=it(e.pathname,c),e.search=e.search;const l={type:"loaded",state:{url:e,params:t,branch:a,error:i,route:r},props:{constructors:bt(a).map(u=>u.node.component),page:Ue(P)}};s!==void 0&&(l.props.form=s);let f={},p=!P,v=0;for(let u=0;u<Math.max(a.length,g.branch.length);u+=1){const _=a[u],m=g.branch[u];_?.data!==m?.data&&(p=!0),_&&(f={...f,..._.data},p&&(l.props[`data_${v}`]=f),v+=1)}return(!g.url||e.href!==g.url.href||g.error!==i||s!==void 0&&s!==P.form||p)&&(l.props.page={error:i,params:t,route:{id:r?.id??null},state:{},status:o,url:new URL(e),form:s??null,data:p?f:P.data}),l}async function Le({loader:e,parent:t,url:a,params:n,route:o,server_data_node:i}){let r=null;const s={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},c=await e();return{node:c,loader:e,server:i,universal:c.universal?.load?{type:"data",data:r,uses:s}:null,data:r??i?.data??null,slash:c.universal?.trailingSlash??i?.slash}}function Tt(e,t,a){let n=e instanceof Request?e.url:e;const o=new URL(n,a);o.origin===a.origin&&(n=o.href.slice(a.origin.length));const i=re?dt(n,o.href,t):ht(n,t);return{resolved:o,promise:i}}function At(e,t,a,n,o,i){if(Re)return!0;if(!o)return!1;if(o.parent&&e||o.route&&t||o.url&&a)return!0;for(const r of o.search_params)if(n.has(r))return!0;for(const r of o.params)if(i[r]!==g.params[r])return!0;for(const r of o.dependencies)if(te.some(s=>s(new URL(r))))return!0;return!1}function Pe(e,t){return e?.type==="data"?e:e?.type==="skip"?t??null:null}function Ut(e,t){if(!e)return new Set(t.searchParams.keys());const a=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(const n of a){const o=e.searchParams.getAll(n),i=t.searchParams.getAll(n);o.every(r=>i.includes(r))&&i.every(r=>o.includes(r))&&a.delete(n)}return a}function It({error:e,url:t,route:a,params:n}){return{type:"loaded",state:{error:e,url:t,route:a,params:n,branch:[]},props:{page:Ue(P),constructors:[]}}}async function Ze({id:e,invalidating:t,url:a,params:n,route:o,preload:i}){if(S?.id===e)return oe.delete(S.token),S.promise;const{errors:r,layouts:s,leaf:c}=o,l=[...s,c];r.forEach(m=>m?.().catch(C)),l.forEach(m=>m?.[1]().catch(C));const f=g.url?e!==ie(g.url):!1,p=g.route?o.id!==g.route.id:!1,v=Ut(g.url,a);let d=!1;const u=l.map(async(m,h)=>{if(!m)return;const b=g.branch[h];return m[1]===b?.loader&&!At(d,p,f,v,b.universal?.uses,n)?b:(d=!0,Le({loader:m[1],url:a,params:n,route:o,parent:async()=>{const T={};for(let A=0;A<h;A+=1)Object.assign(T,(await u[A])?.data);return T},server_data_node:Pe(m[0]?{type:"skip"}:null,m[0]?b?.server:void 0)}))});for(const m of u)m.catch(C);const _=[];for(let m=0;m<l.length;m+=1)if(l[m])try{_.push(await u[m])}catch(h){if(h instanceof be)return{type:"redirect",location:h.location};if(i&&oe.has(i))return It({error:await q(h,{params:n,url:a,route:{id:o.id}}),url:a,params:n,route:o});let b=ke(h),k;if(h instanceof ye)k=h.body;else{if(await I.updated.check())return await Ve(),await J(a);k=await q(h,{params:n,url:a,route:{id:o.id}})}const T=await Ot(m,_,r);return T?se({url:a,params:n,branch:_.slice(0,T.idx).concat(T.node),errors:r,status:b,error:k,route:o}):await tt(a,{id:o.id},k,b)}else _.push(void 0);return se({url:a,params:n,branch:_,errors:r,status:200,error:null,route:o,form:t?void 0:null})}async function Ot(e,t,a){for(;e--;)if(a[e]){let n=e;for(;!t[n];)n-=1;try{return{idx:n+1,node:{node:await a[e](),loader:a[e],data:{},server:null,universal:null}}}catch{continue}}}async function Te({status:e,error:t,url:a,route:n}){const o={};let i=null;try{const r=await Le({loader:_e,url:a,params:o,route:n,parent:()=>Promise.resolve({}),server_data_node:Pe(i)}),s={node:await ee(),loader:ee,universal:null,server:null,data:null};return se({url:a,params:o,branch:[r,s],status:e,error:t,errors:[],route:null})}catch(r){if(r instanceof be){await Lt(new URL(r.location,location.href),{},0);return}const s=await w.get_error_template(),c=await q(r,{url:a,params:o,route:n}),l=String(c?.message??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),f=s({status:e,message:l}),p=new DOMParser().parseFromString(f,"text/html");throw document.documentElement.replaceChild(document.adoptNode(p.head),document.head),document.documentElement.replaceChild(document.adoptNode(p.body),document.body),r}}async function Ct(e){const t=e.href;if(X.has(t))return X.get(t);let a;try{const n=(async()=>{let o=await w.hooks.reroute({url:new URL(e),fetch:async(i,r)=>Tt(i,r,e).promise})??e;if(typeof o=="string"){const i=new URL(e);w.hash?i.hash=o:i.pathname=o,o=i}return o})();X.set(t,n),a=await n}catch{X.delete(t);return}return a}async function ce(e,t){if(e&&!we(e,R,w.hash)){const a=await Ct(e);if(!a)return;const n=jt(a);for(const o of xe){const i=o.exec(n);if(i)return{id:ie(e),invalidating:t,route:o,params:st(i),url:e}}}}function jt(e){return ut(w.hash?e.hash.replace(/^#/,"").replace(/[?#].+/,""):e.pathname.slice(R.length))||"/"}function ie(e){return(w.hash?e.hash.replace(/^#/,""):e.pathname)+e.search}function et({url:e,type:t,intent:a,delta:n,event:o,scroll:i}){let r=!1;const s=Ae(g,a,e,t,i??null);n!==void 0&&(s.navigation.delta=n),o!==void 0&&(s.navigation.event=o);const c={...s.navigation,cancel:()=>{r=!0,s.reject(new Error("navigation cancelled"))}};return W||Ye.forEach(l=>l(c)),r?null:s}async function D({type:e,url:t,popped:a,keepfocus:n,noscroll:o,replace_state:i,state:r={},redirect_count:s=0,nav_token:c={},accept:l=C,block:f=C,event:p}){const v=U;U=c;const d=await ce(t,!1),u=e==="enter"?Ae(g,d,t,e):et({url:t,type:e,delta:a?.delta,intent:d,scroll:a?.scroll,event:p});if(!u){f(),U===c&&(U=v);return}const _=y,m=x;l(),W=!0,re&&u.navigation.type!=="enter"&&I.navigating.set(pe.current=u.navigation);let h=d&&await Ze(d);if(!h){if(we(t,R,w.hash))return await J(t,i);h=await tt(t,{id:null},await q(new Ee(404,"Not Found",`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,i)}if(t=d?.url||t,U!==c){u.reject(new Error("navigation aborted"));return}if(!h)return;if(h.type==="redirect"){if(s<20){await D({type:e,url:new URL(h.location,t),popped:a,keepfocus:n,noscroll:o,replace_state:i,state:r,redirect_count:s+1,nav_token:c}),u.fulfil(void 0);return}if(h=await Te({status:500,error:await q(new Error("Redirect loop"),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}}),!h)return}else if(h.props.page.status>=400&&await I.updated.check())return await Ve(),await J(t,i);if(Rt(),Se(_),Ge(m),h.props.page.url.pathname!==t.pathname&&(t.pathname=h.props.page.url.pathname),r=a?a.state:r,!a){const E=i?0:1,K={[$]:y+=E,[Y]:x+=E,[Ke]:r};(i?history.replaceState:history.pushState).call(history,K,"",t),i||St(y,x)}const b=d&&S?.id===d.id?S.fork:null;S?.fork&&!b?ne():(S=null,N={element:void 0,href:void 0}),h.props.page.state=r;let k;if(re){const E=(await Promise.all(Array.from(xt,M=>M(u.navigation)))).filter(M=>typeof M=="function");if(E.length>0){let M=function(){E.forEach(fe=>{V.delete(fe)})};E.push(M),E.forEach(fe=>{V.add(fe)})}const K=u.navigation.to;g={...h.state,nav:{params:K.params,route:K.route,url:K.url}},h.props.page&&(h.props.page.url=t),!n&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();const le=b&&await b;le?k=le.commit():(H=null,We.$set(h.props),H&&Object.assign(h.props.page,H),Me(h.props.page),k=rt?.()),Je=!0}else await Qe(h,ge,!1);const{activeElement:T}=document;if(await k,await Q(),await Q(),U!==c){u.reject(new Error("navigation aborted"));return}h.props.page&&H&&Object.assign(h.props.page,H);let A=null;if(Ce){const E=a?a.scroll:o?j():null;E?scrollTo(E.x,E.y):(A=t.hash&&document.getElementById(at(t)))?A.scrollIntoView():scrollTo(0,0)}const nt=document.activeElement!==T&&document.activeElement!==document.body;!n&&!nt&&Mt(t,!A),Ce=!0,W=!1,u.fulfil(void 0),u.navigation.to&&(u.navigation.to.scroll=j()),V.forEach(E=>E(u.navigation)),e==="popstate"&&Xe(x),I.navigating.set(pe.current=null)}async function tt(e,t,a,n,o){return e.origin===ct&&e.pathname===location.pathname&&!ze?await Te({status:n,error:a,url:e,route:t}):await J(e,o)}let N={element:void 0,href:void 0};function Nt(){let e,t;L.addEventListener("mousemove",r=>{const s=r.target;clearTimeout(e),e=setTimeout(()=>{o(s,F.hover)},20)});function a(r){r.defaultPrevented||o(r.composedPath()[0],F.tap)}L.addEventListener("mousedown",a),L.addEventListener("touchstart",a,{passive:!0});const n=new IntersectionObserver(r=>{for(const s of r)s.isIntersecting&&(he(new URL(s.target.href)),n.unobserve(s.target))},{threshold:0});async function o(r,s){const c=qe(r,L),l=c===N.element&&c?.href===N.href&&s>=t;if(!c||l)return;const{url:f,external:p,download:v}=me(c,R,w.hash);if(p||v)return;const d=Z(c),u=f&&ie(g.url)===ie(f);if(!(d.reload||u))if(s<=d.preload_data){N={element:c,href:c.href},t=F.tap;const _=await ce(f,!1);if(!_)return;Pt(_)}else s<=d.preload_code&&(N={element:c,href:c.href},t=s,he(f))}function i(){n.disconnect();for(const r of L.querySelectorAll("a")){const{url:s,external:c,download:l}=me(r,R,w.hash);if(c||l)continue;const f=Z(r);f.reload||(f.preload_code===F.viewport&&n.observe(r),f.preload_code===F.eager&&he(s))}}V.add(i),i()}function q(e,t){if(e instanceof ye)return e.body;const a=ke(e),n=Et(e);return w.hooks.handleError({error:e,event:t,status:a,message:n})??{message:n}}function $t(e){if(typeof e=="function")te.push(e);else{const{href:t}=new URL(e,location.href);te.push(a=>a.href===t)}}function Dt(){history.scrollRestoration="manual",addEventListener("beforeunload",t=>{let a=!1;if($e(),!W){const n=Ae(g,void 0,null,"leave"),o={...n.navigation,cancel:()=>{a=!0,n.reject(new Error("navigation cancelled"))}};Ye.forEach(i=>i(o))}a?(t.preventDefault(),t.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&$e()}),navigator.connection?.saveData||Nt(),L.addEventListener("click",async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;const a=qe(t.composedPath()[0],L);if(!a)return;const{url:n,external:o,target:i,download:r}=me(a,R,w.hash);if(!n)return;if(i==="_parent"||i==="_top"){if(window.parent!==window)return}else if(i&&i!=="_self")return;const s=Z(a);if(!(a instanceof SVGAElement)&&n.protocol!==location.protocol&&!(n.protocol==="https:"||n.protocol==="http:")||r)return;const[l,f]=(w.hash?n.hash.replace(/^#/,""):n.href).split("#"),p=l===ue(location);if(o||s.reload&&(!p||!f)){et({url:n,type:"link",event:t})?W=!0:t.preventDefault();return}if(f!==void 0&&p){const[,v]=g.url.href.split("#");if(v===f){if(t.preventDefault(),f===""||f==="top"&&a.ownerDocument.getElementById("top")===null)scrollTo({top:0});else{const d=a.ownerDocument.getElementById(decodeURIComponent(f));d&&(d.scrollIntoView(),d.focus())}return}if(B=!0,Se(y),e(n),!s.replace_state)return;B=!1}t.preventDefault(),await new Promise(v=>{requestAnimationFrame(()=>{setTimeout(v,0)}),setTimeout(v,100)}),await D({type:"link",url:n,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??n.href===location.href,event:t})}),L.addEventListener("submit",t=>{if(t.defaultPrevented)return;const a=HTMLFormElement.prototype.cloneNode.call(t.target),n=t.submitter;if((n?.formTarget||a.target)==="_blank"||(n?.formMethod||a.method)!=="get")return;const r=new URL(n?.hasAttribute("formaction")&&n?.formAction||a.action);if(we(r,R,!1))return;const s=t.target,c=Z(s);if(c.reload)return;t.preventDefault(),t.stopPropagation();const l=new FormData(s,n);r.search=new URLSearchParams(l).toString(),D({type:"form",url:r,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??r.href===location.href,event:t})}),addEventListener("popstate",async t=>{if(!ve){if(t.state?.[$]){const a=t.state[$];if(U={},a===y)return;const n=O[a],o=t.state[Ke]??{},i=new URL(t.state[ot]??location.href),r=t.state[Y],s=g.url?ue(location)===ue(g.url):!1;if(r===x&&(Je||s)){o!==P.state&&(P.state=o),e(i),O[y]=j(),n&&scrollTo(n.x,n.y),y=a;return}const l=a-y;await D({type:"popstate",url:i,popped:{state:o,scroll:n,delta:l},accept:()=>{y=a,x=r},block:()=>{history.go(-l)},nav_token:U,event:t})}else if(!B){const a=new URL(location.href);e(a),w.hash&&location.reload()}}}),addEventListener("hashchange",()=>{B&&(B=!1,history.replaceState({...history.state,[$]:++y,[Y]:x},"",location.href))});for(const t of document.querySelectorAll("link"))kt.has(t.rel)&&(t.href=t.href);addEventListener("pageshow",t=>{t.persisted&&I.navigating.set(pe.current=null)});function e(t){g.url=P.url=t,I.page.set(Ue(P)),I.page.notify()}}async function qt(e,{status:t=200,error:a,node_ids:n,params:o,route:i,server_route:r,data:s,form:c}){ze=!0;const l=new URL(location.href);let f;({params:o={},route:i={id:null}}=await ce(l,!1)||{}),f=xe.find(({id:d})=>d===i.id);let p,v=!0;try{const d=n.map(async(_,m)=>{const h=s[m];return h?.uses&&(h.uses=Kt(h.uses)),Le({loader:w.nodes[_],url:l,params:o,route:i,parent:async()=>{const b={};for(let k=0;k<m;k+=1)Object.assign(b,(await d[k]).data);return b},server_data_node:Pe(h)})}),u=await Promise.all(d);if(f){const _=f.layouts;for(let m=0;m<_.length;m++)_[m]||u.splice(m,0,void 0)}p=await se({url:l,params:o,branch:u,status:t,error:a,errors:f?.errors,form:c,route:f??null})}catch(d){if(d instanceof be)return await J(new URL(d.location,location.href));p=await Te({status:ke(d),error:await q(d,{url:l,params:o,route:i}),url:l,route:i}),e.textContent="",v=!1}p&&(p.props.page&&(p.props.page.state={}),await Qe(p,e,v))}function Kt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}let ve=!1;function Mt(e,t=!0){const a=document.querySelector("[autofocus]");if(a)a.focus();else{const n=at(e);if(n&&document.getElementById(n)){const{x:i,y:r}=j();setTimeout(()=>{const s=history.state;ve=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(s,"",e),t&&scrollTo(i,r),ve=!1})}else{const i=document.body,r=i.getAttribute("tabindex");i.tabIndex=-1,i.focus({preventScroll:!0,focusVisible:!1}),r!==null?i.setAttribute("tabindex",r):i.removeAttribute("tabindex")}const o=getSelection();if(o&&o.type!=="None"){const i=[];for(let r=0;r<o.rangeCount;r+=1)i.push(o.getRangeAt(r));setTimeout(()=>{if(o.rangeCount===i.length){for(let r=0;r<o.rangeCount;r+=1){const s=i[r],c=o.getRangeAt(r);if(s.commonAncestorContainer!==c.commonAncestorContainer||s.startContainer!==c.startContainer||s.endContainer!==c.endContainer||s.startOffset!==c.startOffset||s.endOffset!==c.endOffset)return}o.removeAllRanges()}})}}}function Ae(e,t,a,n,o=null){let i,r;const s=new Promise((l,f)=>{i=l,r=f});return s.catch(C),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:j()},to:a&&{params:t?.params??null,route:{id:t?.route?.id??null},url:a,scroll:o},willUnload:!t,type:n,complete:s},fulfil:i,reject:r}}function Ue(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Ft(e){const t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function at(e){let t;if(w.hash){const[,,a]=e.hash.split("#",3);t=a??""}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Jt as load_css,Vt as start};
_app/immutable/nodes/{1.DVVp9ljg.js → 1.CyMVKWdX.js} RENAMED
@@ -1 +1 @@
1
- import{a as g,f as c}from"../chunks/CTfzyGBz.js";import{p as h,l as v,x as l,o as x,v as e,w as s,n as _}from"../chunks/Dnoir60M.js";import{s as o}from"../chunks/CLflRIDg.js";import{p}from"../chunks/7n4STY6M.js";const d={get error(){return p.error},get status(){return p.status}},m=d;var $=c("<h1> </h1> <p> </p>",1);function k(n,f){h(f,!0);var t=$(),r=v(t),i=e(r,!0);s(r);var a=_(r,2),u=e(a,!0);s(a),l(()=>{o(i,m.status),o(u,m.error?.message)}),g(n,t),x()}export{k as component};
 
1
+ import{a as g,f as c}from"../chunks/CTfzyGBz.js";import{p as h,l as v,x as l,o as x,v as e,w as s,n as _}from"../chunks/Dnoir60M.js";import{s as o}from"../chunks/CLflRIDg.js";import{p}from"../chunks/BluVH81E.js";const d={get error(){return p.error},get status(){return p.status}},m=d;var $=c("<h1> </h1> <p> </p>",1);function k(n,f){h(f,!0);var t=$(),r=v(t),i=e(r,!0);s(r);var a=_(r,2),u=e(a,!0);s(a),l(()=>{o(i,m.status),o(u,m.error?.message)}),g(n,t),x()}export{k as component};
_app/immutable/nodes/2.DzYk_8Z6.js DELETED
The diff for this file is too large to render. See raw diff
 
_app/immutable/nodes/2.fwhEvbq6.js ADDED
The diff for this file is too large to render. See raw diff
 
_app/version.json CHANGED
@@ -1 +1 @@
1
- {"version":"1788339231393"}
 
1
+ {"version":"1788621838584"}
index.html CHANGED
The diff for this file is too large to render. See raw diff
 
scripts/publish_atomic_results.py CHANGED
@@ -259,6 +259,42 @@ def pair_specs(root: Path, pair: str, family: str, tasks: tuple[str, ...]):
259
  return specs, scalings, counts
260
 
261
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
262
  def dimensions_for_specs(specs: list[tuple[str, Path, Path, float]]) -> list[int]:
263
  return [feature_count(read_json(metrics_path)) for _, _, metrics_path, _ in specs]
264
 
@@ -349,6 +385,17 @@ def make_rows(results_root: Path, sphragis_data: Path, metre_data: Path):
349
  "kainobert-syntax", "kainobert-char-tfidf", "kainobert-tfidf-alm",
350
  "kainobert-burrows-alm", "kainobert-burrows-char", "kainobert-char-alm",
351
  )
 
 
 
 
 
 
 
 
 
 
 
352
  pair_data: dict[str, tuple] = {}
353
  for pair in pairs:
354
  main = pair_specs(results_root, pair, "sphragis-main", MAIN_TASKS)
@@ -368,6 +415,7 @@ def make_rows(results_root: Path, sphragis_data: Path, metre_data: Path):
368
  "burrows-char-tfidf",
369
  )
370
  metre_pair_data: dict[str, tuple] = {}
 
371
  for pair in metre_pairs:
372
  try:
373
  metre_pair_data[pair] = pair_specs(results_root, pair, "sphragis-metre", VERSE_TASKS)
@@ -398,8 +446,33 @@ def make_rows(results_root: Path, sphragis_data: Path, metre_data: Path):
398
  "burrows": "Burrows z-scores",
399
  "alm": "ALM",
400
  "metre": "metrical line features",
 
 
 
 
 
 
 
401
  }
402
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
403
  def pair_model_name(pair: str) -> str:
404
  return " + ".join(ARM_NAMES[arm] for arm in pair.split("-"))
405
 
@@ -571,6 +644,18 @@ def make_rows(results_root: Path, sphragis_data: Path, metre_data: Path):
571
  )
572
  for pair in pairs
573
  ),
 
 
 
 
 
 
 
 
 
 
 
 
574
  ]
575
  metre_rows = [
576
  build_row(
@@ -674,6 +759,18 @@ def make_rows(results_root: Path, sphragis_data: Path, metre_data: Path):
674
  )
675
  for pair in metre_pairs if pair in metre_pair_data
676
  ),
 
 
 
 
 
 
 
 
 
 
 
 
677
  ]
678
  return sphragis_rows, metre_rows
679
 
 
259
  return specs, scalings, counts
260
 
261
 
262
+ def method_specs(root: Path, family: str, tasks: tuple[str, ...]) -> dict[str, tuple]:
263
+ """Specs for every combination whose method was settled on validation.
264
+
265
+ ``scripts/run_method_search.py`` scores concatenation and five posterior
266
+ combiners on validation, keeps the best, and reads test once for it. Each
267
+ cell records the winning method and where that method's predictions live:
268
+ a pooling win writes its own, a concatenation win points back into the pair
269
+ grid. Returns {combination: (specs, methods)} keyed by the arms joined with
270
+ a hyphen, in the search's sorted order.
271
+ """
272
+ out: dict[str, tuple] = {}
273
+ for combo_dir in sorted((root / "combination-method").glob("*")):
274
+ family_dir = combo_dir / family
275
+ if not family_dir.is_dir():
276
+ continue
277
+ specs, methods = [], []
278
+ for task in tasks:
279
+ selection_path = family_dir / task / "selection.json"
280
+ if not selection_path.is_file():
281
+ continue
282
+ selection = read_json(selection_path)
283
+ if selection.get("test_loaded") is not True or not selection.get("predictions_path"):
284
+ raise ValueError(f"combination not finalized: {selection_path}")
285
+ methods.append(str(selection["selected"]["method"]))
286
+ predictions = Path(selection["predictions_path"])
287
+ if not predictions.is_absolute():
288
+ # The search was run from the models repository root with a
289
+ # relative output root; resolve against that root.
290
+ predictions = root.parent.parent / predictions
291
+ specs.append((task, predictions, selection_path,
292
+ float(selection["test_metrics"]["macro_f1"])))
293
+ if specs:
294
+ out[combo_dir.name] = (specs, methods)
295
+ return out
296
+
297
+
298
  def dimensions_for_specs(specs: list[tuple[str, Path, Path, float]]) -> list[int]:
299
  return [feature_count(read_json(metrics_path)) for _, _, metrics_path, _ in specs]
300
 
 
385
  "kainobert-syntax", "kainobert-char-tfidf", "kainobert-tfidf-alm",
386
  "kainobert-burrows-alm", "kainobert-burrows-char", "kainobert-char-alm",
387
  )
388
+ method_main = method_specs(results_root, "sphragis-main", MAIN_TASKS)
389
+ method_source = method_specs(results_root, "sphragis-source-held-out", SOURCE_TASKS)
390
+ method_sphragis: dict[str, tuple] = {}
391
+ for combo in sorted(set(method_main) | set(method_source)):
392
+ a = method_main.get(combo, ([], [])); b = method_source.get(combo, ([], []))
393
+ method_sphragis[combo] = (a[0] + b[0], a[1] + b[1])
394
+ method_metre = method_specs(results_root, "sphragis-metre", VERSE_TASKS)
395
+ settled = {frozenset(c.split("-")) for c in list(method_sphragis) + list(method_metre)}
396
+ # A concatenation-only row stays only where the method search never ran,
397
+ # which today means the KainoBERT twins.
398
+ pairs = tuple(p for p in pairs if frozenset(p.split("-")) not in settled)
399
  pair_data: dict[str, tuple] = {}
400
  for pair in pairs:
401
  main = pair_specs(results_root, pair, "sphragis-main", MAIN_TASKS)
 
415
  "burrows-char-tfidf",
416
  )
417
  metre_pair_data: dict[str, tuple] = {}
418
+ metre_pairs = tuple(p for p in metre_pairs if frozenset(p.split("-")) not in settled)
419
  for pair in metre_pairs:
420
  try:
421
  metre_pair_data[pair] = pair_specs(results_root, pair, "sphragis-metre", VERSE_TASKS)
 
446
  "burrows": "Burrows z-scores",
447
  "alm": "ALM",
448
  "metre": "metrical line features",
449
+ "greberta_e2e": "GreBERTa (end-to-end)",
450
+ "siamese": "Siamese GreBERTa",
451
+ }
452
+ METHOD_NAMES = {
453
+ "concatenation": "concatenation", "vote_hard": "hard vote", "vote_soft": "soft vote",
454
+ "logit_mean": "geometric mean", "rank_mean": "mean rank",
455
+ "vote_weighted": "validation-weighted vote",
456
  }
457
 
458
+ def method_classifier(methods: list[str]) -> str:
459
+ counts = Counter(METHOD_NAMES[m] for m in methods)
460
+ return "Validation-selected per task: " + ", ".join(
461
+ f"{name} \u00d7{n}" if n > 1 else name for name, n in counts.most_common())
462
+
463
+ def method_status(combo: str) -> str:
464
+ arms = combo.split("-")
465
+ note = ""
466
+ if "alm" in arms:
467
+ note = "; the authorial language models are being remade and this row will be refreshed"
468
+ return (
469
+ f"{len(arms)} atomic models combined; the combination method is a hyperparameter "
470
+ "chosen per task on validation macro-F1 among concatenation of prepared feature "
471
+ "blocks and five training-free posterior combiners (hard vote, soft vote, geometric "
472
+ "mean, mean rank, validation-weighted vote); test evaluated once for the chosen "
473
+ "method" + note
474
+ )
475
+
476
  def pair_model_name(pair: str) -> str:
477
  return " + ".join(ARM_NAMES[arm] for arm in pair.split("-"))
478
 
 
644
  )
645
  for pair in pairs
646
  ),
647
+ *(
648
+ build_row(
649
+ model=pair_model_name(combo),
650
+ url="https://github.com/Urdatorn/sphragis_models",
651
+ dimensionality=f"{len(combo.split('-'))} arms",
652
+ classifier=method_classifier(method_sphragis[combo][1]),
653
+ status=method_status(combo),
654
+ task_specs=list(method_sphragis[combo][0]),
655
+ dataset_roots=roots,
656
+ )
657
+ for combo in method_sphragis
658
+ ),
659
  ]
660
  metre_rows = [
661
  build_row(
 
759
  )
760
  for pair in metre_pairs if pair in metre_pair_data
761
  ),
762
+ *(
763
+ build_row(
764
+ model=pair_model_name(combo),
765
+ url="https://github.com/Urdatorn/sphragis_models",
766
+ dimensionality=f"{len(combo.split('-'))} arms",
767
+ classifier=method_classifier(method_metre[combo][1]),
768
+ status=method_status(combo),
769
+ task_specs=list(method_metre[combo][0]),
770
+ dataset_roots=roots,
771
+ )
772
+ for combo in method_metre
773
+ ),
774
  ]
775
  return sphragis_rows, metre_rows
776
 
src/lib/atomicModelResults.ts CHANGED
The diff for this file is too large to render. See raw diff