{"version":3,"file":"shared-lib.BL9yjMak.mjs","names":["useState","useRef","startTransition","p","useState","TELEGRAM","useState"],"sources":["https:/framerusercontent.com/modules/EZptLJalFDyuo9exD2bV/tg6ErKDjRUMOc2CcQf7l/BVSite.js","https:/framerusercontent.com/modules/42Blp9K1EBSSlbun0eRu/ll4CNrlY8L8BBAfDIBTn/BVCookies.js","https:/framerusercontent.com/modules/Xf7oevMCRygZ8m57yZyp/GNzO45dEo0tUwPKkmgat/BVFooter.js","https:/framerusercontent.com/modules/dCZ3eS20W70jNGY04ySL/9FXztcLeMeWhDSNA42Fl/BVNav.js","https:/framerusercontent.com/modules/3GXFp4g0rxINXcGPsLcU/Uq26BfI4wbVdLg9AOAbV/siteMetadata.js"],"sourcesContent":["// Shared bits for Bookie Verdict: brand, colours, leagues, the live-data hook and small UI pieces.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState,startTransition}from\"react\";import{RenderTarget}from\"framer\";export const BRAND={name:\"Bookie Verdict\",domain:\"bookieverdict.com\",tagline:\"Football predictions with the working shown: the chance of every result, the fair price and the best odds on offer.\"};/** The Apps Script engine itself. Used directly only as a fallback if the edge below can't be reached. */export const ENGINE_URL=\"https://script.google.com/macros/s/AKfycbwsc26uzNlArDWC3Vhx8lEdRlaoMFfvuaC_O0RBR3tK6aYyUg1JxImHw1EpJ7Sf4NjC/exec\";/**\n * Site-wide data URL: the Cloudflare edge in front of the engine (23 Oct 2026). It serves the week's matches, record,\n * tables and big-league pages from a copy refreshed every 10 minutes (tens of ms instead of ~2 s) and passes\n * everything else straight to the engine.\n */export const DATA_URL=\"https://bv-data.matt-71e.workers.dev/\";// Night palette: neutral near-black, quiet greys, one warm accent (gold) and two state colours.\nconst DARK={page:\"#050506\",card:\"#111113\",line:\"rgba(255,255,255,.08)\",soft:\"#1A1A1D\",hover:\"#161618\",ink:\"#F5F5F7\",body:\"#B4B4BA\",muted:\"#86868B\",navy:\"#050506\",panel:\"#0C0C0E\",pick:\"#F5F5F7\",onPick:\"#050506\",turf:\"#34D58A\",turfDeep:\"#34D58A\",turfSoft:\"rgba(52,213,138,.12)\",draw:\"#636366\",red:\"#FF5C5C\",redSoft:\"rgba(255,92,92,.12)\",amber:\"#F2C14E\",ai:\"#8AB4FF\",aiBg:\"rgba(138,180,255,.06)\",aiLine:\"rgba(138,180,255,.22)\",aiChip:\"rgba(138,180,255,.12)\",gaugeTrack:\"rgba(255,255,255,.1)\",gold:\"#F2C14E\",goldSoft:\"rgba(242,193,78,.12)\",goldInk:\"#F7D27A\",win:\"#34D58A\",loss:\"#FF5C5C\",drawDot:\"#6E6E73\",blue:\"#8AB4FF\"};const LIGHT=DARK;export const C=Object.fromEntries(Object.keys(LIGHT).map(k=>[k,`var(--bv-${k}, ${LIGHT[k]})`]));const vars=t=>Object.keys(t).map(k=>`--bv-${k}:${t[k]}`).join(\";\");const THEME_KEY=\"bv-theme\";function systemTheme(){return\"dark\";}function savedTheme(){return\"dark\";}function applyTheme(t){if(typeof document===\"undefined\")return;document.documentElement.setAttribute(\"data-bv-theme\",t);document.documentElement.style.colorScheme=t;}export function setTheme(t){try{localStorage.setItem(THEME_KEY,t);}catch{}applyTheme(t);window.dispatchEvent(new CustomEvent(\"bv-theme\",{detail:t}));}export function useTheme(){const[t,set]=useState(\"dark\");useEffect(()=>{applyTheme(\"dark\");set(\"dark\");},[]);return t;}export const SANS=\"'Geist', -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', Arial, sans-serif\";export const COND=SANS;export const DISPLAY=\"'Geist', -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Helvetica Neue', Arial, sans-serif\";export const SERIF=SANS;/** Type scale (px). Display sizes use line-height 1.05, body 1.5. Weights: 400 / 500 / 600 only. */export const TYPE={xs:12,sm:14,md:16,lg:20,xl:28,x2:40,x3:56,x4:88};/** Spacing on a 4/8 grid (px). Cards: 16 phone / 24 desktop. Sections: 48 phone / 64 desktop. */export const SPACE={1:4,2:8,3:12,4:16,6:24,8:32,12:48,16:64};const LOGO=id=>`https://media.api-sports.io/football/leagues/${id}.png`;/** Competitions we cover. `top` ones have their own page; the rest filter the home board (/?league=slug). */export const LEAGUES=[{slug:\"premier-league\",name:\"Premier League\",country:\"England\",path:\"/premier-league-predictions\",logo:LOGO(39),top:true},{slug:\"la-liga\",name:\"La Liga\",country:\"Spain\",path:\"/la-liga-predictions\",logo:LOGO(140),top:true},{slug:\"serie-a\",name:\"Serie A\",country:\"Italy\",path:\"/serie-a-predictions\",logo:LOGO(135),top:true},{slug:\"bundesliga\",name:\"Bundesliga\",country:\"Germany\",path:\"/bundesliga-predictions\",logo:LOGO(78),top:true},{slug:\"ligue-1\",name:\"Ligue 1\",country:\"France\",path:\"/ligue-1-predictions\",logo:LOGO(61),top:true},{slug:\"champions-league\",name:\"Champions League\",country:\"Europe\",path:\"/champions-league-predictions\",logo:LOGO(2),top:true},{slug:\"europa-league\",name:\"Europa League\",country:\"Europe\",path:\"/?league=europa-league\",logo:LOGO(3),top:false},{slug:\"conference-league\",name:\"Conference League\",country:\"Europe\",path:\"/?league=conference-league\",logo:LOGO(848),top:false},{slug:\"championship\",name:\"Championship\",country:\"England\",path:\"/?league=championship\",logo:LOGO(40),top:false},{slug:\"eredivisie\",name:\"Eredivisie\",country:\"Netherlands\",path:\"/?league=eredivisie\",logo:LOGO(88),top:false},{slug:\"primeira-liga\",name:\"Primeira Liga\",country:\"Portugal\",path:\"/?league=primeira-liga\",logo:LOGO(94),top:false},{slug:\"super-lig\",name:\"S\\xfcper Lig\",country:\"Turkey\",path:\"/?league=super-lig\",logo:LOGO(203),top:false},{slug:\"belgian-pro-league\",name:\"Pro League\",country:\"Belgium\",path:\"/?league=belgian-pro-league\",logo:LOGO(144),top:false},{slug:\"scottish-premiership\",name:\"Premiership\",country:\"Scotland\",path:\"/?league=scottish-premiership\",logo:LOGO(179),top:false},{slug:\"saudi-pro-league\",name:\"Saudi Pro League\",country:\"Saudi Arabia\",path:\"/?league=saudi-pro-league\",logo:LOGO(307),top:false},{slug:\"mls\",name:\"MLS\",country:\"USA\",path:\"/?league=mls\",logo:LOGO(253),top:false},{slug:\"brasileirao\",name:\"Brasileir\\xe3o\",country:\"Brazil\",path:\"/?league=brasileirao\",logo:LOGO(71),top:false},{slug:\"argentina-primera\",name:\"Liga Profesional\",country:\"Argentina\",path:\"/?league=argentina-primera\",logo:LOGO(128),top:false},{slug:\"uefa-super-cup\",name:\"UEFA Super Cup\",country:\"Europe\",path:\"/?league=uefa-super-cup\",logo:LOGO(531),top:false},{slug:\"nations-league\",name:\"Nations League\",country:\"Europe\",path:\"/?league=nations-league\",logo:LOGO(5),top:false},{slug:\"wc-qualifiers-europe\",name:\"World Cup qualifiers\",country:\"Europe\",path:\"/?league=wc-qualifiers-europe\",logo:LOGO(32),top:false},{slug:\"euro-qualifiers\",name:\"Euro qualifiers\",country:\"Europe\",path:\"/?league=euro-qualifiers\",logo:LOGO(960),top:false},{slug:\"club-world-cup\",name:\"Club World Cup\",country:\"World\",path:\"/?league=club-world-cup\",logo:LOGO(15),top:false},{slug:\"friendlies\",name:\"International friendlies\",country:\"World\",path:\"/?league=friendlies\",logo:LOGO(10),top:false},{slug:\"fa-cup\",name:\"FA Cup\",country:\"England\",path:\"/?league=fa-cup\",logo:LOGO(45),top:false},{slug:\"efl-cup\",name:\"EFL Cup\",country:\"England\",path:\"/?league=efl-cup\",logo:LOGO(48),top:false},{slug:\"league-one\",name:\"League One\",country:\"England\",path:\"/?league=league-one\",logo:LOGO(41),top:false},{slug:\"league-two\",name:\"League Two\",country:\"England\",path:\"/?league=league-two\",logo:LOGO(42),top:false},{slug:\"copa-del-rey\",name:\"Copa del Rey\",country:\"Spain\",path:\"/?league=copa-del-rey\",logo:LOGO(143),top:false},{slug:\"segunda\",name:\"LaLiga 2\",country:\"Spain\",path:\"/?league=segunda\",logo:LOGO(141),top:false},{slug:\"coppa-italia\",name:\"Coppa Italia\",country:\"Italy\",path:\"/?league=coppa-italia\",logo:LOGO(137),top:false},{slug:\"serie-b\",name:\"Serie B\",country:\"Italy\",path:\"/?league=serie-b\",logo:LOGO(136),top:false},{slug:\"dfb-pokal\",name:\"DFB-Pokal\",country:\"Germany\",path:\"/?league=dfb-pokal\",logo:LOGO(81),top:false},{slug:\"2-bundesliga\",name:\"2. Bundesliga\",country:\"Germany\",path:\"/?league=2-bundesliga\",logo:LOGO(79),top:false},{slug:\"coupe-de-france\",name:\"Coupe de France\",country:\"France\",path:\"/?league=coupe-de-france\",logo:LOGO(66),top:false},{slug:\"ligue-2\",name:\"Ligue 2\",country:\"France\",path:\"/?league=ligue-2\",logo:LOGO(62),top:false},{slug:\"scottish-cup\",name:\"Scottish Cup\",country:\"Scotland\",path:\"/?league=scottish-cup\",logo:LOGO(181),top:false},{slug:\"austrian-bundesliga\",name:\"Bundesliga\",country:\"Austria\",path:\"/?league=austrian-bundesliga\",logo:LOGO(218),top:false},{slug:\"swiss-super-league\",name:\"Super League\",country:\"Switzerland\",path:\"/?league=swiss-super-league\",logo:LOGO(207),top:false},{slug:\"danish-superliga\",name:\"Superliga\",country:\"Denmark\",path:\"/?league=danish-superliga\",logo:LOGO(119),top:false},{slug:\"eliteserien\",name:\"Eliteserien\",country:\"Norway\",path:\"/?league=eliteserien\",logo:LOGO(103),top:false},{slug:\"allsvenskan\",name:\"Allsvenskan\",country:\"Sweden\",path:\"/?league=allsvenskan\",logo:LOGO(113),top:false},{slug:\"greek-super-league\",name:\"Super League\",country:\"Greece\",path:\"/?league=greek-super-league\",logo:LOGO(197),top:false},{slug:\"ekstraklasa\",name:\"Ekstraklasa\",country:\"Poland\",path:\"/?league=ekstraklasa\",logo:LOGO(106),top:false},{slug:\"czech-first-league\",name:\"First League\",country:\"Czechia\",path:\"/?league=czech-first-league\",logo:LOGO(345),top:false},{slug:\"croatian-hnl\",name:\"HNL\",country:\"Croatia\",path:\"/?league=croatian-hnl\",logo:LOGO(210),top:false},{slug:\"serbian-superliga\",name:\"SuperLiga\",country:\"Serbia\",path:\"/?league=serbian-superliga\",logo:LOGO(286),top:false},{slug:\"romanian-liga-1\",name:\"Liga I\",country:\"Romania\",path:\"/?league=romanian-liga-1\",logo:LOGO(283),top:false},{slug:\"ukrainian-premier-league\",name:\"Premier League\",country:\"Ukraine\",path:\"/?league=ukrainian-premier-league\",logo:LOGO(333),top:false},{slug:\"russian-premier-league\",name:\"Premier League\",country:\"Russia\",path:\"/?league=russian-premier-league\",logo:LOGO(235),top:false},{slug:\"cypriot-first-division\",name:\"First Division\",country:\"Cyprus\",path:\"/?league=cypriot-first-division\",logo:LOGO(318),top:false},{slug:\"malta-premier-league\",name:\"Premier League\",country:\"Malta\",path:\"/?league=malta-premier-league\",logo:LOGO(393),top:false},{slug:\"irish-premier-division\",name:\"Premier Division\",country:\"Ireland\",path:\"/?league=irish-premier-division\",logo:LOGO(357),top:false},{slug:\"copa-libertadores\",name:\"Copa Libertadores\",country:\"South America\",path:\"/?league=copa-libertadores\",logo:LOGO(13),top:false},{slug:\"copa-sudamericana\",name:\"Copa Sudamericana\",country:\"South America\",path:\"/?league=copa-sudamericana\",logo:LOGO(11),top:false},{slug:\"liga-mx\",name:\"Liga MX\",country:\"Mexico\",path:\"/?league=liga-mx\",logo:LOGO(262),top:false},{slug:\"j1-league\",name:\"J1 League\",country:\"Japan\",path:\"/?league=j1-league\",logo:LOGO(98),top:false},{slug:\"k-league-1\",name:\"K League 1\",country:\"South Korea\",path:\"/?league=k-league-1\",logo:LOGO(292),top:false},{slug:\"a-league\",name:\"A-League\",country:\"Australia\",path:\"/?league=a-league\",logo:LOGO(188),top:false},{slug:\"chinese-super-league\",name:\"Super League\",country:\"China\",path:\"/?league=chinese-super-league\",logo:LOGO(169),top:false},{slug:\"afc-champions-league\",name:\"AFC Champions League\",country:\"Asia\",path:\"/?league=afc-champions-league\",logo:LOGO(17),top:false},{slug:\"caf-champions-league\",name:\"CAF Champions League\",country:\"Africa\",path:\"/?league=caf-champions-league\",logo:LOGO(12),top:false}];export const leagueBySlug=s=>LEAGUES.find(l=>l.slug===s);export function isEditor(){try{if(RenderTarget.current()===RenderTarget.canvas||RenderTarget.current()===RenderTarget.thumbnail)return true;}catch{}if(typeof window===\"undefined\")return true;const h=window.location.hostname;// Only the Framer editor and canvas show sample data; the published site (framer.app or our domain) shows real data.\nreturn h===\"\"||h===\"x\"||/(^|\\.)framer\\.com$/.test(h)||/framercanvas\\.com$/.test(h);}/** Fetch live data from the proxy (5-minute browser cache). In the Framer editor, or before a data URL is set, it shows example data. *//** One request per URL at a time: every component asking for the same data while it loads shares the answer. */const INFLIGHT={};export function fetchOnce(u){if(!INFLIGHT[u]){// If the edge is unreachable or errors, ask the engine directly so the site never goes blank.\nconst viaEngine=()=>u.startsWith(DATA_URL)?fetch(ENGINE_URL+u.slice(DATA_URL.length)).then(r=>r.json()):Promise.reject(new Error(\"fetch failed\"));INFLIGHT[u]=fetch(u).then(r=>r.ok?r.json():viaEngine()).catch(()=>viaEngine()).finally(()=>setTimeout(()=>delete INFLIGHT[u],1e3));}return INFLIGHT[u];}// ---------- data-feed guards (23 Oct) ----------\n// 1. Only a real answer is cached: an HTTP error, a non-JSON reply or an error body ({ error: … }) never overwrites the\n//    copy this device already has, and is never shown as data.\n// 2. A \"busy\" answer (HTTP 429) starts a shared quiet window, kept in sessionStorage so every component and page in\n//    this tab respects it: Retry-After is honoured with a 5-second floor and a 10-minute cap, 60 seconds when there is\n//    no readable header. Inside the window no request is made.\n// 3. useBV returns retry() (re-runs the fetch without reloading; does nothing inside a quiet window) and busyUntil\n//    (0 when not busy), for a \"Try again\" button.\nconst BUSY_KEY=\"bv:busy-until\";let BUSY_UNTIL=0;export function feedBusyUntil(){let t=BUSY_UNTIL;try{t=Math.max(t,Number(sessionStorage.getItem(BUSY_KEY)||0));}catch{}return t>Date.now()?t:0;}function setFeedBusy(r){let ms=6e4;try{const h=(r.headers.get(\"Retry-After\")||\"\").trim();if(h){const secs=Number(h);const v=Number.isFinite(secs)?secs*1e3:Date.parse(h)-Date.now();if(Number.isFinite(v))ms=v;}}catch{}ms=Math.min(10*6e4,Math.max(5e3,ms));BUSY_UNTIL=Date.now()+ms;try{sessionStorage.setItem(BUSY_KEY,String(BUSY_UNTIL));}catch{}}/** A payload worth showing and caching: an object that carries one of the fields the proxy sends, or at least isn't an error body. */const realPayload=d=>!!d&&typeof d===\"object\"&&!Array.isArray(d)&&([\"updated\",\"matches\",\"table\",\"record\",\"brain\"].some(k=>d[k]!=null)||d.error==null);// ---------- feed timeouts (24 Oct) ----------\n// Each feed request (the Cloudflare edge, then the engine fallback) gets its own AbortController and is cut after\n// FEED_TIMEOUT_MS, counting the body read too. Only the request that timed out is aborted. A timeout is never a \"busy\"\n// answer: it starts no quiet window, and the engine fallback still runs. Only the read-only data feed is timed out;\n// fetchOnce and any click action are left alone (never timed out or retried).\n/** Cut a feed request after this long. 12 s while the v1 Worker is live; drop to 8 s once Worker v2.1 is live. */export const FEED_TIMEOUT_MS=12e3;/** Show \"taking longer than usual\" after this long with nothing on screen. One constant for every component. */export const FEED_SLOW_MS=8e3;/** Cut the engine fallback (Apps Script) after this long, so a hung edge plus a hung engine fails within 20 s, not 24 s. */export const ENGINE_TIMEOUT_MS=8e3;const FEED_INFLIGHT={};// ---------- Try again (24 Oct) ----------\n// A \"Try again\" press cancels the shared request for that URL (edge or engine, whichever is running) and fires one new\n// one. The cancelled request rejects with \"retry\", which is never shown as an error: every component that was waiting\n// on it quietly joins the new request instead. A cancel starts no quiet window and never falls back to the engine.\nconst FEED_JOBS={};function cancelFeed(u){const job=FEED_JOBS[u];if(!job)return;job.cancelled=true;job.ctls.forEach(c=>c.abort());delete FEED_JOBS[u];delete FEED_INFLIGHT[u];}/** Like fetchOnce, for the data feed only: rejects on 429 (and starts the quiet window), other HTTP errors, error bodies and timeouts. */function fetchFeed(u){if(feedBusyUntil())return Promise.reject(new Error(\"busy\"));if(!FEED_INFLIGHT[u]){const job={cancelled:false,ctls:[]};FEED_JOBS[u]=job;const get=(target,ms=FEED_TIMEOUT_MS)=>{if(job.cancelled)return Promise.reject(new Error(\"retry\"));const ctl=typeof AbortController!==\"undefined\"?new AbortController:null;if(ctl)job.ctls.push(ctl);const timer=ctl?setTimeout(()=>ctl.abort(),ms):undefined;return fetch(target,ctl?{signal:ctl.signal}:undefined).then(r=>{if(r.status===429){setFeedBusy(r);throw new Error(\"busy\");}if(!r.ok)throw new Error(\"http \"+r.status);return r.json();}).catch(e=>{if(job.cancelled)throw new Error(\"retry\");throw e&&e.name===\"AbortError\"?new Error(\"timeout\"):e;}).finally(()=>{if(timer!==undefined)clearTimeout(timer);});};// If the Cloudflare edge is unreachable or errors (not \"busy\"), ask the engine directly so the site never goes blank.\nconst viaEngine=e=>u.startsWith(DATA_URL)&&![\"busy\",\"retry\"].includes(String(e&&e.message))?get(ENGINE_URL+u.slice(DATA_URL.length),ENGINE_TIMEOUT_MS):Promise.reject(e);const p=get(u).catch(viaEngine).then(d=>{if(job.cancelled)throw new Error(\"retry\");if(!realPayload(d))throw new Error(\"bad payload\");return d;}).finally(()=>setTimeout(()=>{// Only clear our own entry: after a Try again the slot already holds the new request.\n    if(FEED_INFLIGHT[u]===p)delete FEED_INFLIGHT[u];if(FEED_JOBS[u]===job)delete FEED_JOBS[u];},1e3));FEED_INFLIGHT[u]=p;}return FEED_INFLIGHT[u];}export function useBV(endpoint,query,enabled=true){const url=endpoint||DATA_URL;const qs=new URLSearchParams(Object.entries(query).map(([k,v])=>[k,String(v)])).toString();const feedUrl=`${url}${url.includes(\"?\")?\"&\":\"?\"}${qs}`;const[state,setState]=useState({data:null,error:false,sample:false});const[tick,setTick]=useState(0);const[busyUntil,setBusyUntil]=useState(0);// True while nothing is on screen and the request has run past FEED_SLOW_MS (\"taking longer than usual\").\nconst[slow,setSlow]=useState(false);useEffect(()=>{let alive=true;let slowTimer;setSlow(false);if(!enabled)return;if(isEditor()){startTransition(()=>setState({data:guardPayload(SAMPLE(query)),error:false,sample:true}));return;}if(!url){// Live site before the data connection is set: never show example numbers to visitors.\nstartTransition(()=>setState({data:null,error:true,sample:false}));return;}const key=\"bv:\"+qs;// 1. Show the last copy this device saw straight away (even if it's a little old), so the page is never blank.\nlet shown=false;let fresh=false;try{const raw=localStorage.getItem(key)||sessionStorage.getItem(key);const hit=raw?JSON.parse(raw):null;if(hit&&realPayload(hit.d)&&Date.now()-hit.t<6*36e5){shown=true;fresh=Date.now()-hit.t<4*60*1e3;startTransition(()=>setState({data:guardPayload(hit.d),error:false,sample:false}));}}catch{}// 2. Then refresh in the background (unless the copy is only a few minutes old). Components asking for the\n//    same data at the same time share one request. Inside a quiet window (after a 429) no request is made.\nif(!fresh&&!shown)slowTimer=setTimeout(()=>alive&&setSlow(true),FEED_SLOW_MS);const settle=()=>{if(slowTimer!==undefined)clearTimeout(slowTimer);if(alive)setSlow(false);};// A request cancelled by another component's Try again rejects with \"retry\": join the new one (at most 3 times).\nconst load=left=>fetchFeed(feedUrl).catch(e=>alive&&left>0&&String(e&&e.message)===\"retry\"?load(left-1):Promise.reject(e));if(!fresh)load(3).then(d=>{settle();try{const s=JSON.stringify({t:Date.now(),d});try{localStorage.setItem(key,s);}catch{sessionStorage.setItem(key,s);}}catch{}if(!alive)return;setBusyUntil(0);startTransition(()=>setState({data:guardPayload(d),error:false,sample:false}));}).catch(()=>{settle();if(!alive)return;setBusyUntil(feedBusyUntil());if(!shown)startTransition(()=>setState({data:null,error:true,sample:false}));});return()=>{alive=false;if(slowTimer!==undefined)clearTimeout(slowTimer);};},[url,qs,enabled,tick]);// When a quiet window ends, clear busyUntil so a \"Try again\" button re-enables by itself.\nuseEffect(()=>{if(!busyUntil)return;const t=setTimeout(()=>setBusyUntil(feedBusyUntil()),Math.max(0,busyUntil-Date.now())+50);return()=>clearTimeout(t);},[busyUntil]);/** Re-runs the fetch without reloading the page: cancels the shared request for this data and fires one new one.\n     *  Does nothing while the feed is in a quiet window. */const retry=()=>{const b=feedBusyUntil();if(b)return setBusyUntil(b);if(url&&!isEditor())cancelFeed(feedUrl);setState(s=>s.error?{data:null,error:false,sample:false}:s);setTick(n=>n+1);};return{...state,retry,busyUntil,slow};}// ---------- formatting ----------\nexport const pct=p=>`${Math.round(p*100)}%`;export const odds=o=>o?o.toFixed(2):\"–\";export function kickoffLabel(iso){const d=new Date(iso);const now=new Date;const day=d.toDateString()===now.toDateString()?\"Today\":d.toDateString()===new Date(now.getTime()+864e5).toDateString()?\"Tomorrow\":d.toLocaleDateString(\"en-GB\",{weekday:\"short\",day:\"numeric\",month:\"short\"});return{day,key:d.toDateString(),time:d.toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"})};}export const callLabel=c=>c===\"High\"?\"Strong call\":c===\"Medium\"?\"Lean\":\"Most likely result\";/** Edges above this are never real value: they mean the model has misread the match (same cap as engine v2.3). */export const MAX_EDGE=.25;/** True when the engine flags that our model and the market disagree too much to trust any value call on this match. */export const modelDisagrees=m=>!!(m&&(m.model?.disagree||m.disagree));/**\n * Per-league tip pause (Jesper's J1 rule): no value calls in a league until it has this many settled picks. The count\n * comes from the engine as m.leagueSettled, or from payload.brain.byLeague (see guardPayload). Picks and chances still\n * show; only the Value badge and the edge bonus are held back. (The \"Building our record in this league\" note is next.)\n */export const LEAGUE_MIN_SETTLED=60;/** What to do when no league count arrives at all: false = don't pause (today's behaviour), true = pause everywhere. */export const LEAGUE_PAUSE_UNKNOWN=false;export function leagueSettled(m){const n=m?m.leagueSettled:undefined;return typeof n===\"number\"&&isFinite(n)?n:undefined;}/** True when value calls are paused for this match's league. */export function leaguePaused(m){const n=leagueSettled(m);return n===undefined?LEAGUE_PAUSE_UNKNOWN:n<LEAGUE_MIN_SETTLED;}/** The edge we're willing to show: none when the model and market disagree, when it's implausibly big, or while the league is still building its record. */export function trustedEdge(m,edge){if(edge===undefined||edge===null||!isFinite(edge))return undefined;if(modelDisagrees(m)||edge>MAX_EDGE)return undefined;if(leaguePaused(m))return undefined;return edge;}/** Clean a payload before the site sees it, so an older or stale engine can never put a bad value tip on the page. */export function guardPayload(d){if(!d||!Array.isArray(d.matches))return d;// Per-league settled counts from the brain, when the engine sends it with the matches.\nconst byLeague={};if(d.brain&&Array.isArray(d.brain.byLeague)){for(const g of d.brain.byLeague)if(g&&typeof g.name===\"string\"&&typeof g.picks===\"number\")byLeague[g.name]=g.picks;}const matches=d.matches.map(m=>{if(!m)return m;let out=m;if(leagueSettled(m)===undefined&&byLeague[m.league]!==undefined)out={...out,leagueSettled:byLeague[m.league]};const mm=out;if(m.verdict&&m.verdict.edge!==undefined&&trustedEdge(mm,m.verdict.edge)===undefined)out={...out,verdict:{...m.verdict,edge:undefined}};const fed=m.picks;if(Array.isArray(fed)&&fed.some(p=>p&&p.edge!==undefined&&trustedEdge(mm,p.edge)===undefined))out={...out,picks:fed.map(p=>p&&p.edge!==undefined&&trustedEdge(mm,p.edge)===undefined?{...p,edge:undefined}:p)};return out;});return{...d,matches};}export const isValue=m=>!!m.verdict&&trustedEdge(m,m.verdict.edge)!==undefined&&m.verdict.edge>=.03;/**\n * Confidence in our tip (0–100), from the model only: 70% how likely the tip is (33% chance scores 0, 75%+ scores full),\n * 30% how big the edge is over the best price (0% scores 0, 12%+ scores full). The AI never sets this number.\n */export function confidenceOf(m){const v=m.verdict;if(!v)return{value:0,ai:false};const sure=Math.max(0,Math.min(1,(v.prob-.33)/.42));const edge=Math.max(0,Math.min(1,(v.edge||0)/.12));return{value:Math.round(sure*70+edge*30),ai:false};}export const confidenceTier=n=>n>=70?\"High\":n>=45?\"Medium\":\"Low\";export const dataUrl=endpoint=>endpoint||DATA_URL;// ---------- globals ----------\nconst GLOBAL_ID=\"bv-global\";const GLOBAL_CSS=`\n:root{${vars(LIGHT)}}\nhtml[data-bv-theme=dark]{${vars(DARK)}}\nhtml,body{background:var(--bv-page) !important}\n.bv *{box-sizing:border-box}\n.bv-ll{background:#FFFFFF;border-radius:6px;padding:2px}\n.bv a{color:inherit}\n.bv-link{text-decoration:none;transition:color .15s ease}\n.bv-link:hover{color:${C.ink} !important}\n.bv-u{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}\n.bv-u:hover{color:${C.ink}}\n.bv-side a{transition:background-color .15s ease}\n.bv-side a:hover{background:${C.soft}}\n.bv a:focus-visible,.bv button:focus-visible,.bv summary:focus-visible,.bv input:focus-visible{outline:2px solid ${C.ink};outline-offset:3px;border-radius:8px}\n.bv details>summary{list-style:none}\n.bv details>summary::-webkit-details-marker{display:none}\n.bv details[open] .bv-chev{transform:rotate(180deg)}\n.bv-chev{transition:transform .2s ease;display:inline-block}\n.bv-row>summary{transition:background-color .12s ease}\n.bv-row>summary:hover{background:var(--bv-hover)}\n.bv input::placeholder{color:var(--bv-muted)}\n.bv-noscroll::-webkit-scrollbar{display:none}\n.bv-prose h2{font-family:${DISPLAY};font-weight:600;font-size:26px;line-height:1.15;letter-spacing:-.025em;margin:40px 0 10px;color:${C.ink}}\n.bv-prose p,.bv-prose li{font-family:${SANS};font-size:17px;line-height:1.65;color:${C.body}}\n.bv-prose ul,.bv-prose ol{padding-left:22px;margin:10px 0}\n.bv-prose li{margin:4px 0}\n.bv-prose a{color:${C.ink};text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:3px}\n.bv-prose strong{color:${C.ink};font-weight:600}\n.bv{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}\n.bv-chy,.bv-chyL{border-radius:999px}\n.bv-disp{font-family:${DISPLAY};font-weight:600;letter-spacing:-.035em;line-height:1.02}\n.bv-cond{font-family:${COND}}\n.bv-num{font-variant-numeric:tabular-nums}\n@keyframes bvtick{from{transform:translateX(0)}to{transform:translateX(-50%)}}\n.bv-tick{display:flex;width:max-content;animation:bvtick 80s linear infinite}\n.bv-tickwrap:hover .bv-tick,.bv-tickwrap:focus-within .bv-tick{animation-play-state:paused}\n@keyframes bvpulse{0%,100%{opacity:1}50%{opacity:.35}}\n.bv-live{animation:bvpulse 1.6s ease-in-out infinite}\n@keyframes bvup{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}\n@keyframes bvfade{from{opacity:0}to{opacity:1}}\n@keyframes bvrise{from{transform:translateY(18px);opacity:0;filter:blur(6px)}to{transform:none;opacity:1;filter:none}}\n.bv-rise{animation:bvrise .9s cubic-bezier(.16,1,.3,1) both}\n.bv-sheet{animation:bvup .28s cubic-bezier(.32,.72,0,1) both}\n.bv-scrim{animation:bvfade .25s ease both}\n.bv-match{transition:background-color .2s ease,transform .12s ease}\n.bv-match:active{transform:scale(.985)}\n.bv-match:hover{background:rgba(255,255,255,.035)}\n.bv-match:hover .bv-go{color:var(--bv-ink);transform:translateX(3px)}\n.bv-go{transition:transform .2s ease,color .2s ease}\n.bv-btn{transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}\n.bv-btn:hover{border-color:rgba(255,255,255,.28) !important}\n.bv-btn:active{transform:scale(.98);transition-duration:.12s}\n.bv-cta{transition:transform .2s ease,filter .2s ease}\n.bv-cta:hover{filter:brightness(1.08)}\n.bv-cta:active{transform:scale(.98);transition-duration:.12s}\n.bv-card:active{transform:scale(.99)}\n@keyframes bvshim{from{background-position:200% 0}to{background-position:-200% 0}}\n.bv-skel{background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.08),rgba(255,255,255,.04));background-size:200% 100%;animation:bvshim 1.4s linear infinite;border-radius:8px}\n.bv-card{transition:border-color .25s ease,transform .25s ease}\n.bv-card:hover{border-color:rgba(255,255,255,.16) !important}\n@media (prefers-reduced-motion: reduce){.bv *{transition:none !important;animation:none !important}}\n`;function setMeta(name,content){let m=document.querySelector(`meta[name=\"${name}\"]`);if(!m){m=document.createElement(\"meta\");m.name=name;document.head.appendChild(m);}m.content=content;}export function useBVGlobals(title,description){useEffect(()=>{if(typeof document===\"undefined\")return;if(!document.getElementById(\"bv-fonts\")){const p=document.createElement(\"link\");p.rel=\"preconnect\";p.href=\"https://fonts.gstatic.com\";p.crossOrigin=\"anonymous\";document.head.appendChild(p);const l=document.createElement(\"link\");l.id=\"bv-fonts\";l.rel=\"stylesheet\";l.href=\"https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&display=swap\";document.head.appendChild(l);}let s=document.getElementById(GLOBAL_ID);if(!s){s=document.createElement(\"style\");s.id=GLOBAL_ID;document.head.appendChild(s);}if(s.textContent!==GLOBAL_CSS)s.textContent=GLOBAL_CSS;setMeta(\"theme-color\",\"#050506\");applyTheme(\"dark\");if(title&&!isEditor()){document.title=title.includes(BRAND.name)?title:`${title} | ${BRAND.name}`;if(description)setMeta(\"description\",description);}},[title,description]);}export function useWidth(initial=1200){const ref=useRef(null);const[width,setWidth]=useState(initial);useEffect(()=>{const el=ref.current;if(!el)return;setWidth(el.getBoundingClientRect().width||initial);if(typeof ResizeObserver===\"undefined\")return;const ro=new ResizeObserver(([e])=>startTransition(()=>setWidth(e.contentRect.width)));ro.observe(el);return()=>ro.disconnect();},[]);return[ref,width];}// ---------- small UI ----------\n/** The mark: a gold tile with the V (the verdict) as a single confident stroke. */export function Logo({size=32,invert=false}){return /*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:\"0 0 64 64\",\"aria-hidden\":\"true\",style:{display:\"block\",flexShrink:0},children:[/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsxs(\"linearGradient\",{id:\"bvlg\",x1:\"0\",y1:\"0\",x2:\"1\",y2:\"1\",children:[/*#__PURE__*/_jsx(\"stop\",{offset:\"0\",stopColor:\"#F7D27A\"}),/*#__PURE__*/_jsx(\"stop\",{offset:\"1\",stopColor:\"#E0A93A\"})]})}),/*#__PURE__*/_jsx(\"rect\",{width:\"64\",height:\"64\",rx:\"16\",fill:\"url(#bvlg)\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M18 20 L32 46 L46 20\",fill:\"none\",strokeWidth:\"7\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{stroke:\"#050506\"}})]});}export function Wordmark({invert=false,size=1}){return /*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:10*size},children:[/*#__PURE__*/_jsx(Logo,{size:28*size,invert:invert}),/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:DISPLAY,fontWeight:600,fontSize:19*size,letterSpacing:\"-0.025em\",color:\"#F5F5F7\",whiteSpace:\"nowrap\",lineHeight:1},children:\"Bookie Verdict\"})]});}/** Team crest from the data provider, or initials when there isn't one. */export function Crest({name,logo,size=20}){const[broken,setBroken]=useState(false);if(logo&&!broken)return /*#__PURE__*/_jsx(\"img\",{src:logo,alt:\"\",width:size,height:size,loading:\"lazy\",onError:()=>setBroken(true),style:{width:size,height:size,objectFit:\"contain\",flexShrink:0}});const ini=name.replace(/^(FC|AC|AS|SS|SC|RC|CF|1\\.)\\s+/i,\"\").split(/\\s+/).map(w=>w[0]).join(\"\").slice(0,2).toUpperCase();let h=0;for(const ch of name)h=(h*31+ch.charCodeAt(0))%360;return /*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",style:{flexShrink:0,display:\"block\"},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M12 1.5l9 3.2v6.6c0 5.4-3.8 9.6-9 11.2-5.2-1.6-9-5.8-9-11.2V4.7z\",style:{fill:`hsl(${h} 58% 38%)`}}),/*#__PURE__*/_jsx(\"path\",{d:\"M12 1.5l9 3.2v6.6c0 5.4-3.8 9.6-9 11.2z\",style:{fill:`hsl(${h} 58% 30%)`}}),/*#__PURE__*/_jsx(\"text\",{x:\"12\",y:\"15.2\",textAnchor:\"middle\",fontFamily:SANS,fontWeight:\"700\",fontSize:ini.length>1?8.5:10,style:{fill:\"#FFFFFF\"},children:ini})]});}/** League logo from the data provider, with a neutral tile if it can't load. */export function LeagueLogo({src,size=20}){const[broken,setBroken]=useState(false);if(!src||broken)return /*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":\"true\",style:{width:size,height:size,borderRadius:6,background:C.soft,display:\"inline-block\",flexShrink:0}});return /*#__PURE__*/_jsx(\"img\",{className:\"bv-ll\",src:src,alt:\"\",width:size,height:size,loading:\"lazy\",onError:()=>setBroken(true),style:{width:size,height:size,objectFit:\"contain\",flexShrink:0}});}/** The pitch bar: home, draw and away chances as one strip. */export function PitchBar({home,draw,away,size=\"sm\",dark=false}){const lg=size===\"lg\";return /*#__PURE__*/_jsxs(\"div\",{role:\"img\",\"aria-label\":`Home ${pct(home)}, draw ${pct(draw)}, away ${pct(away)}`,style:{position:\"relative\",height:lg?8:6,overflow:\"hidden\",display:\"flex\",gap:3,borderRadius:99},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:`${home*100}%`,background:C.ink}}),/*#__PURE__*/_jsx(\"span\",{style:{width:`${draw*100}%`,background:C.drawDot}}),/*#__PURE__*/_jsx(\"span\",{style:{width:`${away*100}%`,background:C.blue}})]});}/** A half-dial gauge for the confidence score. */export function Gauge({value,size=64,dark=false,label=true}){const v=Math.max(0,Math.min(100,value));const r=26;const len=Math.PI*r;const tier=confidenceTier(v);const col=tier===\"High\"?C.turf:tier===\"Medium\"?C.amber:C.muted;return /*#__PURE__*/_jsxs(\"span\",{role:\"img\",\"aria-label\":`Confidence ${v} out of 100, ${tier.toLowerCase()}`,style:{display:\"inline-flex\",flexDirection:\"column\",alignItems:\"center\",width:size,flexShrink:0},children:[/*#__PURE__*/_jsxs(\"svg\",{width:size,height:size*.62,viewBox:\"0 0 64 40\",\"aria-hidden\":\"true\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M6 34 A26 26 0 0 1 58 34\",fill:\"none\",strokeWidth:\"7\",style:{stroke:C.gaugeTrack}}),/*#__PURE__*/_jsx(\"path\",{d:\"M6 34 A26 26 0 0 1 58 34\",fill:\"none\",strokeWidth:\"7\",strokeDasharray:`${len*v/100} ${len}`,style:{stroke:col}}),/*#__PURE__*/_jsx(\"text\",{x:\"32\",y:\"33\",textAnchor:\"middle\",fontFamily:COND,fontWeight:\"700\",fontSize:\"16\",style:{fill:C.ink},children:v})]}),label&&/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:COND,fontSize:Math.max(11,size*.18),fontWeight:500,color:C.muted,marginTop:1},children:tier})]});}/** Small \"AI\" sparkle mark used next to AI-written content. */export function AIMark({dark=false}){return /*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:4,height:22,padding:\"0 9px\",borderRadius:99,background:C.aiChip,color:C.ai,fontFamily:SANS,fontSize:12,fontWeight:600},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"11\",height:\"11\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M12 2l2.2 6.3L20 10.5l-5.8 2.2L12 19l-2.2-6.3L4 10.5l5.8-2.2z\",style:{fill:\"currentColor\"}})}),\"AI\"]});}export const wrap=extra=>({width:\"100%\",maxWidth:1160,margin:\"0 auto\",padding:\"0 24px\",boxSizing:\"border-box\",...extra});export const card=extra=>({background:C.card,border:`1px solid ${C.line}`,borderRadius:22,...extra});export function H2({children,compact}){return /*#__PURE__*/_jsx(\"h2\",{className:\"bv-disp\",style:{margin:0,fontSize:compact?32:42,color:C.ink},children:children});}// ---------- example data (Framer editor / preview links only) ----------\nconst T=id=>`https://media.api-sports.io/football/teams/${id}.png`;function SAMPLE(query){const base=new Date;base.setMinutes(0,0,0);const at=h=>new Date(base.getTime()+h*36e5).toISOString();const SC={Arsenal:[[\"Bukayo Saka\",.41],[\"Kai Havertz\",.36],[\"Gabriel Martinelli\",.27]],Chelsea:[[\"Cole Palmer\",.33],[\"Nicolas Jackson\",.29],[\"Noni Madueke\",.17]],Liverpool:[[\"Mohamed Salah\",.48],[\"Cody Gakpo\",.31],[\"Darwin N\\xfa\\xf1ez\",.28]],\"Aston Villa\":[[\"Ollie Watkins\",.3],[\"Morgan Rogers\",.17],[\"Leon Bailey\",.14]]};const pois=(l,k)=>{let f=1;for(let i=2;i<=k;i++)f*=i;return Math.exp(-l)*Math.pow(l,k)/f;};const topScores=(lh,la)=>{const g=[];for(let i=0;i<=6;i++)for(let j=0;j<=6;j++)g.push({score:`${i}-${j}`,p:pois(lh,i)*pois(la,j)});return g.sort((a,b)=>b.p-a.p).slice(0,3);};const scorersFor=(team,l)=>(SC[team]||[[`${team} forward`,.3],[`${team} winger`,.2],[`${team} midfielder`,.13]]).map(([name,share])=>({name,goals:Math.round(share*12),p:Math.round((1-Math.exp(-l*share*.9))*100)/100}));const RANK={Arsenal:1,Liverpool:2,Chelsea:4,\"Aston Villa\":5,\"Real Madrid\":2,Sevilla:11,\"AS Roma\":7,Atalanta:4,\"Bayer Leverkusen\":3,\"SC Freiburg\":8,Lyon:6,Lille:5,Inter:1,Benfica:2};const OPP=[\"Brighton\",\"Fulham\",\"Everton\",\"Brentford\",\"Wolves\",\"Newcastle\",\"Bournemouth\",\"West Ham\"];const recentFor=(f,seed)=>f.split(\"\").map((r,i)=>({opp:OPP[(seed+i)%OPP.length],ha:i%2?\"A\":\"H\",res:r,score:r===\"W\"?[\"2-0\",\"3-1\",\"1-0\"][(seed+i)%3]:r===\"D\"?[\"1-1\",\"0-0\"][(seed+i)%2]:[\"0-1\",\"1-2\"][(seed+i)%2]}));const INJ={Arsenal:[{name:\"Ben White\",reason:\"Knee\"}],Chelsea:[{name:\"Reece James\",reason:\"Hamstring\"},{name:\"Wesley Fofana\",reason:\"Doubtful\"}],Liverpool:[{name:\"Conor Bradley\",reason:\"Doubtful\"}]};const mk=(id,league,h,home,away,m,o,xg,o25,btts,form,score)=>{const tilt=[1.04,.97,1.08,.95,1.1,1,.93][Number(id.slice(1))%7];const price=(p,t=1)=>Math.round(1/(p*1.06)*t*100)/100;const sample={dc1X:price(m[0]+m[1]),dcX2:price(m[2]+m[1],tilt),dc12:price(m[0]+m[2]),over25:price(o25,tilt*1.02),under25:price(1-o25),btts:price(btts,2.06-tilt),bttsNo:price(1-btts)};const sc=SC[home[0]]?scorersFor(home[0],xg[0])[0]:null;const cands=[{key:\"H\",market:\"Match result\",pick:`${home[0]} to win`,short:home[0],prob:m[0],price:o[0]},{key:\"D\",market:\"Match result\",pick:\"Draw\",short:\"Draw\",prob:m[1],price:o[1]},{key:\"A\",market:\"Match result\",pick:`${away[0]} to win`,short:away[0],prob:m[2],price:o[2]},{key:\"1X\",market:\"Double chance\",pick:`${home[0]} or draw`,short:`${home[0]} or draw`,prob:m[0]+m[1],price:sample.dc1X},{key:\"X2\",market:\"Double chance\",pick:`${away[0]} or draw`,short:`${away[0]} or draw`,prob:m[2]+m[1],price:sample.dcX2},{key:\"O25\",market:\"Goals\",pick:\"Over 2.5 goals\",short:\"Over 2.5\",prob:o25,price:sample.over25},{key:\"U25\",market:\"Goals\",pick:\"Under 2.5 goals\",short:\"Under 2.5\",prob:1-o25,price:sample.under25},{key:\"BY\",market:\"Both teams to score\",pick:\"Both teams to score\",short:\"Both score\",prob:btts,price:sample.btts},...sc?[{key:\"SC\",market:\"Anytime goalscorer\",pick:`${sc.name} to score`,short:`${sc.name.split(\" \").slice(-1)[0]} to score`,prob:sc.p,price:Math.round(1/sc.p*(id===\"s1\"?1.1:.95)*100)/100}]:[]].map(c=>({...c,e:c.prob*c.price-1}));const ok=c=>c.prob>=.3&&c.price>=1.3&&c.price<=6;const value=cands.filter(c=>ok(c)&&c.e>=.03).sort((a,b)=>b.e*Math.sqrt(b.prob)-a.e*Math.sqrt(a.prob))[0];const chosen=value||cands.filter(c=>ok(c)&&c.price>=1.45).sort((a,b)=>b.prob*(1+b.e)-a.prob*(1+a.e))[0]||cands[0];const prob=chosen.prob;return{id,league,kickoff:at(h),status:\"NS\",home:{name:home[0],logo:T(home[1])},away:{name:away[0],logo:T(away[1])},odds:{home:o[0],draw:o[1],away:o[2],...sample,book:\"Example\"},model:{home:m[0],draw:m[1],away:m[2],over25:o25,btts,xg:{home:xg[0],away:xg[1]},score,scores:topScores(xg[0],xg[1])},scorers:{home:scorersFor(home[0],xg[0]),away:scorersFor(away[0],xg[1])},corners:{home:Math.round((4.2+xg[0])*10)/10,away:Math.round((3.4+xg[1])*10)/10,total:Math.round((7.6+xg[0]+xg[1])*10)/10,line:9.5,over:Math.round(Math.min(.8,.3+(xg[0]+xg[1])*.12)*100)/100,games:8},cards:{home:1.8,away:2.1,total:3.9,line:3.5,over:.55,games:8},verdict:{market:chosen.market,side:chosen.key,short:chosen.short,pick:chosen.pick,prob,fair:1/prob,price:chosen.price,edge:chosen.e,confidence:value?chosen.e>=.08&&prob>=.5?\"High\":\"Medium\":\"Low\",why:[`We make it ${pct(prob)}; the best price of ${chosen.price.toFixed(2)} implies ${pct(1/chosen.price)}.`,`Expected goals ${xg[0].toFixed(1)}–${xg[1].toFixed(1)}, most likely score ${score.replace(\"-\",\"–\")}.`,`Last five: ${home[0]} ${form[0]}, ${away[0]} ${form[1]}.`]},form:{home:form[0],away:form[1]},rank:{home:RANK[home[0]]||6,away:RANK[away[0]]||9},recent:{home:recentFor(form[0],h),away:recentFor(form[1],h+3)},h2h:[0,1,2,3,4].map(i=>({date:new Date(base.getTime()-(i+1)*200*864e5).toISOString(),home:i%2?away[0]:home[0],away:i%2?home[0]:away[0],score:[\"2-1\",\"1-1\",\"0-2\",\"3-1\",\"1-0\"][(i+h)%5]})),injuries:{home:INJ[home[0]]||[],away:INJ[away[0]]||[]},goalsAvg:{home:{for:Math.round((xg[0]+.1)*10)/10,against:Math.round((xg[1]+.1)*10)/10},away:{for:Math.round((xg[1]+.2)*10)/10,against:Math.round((xg[0]-.1)*10)/10}},ai:{headline:value?`${chosen.pick} looks underpriced`:`${chosen.pick} is the likeliest angle`,preview:`We make ${chosen.pick.toLowerCase().startsWith(\"draw\")?\"the draw\":chosen.pick} ${pct(prob)}, while the best price of ${chosen.price.toFixed(2)} implies ${pct(1/chosen.price)}. Expected goals of ${xg[0].toFixed(1)}–${xg[1].toFixed(1)} point to ${xg[0]>xg[1]?home[0]:away[0]} creating more, with ${score.replace(\"-\",\"–\")} the single most likely score.`,factors:[`${home[0]} form ${form[0]}, ${away[0]} form ${form[1]}`,`Expected goals ${xg[0].toFixed(1)} v ${xg[1].toFixed(1)}`,value?`Price ${chosen.price.toFixed(2)} beats fair odds ${(1/prob).toFixed(2)}`:\"No value at current prices\"],confidence:Math.round(Math.max(20,Math.min(88,prob*100+chosen.e*120))),confidenceReason:value?\"A likely result at a bigger price than it should be.\":\"Most likely result, but the odds already reflect it.\",predictions:{score:score,scorer:scorersFor(home[0],xg[0])[0].name,corners:`Around ${Math.round(7.6+xg[0]+xg[1])} corners, ${home[0]} taking more`,cards:\"About 4 yellow cards, a typical game\"}}};};const all=[mk(\"s1\",\"premier-league\",3,[\"Arsenal\",42],[\"Chelsea\",49],[.52,.25,.23],[2.1,3.5,3.6],[1.7,1],.56,.54,[\"WWDLW\",\"LDWLL\"],\"1-0\"),mk(\"s6\",\"premier-league\",5,[\"Liverpool\",40],[\"Aston Villa\",66],[.58,.23,.19],[1.66,4,5],[2,1],.63,.52,[\"WWWDW\",\"DWLWL\"],\"2-1\"),mk(\"s2\",\"la-liga\",6,[\"Real Madrid\",541],[\"Sevilla\",536],[.61,.22,.17],[1.55,4.2,6],[2,.9],.62,.47,[\"WWWDW\",\"DLLWD\"],\"2-0\"),mk(\"s3\",\"serie-a\",26,[\"AS Roma\",497],[\"Atalanta\",499],[.36,.33,.31],[2.8,3.45,2.9],[1.2,1.1],.41,.49,[\"DWDLD\",\"WDLWD\"],\"1-1\"),mk(\"s4\",\"bundesliga\",28,[\"Bayer Leverkusen\",168],[\"SC Freiburg\",160],[.47,.24,.29],[2.2,3.7,3.2],[1.9,1.4],.68,.63,[\"LWWWD\",\"WLWDW\"],\"2-1\"),mk(\"s7\",\"ligue-1\",30,[\"Lyon\",80],[\"Lille\",79],[.4,.29,.31],[2.45,3.3,3],[1.4,1.2],.5,.53,[\"WDLWW\",\"DDWLW\"],\"1-1\"),mk(\"s5\",\"champions-league\",50,[\"Inter\",505],[\"Benfica\",211],[.44,.27,.29],[2.25,3.4,3.3],[1.5,1.2],.52,.55,[\"WDWWL\",\"WWLDW\"],\"1-1\"),mk(\"s8\",\"europa-league\",52,[\"Ajax\",194],[\"Real Sociedad\",548],[.41,.28,.31],[2.5,3.5,2.8],[1.5,1.3],.57,.58,[\"WWLDW\",\"DWWLD\"],\"1-1\"),mk(\"s9\",\"eredivisie\",29,[\"PSV Eindhoven\",197],[\"AZ Alkmaar\",201],[.6,.21,.19],[1.6,4.4,5.2],[2.3,1.1],.71,.6,[\"WWWWD\",\"WLDWW\"],\"2-1\"),mk(\"s10\",\"championship\",27,[\"Leeds\",63],[\"Sunderland\",746],[.47,.28,.25],[2.05,3.4,3.9],[1.5,.9],.46,.44,[\"WDWWD\",\"LWDWL\"],\"1-0\")];const league=String(query.league||\"all\");const matches=league===\"all\"?all:all.filter(m=>m.league===league);const teams=[[\"Arsenal\",42],[\"Liverpool\",40],[\"Manchester City\",50],[\"Chelsea\",49],[\"Aston Villa\",66],[\"Tottenham\",47],[\"Newcastle\",34],[\"Brighton\",51]];const table=teams.map(([t,id],i)=>({rank:i+1,team:t,logo:T(id),played:8,won:6-Math.min(i,5),drawn:1+i%3,lost:Math.max(0,i-1),gd:12-i*3,points:(6-Math.min(i,5))*3+1+i%3,form:[\"WWDWW\",\"WDWLW\",\"DWWLW\",\"LWDWD\",\"WLDLW\",\"DLWLD\",\"LDLWL\",\"LLDLL\"][i]}));if(query.action===\"record\"){const recent=[[\"Arsenal\",\"Brighton\",\"Arsenal to win\",1.72,false,\"2-0\",true,\"premier-league\"],[\"Napoli\",\"Torino\",\"Napoli to win\",1.95,true,\"1-1\",false,\"serie-a\"],[\"Dortmund\",\"Mainz\",\"Dortmund to win\",1.85,true,\"3-1\",true,\"bundesliga\"],[\"Atletico Madrid\",\"Getafe\",\"Draw\",3.6,true,\"0-0\",true,\"la-liga\"],[\"PSG\",\"Nice\",\"PSG to win\",1.5,false,\"2-1\",true,\"ligue-1\"],[\"Everton\",\"Fulham\",\"Fulham to win\",3.1,true,\"1-0\",false,\"premier-league\"]].map(([h,a,pick,price,value,score,won,lg],i)=>({id:\"r\"+i,league:String(lg),kickoff:at(-24*(i+1)),home:String(h),away:String(a),pick:String(pick),price:Number(price),value:Boolean(value),score:String(score),won:Boolean(won),profit:won?Math.round((Number(price)-1)*100)/100:-1}));const g=(name,picks,wins,profit)=>({name,picks,wins,hitRate:wins/picks,staked:picks,profit,roi:profit/picks});const brain={byMarket:[g(\"Match result\",18,9,1.2),g(\"Double chance\",11,8,.9),g(\"Goals\",9,5,1.6),g(\"Both teams to score\",6,3,.4),g(\"Anytime goalscorer\",4,2,.5)],byLeague:[g(\"premier-league\",12,7,1.9),g(\"la-liga\",9,5,.6),g(\"serie-a\",8,4,.3),g(\"bundesliga\",7,4,1.1),g(\"ligue-1\",6,3,-.4),g(\"champions-league\",6,4,1.1)],byConfidence:[g(\"High (70+)\",12,9,2.8),g(\"Medium (45–69)\",24,13,1.7),g(\"Low (under 45)\",12,5,.1)],calibration:[{from:.25,to:.35,picks:6,predicted:.31,actual:.33},{from:.35,to:.45,picks:9,predicted:.41,actual:.44},{from:.45,to:.55,picks:13,predicted:.5,actual:.46},{from:.55,to:.65,picks:11,predicted:.6,actual:.64},{from:.65,to:.75,picks:6,predicted:.69,actual:.67},{from:.75,to:1,picks:3,predicted:.79,actual:1}],brier:.226,avgProb:.52,settings:{marketWeight:.5,rho:-.12,minEdge:.03,minProb:.25,minPrice:1.3,maxPrice:6}};return{updated:new Date().toISOString(),brain,record:{all:{picks:48,wins:27,hitRate:.5625,staked:48,profit:4.6,roi:.096},value:{picks:21,wins:9,hitRate:.4286,staked:21,profit:3.9,roi:.186},pending:9,recent}};}return{updated:new Date().toISOString(),matches,table:query.action===\"table\"?table:undefined};}// ---------- shared UI pieces (the hero, the board and the match sheet) ----------\nconst NUMS={fontVariantNumeric:\"tabular-nums\"};/** Small quiet label above a value. */export const LABEL={fontFamily:SANS,fontSize:13,fontWeight:500,color:\"#86868B\",letterSpacing:\"-0.005em\"};/** Last five results: a letter in a tinted square, so it reads without colour too. */export function FormDots({form,size=16}){if(!form)return null;const tone=r=>r===\"W\"?[\"rgba(52,213,138,.16)\",\"#34D58A\"]:r===\"L\"?[\"rgba(255,92,92,.14)\",\"#FF7A7A\"]:[\"rgba(255,255,255,.08)\",\"#B4B4BA\"];return /*#__PURE__*/_jsx(\"span\",{\"aria-label\":`Last five: ${form.slice(-5).split(\"\").map(r=>r===\"W\"?\"won\":r===\"L\"?\"lost\":\"drew\").join(\", \")}`,style:{display:\"inline-flex\",gap:3},children:form.slice(-5).split(\"\").map((r,i)=>{const[bg,fg]=tone(r);return /*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":\"true\",style:{width:size,height:size,borderRadius:Math.round(size*.3),background:bg,color:fg,fontFamily:SANS,fontSize:size*.6,fontWeight:600,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",lineHeight:1},children:r},i);})});}/** Confidence: a thin rounded bar with the number. */export function ConfBar({value,showNumber=true,size=1}){const v=Math.max(0,Math.min(100,value));const tier=confidenceTier(v);return /*#__PURE__*/_jsxs(\"span\",{role:\"img\",\"aria-label\":`Confidence ${v} out of 100, ${tier.toLowerCase()}`,style:{display:\"inline-flex\",alignItems:\"center\",gap:8*size},children:[/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":\"true\",style:{position:\"relative\",width:44*size,height:4,borderRadius:99,background:C.gaugeTrack,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:0,top:0,bottom:0,width:`${v}%`,borderRadius:99,background:tier===\"High\"?C.ink:tier===\"Medium\"?\"rgba(245,245,247,.7)\":\"rgba(245,245,247,.4)\"}})}),showNumber&&/*#__PURE__*/_jsx(\"span\",{style:{...NUMS,fontFamily:SANS,fontSize:14*size,fontWeight:500,color:C.body,lineHeight:1,minWidth:18*size},children:v})]});}/** The tip as a quiet pill: what we back, and the best price. Value tips say \"Value\" in words, not just colour. */export function TipTag({m,size=\"md\",full=false}){const v=m.verdict;if(!v)return /*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",height:size===\"sm\"?32:38,padding:\"0 14px\",borderRadius:999,border:`1px dashed ${C.line}`,fontFamily:SANS,fontSize:14,fontWeight:500,color:C.muted,whiteSpace:\"nowrap\"},children:\"No verdict \\xb7 low confidence\"});const value=isValue(m);const h=size===\"lg\"?48:size===\"sm\"?32:38;const fs=size===\"lg\"?17:size===\"sm\"?14:15;const label=v.short||v.pick;return /*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",height:h,minWidth:0,maxWidth:\"100%\",width:full?\"100%\":undefined,borderRadius:999,background:value?\"rgba(52,213,138,.1)\":\"rgba(255,255,255,.06)\",border:`1px solid ${value?\"rgba(52,213,138,.3)\":\"rgba(255,255,255,.1)\"}`,padding:`0 ${h*.4}px`,gap:10,boxSizing:\"border-box\"},children:[value&&/*#__PURE__*/_jsx(\"span\",{style:{flexShrink:0,fontFamily:SANS,fontSize:fs-2.5,fontWeight:600,color:C.win},children:\"Value\"}),/*#__PURE__*/_jsx(\"span\",{style:{flex:full?1:undefined,fontFamily:SANS,fontSize:fs,fontWeight:600,color:C.ink,letterSpacing:\"-0.01em\",whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",minWidth:0},children:label}),/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":\"true\",style:{flexShrink:0,width:1,height:h*.42,background:\"rgba(255,255,255,.14)\"}}),/*#__PURE__*/_jsx(\"span\",{style:{...NUMS,flexShrink:0,fontFamily:SANS,fontSize:fs,fontWeight:600,color:value?C.win:C.gold},children:odds(v.price)})]});}/** Ask the board to open a match in the match sheet (it listens for this event). */export function openMatch(id){try{if(document.querySelector(\"[data-bv-board]\"))window.dispatchEvent(new CustomEvent(\"bv-open\",{detail:id}));else window.location.href=`/?match=${encodeURIComponent(id)}`;}catch{}}/** The single most confident tip this week, as a featured card. *//**\n * Today's best tip, from games that haven't kicked off yet. Only when today has none left do we use the soonest day's\n * best, and `today` is false so the card can say \"Next tip\" instead of passing a Sunday game off as today's.\n */export function pickTipOfDay(matches){const now=Date.now();const dayOf=iso=>new Date(iso).toDateString();const up=matches.filter(x=>x.verdict&&x.status===\"NS\"&&Date.parse(x.kickoff)>now-5*6e4);const todays=up.filter(x=>dayOf(x.kickoff)===new Date(now).toDateString());const firstDay=up.length?dayOf(up.reduce((a,b)=>a.kickoff<b.kickoff?a:b).kickoff):\"\";const pool=todays.length?todays:up.filter(x=>dayOf(x.kickoff)===firstDay);return{m:pool.slice().sort((a,b)=>confidenceOf(b).value-confidenceOf(a).value)[0],today:todays.length>0};}export function TipOfDay({matches,compact,sample=false,checked}){const{m,today}=pickTipOfDay(matches);if(!m)return null;const isToday=today||sample;const k=kickoffLabel(m.kickoff);const lg=leagueBySlug(m.league);const v=m.verdict;const conf=confidenceOf(m).value;const value=isValue(m);const side=t=>/*#__PURE__*/_jsxs(\"span\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:compact?8:12,textAlign:\"center\",minWidth:0},children:[/*#__PURE__*/_jsx(Crest,{name:t.name,logo:t.logo,size:compact?40:60}),/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:DISPLAY,fontSize:compact?16:18,fontWeight:600,letterSpacing:\"-0.015em\",color:C.ink,lineHeight:1.2,maxWidth:\"100%\",overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:t.name})]});return /*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"bv-card\",onClick:()=>openMatch(m.id),\"aria-label\":`${isToday?\"Tip of the day\":\"Next tip\"}: ${m.home.name} v ${m.away.name}. ${v.pick} at ${odds(v.price)}. Open full analysis`,style:{all:\"unset\",cursor:\"pointer\",display:\"block\",width:\"100%\",boxSizing:\"border-box\",borderRadius:28,border:\"1px solid rgba(255,255,255,.1)\",background:\"linear-gradient(180deg, rgba(28,28,32,.72), rgba(14,14,16,.82))\",backdropFilter:\"saturate(160%) blur(24px)\",WebkitBackdropFilter:\"saturate(160%) blur(24px)\",boxShadow:\"0 40px 100px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.06)\",overflow:\"hidden\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{padding:compact?\"16px 16px 14px\":\"28px 30px 24px\",display:\"flex\",flexDirection:\"column\",gap:compact?14:24},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",gap:12},children:[/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:8},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:SANS,fontSize:14,fontWeight:600,color:C.gold},children:isToday?\"Tip of the day\":\"Next tip\"}),sample&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:11.5,fontWeight:600,color:C.muted,border:`1px solid ${C.line}`,borderRadius:99,padding:\"2px 8px\"},children:\"Sample\"})]}),/*#__PURE__*/_jsxs(\"span\",{style:{...NUMS,display:\"inline-flex\",alignItems:\"center\",gap:8,fontFamily:SANS,fontSize:13.5,fontWeight:500,color:C.muted,whiteSpace:\"nowrap\",minWidth:0},children:[/*#__PURE__*/_jsx(LeagueLogo,{src:lg?.logo,size:16}),/*#__PURE__*/_jsxs(\"time\",{dateTime:m.kickoff,children:[k.day,\", \",k.time]})]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gridTemplateColumns:\"minmax(0,1fr) auto minmax(0,1fr)\",alignItems:\"center\",gap:12},children:[side(m.home),/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:SANS,fontSize:14,fontWeight:500,color:C.muted},children:\"vs\"}),side(m.away)]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:compact?10:14,padding:compact?14:20,borderRadius:compact?16:20,background:\"rgba(255,255,255,.04)\",border:\"1px solid rgba(255,255,255,.06)\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"flex-end\",justifyContent:\"space-between\",gap:12},children:[/*#__PURE__*/_jsxs(\"span\",{style:{display:\"flex\",flexDirection:\"column\",gap:6,minWidth:0},children:[/*#__PURE__*/_jsxs(\"span\",{style:LABEL,children:[\"Our verdict \\xb7 \",v.market]}),/*#__PURE__*/_jsx(\"span\",{className:\"bv-disp\",style:{fontSize:compact?22:32,color:C.ink},children:v.pick})]}),/*#__PURE__*/_jsxs(\"span\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:6,flexShrink:0},children:[/*#__PURE__*/_jsx(\"span\",{style:LABEL,children:value?\"Value price\":\"Best price\"}),/*#__PURE__*/_jsx(\"span\",{className:\"bv-disp bv-num\",style:{fontSize:compact?22:32,color:value?C.win:C.gold},children:odds(v.price)})]})]}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",height:4,borderRadius:99,background:\"rgba(255,255,255,.08)\",overflow:\"hidden\"},\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:0,top:0,bottom:0,borderRadius:99,width:`${Math.round(v.prob*100)}%`,background:value?C.win:C.gold}})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",gap:10,flexWrap:\"wrap\"},children:[/*#__PURE__*/_jsxs(\"span\",{style:{fontFamily:SANS,fontSize:14,color:C.body},children:[\"Our chance \",/*#__PURE__*/_jsx(\"b\",{className:\"bv-num\",style:{color:C.ink,fontWeight:600},children:pct(v.prob)})]}),/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:8,fontFamily:SANS,fontSize:14,color:C.body},children:[confidenceTier(conf),\" confidence \",/*#__PURE__*/_jsx(ConfBar,{value:conf})]})]})]}),/*#__PURE__*/_jsxs(\"span\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",gap:10,fontFamily:SANS},children:[/*#__PURE__*/_jsxs(\"span\",{style:{fontSize:12.5,color:C.muted},children:[checked?`Price checked ${new Date(checked).toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"})} \\xb7 `:\"\",\"18+\"]}),/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:6,fontSize:15,fontWeight:500,color:C.ink},children:[\"Full analysis\",/*#__PURE__*/_jsx(\"span\",{className:\"bv-go\",\"aria-hidden\":\"true\",children:\"›\"})]})]})]})});}/** True once the element has scrolled near the viewport (used to load below-the-fold widgets late). */export function useInView(margin=\"300px\"){const ref=useRef(null);const[seen,setSeen]=useState(false);useEffect(()=>{const el=ref.current;if(!el||seen)return;if(typeof IntersectionObserver===\"undefined\")return setSeen(true);const io=new IntersectionObserver(es=>es.some(e=>e.isIntersecting)&&(setSeen(true),io.disconnect()),{rootMargin:margin});io.observe(el);return()=>io.disconnect();},[seen]);return[ref,seen];}/**\n * Draws a 1080×1350 (4:5) share image of a tip for Telegram and social posts. No results claims, always 18+.\n * Team crests are drawn as initials so the canvas never loads third-party images.\n */export async function tipCardImage(m,opts={}){const v=m.verdict;if(!v||typeof document===\"undefined\")return null;try{await document.fonts?.load?.(\"600 40px Geist\");}catch{}const W=1080,H=1350,c=document.createElement(\"canvas\");c.width=W;c.height=H;const x=c.getContext(\"2d\");if(!x)return null;const F=(w,s)=>`${w} ${s}px Geist, -apple-system, \"Helvetica Neue\", Arial, sans-serif`;const value=isValue(m);const conf=confidenceOf(m).value;const k=kickoffLabel(m.kickoff);const lg=leagueBySlug(m.league);// background\nx.fillStyle=\"#050506\";x.fillRect(0,0,W,H);const g=x.createRadialGradient(W/2,260,40,W/2,260,900);g.addColorStop(0,\"rgba(242,193,78,.16)\");g.addColorStop(1,\"rgba(5,5,6,0)\");x.fillStyle=g;x.fillRect(0,0,W,H);const rr=(px,py,w,h,r)=>{x.beginPath();x.moveTo(px+r,py);x.arcTo(px+w,py,px+w,py+h,r);x.arcTo(px+w,py+h,px,py+h,r);x.arcTo(px,py+h,px,py,r);x.arcTo(px,py,px+w,py,r);x.closePath();};// logo + wordmark\nconst lgrad=x.createLinearGradient(80,80,152,152);lgrad.addColorStop(0,\"#F7D27A\");lgrad.addColorStop(1,\"#E0A93A\");x.fillStyle=lgrad;rr(80,80,72,72,18);x.fill();x.strokeStyle=\"#050506\";x.lineWidth=8;x.lineCap=\"round\";x.lineJoin=\"round\";x.beginPath();x.moveTo(100,102);x.lineTo(116,132);x.lineTo(132,102);x.stroke();x.fillStyle=\"#F5F5F7\";x.font=F(600,40);x.textBaseline=\"middle\";x.fillText(\"Bookie Verdict\",172,117);x.textAlign=\"right\";x.fillStyle=\"#F2C14E\";x.font=F(600,30);x.fillText(opts.sample?\"Our verdict \\xb7 Sample\":\"Our verdict\",W-80,117);x.textAlign=\"left\";// card\nx.fillStyle=\"rgba(255,255,255,.05)\";rr(80,220,W-160,1010,48);x.fill();x.strokeStyle=\"rgba(255,255,255,.1)\";x.lineWidth=2;x.stroke();x.textAlign=\"center\";x.fillStyle=\"#86868B\";x.font=F(500,30);x.fillText(`${lg?lg.name+\" \\xb7 \":\"\"}${k.day}, ${k.time}`,W/2,300);const crest=(cx,name)=>{let h=0;for(const ch of name)h=(h*31+ch.charCodeAt(0))%360;x.fillStyle=`hsl(${h} 58% 34%)`;x.beginPath();x.arc(cx,440,70,0,Math.PI*2);x.fill();const ini=name.replace(/^(FC|AC|AS|SS|SC|RC|CF|1\\.)\\s+/i,\"\").split(/\\s+/).map(w=>w[0]).join(\"\").slice(0,2).toUpperCase();x.fillStyle=\"#FFFFFF\";x.font=F(600,48);x.fillText(ini,cx,442);x.fillStyle=\"#F5F5F7\";x.font=F(600,38);const n=name.length>18?name.slice(0,17)+\"…\":name;x.fillText(n,cx,570);};crest(310,m.home.name);crest(W-310,m.away.name);x.fillStyle=\"#86868B\";x.font=F(500,32);x.fillText(\"vs\",W/2,442);// verdict\nx.fillStyle=value?\"rgba(52,213,138,.09)\":\"rgba(255,255,255,.05)\";rr(130,660,W-260,380,36);x.fill();x.strokeStyle=value?\"rgba(52,213,138,.3)\":\"rgba(255,255,255,.08)\";x.stroke();x.fillStyle=\"#86868B\";x.font=F(500,30);x.fillText(`Our verdict \\xb7 ${v.market}`,W/2,730);x.fillStyle=\"#F5F5F7\";let fs=76;x.font=F(600,fs);while(x.measureText(v.pick).width>W-340&&fs>44)x.font=F(600,fs-=4);x.fillText(v.pick,W/2,822);x.font=F(600,64);x.fillStyle=value?\"#34D58A\":\"#F2C14E\";x.fillText(`${value?\"Value \":\"\"}${odds(v.price)}`,W/2,925);x.fillStyle=\"#B4B4BA\";x.font=F(500,30);x.fillText(`Our chance ${pct(v.prob)} \\xb7 ${confidenceTier(conf)} confidence`,W/2,995);// footer\nx.fillStyle=\"#86868B\";x.font=F(500,28);const t=opts.checked?new Date(opts.checked).toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"}):\"\";x.fillText(`${t?`Price checked ${t}. `:\"\"}Prices change. Not a guarantee.`,W/2,1120);x.fillStyle=\"#F5F5F7\";x.font=F(600,32);x.fillText(\"18+ \\xb7 bookieverdict.com\",W/2,1172);x.fillStyle=\"#86868B\";x.font=F(500,24);x.fillText(\"Bet responsibly \\xb7 BeGambleAware.org\",W/2,1290);return await new Promise(res=>c.toBlob(b=>res(b),\"image/png\"));}/** Share the tip image (phone share sheet), or download it on desktop. */export async function shareTipImage(m,opts={}){const blob=await tipCardImage(m,opts);if(!blob)return false;const name=`bookie-verdict-${m.home.name}-${m.away.name}.png`.toLowerCase().replace(/[^a-z0-9.-]+/g,\"-\");const file=typeof File!==\"undefined\"?new File([blob],name,{type:\"image/png\"}):null;const nav=navigator;try{if(file&&nav.canShare&&nav.canShare({files:[file]})){await nav.share({files:[file],title:`${m.home.name} v ${m.away.name}: our verdict`});return true;}}catch(e){// The visitor closed the share sheet: nothing to do. Any other refusal (e.g. the phone says the tap was too\n// long ago because the picture took a moment to draw): fall back to saving the picture instead.\nif(e&&e.name===\"AbortError\")return false;}const a=document.createElement(\"a\");a.href=URL.createObjectURL(blob);a.download=name;document.body.appendChild(a);a.click();a.remove();setTimeout(()=>URL.revokeObjectURL(a.href),2e3);return true;}\nexport const __FramerMetadata__ = {\"exports\":{\"LeagueLogo\":{\"type\":\"reactComponent\",\"name\":\"LeagueLogo\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"FEED_SLOW_MS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"kickoffLabel\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"C\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useWidth\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"wrap\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"tipCardImage\":{\"type\":\"function\",\"isAsync\":true,\"annotations\":{\"framerContractVersion\":\"1\"}},\"trustedEdge\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"confidenceTier\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"AIPreview\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"dataUrl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BRAND\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"modelDisagrees\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isEditor\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LEAGUE_MIN_SETTLED\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DISPLAY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PitchBar\":{\"type\":\"reactComponent\",\"name\":\"PitchBar\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"card\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LEAGUES\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Gauge\":{\"type\":\"reactComponent\",\"name\":\"Gauge\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"RecordStat\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FEED_TIMEOUT_MS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"feedBusyUntil\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Verdict\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"leagueBySlug\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"leaguePaused\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"AIMark\":{\"type\":\"reactComponent\",\"name\":\"AIMark\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"SPACE\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Crest\":{\"type\":\"reactComponent\",\"name\":\"Crest\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"ENGINE_URL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"COND\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RecordItem\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"shareTipImage\":{\"type\":\"function\",\"isAsync\":true,\"annotations\":{\"framerContractVersion\":\"1\"}},\"SERIF\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Payload\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Result\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LABEL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Logo\":{\"type\":\"reactComponent\",\"name\":\"Logo\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"DATA_URL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useBV\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"setTheme\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TipOfDay\":{\"type\":\"reactComponent\",\"name\":\"TipOfDay\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"TipTag\":{\"type\":\"reactComponent\",\"name\":\"TipTag\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"Brain\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FormDots\":{\"type\":\"reactComponent\",\"name\":\"FormDots\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"Wordmark\":{\"type\":\"reactComponent\",\"name\":\"Wordmark\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"H2\":{\"type\":\"reactComponent\",\"name\":\"H2\",\"slots\":[\"children\"],\"annotations\":{\"framerContractVersion\":\"1\"}},\"guardPayload\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useTheme\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Theme\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"openMatch\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"pickTipOfDay\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useBVGlobals\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"odds\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"GroupStat\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SetPiece\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ENGINE_TIMEOUT_MS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TableRow\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Team\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MAX_EDGE\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"pct\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useInView\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TrackRecord\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"callLabel\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"leagueSettled\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ConfBar\":{\"type\":\"reactComponent\",\"name\":\"ConfBar\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"Absence\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TYPE\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LEAGUE_PAUSE_UNKNOWN\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Match\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fetchOnce\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"confidenceOf\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SANS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Scorer\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BVSite.map","// Cookie consent banner: Accept all / Reject non-essential / Settings. Choice is stored in localStorage (\"bv-consent\").\n// Rendered once per page by BVFooter. Reopen from anywhere with openCookieSettings().\n// Google Analytics (GA4) loads only after the visitor allows analytics, and switches off again if they withdraw it.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useState}from\"react\";import{C,SANS,isEditor}from\"https://framerusercontent.com/modules/EZptLJalFDyuo9exD2bV/tg6ErKDjRUMOc2CcQf7l/BVSite.js\";export const CONSENT_KEY=\"bv-consent\";/** Bookie Verdict's GA4 web stream (bookieverdict.com). */const GA_ID=\"G-ZDMSHQKG0S\";export function readConsent(){try{const raw=localStorage.getItem(CONSENT_KEY);return raw?JSON.parse(raw):null;}catch{return null;}}function saveConsent(analytics,marketing){const c={necessary:true,analytics,marketing,ts:new Date().toISOString(),v:1};try{localStorage.setItem(CONSENT_KEY,JSON.stringify(c));}catch{}window.dispatchEvent(new CustomEvent(\"bv-consent\",{detail:c}));}export function openCookieSettings(){if(typeof window!==\"undefined\")window.dispatchEvent(new CustomEvent(\"bv-cookie-settings\"));}/**\n * Applies the visitor's choice to Google Analytics. Nothing from Google loads until analytics is allowed (basic\n * consent mode). Once loaded, a later \"no\" sets consent to denied and turns GA off for the rest of the visit.\n */function applyConsent(c){if(typeof window===\"undefined\"||isEditor())return;const w=window;const allowed=!!c?.analytics;if(!allowed&&!w.__bvGA)return;w.dataLayer=w.dataLayer||[];if(!w.gtag)w.gtag=function(){w.dataLayer.push(arguments);};if(!w.__bvGA){w.__bvGA=true;w.gtag(\"consent\",\"default\",{analytics_storage:\"denied\",ad_storage:\"denied\",ad_user_data:\"denied\",ad_personalization:\"denied\"});const s=document.createElement(\"script\");s.async=true;s.src=`https://www.googletagmanager.com/gtag/js?id=${GA_ID}`;document.head.appendChild(s);w.gtag(\"js\",new Date);w.gtag(\"config\",GA_ID,{anonymize_ip:true});}w[`ga-disable-${GA_ID}`]=!allowed;w.gtag(\"consent\",\"update\",{analytics_storage:allowed?\"granted\":\"denied\",ad_storage:\"denied\",ad_user_data:c?.marketing?\"granted\":\"denied\",ad_personalization:\"denied\"});}const btn=primary=>({height:40,padding:\"0 16px\",borderRadius:99,border:primary?\"none\":`1px solid ${C.line}`,cursor:\"pointer\",background:primary?\"linear-gradient(180deg,#F7D27A,#E0A93A)\":\"#1A1A1D\",color:primary?\"#050506\":C.ink,fontFamily:SANS,fontSize:14,fontWeight:600,whiteSpace:\"nowrap\"});function Toggle(p){return /*#__PURE__*/_jsxs(\"label\",{style:{display:\"flex\",alignItems:\"flex-start\",justifyContent:\"space-between\",gap:16,padding:\"12px 0\",borderTop:`1px solid ${C.line}`,cursor:p.locked?\"default\":\"pointer\"},children:[/*#__PURE__*/_jsxs(\"span\",{style:{display:\"flex\",flexDirection:\"column\",gap:2},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:14,fontWeight:600,color:C.ink},children:p.label}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:13,color:C.muted},children:p.note})]}),/*#__PURE__*/_jsx(\"input\",{type:\"checkbox\",checked:p.on,disabled:p.locked,onChange:e=>p.set&&p.set(e.target.checked),style:{width:20,height:20,accentColor:\"#E0A93A\",marginTop:2}})]});}export default function BVCookies(){const[open,setOpen]=useState(false);const[settings,setSettings]=useState(false);const[analytics,setAnalytics]=useState(false);const[marketing,setMarketing]=useState(false);useEffect(()=>{const c=readConsent();if(!c)setOpen(true);else{setAnalytics(c.analytics);setMarketing(c.marketing);}applyConsent(c);const on=()=>{const c2=readConsent();if(c2){setAnalytics(c2.analytics);setMarketing(c2.marketing);}setSettings(true);setOpen(true);};const changed=e=>applyConsent(e.detail);window.addEventListener(\"bv-cookie-settings\",on);window.addEventListener(\"bv-consent\",changed);return()=>{window.removeEventListener(\"bv-cookie-settings\",on);window.removeEventListener(\"bv-consent\",changed);};},[]);if(!open)return null;const done=(a,m)=>{saveConsent(a,m);setOpen(false);setSettings(false);};return /*#__PURE__*/_jsxs(\"div\",{role:\"dialog\",\"aria-modal\":\"false\",\"aria-labelledby\":\"bv-ck-t\",className:\"bv-cookies\",style:{position:\"fixed\",left:12,right:12,bottom:\"calc(var(--bv-ck-bottom, 16px) + env(safe-area-inset-bottom))\",zIndex:90,display:\"flex\",justifyContent:\"center\",pointerEvents:\"none\",fontFamily:SANS},children:[/*#__PURE__*/_jsx(\"style\",{children:`@media (max-width: 759px){.bv-cookies{--bv-ck-bottom:150px}}`}),/*#__PURE__*/_jsxs(\"div\",{style:{pointerEvents:\"auto\",width:\"100%\",maxWidth:720,boxSizing:\"border-box\",padding:20,borderRadius:24,background:\"rgba(17,17,19,.96)\",backdropFilter:\"saturate(180%) blur(24px)\",WebkitBackdropFilter:\"saturate(180%) blur(24px)\",border:\"1px solid #1A1A1D\",boxShadow:\"0 18px 50px rgba(0,0,0,.5)\",color:C.body},children:[/*#__PURE__*/_jsx(\"div\",{id:\"bv-ck-t\",style:{fontSize:16,fontWeight:600,color:C.ink,marginBottom:6},children:\"Cookies\"}),/*#__PURE__*/_jsxs(\"p\",{style:{margin:0,fontSize:14,lineHeight:1.5},children:[\"We use necessary cookies to run the site. With your OK we'd also use analytics cookies to see which pages and features people use, and marketing cookies so partner bookmakers know you came from us.\",\" \",/*#__PURE__*/_jsx(\"a\",{href:\"/cookies\",className:\"bv-u\",style:{color:C.ink},children:\"Cookie policy\"})]}),settings&&/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:12},children:[/*#__PURE__*/_jsx(Toggle,{label:\"Strictly necessary\",note:\"Keep the site working and remember your choices. Always on.\",on:true,locked:true}),/*#__PURE__*/_jsx(Toggle,{label:\"Analytics\",note:\"Google Analytics, to count visits and see which features get used. No ads.\",on:analytics,set:setAnalytics}),/*#__PURE__*/_jsx(Toggle,{label:\"Marketing / affiliate\",note:\"Lets partner bookmakers know a visit came from us, so we can be paid for referrals.\",on:marketing,set:setMarketing})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",gap:8,marginTop:14,justifyContent:\"flex-end\"},children:[settings?/*#__PURE__*/_jsx(\"button\",{type:\"button\",style:btn(false),onClick:()=>done(analytics,marketing),children:\"Save choices\"}):/*#__PURE__*/_jsx(\"button\",{type:\"button\",style:btn(false),onClick:()=>setSettings(true),children:\"Settings\"}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",style:btn(false),onClick:()=>done(false,false),children:\"Reject non-essential\"}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",style:btn(true),onClick:()=>done(true,true),children:\"Accept all\"})]})]})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"Consent\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"readConsent\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CONSENT_KEY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"openCookieSettings\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"BVCookies\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Site footer: league links, one responsible-gambling bar and the disclaimer.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{BRAND,C,SANS,LEAGUES,Wordmark,useBVGlobals,wrap}from\"https://framerusercontent.com/modules/EZptLJalFDyuo9exD2bV/tg6ErKDjRUMOc2CcQf7l/BVSite.js\";import BVCookies,{openCookieSettings}from\"https://framerusercontent.com/modules/42Blp9K1EBSSlbun0eRu/ll4CNrlY8L8BBAfDIBTn/BVCookies.js\";/** Our Telegram channel: daily tips and results. */const TELEGRAM=\"https://t.me/bookieverdict\";const RG=[[\"BeGambleAware\",\"https://www.begambleaware.org/\"],[\"GamCare\",\"https://www.gamcare.org.uk/\"],[\"GAMSTOP\",\"https://www.gamstop.co.uk/\"]];/**\n * BV Footer\n *\n * @framerIntrinsicWidth 1200\n * @framerIntrinsicHeight 360\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n */export default function BVFooter(props){useBVGlobals();const col=(title,links)=>/*#__PURE__*/_jsxs(\"nav\",{\"aria-label\":title,style:{display:\"flex\",flexDirection:\"column\",gap:9,minWidth:170},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:13,fontWeight:600,color:C.ink,paddingBottom:4},children:title}),links.map(([l,h])=>/*#__PURE__*/_jsx(\"a\",{href:h,className:\"bv-link\",style:{fontSize:13.5,color:\"#86868B\",textDecoration:\"none\"},children:l},h))]});return /*#__PURE__*/_jsxs(\"footer\",{className:\"bv\",style:{...props.style,width:\"100%\",background:C.navy,borderTop:`1px solid ${C.line}`,color:\"#FFFFFF\",fontFamily:SANS},children:[/*#__PURE__*/_jsxs(\"div\",{style:wrap({maxWidth:1320,paddingTop:56,paddingBottom:40,display:\"flex\",flexDirection:\"column\",gap:28}),children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",justifyContent:\"space-between\",gap:32},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12,maxWidth:340},children:[/*#__PURE__*/_jsx(\"a\",{href:\"/\",\"aria-label\":`${BRAND.name} home`,style:{textDecoration:\"none\",display:\"inline-flex\"},children:/*#__PURE__*/_jsx(Wordmark,{invert:true})}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:14,lineHeight:1.6,color:\"rgba(255,255,255,.7)\"},children:BRAND.tagline}),/*#__PURE__*/_jsxs(\"a\",{href:TELEGRAM,target:\"_blank\",rel:\"noopener\",style:{alignSelf:\"flex-start\",display:\"inline-flex\",alignItems:\"center\",gap:8,height:38,padding:\"0 16px\",borderRadius:99,background:\"#2AABEE\",color:\"#FFFFFF\",textDecoration:\"none\",fontSize:14,fontWeight:600},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",style:{display:\"block\",flexShrink:0},children:/*#__PURE__*/_jsx(\"path\",{fill:\"currentColor\",d:\"M21.9 4.3 18.8 19c-.2 1-.8 1.3-1.7.8l-4.6-3.4-2.2 2.1c-.3.3-.5.5-1 .5l.3-4.7 8.6-7.8c.4-.3-.1-.5-.6-.2L6.9 13 2.3 11.6c-1-.3-1-1 .2-1.5L20.5 3.2c.8-.3 1.6.2 1.4 1.1z\"})}),\"Free daily tips on Telegram\"]})]}),col(\"Predictions\",LEAGUES.filter(l=>l.top).map(l=>[`${l.name} predictions`,l.path]).concat([[\"All competitions\",\"/\"]])),col(\"Bookie Verdict\",[[\"How it works\",\"/how-it-works\"],[\"About us\",\"/about\"],[\"Blog\",\"/blog\"],[\"Responsible gambling\",\"/responsible-gambling\"],[\"Privacy policy\",\"/privacy\"],[\"Terms of use\",\"/terms\"],[\"Cookie policy\",\"/cookies\"]])]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",flexWrap:\"wrap\",gap:\"8px 18px\",padding:\"14px 18px\",borderRadius:18,background:\"rgba(255,255,255,.04)\",border:`1px solid ${C.line}`,fontSize:13.5,color:\"#B4B4BA\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{flexShrink:0,height:26,padding:\"0 10px\",borderRadius:99,border:\"1px solid rgba(255,255,255,.3)\",color:C.ink,fontWeight:600,fontSize:12,display:\"inline-flex\",alignItems:\"center\"},children:\"18+\"}),/*#__PURE__*/_jsx(\"span\",{children:\"Bet responsibly. Free, confidential help:\"}),RG.map(([l,h])=>/*#__PURE__*/_jsx(\"a\",{href:h,target:\"_blank\",rel:\"noopener\",className:\"bv-u\",style:{color:\"#FFFFFF\"},children:l},h)),/*#__PURE__*/_jsx(\"a\",{href:\"/responsible-gambling\",className:\"bv-u\",style:{color:\"#FFFFFF\",marginLeft:\"auto\"},children:\"More support\"})]}),/*#__PURE__*/_jsxs(\"p\",{style:{margin:0,fontSize:12,lineHeight:1.7,color:\"rgba(255,255,255,.55)\"},children:[BRAND.name,\" is an independent prediction site, not a bookmaker: we don't take bets or hold funds. Some bookmaker links may be affiliate links. Online betting is illegal or restricted in some countries; check the law where you live. Odds were correct when fetched and can change at any time. \\xa9 \",new Date().getFullYear(),\" \",BRAND.name,\".\",\" \",/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:openCookieSettings,className:\"bv-u\",style:{background:\"none\",border:\"none\",padding:0,font:\"inherit\",color:\"rgba(255,255,255,.75)\",cursor:\"pointer\"},children:\"Cookie settings\"})]})]}),/*#__PURE__*/_jsx(BVCookies,{})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BVFooter\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"360\",\"framerIntrinsicWidth\":\"1200\",\"framerSupportedLayoutHeight\":\"auto\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BVFooter.map","// Header: a translucent bar that stays put, an optional quiet ticker, and a floating tab bar on phones.\n// Also sets the page title/description on the live site, and makes phones render the real mobile layout.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{BRAND,C,SANS,Wordmark,useBV,useBVGlobals,useWidth,odds,isValue,kickoffLabel}from\"https://framerusercontent.com/modules/EZptLJalFDyuo9exD2bV/tg6ErKDjRUMOc2CcQf7l/BVSite.js\";/**\n * Mobile fix. Our Framer pages only have a Desktop breakpoint, so Framer publishes <meta viewport width=1200> and phones\n * show a shrunk desktop page. Every component here is responsive by itself, so we switch the viewport to the device\n * width as early as possible (when this script loads) and again on mount. Not applied inside the Framer editor.\n */function fixViewport(){if(typeof document===\"undefined\")return;try{if(/framer\\.com$|framercanvas/.test(location.hostname))return;let m=document.querySelector('meta[name=\"viewport\"]');if(!m){m=document.createElement(\"meta\");m.name=\"viewport\";document.head.appendChild(m);}const want=\"width=device-width, initial-scale=1, viewport-fit=cover\";if(m.content!==want)m.content=want;}catch{}}fixViewport();/** Our Telegram channel: daily tips and results. */const TELEGRAM=\"https://t.me/bookieverdict\";const LINKS=[[\"Predictions\",\"/\"],[\"Ask AI\",\"/#ask\"],[\"Track record\",\"/track-record\"],[\"Blog\",\"/blog\"],[\"How it works\",\"/how-it-works\"]];const ICONS={\"/\":/*#__PURE__*/_jsx(\"path\",{d:\"M4 6h16M4 12h16M4 18h10\"}),\"/#ask\":/*#__PURE__*/_jsx(\"path\",{d:\"M12 3l2 5.5L19.5 10 14 12l-2 5.5L10 12 4.5 10 10 8.5z\"}),\"/track-record\":/*#__PURE__*/_jsx(\"path\",{d:\"M4 19V9M10 19V5M16 19v-7M22 19H2\"}),\"/blog\":/*#__PURE__*/_jsx(\"path\",{d:\"M2 5.5c3-1.2 6.5-1 10 1 3.5-2 7-2.2 10-1V19c-3-1.2-6.5-1-10 1-3.5-2-7-2.2-10-1zM12 6.5V20\"})};/** A quiet list of this week's tips. Off by default; loads after the page (never part of the first paint). */function Ticker(){const[ready,setReady]=useState(false);useEffect(()=>{const t=setTimeout(()=>setReady(true),1200);return()=>clearTimeout(t);},[]);const{data}=useBV(\"\",{action:\"matches\",league:\"all\",days:7});const items=(data?.matches||[]).filter(m=>m.verdict&&m.status===\"NS\").sort((a,b)=>a.kickoff.localeCompare(b.kickoff)).slice(0,12);if(!ready||!items.length)return null;const row=dup=>items.map(m=>{const k=kickoffLabel(m.kickoff);return /*#__PURE__*/_jsxs(\"span\",{\"aria-hidden\":dup||undefined,style:{display:\"inline-flex\",alignItems:\"center\",gap:8,padding:\"0 20px\",whiteSpace:\"nowrap\",fontSize:13,color:C.muted},children:[/*#__PURE__*/_jsx(\"span\",{className:\"bv-num\",children:k.time}),/*#__PURE__*/_jsxs(\"span\",{style:{color:C.body},children:[m.home.name,\" v \",m.away.name]}),/*#__PURE__*/_jsx(\"span\",{style:{color:C.ink,fontWeight:500},children:m.verdict.short||m.verdict.pick}),/*#__PURE__*/_jsxs(\"span\",{className:\"bv-num\",style:{color:isValue(m)?C.win:C.gold,fontWeight:500},children:[odds(m.verdict.price),isValue(m)?\" value\":\"\"]})]},(dup?\"d\":\"\")+m.id);});return /*#__PURE__*/_jsx(\"div\",{className:\"bv-tickwrap\",tabIndex:0,\"aria-label\":\"This week's tips\",style:{height:34,display:\"flex\",alignItems:\"center\",overflow:\"hidden\",borderBottom:`1px solid ${C.line}`,maskImage:\"linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent)\",WebkitMaskImage:\"linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent)\"},children:/*#__PURE__*/_jsxs(\"div\",{className:\"bv-tick\",children:[row(false),row(true)]})});}/** Fallback title and description per page, used only while Framer's own page SEO is still the default. */const PAGE_META={\"/\":[\"Football predictions today: AI tips, odds and value bets\",\"Free football predictions for every Premier League, La Liga, Serie A, Bundesliga, Ligue 1 and Champions League match: ranked AI picks, our chance of every result and the best odds.\"],\"/premier-league-predictions\":[\"Premier League predictions this week\",\"Premier League predictions for every match this week: our chances, ranked picks for result, goals, cards and corners, the best price and the live table.\"],\"/la-liga-predictions\":[\"La Liga predictions this week\",\"La Liga predictions for every match this week: our chances, ranked picks for result, goals, cards and corners, the best price and the live table.\"],\"/serie-a-predictions\":[\"Serie A predictions this week\",\"Serie A predictions for every match this week: our chances, ranked picks for result, goals, cards and corners, the best price and the live table.\"],\"/bundesliga-predictions\":[\"Bundesliga predictions this week\",\"Bundesliga predictions for every match this week: our chances, ranked picks for result, goals, cards and corners, the best price and the live table.\"],\"/ligue-1-predictions\":[\"Ligue 1 predictions this week\",\"Ligue 1 predictions for every match this week: our chances, ranked picks for result, goals, cards and corners, the best price and the live table.\"],\"/champions-league-predictions\":[\"Champions League predictions\",\"Champions League predictions for every match: our chances, ranked picks, the best price and the league-phase table.\"],\"/track-record\":[\"Track record: every tip we've settled\",\"Every Bookie Verdict tip, settled and public: hit rate, profit at 1 unit per tip and ROI, with no tip deleted.\"],\"/how-it-works\":[\"How our football predictions work\",\"How we turn data into a chance for every result, what value means and how to read a Bookie Verdict tip.\"],\"/about\":[\"About Bookie Verdict\",\"Bookie Verdict is an independent football prediction site that shows its working.\"],\"/responsible-gambling\":[\"Responsible gambling\",\"Bet only what you can afford to lose. Tools, limits and free confidential help. 18+.\"],\"/privacy\":[\"Privacy policy\",\"How Bookie Verdict handles your data.\"],\"/terms\":[\"Terms of use\",\"The terms for using Bookie Verdict.\"],\"/cookies\":[\"Cookie policy\",\"The cookies Bookie Verdict uses and how to control them.\"]};/**\n * BV Nav\n *\n * @framerIntrinsicWidth 1200\n * @framerIntrinsicHeight 64\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n */export default function BVNav(props){useBVGlobals(props.pageTitle,props.pageDescription);const[ref,width]=useWidth();const compact=width<760;const[path,setPath]=useState(\"\");const[hash,setHash]=useState(\"\");useEffect(()=>{fixViewport();setPath(window.location.pathname.replace(/\\/$/,\"\")||\"/\");setHash(window.location.hash);const on=()=>setHash(window.location.hash);window.addEventListener(\"hashchange\",on);return()=>window.removeEventListener(\"hashchange\",on);},[]);// SEO fallback: fill in the title and description when the page still has Framer's defaults.\nuseEffect(()=>{if(typeof document===\"undefined\"||props.pageTitle)return;const meta=PAGE_META[window.location.pathname.replace(/\\/$/,\"\")||\"/\"];if(!meta)return;if(!document.title||/my framer site/i.test(document.title))document.title=`${meta[0]} | ${BRAND.name}`;let d=document.querySelector('meta[name=\"description\"]');if(!d){d=document.createElement(\"meta\");d.name=\"description\";document.head.appendChild(d);}if(!d.content||/made with framer/i.test(d.content))d.content=meta[1];},[]);// Room for the floating tab bar at the bottom of every page on phones.\nuseEffect(()=>{if(typeof document===\"undefined\")return;document.body.style.paddingBottom=compact?\"calc(88px + env(safe-area-inset-bottom))\":\"\";},[compact]);const isOn=h=>h===\"/#ask\"?path===\"/\"&&hash===\"#ask\":h===\"/\"?path===\"/\"&&hash!==\"#ask\":path===h||h!==\"/\"&&path.startsWith(h+\"/\");return /*#__PURE__*/_jsxs(\"header\",{ref:ref,className:\"bv\",style:{...props.style,width:\"100%\",position:\"relative\",zIndex:50,color:C.ink,fontFamily:SANS},children:[/*#__PURE__*/_jsxs(\"div\",{style:{background:\"rgba(5,5,6,.72)\",backdropFilter:\"saturate(180%) blur(20px)\",WebkitBackdropFilter:\"saturate(180%) blur(20px)\",borderBottom:`1px solid ${C.line}`},children:[/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",maxWidth:1320,margin:\"0 auto\",padding:compact?\"0 16px\":\"0 24px\",boxSizing:\"border-box\",display:\"grid\",gridTemplateColumns:compact?\"1fr auto\":\"1fr auto 1fr\",alignItems:\"center\",gap:16,height:compact?56:64},children:[/*#__PURE__*/_jsx(\"a\",{href:\"/\",\"aria-label\":`${BRAND.name} home`,style:{textDecoration:\"none\",display:\"inline-flex\",justifySelf:\"start\"},children:/*#__PURE__*/_jsx(Wordmark,{size:compact?.9:1})}),!compact&&/*#__PURE__*/_jsx(\"nav\",{\"aria-label\":\"Main\",style:{display:\"flex\",alignItems:\"center\",gap:2},children:LINKS.map(([l,h])=>{const on=isOn(h);return /*#__PURE__*/_jsx(\"a\",{href:h,\"aria-current\":on?\"page\":undefined,className:\"bv-link\",style:{display:\"inline-flex\",alignItems:\"center\",height:34,padding:\"0 14px\",borderRadius:99,background:on?\"rgba(255,255,255,.08)\":\"transparent\",fontSize:14,fontWeight:500,letterSpacing:\"-0.01em\",color:on?C.ink:C.body,textDecoration:\"none\",whiteSpace:\"nowrap\"},children:l},h);})}),/*#__PURE__*/_jsxs(\"span\",{style:{justifySelf:\"end\",display:\"inline-flex\",alignItems:\"center\",gap:8},children:[/*#__PURE__*/_jsxs(\"a\",{href:TELEGRAM,target:\"_blank\",rel:\"noopener\",\"aria-label\":\"Free daily tips on Telegram\",title:\"Free daily tips on Telegram\",style:{height:30,padding:compact?\"0 9px\":\"0 12px\",display:\"inline-flex\",alignItems:\"center\",gap:6,borderRadius:99,background:\"rgba(42,171,238,.14)\",color:\"#5BC2F5\",fontSize:13,fontWeight:600,textDecoration:\"none\"},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",style:{display:\"block\",flexShrink:0},children:/*#__PURE__*/_jsx(\"path\",{fill:\"currentColor\",d:\"M21.9 4.3 18.8 19c-.2 1-.8 1.3-1.7.8l-4.6-3.4-2.2 2.1c-.3.3-.5.5-1 .5l.3-4.7 8.6-7.8c.4-.3-.1-.5-.6-.2L6.9 13 2.3 11.6c-1-.3-1-1 .2-1.5L20.5 3.2c.8-.3 1.6.2 1.4 1.1z\"})}),!compact&&\"Telegram\"]}),/*#__PURE__*/_jsx(\"a\",{href:\"/responsible-gambling\",\"aria-label\":\"18 plus only. Responsible gambling help\",title:\"Adults only. Bet responsibly.\",style:{height:26,padding:\"0 10px\",display:\"inline-flex\",alignItems:\"center\",borderRadius:99,border:`1px solid rgba(255,255,255,.18)`,fontSize:12,fontWeight:600,color:C.body,textDecoration:\"none\"},children:\"18+\"})]})]}),props.showTicker===true&&/*#__PURE__*/_jsx(Ticker,{})]}),compact&&/*#__PURE__*/_jsx(\"nav\",{\"aria-label\":\"Main\",className:\"bv\",style:{position:\"fixed\",left:12,right:12,bottom:\"calc(12px + env(safe-area-inset-bottom))\",zIndex:80,display:\"grid\",gridTemplateColumns:\"repeat(4, 1fr)\",padding:6,borderRadius:26,background:\"rgba(28,28,32,.78)\",backdropFilter:\"saturate(180%) blur(24px)\",WebkitBackdropFilter:\"saturate(180%) blur(24px)\",border:\"1px solid rgba(255,255,255,.1)\",boxShadow:\"0 18px 50px rgba(0,0,0,.5)\"},children:LINKS.filter(([,h])=>ICONS[h]).map(([l,h])=>{const on=isOn(h);return /*#__PURE__*/_jsxs(\"a\",{href:h,\"aria-current\":on?\"page\":undefined,style:{height:54,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",gap:3,borderRadius:20,background:on?\"rgba(255,255,255,.1)\":\"transparent\",textDecoration:\"none\",color:on?C.ink:C.muted,fontSize:11,fontWeight:500},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"22\",height:\"22\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.8\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":\"true\",children:ICONS[h]}),l===\"Predictions\"?\"Tips\":l===\"Track record\"?\"Record\":l]},h);})})]});}addPropertyControls(BVNav,{pageTitle:{type:ControlType.String,title:\"Page title\",defaultValue:\"\"},pageDescription:{type:ControlType.String,title:\"Description\",defaultValue:\"\",displayTextArea:true},showTicker:{type:ControlType.Boolean,title:\"Ticker\",defaultValue:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BVNav\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicHeight\":\"64\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"1200\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BVNav.map","// Generated by Framer (b7e356e)\nexport default function metadata(params,activeLocale){return{description:\"Free football predictions for today’s matches: our chance of every result, fair odds and the best price, with one clear tip per game. 18+.\",favicon:\"https://framerusercontent.com/assets/ew24LmoQ4fhJdBPNEw28Kq4UXZQ.svg\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/rqIni0p8Ab7c6BGXxZJ25ZczQ.png\",title:\"Bookie Verdict\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"kOAMi4B,SAAS,EAAW,EAAE,CAAI,OAAO,SAAW,MAAmB,SAAS,gBAAgB,aAAa,gBAAgB,CAAC,EAAE,SAAS,gBAAgB,MAAM,YAAY,EAAE,CAAwqQ,SAAgB,GAAU,CAAC,GAAG,CAAC,GAAG,EAAa,QAAQ,IAAI,EAAa,QAAQ,EAAa,QAAQ,IAAI,EAAa,UAAU,MAAO,EAAK,MAAM,CAAC,CAAC,GAAU,IAAS,OAAY,MAAO,GAAK,IAAM,EAAE,EAAO,SAAS,SACr6S,OAAO,IAAI,IAAI,IAAI,KAAK,qBAAqB,KAAK,CAAC,GAAG,qBAAqB,KAAK,CAAC,CAAE,CAA4Q,SAAgB,EAAU,EAAE,CAAC,GAAG,CAAC,EAAS,GAAG,CAC5Y,IAAM,MAAc,EAAE,WAAA,uCAAmB,EAAE,MAAM,EAAW,EAAE,MAAM,EAAe,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,KAAK,CAAC,EAAE,QAAQ,OAAW,MAAM,cAAc,CAAC,EAAE,EAAS,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAU,CAAC,CAAC,CAAC,UAAU,EAAU,CAAC,CAAC,CAAC,YAAY,eAAe,OAAO,EAAS,GAAG,GAAG,CAAC,CAAE,CAAC,OAAO,EAAS,EAAG,CAQzP,SAAgB,GAAe,CAAC,IAAI,EAAE,EAAW,GAAG,CAAC,EAAE,KAAK,IAAI,EAAE,OAAO,eAAe,QAAQ,EAAQ,GAAG,CAAC,CAAC,CAAE,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,EAAE,CAAE,CAAC,SAAS,EAAY,EAAE,CAAC,IAAI,EAAG,IAAI,GAAG,CAAC,IAAM,GAAG,EAAE,QAAQ,IAAI,aAAa,GAAG,GAAA,CAAI,KAAK,EAAE,GAAG,EAAE,CAAC,IAAM,EAAK,OAAO,CAAC,EAAQ,EAAE,OAAO,SAAS,CAAI,EAAE,EAAK,IAAI,KAAK,MAAM,CAAC,EAAE,KAAK,IAAI,EAAK,OAAO,SAAS,CAAC,IAAE,EAAG,EAAE,CAAC,MAAM,CAAC,CAAC,EAAG,KAAK,IAAI,GAAG,IAAI,KAAK,IAAI,IAAI,CAAE,CAAC,EAAE,EAAW,KAAK,IAAI,EAAE,EAAG,GAAG,CAAC,eAAe,QAAQ,GAAS,OAAO,CAAU,CAAC,CAAE,MAAM,CAAC,CAAC,CASngB,SAAS,EAAW,EAAE,CAAC,IAAM,EAAI,EAAU,GAAO,IAAW,EAAI,UAAU,GAAK,EAAI,KAAK,QAAQ,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,EAAU,GAAG,OAAO,EAAc,GAAG,CAA2I,SAAS,EAAU,EAAE,CAAC,GAAG,EAAc,EAAE,OAAO,QAAQ,OAAW,MAAM,MAAM,CAAC,EAAE,GAAG,CAAC,EAAc,GAAG,CAAC,IAAM,EAAI,CAAC,UAAU,GAAM,KAAK,CAAC,CAAC,EAAE,EAAU,GAAG,EAAI,IAAM,GAAK,EAAO,EAAG,KAAkB,CAAC,GAAG,EAAI,UAAU,OAAO,QAAQ,OAAW,MAAM,OAAO,CAAC,EAAE,IAAM,EAAI,OAAO,gBAAkB,IAAY,IAAI,gBAAgB,KAAQ,GAAI,EAAI,KAAK,KAAK,CAAG,EAAE,IAAM,EAAM,EAAI,eAAe,EAAI,MAAM,EAAE,CAAE,EAAE,IAAA,GAAU,OAAO,MAAM,EAAO,EAAI,CAAC,OAAO,EAAI,MAAM,EAAE,IAAA,EAAS,CAAC,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE,SAAS,IAAoB,MAAf,EAAY,CAAC,EAAY,MAAM,MAAM,EAAG,GAAG,CAAC,EAAE,GAAG,MAAU,MAAM,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAA2C,MAAvC,EAAI,UAAoB,MAAM,OAAO,EAAQ,GAAG,EAAE,OAAO,aAAiB,MAAM,SAAS,EAAE,CAAE,CAAC,CAAC,CAAC,YAAY,CAAI,IAAQ,IAAA,IAAU,aAAa,CAAK,CAAE,CAAC,CAAE,EACp4B,EAAE,EAAI,CAAC,CAAC,CAAC,MAAxK,GAAG,EAAE,WAAA,uCAAmB,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,SAAS,OAAO,GAAG,EAAE,OAAO,CAAC,EAAE,EAAI,EAAW,EAAE,MAAM,EAAe,EAAE,EAAiB,EAAE,QAAQ,OAAO,CAAC,CAAgC,CAAC,CAAC,KAAK,GAAG,CAAC,GAAG,EAAI,UAAU,MAAU,MAAM,OAAO,EAAE,GAAG,CAAC,GAAY,CAAC,EAAE,MAAU,MAAM,aAAa,EAAE,OAAO,CAAE,CAAC,CAAC,CAAC,YAAY,eAAe,CAC9U,EAAc,KAAK,GAAE,OAAO,EAAc,GAAM,EAAU,KAAK,GAAI,OAAO,EAAU,EAAG,EAAE,GAAG,CAAC,EAAE,EAAc,GAAG,CAAE,CAAC,OAAO,EAAc,EAAG,CAAC,SAAgB,EAAM,EAAS,EAAM,EAAQ,GAAK,CAAC,IAAM,EAAI,GAAA,wCAAyB,EAAG,IAAI,gBAAgB,OAAO,QAAQ,CAAK,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAQ,EAAQ,GAAG,IAAM,EAAI,SAAS,GAAG,EAAE,IAAI,MAAM,IAAU,CAAC,EAAM,GAAUA,EAAS,CAAC,KAAK,KAAK,MAAM,GAAM,OAAO,EAAK,CAAC,EAAO,CAAC,EAAK,GAASA,EAAS,CAAC,EAAO,CAAC,EAAU,GAAcA,EAAS,CAAC,EAC9f,CAAC,EAAK,GAASA,EAAS,EAAK,EAAE,MAAc,CAAC,IAAI,EAAM,GAAS,EAAyB,GAAf,EAAQ,EAAK,EAAK,CAAC,EAAQ,OAAO,GAAG,EAAS,EAAE,CAAC,MAAoB,EAAS,CAAC,KAAK,EAAa,GAAO,CAAK,CAAC,EAAE,MAAM,GAAM,OAAO,EAAI,CAAC,CAAC,EAAE,MAAO,CAAC,GAAG,CAAC,EAAI,CAC3O,MAAoB,EAAS,CAAC,KAAK,KAAK,MAAM,GAAK,OAAO,EAAK,CAAC,CAAC,EAAE,MAAO,CAAC,IAAM,EAAI,MAAM,EACvF,EAAM,GAAU,EAAM,GAAM,GAAG,CAAC,IAAM,EAAI,aAAa,QAAQ,CAAG,GAAG,eAAe,QAAQ,CAAG,EAAQ,EAAI,EAAI,KAAK,MAAM,CAAG,EAAE,KAAQ,GAAK,GAAY,EAAI,CAAC,GAAG,KAAK,IAAI,EAAE,EAAI,EAAE,EAAE,OAAM,EAAM,GAAK,EAAM,KAAK,IAAI,EAAE,EAAI,EAAE,IAAK,IAAI,MAAoB,EAAS,CAAC,KAAK,EAAa,EAAI,CAAC,EAAE,MAAM,GAAM,OAAO,EAAK,CAAC,CAAC,EAAG,MAAM,CAAC,CAEhU,CAAC,GAAO,CAAC,IAAM,EAAU,eAAe,GAAO,EAAQ,EAAI,EAAE,EAAY,GAAE,IAAM,MAAW,CAAI,IAAY,IAAA,IAAU,aAAa,CAAS,EAAK,GAAM,EAAQ,EAAK,CAAE,EACnK,EAAK,GAAM,EAAU,CAAO,CAAC,CAAC,MAAM,GAAG,GAAO,EAAK,GAAG,OAAO,GAAG,EAAE,OAAO,IAAI,QAAQ,EAAK,EAAK,CAAC,EAAE,QAAQ,OAAO,CAAC,CAAC,EAAua,OAAja,GAAM,EAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAAO,EAAE,GAAG,CAAC,IAAM,EAAE,KAAK,UAAU,CAAC,EAAE,KAAK,IAAI,EAAE,GAAC,CAAC,EAAE,GAAG,CAAC,aAAa,QAAQ,EAAI,CAAC,CAAE,MAAM,CAAC,eAAe,QAAQ,EAAI,CAAC,CAAE,CAAC,MAAM,CAAC,CAAK,IAAa,EAAa,CAAC,EAAE,MAAoB,EAAS,CAAC,KAAK,EAAa,CAAC,EAAE,MAAM,GAAM,OAAO,EAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAO,EAAM,IAAa,EAAa,EAAc,CAAC,EAAM,GAAM,MAAoB,EAAS,CAAC,KAAK,KAAK,MAAM,GAAK,OAAO,EAAK,CAAC,CAAC,EAAE,CAAC,MAAY,CAAC,EAAM,GAAS,IAAY,IAAA,IAAU,aAAa,CAAS,CAAE,CAAE,EAAE,CAAC,EAAI,EAAG,EAAQ,CAAI,CAAC,EACjoB,MAAc,CAAC,GAAG,CAAC,EAAU,OAAO,IAAM,EAAE,eAAe,EAAa,EAAc,CAAC,EAAE,KAAK,IAAI,EAAE,EAAU,KAAK,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,aAAa,CAAC,CAAE,EAAE,CAAC,CAAS,CAAC,EACzG,IAAM,MAAU,CAAC,IAAM,EAAE,EAAc,EAAE,GAAG,EAAE,OAAO,EAAa,CAAC,EAAK,GAAK,CAAC,EAAS,GAAE,EAAW,CAAO,EAAE,EAAS,GAAG,EAAE,MAAM,CAAC,KAAK,KAAK,MAAM,GAAM,OAAO,EAAK,EAAE,CAAC,EAAE,EAAQ,GAAG,EAAE,CAAC,CAAE,EAAE,MAAM,CAAC,GAAG,EAAM,QAAM,YAAU,MAAI,CAAE,CACzM,SAAgB,EAAa,EAAI,CAAC,IAAM,EAAE,IAAI,KAAK,CAAG,EAAQ,EAAI,IAAI,KAAoN,MAAM,CAAC,IAA5M,EAAE,aAAa,IAAI,EAAI,aAAa,EAAE,QAAQ,EAAE,aAAa,IAAI,IAAI,KAAK,EAAI,QAAQ,EAAE,KAAK,CAAC,CAAC,aAAa,EAAE,WAAW,EAAE,mBAAmB,QAAQ,CAAC,QAAQ,QAAQ,IAAI,UAAU,MAAM,OAAO,CAAC,EAAa,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,mBAAmB,QAAQ,CAAC,KAAK,UAAU,OAAO,SAAS,CAAC,CAAC,CAAE,CAI9Q,SAAgB,EAAc,EAAE,CAAC,IAAM,EAAE,EAAE,EAAE,cAAc,IAAA,GAAU,OAAO,OAAO,GAAI,UAAU,SAAS,CAAC,EAAE,EAAE,IAAA,EAAU,CAAiE,SAAgB,EAAa,EAAE,CAAC,IAAM,EAAE,EAAc,CAAC,EAAE,OAAO,IAAI,IAAA,IAA+B,EAAA,EAAqB,CAA6J,SAAgB,EAAY,EAAE,EAAK,CAAI,QAAyB,MAAM,CAAC,SAAS,CAAI,IAAsB,KAAe,CAAC,GAAG,EAAA,MAAkC,GAAa,CAAC,EAAmB,OAAO,CAAK,CAAuH,SAAgB,EAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,QAAQ,EAAE,OAAO,EAAE,OAAO,EAChiC,IAAM,EAAS,CAAC,EAAE,GAAG,EAAE,OAAO,MAAM,QAAQ,EAAE,MAAM,QAAQ,MAAO,IAAM,KAAK,EAAE,MAAM,SAAY,GAAG,OAAO,EAAE,MAAO,UAAU,OAAO,EAAE,OAAQ,WAAS,EAAS,EAAE,MAAM,EAAE,OAAO,IAAM,EAAQ,EAAE,QAAQ,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAI,EAAK,EAAc,CAAC,IAAI,IAAA,IAAW,EAAS,EAAE,UAAU,IAAA,KAAU,EAAI,CAAC,GAAG,EAAI,cAAc,EAAS,EAAE,OAAO,GAAE,IAAM,EAAG,EAAO,EAAE,SAAS,EAAE,QAAQ,OAAO,IAAA,IAAW,EAAY,EAAG,EAAE,QAAQ,IAAI,IAAI,IAAA,KAAU,EAAI,CAAC,GAAG,EAAI,QAAQ,CAAC,GAAG,EAAE,QAAQ,KAAK,IAAA,EAAS,CAAC,GAAE,IAAM,EAAI,EAAE,MAAqN,OAA5M,MAAM,QAAQ,CAAG,GAAG,EAAI,KAAK,GAAG,GAAG,EAAE,OAAO,IAAA,IAAW,EAAY,EAAG,EAAE,IAAI,IAAI,IAAA,EAAS,IAAE,EAAI,CAAC,GAAG,EAAI,MAAM,EAAI,IAAI,GAAG,GAAG,EAAE,OAAO,IAAA,IAAW,EAAY,EAAG,EAAE,IAAI,IAAI,IAAA,GAAU,CAAC,GAAG,EAAE,KAAK,IAAA,EAAS,EAAE,CAAC,CAAC,GAAS,CAAI,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,SAAO,CAAE,CAGhvB,SAAgB,EAAa,EAAE,CAAC,IAAM,EAAE,EAAE,QAAQ,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAK,EAAE,IAAM,EAAK,KAAK,IAAI,EAAE,KAAK,IAAI,GAAG,EAAE,KAAK,KAAK,GAAG,CAAC,EAAQ,EAAK,KAAK,IAAI,EAAE,KAAK,IAAI,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,KAAK,MAAM,EAAK,GAAG,EAAK,EAAE,EAAE,GAAG,EAAK,CAAE,CA8D5O,SAAS,GAAQ,EAAK,EAAQ,CAAC,IAAI,EAAE,SAAS,cAAc,cAAc,EAAK,GAAG,EAAM,IAAG,EAAE,SAAS,cAAc,MAAM,EAAE,EAAE,KAAK,EAAK,SAAS,KAAK,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAQ,CAAC,SAAgB,GAAa,EAAM,EAAY,CAAC,MAAc,CAAC,GAAG,OAAO,SAAW,IAAY,OAAO,GAAG,CAAC,SAAS,eAAe,UAAU,EAAE,CAAC,IAAM,EAAE,SAAS,cAAc,MAAM,EAAE,EAAE,IAAI,aAAa,EAAE,KAAK,4BAA4B,EAAE,YAAY,YAAY,SAAS,KAAK,YAAY,CAAC,EAAE,IAAM,EAAE,SAAS,cAAc,MAAM,EAAE,EAAE,GAAG,WAAW,EAAE,IAAI,aAAa,EAAE,KAAK,mFAAmF,SAAS,KAAK,YAAY,CAAC,CAAE,CAAC,IAAI,EAAE,SAAS,eAAe,EAAS,EAAM,IAAG,EAAE,SAAS,cAAc,OAAO,EAAE,EAAE,GAAG,GAAU,SAAS,KAAK,YAAY,CAAC,GAAM,EAAE,cAAc,KAAW,EAAE,YAAY,IAAW,GAAQ,cAAc,SAAS,EAAE,EAAW,MAAM,EAAK,GAAO,CAAC,EAAS,IAAG,SAAS,MAAM,EAAM,SAAS,EAAM,IAAI,EAAE,EAAM,GAAG,EAAM,KAAK,EAAM,OAAU,GAAY,GAAQ,cAAc,CAAW,EAAG,EAAE,CAAC,EAAM,CAAW,CAAC,CAAE,CAAC,SAAgB,GAAS,EAAQ,KAAK,CAAC,IAAM,EAAIC,EAAO,IAAI,EAAO,CAAC,EAAM,GAAUD,EAAS,CAAO,EAA4R,OAA1R,MAAc,CAAC,IAAM,EAAG,EAAI,QAA0E,GAA/D,CAAC,IAAU,EAAS,EAAG,sBAAsB,CAAC,CAAC,OAAO,CAAO,EAAK,OAAO,eAAiB,KAAY,OAAO,IAAM,EAAG,IAAI,gBAAgB,CAAC,KAAKE,MAAoB,EAAS,EAAE,YAAY,KAAK,CAAC,CAAC,EAAiB,OAAf,EAAG,QAAQ,CAAE,MAAY,EAAG,WAAW,CAAE,EAAE,CAAC,CAAC,EAAQ,CAAC,EAAI,CAAK,CAAE,CACv3C,SAAgB,GAAK,CAAC,OAAK,GAAG,SAAO,IAAO,CAAC,OAAoB,EAAM,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,QAAQ,YAAY,cAAc,OAAO,MAAM,CAAC,QAAQ,QAAQ,WAAW,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,SAAsB,EAAM,iBAAiB,CAAC,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,SAAS,CAAc,EAAK,OAAO,CAAC,OAAO,IAAI,UAAU,SAAS,CAAC,EAAe,EAAK,OAAO,CAAC,OAAO,IAAI,UAAU,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,KAAK,OAAO,KAAK,GAAG,KAAK,KAAK,YAAY,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAgB,GAAS,CAAC,SAAO,GAAM,OAAK,GAAG,CAAC,OAAoB,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,GAAG,CAAI,EAAE,SAAS,CAAc,EAAK,GAAK,CAAC,KAAK,GAAG,EAAY,QAAM,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAQ,WAAW,IAAI,SAAS,GAAG,EAAK,cAAc,WAAW,MAAM,UAAU,WAAW,SAAS,WAAW,CAAC,EAAE,SAAS,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAE,CAA4E,SAAgB,GAAM,CAAC,OAAK,OAAK,OAAK,IAAI,CAAC,GAAK,CAAC,EAAO,GAAWF,EAAS,EAAK,EAAE,GAAG,GAAM,CAAC,EAAO,OAAoB,EAAK,MAAM,CAAC,IAAI,EAAK,IAAI,GAAG,MAAM,EAAK,OAAO,EAAK,QAAQ,OAAO,YAAY,EAAU,EAAI,EAAE,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,UAAU,UAAU,WAAW,CAAC,CAAC,CAAC,EAAE,IAAM,EAAI,EAAK,QAAQ,kCAAkC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,YAAY,EAAM,EAAE,EAAE,IAAI,IAAM,KAAM,EAAK,GAAG,EAAE,GAAG,EAAG,WAAW,CAAC,GAAG,IAAI,OAAoB,EAAM,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,QAAQ,YAAY,cAAc,OAAO,MAAM,CAAC,WAAW,EAAE,QAAQ,OAAO,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,mEAAmE,MAAM,CAAC,KAAK,OAAO,EAAE,UAAU,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,0CAA0C,MAAM,CAAC,KAAK,OAAO,EAAE,UAAU,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,WAAW,SAAS,WAAW,EAAK,WAAW,MAAM,SAAS,EAAI,OAAO,EAAE,IAAI,GAAG,MAAM,CAAC,KAAK,SAAS,EAAE,SAAS,CAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAAiF,SAAgB,GAAW,CAAC,MAAI,OAAK,IAAI,CAAC,GAAK,CAAC,EAAO,GAAWA,EAAS,EAAK,EAA8K,MAAzK,CAAC,GAAK,EAA2B,EAAK,OAAO,CAAC,cAAc,OAAO,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,aAAa,EAAE,WAAW,EAAE,KAAK,QAAQ,eAAe,WAAW,CAAC,CAAC,CAAC,EAAsB,EAAK,MAAM,CAAC,UAAU,QAAY,MAAI,IAAI,GAAG,MAAM,EAAK,OAAO,EAAK,QAAQ,OAAO,YAAY,EAAU,EAAI,EAAE,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,UAAU,UAAU,WAAW,CAAC,CAAC,CAAC,CAAE,CAA8wD,SAAgB,GAAO,CAAC,OAAK,IAAO,CAAC,OAAoB,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,OAAO,GAAG,QAAQ,QAAQ,aAAa,GAAG,WAAW,EAAE,OAAO,MAAM,EAAE,GAAG,WAAW,EAAK,SAAS,GAAG,WAAW,GAAG,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,cAAc,OAAO,SAAsB,EAAK,OAAO,CAAC,EAAE,gEAAgE,MAAM,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAE,CACl3J,SAAS,GAAO,EAAM,CAAC,IAAM,EAAK,IAAI,KAAK,EAAK,WAAW,EAAE,EAAE,CAAC,EAAE,IAAM,EAAG,GAAG,IAAI,KAAK,EAAK,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,YAAY,EAAQ,EAAG,CAAC,QAAQ,CAAC,CAAC,cAAc,GAAG,EAAE,CAAC,cAAc,GAAG,EAAE,CAAC,qBAAqB,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,cAAc,GAAG,EAAE,CAAC,kBAAkB,GAAG,EAAE,CAAC,eAAe,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC,gBAAgB,GAAG,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,eAAqB,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,GAAG,EAAE,CAAC,cAAc,GAAG,CAAC,CAAC,EAAQ,GAAM,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,EAAW,IAAE,EAAG,CAAE,EAAQ,GAAW,EAAG,IAAK,CAAC,IAAM,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,EAAK,EAAG,CAAC,EAAE,EAAK,EAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAE,EAAQ,GAAY,EAAK,KAAK,EAAG,IAAO,CAAC,CAAC,GAAG,EAAK,UAAU,EAAE,EAAE,CAAC,GAAG,EAAK,SAAS,EAAE,EAAE,CAAC,GAAG,EAAK,aAAa,GAAG,CAAC,EAAA,CAAG,KAAK,CAAC,EAAK,MAAU,CAAC,OAAK,MAAM,KAAK,MAAM,EAAM,EAAE,EAAE,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,CAAC,EAAE,EAAM,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,EAAQ,EAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,GAAG,UAAU,EAAE,SAAS,EAAE,mBAAmB,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAQ,EAAI,CAAC,WAAW,SAAS,UAAU,YAAY,SAAS,YAAY,cAAc,UAAU,EAAQ,GAAW,EAAE,IAAO,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,GAAK,EAAK,GAAG,EAAI,QAAQ,GAAG,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,MAAM,KAAK,CAAC,EAAE,EAAK,GAAG,GAAG,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,EAAK,GAAG,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,EAAK,GAAG,EAAE,EAAE,EAAQ,EAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,YAAY,OAAO,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC,KAAK,cAAc,OAAO,WAAW,EAAE,CAAC,KAAK,gBAAgB,OAAO,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,KAAK,gBAAgB,OAAO,UAAU,CAAC,CAAC,EAAQ,GAAI,EAAG,EAAO,EAAE,EAAK,EAAK,EAAE,EAAE,EAAG,EAAI,EAAK,EAAK,IAAQ,CAAC,IAAM,EAAK,CAAC,KAAK,IAAI,KAAK,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,EAAG,MAAM,CAAC,CAAC,EAAE,GAAS,GAAO,EAAE,EAAE,IAAI,KAAK,MAAM,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAU,EAAO,CAAC,KAAK,EAAM,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAM,EAAE,GAAG,EAAE,GAAG,CAAI,EAAE,KAAK,EAAM,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAM,EAAI,EAAK,IAAI,EAAE,QAAQ,EAAM,EAAE,CAAG,EAAE,KAAK,EAAM,EAAK,KAAK,CAAI,EAAE,OAAO,EAAM,EAAE,CAAI,CAAC,EAAQ,EAAG,EAAG,EAAK,IAAI,EAAW,EAAK,GAAG,EAAG,EAAE,CAAC,CAAC,GAAG,KAAW,EAAM,CAAC,CAAC,IAAI,IAAI,OAAO,eAAe,KAAK,GAAG,EAAK,GAAG,SAAS,MAAM,EAAK,GAAG,KAAK,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,OAAO,eAAe,KAAK,OAAO,MAAM,OAAO,KAAK,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,OAAO,eAAe,KAAK,GAAG,EAAK,GAAG,SAAS,MAAM,EAAK,GAAG,KAAK,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,OAAO,gBAAgB,KAAK,GAAG,EAAK,GAAG,UAAU,MAAM,GAAG,EAAK,GAAG,UAAU,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,EAAO,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,gBAAgB,KAAK,GAAG,EAAK,GAAG,UAAU,MAAM,GAAG,EAAK,GAAG,UAAU,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,EAAO,IAAI,EAAE,CAAC,IAAI,MAAM,OAAO,QAAQ,KAAK,iBAAiB,MAAM,WAAW,KAAK,EAAI,MAAM,EAAO,MAAM,EAAE,CAAC,IAAI,MAAM,OAAO,QAAQ,KAAK,kBAAkB,MAAM,YAAY,KAAK,EAAE,EAAI,MAAM,EAAO,OAAO,EAAE,CAAC,IAAI,KAAK,OAAO,sBAAsB,KAAK,sBAAsB,MAAM,aAAa,KAAK,EAAK,MAAM,EAAO,IAAI,EAAE,GAAG,EAAG,CAAC,CAAC,IAAI,KAAK,OAAO,qBAAqB,KAAK,GAAG,EAAG,KAAK,WAAW,MAAM,GAAG,EAAG,KAAK,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,WAAW,KAAK,EAAG,EAAE,MAAM,KAAK,MAAM,EAAE,EAAG,GAAG,IAAK,KAAK,IAAI,KAAK,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAQ,EAAG,GAAG,EAAE,MAAM,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,EAAQ,EAAM,EAAM,OAAO,GAAG,EAAG,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,GAAS,EAAO,GAAO,EAAM,OAAO,GAAG,EAAG,CAAC,GAAG,EAAE,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAM,GAAS,EAAK,EAAO,KAAK,MAAM,CAAC,KAAG,SAAO,QAAQ,EAAG,CAAC,EAAE,OAAO,KAAK,KAAK,CAAC,KAAK,EAAK,GAAG,KAAK,EAAE,EAAK,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAK,GAAG,KAAK,EAAE,EAAK,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,GAAG,EAAO,KAAK,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAI,OAAK,GAAG,CAAC,KAAK,EAAG,GAAG,KAAK,EAAG,EAAE,EAAE,QAAM,OAAO,EAAU,EAAG,GAAG,EAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAW,EAAK,GAAG,EAAG,EAAE,EAAE,KAAK,EAAW,EAAK,GAAG,EAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,KAAK,KAAK,OAAO,IAAI,EAAG,IAAI,EAAE,EAAE,GAAG,KAAK,KAAK,OAAO,IAAI,EAAG,IAAI,EAAE,EAAE,GAAG,MAAM,KAAK,OAAO,IAAI,EAAG,GAAG,EAAG,IAAI,EAAE,EAAE,GAAG,KAAK,IAAI,KAAK,KAAK,MAAM,KAAK,IAAI,GAAG,IAAI,EAAG,GAAG,EAAG,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAO,OAAO,KAAK,EAAO,IAAI,MAAM,EAAO,MAAM,KAAK,EAAO,KAAK,OAAK,KAAK,EAAE,EAAK,MAAM,EAAO,MAAM,KAAK,EAAO,EAAE,WAAW,EAAM,EAAO,GAAG,KAAK,GAAM,GAAG,OAAO,SAAS,MAAM,IAAI,CAAC,cAAc,EAAI,CAAI,EAAE,sBAAsB,EAAO,MAAM,QAAQ,CAAC,EAAE,WAAW,EAAI,EAAE,EAAO,KAAK,EAAE,GAAG,kBAAkB,EAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,sBAAsB,EAAM,QAAQ,IAAI,GAAG,EAAE,GAAG,cAAc,EAAK,GAAG,GAAG,EAAK,GAAG,IAAI,EAAK,GAAG,GAAG,EAAK,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAK,GAAG,KAAK,EAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAK,EAAK,KAAK,EAAE,KAAK,EAAK,EAAK,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,EAAU,EAAK,GAAG,CAAC,EAAE,KAAK,EAAU,EAAK,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,EAAK,QAAQ,GAAG,EAAE,GAAG,IAAI,KAAK,CAAA,CAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAK,GAAG,EAAK,GAAG,KAAK,EAAE,EAAE,EAAK,GAAG,EAAK,GAAG,MAAM,CAAC,MAAM,MAAM,MAAM,MAAM,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,CAAC,KAAK,EAAI,EAAK,KAAK,CAAC,EAAE,KAAK,EAAI,EAAK,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,EAAG,GAAG,IAAI,EAAE,EAAE,GAAG,QAAQ,KAAK,OAAO,EAAG,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,KAAK,OAAO,EAAG,GAAG,IAAI,EAAE,EAAE,GAAG,QAAQ,KAAK,OAAO,EAAG,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,SAAS,EAAM,GAAG,EAAO,KAAK,oBAAoB,GAAG,EAAO,KAAK,yBAAyB,QAAQ,WAAW,EAAO,KAAK,YAAY,CAAC,CAAC,WAAW,MAAM,EAAE,WAAW,EAAO,KAAK,GAAG,EAAI,CAAI,EAAE,4BAA4B,EAAO,MAAM,QAAQ,CAAC,EAAE,WAAW,EAAI,EAAE,EAAO,KAAK,EAAE,sBAAsB,EAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAG,GAAG,EAAG,GAAG,EAAK,GAAG,EAAK,GAAG,uBAAuB,EAAM,QAAQ,IAAI,GAAG,EAAE,gCAAgC,QAAQ,CAAC,GAAG,EAAK,GAAG,QAAQ,EAAK,GAAG,IAAI,EAAK,GAAG,QAAQ,EAAK,KAAK,kBAAkB,EAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAM,SAAS,EAAO,MAAM,QAAQ,CAAC,EAAE,oBAAoB,EAAE,EAAA,CAAM,QAAQ,CAAC,IAAI,4BAA4B,EAAE,WAAW,KAAK,MAAM,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,EAAK,IAAI,EAAO,EAAE,GAAG,CAAC,CAAC,EAAE,iBAAiB,EAAM,uDAAuD,uDAAuD,YAAY,CAAO,QAAM,OAAO,EAAW,EAAK,GAAG,EAAG,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,QAAQ,UAAU,KAAK,MAAM,IAAI,EAAG,GAAG,EAAG,EAAE,EAAE,YAAY,EAAK,GAAG,cAAc,MAAM,sCAAsC,CAAC,CAAC,CAAE,EAAQ,EAAI,CAAC,EAAG,KAAK,iBAAiB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,KAAK,iBAAiB,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,KAAK,UAAU,EAAE,CAAC,cAAc,GAAG,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,KAAK,UAAU,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,KAAK,aAAa,GAAG,CAAC,mBAAmB,GAAG,EAAE,CAAC,cAAc,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,KAAK,UAAU,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,KAAK,mBAAmB,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,KAAK,gBAAgB,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,gBAAgB,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,KAAK,aAAa,GAAG,CAAC,gBAAgB,GAAG,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,IAAI,GAAG,CAAC,QAAQ,OAAO,EAAE,KAAK,EAAE,EAAG,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,CAAC,QAAQ,OAAO,EAAE,KAAK,CAAC,EAAQ,EAAO,OAAO,EAAM,QAAQ,KAAK,EAAQ,EAAQ,IAAS,MAAM,EAAI,EAAI,OAAO,GAAG,EAAE,SAAS,CAAM,EAAiK,EAAM,CAAxJ,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,WAAW,EAAE,CAAmB,CAAC,CAAC,KAAK,CAAC,EAAE,GAAI,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,KAAK,IAAI,EAAE,EAAE,CAAC,EAAE,GAAG,GAAG,EAAE,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAM,SAAS,SAAS,CAAC,IAAM,EAAO,CAAC,CAAC,UAAU,WAAW,iBAAiB,KAAK,GAAM,MAAM,GAAK,gBAAgB,EAAE,CAAC,SAAS,SAAS,gBAAgB,KAAK,GAAK,MAAM,GAAM,SAAS,EAAE,CAAC,WAAW,QAAQ,kBAAkB,KAAK,GAAK,MAAM,GAAK,YAAY,EAAE,CAAC,kBAAkB,SAAS,OAAO,IAAI,GAAK,MAAM,GAAK,SAAS,EAAE,CAAC,MAAM,OAAO,aAAa,IAAI,GAAM,MAAM,GAAK,SAAS,EAAE,CAAC,UAAU,SAAS,gBAAgB,IAAI,GAAK,MAAM,GAAM,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,EAAK,EAAM,EAAM,EAAM,EAAI,GAAI,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,OAAO,CAAE,EAAE,QAAQ,EAAG,KAAK,EAAE,EAAE,EAAE,KAAK,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,KAAK,OAAO,CAAI,EAAE,MAAM,OAAO,CAAK,EAAE,MAAM,EAAQ,EAAO,MAAM,OAAO,CAAK,EAAE,IAAI,EAAQ,EAAK,OAAO,EAAI,KAAK,OAAO,OAAO,CAAK,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,EAAE,EAAQ,GAAG,EAAK,EAAM,EAAK,KAAU,CAAC,OAAK,QAAM,OAAK,QAAQ,EAAK,EAAM,OAAO,EAAM,SAAO,IAAI,EAAO,CAAK,GAAS,EAAM,CAAC,SAAS,CAAC,EAAE,eAAe,GAAG,EAAE,GAAG,EAAE,EAAE,gBAAgB,GAAG,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,sBAAsB,EAAE,EAAE,EAAE,EAAE,EAAE,qBAAqB,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,iBAAiB,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,EAAE,aAAa,CAAC,EAAE,aAAa,GAAG,EAAE,GAAG,EAAE,EAAE,iBAAiB,GAAG,GAAG,GAAG,EAAE,EAAE,iBAAiB,GAAG,EAAE,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE,UAAU,IAAI,OAAO,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE,UAAU,IAAI,OAAO,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE,UAAU,IAAI,OAAO,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,EAAE,MAAM,EAAE,UAAU,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,KAAK,QAAQ,IAAI,SAAS,CAAC,aAAa,GAAG,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAA,CAAE,YAAY,EAAE,QAAM,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,GAAG,QAAQ,MAAM,OAAO,GAAG,OAAO,IAAI,IAAI,IAAI,EAAE,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE,QAAQ,MAAM,OAAO,GAAG,OAAO,IAAI,IAAI,IAAI,EAAE,QAAQ,EAAE,QAAM,CAAC,CAAE,CAAC,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAA,CAAE,YAAY,EAAE,UAAQ,MAAM,EAAM,SAAS,QAAQ,EAAM,IAAA,EAAS,CAAE,CACl+S,SAAgB,GAAS,CAAC,OAAK,OAAK,IAAI,CAAC,GAAG,CAAC,EAAK,OAAO,KAAK,IAAM,EAAK,GAAG,IAAI,IAAI,CAAC,uBAAuB,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,SAAS,EAAE,CAAC,wBAAwB,SAAS,EAAE,OAAoB,EAAK,OAAO,CAAC,aAAa,cAAc,EAAK,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,GAAG,IAAI,IAAI,MAAM,IAAI,IAAI,OAAO,MAAM,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,cAAc,IAAI,CAAC,EAAE,SAAS,EAAK,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,GAAK,CAAC,EAAG,GAAI,EAAK,CAAC,EAAE,OAAoB,EAAK,OAAO,CAAC,cAAc,OAAO,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,aAAa,KAAK,MAAM,EAAK,EAAE,EAAE,WAAW,EAAG,MAAM,EAAG,WAAW,EAAK,SAAS,EAAK,GAAG,WAAW,IAAI,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,WAAW,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,CAAE,CAAC,CAAC,CAAC,CAAE,CAAuD,SAAgB,GAAQ,CAAC,QAAM,aAAW,GAAK,OAAK,GAAG,CAAC,IAAM,EAAE,KAAK,IAAI,EAAE,KAAK,IAAI,IAAI,CAAK,CAAC,EAAQ,EAAK,EAAe,CAAC,EAAE,OAAoB,EAAM,OAAO,CAAC,KAAK,MAAM,aAAa,cAAc,EAAE,eAAe,EAAK,YAAY,IAAI,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,CAAI,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,cAAc,OAAO,MAAM,CAAC,SAAS,WAAW,MAAM,GAAG,EAAK,OAAO,EAAE,aAAa,GAAG,WAAW,EAAE,WAAW,SAAS,QAAQ,EAAE,SAAsB,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,WAAW,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,EAAE,GAAG,aAAa,GAAG,WAAW,IAAO,OAAO,EAAE,IAAI,IAAO,SAAS,uBAAuB,sBAAsB,CAAC,CAAC,CAAC,CAAC,EAAE,GAAyB,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAK,WAAA,iGAAgB,SAAS,GAAG,EAAK,WAAW,IAAI,MAAM,EAAE,KAAK,WAAW,EAAE,SAAS,GAAG,CAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAoH,SAAgB,GAAO,CAAC,IAAE,OAAK,KAAK,OAAK,IAAO,CAAC,IAAM,EAAE,EAAE,QAAQ,GAAG,CAAC,EAAE,OAAoB,EAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,OAAO,IAAO,KAAK,GAAG,GAAG,QAAQ,SAAS,aAAa,IAAI,OAAO,cAAc,EAAE,OAAO,WAAW,EAAK,SAAS,GAAG,WAAW,IAAI,MAAM,EAAE,MAAM,WAAW,QAAQ,EAAE,SAAS,6BAAgC,CAAC,EAAE,IAAM,EAAM,EAAQ,CAAC,EAAQ,EAAE,IAAO,KAAK,GAAG,IAAO,KAAK,GAAG,GAAS,EAAG,IAAO,KAAK,GAAG,IAAO,KAAK,GAAG,GAAS,EAAM,EAAE,OAAO,EAAE,KAAK,OAAoB,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,OAAO,EAAE,SAAS,EAAE,SAAS,OAAO,MAAM,EAAK,OAAO,IAAA,GAAU,aAAa,IAAI,WAAW,EAAM,sBAAsB,wBAAwB,OAAO,aAAa,EAAM,sBAAsB,yBAAyB,QAAQ,KAAK,EAAE,GAAG,IAAI,IAAI,GAAG,UAAU,YAAY,EAAE,SAAS,CAAC,GAAoB,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,WAAA,iGAAgB,SAAS,EAAG,IAAI,WAAW,IAAI,MAAM,EAAE,GAAG,EAAE,SAAS,OAAO,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,KAAK,EAAK,EAAE,IAAA,GAAU,WAAW,EAAK,SAAS,EAAG,WAAW,IAAI,MAAM,EAAE,IAAI,cAAc,UAAU,WAAW,SAAS,SAAS,SAAS,aAAa,WAAW,SAAS,CAAC,EAAE,SAAS,CAAK,CAAC,EAAe,EAAK,OAAO,CAAC,cAAc,OAAO,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,WAAW,uBAAuB,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAK,WAAW,EAAE,WAAW,EAAK,SAAS,EAAG,WAAW,IAAI,MAAM,EAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAqF,SAAgB,GAAU,EAAG,CAAC,GAAG,CAAI,SAAS,cAAc,iBAAiB,EAAE,EAAO,cAAc,IAAI,YAAY,UAAU,CAAC,OAAO,CAAE,CAAC,CAAC,EAAO,EAAO,SAAS,KAAK,WAAW,mBAAmB,CAAE,GAAI,MAAM,CAAC,CAAC,CAG1tH,SAAgB,GAAa,EAAQ,CAAC,IAAM,EAAI,KAAK,IAAI,EAAQ,EAAM,GAAK,IAAI,KAAK,CAAG,CAAC,CAAC,aAAa,EAAQ,EAAG,EAAQ,OAAO,GAAG,EAAE,SAAS,EAAE,SAAS,MAAM,KAAK,MAAM,EAAE,OAAO,EAAE,EAAI,EAAE,GAAG,EAAQ,EAAO,EAAG,OAAO,GAAG,EAAM,EAAE,OAAO,IAAI,IAAI,KAAK,CAAG,CAAC,CAAC,aAAa,CAAC,EAAQ,EAAS,EAAG,OAAO,EAAM,EAAG,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,GAA6E,MAAM,CAAC,GAAtE,EAAO,OAAO,EAAO,EAAG,OAAO,GAAG,EAAM,EAAE,OAAO,IAAI,CAAQ,EAAA,CAAgB,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,EAAa,CAAC,CAAC,CAAC,MAAM,EAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,EAAO,OAAO,CAAC,CAAE,CAAC,SAAgB,GAAS,CAAC,UAAQ,UAAQ,SAAO,GAAM,WAAS,CAAC,GAAK,CAAC,IAAE,SAAO,GAAa,CAAO,EAAE,GAAG,CAAC,EAAE,OAAO,KAAK,IAAM,EAAQ,GAAO,EAAa,EAAE,EAAa,EAAE,OAAO,EAAQ,EAAG,EAAa,EAAE,MAAM,EAAQ,EAAE,EAAE,QAAc,EAAK,EAAa,CAAC,CAAC,CAAC,MAAY,EAAM,EAAQ,CAAC,EAAQ,EAAK,GAAgB,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,SAAS,IAAI,EAAQ,EAAE,GAAG,UAAU,SAAS,SAAS,CAAC,EAAE,SAAS,CAAc,EAAK,GAAM,CAAC,KAAK,EAAE,KAAK,KAAK,EAAE,KAAK,KAAK,EAAQ,GAAG,EAAE,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAQ,SAAS,EAAQ,GAAG,GAAG,WAAW,IAAI,cAAc,WAAW,MAAM,EAAE,IAAI,WAAW,IAAI,SAAS,OAAO,SAAS,SAAS,aAAa,WAAW,WAAW,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,OAAoB,EAAK,SAAS,CAAC,KAAK,SAAS,UAAU,UAAU,YAAY,GAAU,EAAE,EAAE,EAAE,aAAa,GAAG,EAAQ,iBAAiB,WAAW,IAAI,EAAE,KAAK,KAAK,KAAK,EAAE,KAAK,KAAK,IAAI,EAAE,KAAK,MAAM,EAAK,EAAE,KAAK,EAAE,sBAAsB,MAAM,CAAC,IAAI,QAAQ,OAAO,UAAU,QAAQ,QAAQ,MAAM,OAAO,UAAU,aAAa,aAAa,GAAG,OAAO,iCAAiC,WAAW,kEAAkE,eAAe,4BAA4B,qBAAqB,4BAA4B,UAAU,mEAAmE,SAAS,QAAQ,EAAE,SAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAQ,iBAAiB,iBAAiB,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAQ,GAAG,EAAE,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,gBAAgB,IAAI,EAAE,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAK,SAAS,GAAG,WAAW,IAAI,MAAM,EAAE,IAAI,EAAE,SAAS,EAAQ,iBAAiB,UAAU,CAAC,EAAE,GAAqB,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,KAAK,WAAW,IAAI,MAAM,EAAE,MAAM,OAAO,aAAa,EAAE,OAAO,aAAa,GAAG,QAAQ,SAAS,EAAE,SAAS,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,GAAG,EAAK,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,WAAW,EAAK,SAAS,KAAK,WAAW,IAAI,MAAM,EAAE,MAAM,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,CAAc,EAAK,GAAW,CAAC,IAAI,GAAI,KAAK,KAAK,EAAE,CAAC,EAAe,EAAM,OAAO,CAAC,SAAS,EAAE,QAAQ,SAAS,CAAC,EAAE,IAAI,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,oBAAoB,mCAAmC,WAAW,SAAS,IAAI,EAAE,EAAE,SAAS,CAAC,EAAK,EAAE,IAAI,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAK,SAAS,GAAG,WAAW,IAAI,MAAM,EAAE,KAAK,EAAE,SAAS,IAAI,CAAC,EAAE,EAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAQ,GAAG,GAAG,QAAQ,EAAQ,GAAG,GAAG,aAAa,EAAQ,GAAG,GAAG,WAAW,wBAAwB,OAAO,iCAAiC,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,WAAW,eAAe,gBAAgB,IAAI,EAAE,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,EAAM,SAAS,CAAC,iBAAoB,EAAE,MAAM,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,UAAU,UAAU,MAAM,CAAC,SAAS,EAAQ,GAAG,GAAG,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,WAAW,IAAI,EAAE,WAAW,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,EAAM,SAAS,EAAM,cAAc,YAAY,CAAC,EAAe,EAAK,OAAO,CAAC,UAAU,iBAAiB,MAAM,CAAC,SAAS,EAAQ,GAAG,GAAG,MAAM,EAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,OAAO,EAAE,aAAa,GAAG,WAAW,wBAAwB,SAAS,QAAQ,EAAE,cAAc,OAAO,SAAsB,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,WAAW,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,GAAG,MAAM,GAAG,KAAK,MAAM,EAAE,KAAK,GAAG,EAAE,GAAG,WAAW,EAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,eAAe,gBAAgB,WAAW,SAAS,IAAI,GAAG,SAAS,MAAM,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,CAAC,WAAW,EAAK,SAAS,GAAG,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,cAA2B,EAAK,IAAI,CAAC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,IAAI,WAAW,GAAG,EAAE,SAAS,EAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,WAAW,EAAK,SAAS,GAAG,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,EAAe,CAAI,EAAE,eAA4B,EAAK,GAAQ,CAAC,MAAM,CAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,gBAAgB,IAAI,GAAG,WAAW,CAAI,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,CAAC,SAAS,KAAK,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,EAAQ,iBAAiB,IAAI,KAAK,CAAO,CAAC,CAAC,mBAAmB,QAAQ,CAAC,KAAK,UAAU,OAAO,SAAS,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,SAAS,GAAG,WAAW,IAAI,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,gBAA6B,EAAK,OAAO,CAAC,UAAU,QAAQ,cAAc,OAAO,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAwG,SAAgB,GAAU,EAAO,QAAQ,CAAC,IAAM,EAAIC,EAAO,IAAI,EAAO,CAAC,EAAK,GAASD,EAAS,EAAK,EAAwS,OAAtS,MAAc,CAAC,IAAM,EAAG,EAAI,QAAQ,GAAG,CAAC,GAAI,EAAK,OAAO,GAAG,OAAO,qBAAuB,IAAY,OAAO,EAAQ,EAAI,EAAE,IAAM,EAAG,IAAI,qBAAqB,GAAI,EAAG,KAAK,GAAG,EAAE,cAAc,IAAI,EAAQ,EAAI,EAAE,EAAG,WAAW,GAAG,CAAC,WAAW,CAAM,CAAC,EAAiB,OAAf,EAAG,QAAQ,CAAE,MAAY,EAAG,WAAW,CAAE,EAAE,CAAC,CAAI,CAAC,EAAQ,CAAC,EAAI,CAAI,CAAE,CAGrhM,eAAsB,GAAa,EAAE,EAAK,CAAC,EAAE,CAAC,IAAM,EAAE,EAAE,QAAQ,GAAG,CAAC,GAAG,OAAO,SAAW,IAAY,OAAO,KAAK,GAAG,CAAC,MAAM,SAAS,OAAO,OAAO,gBAAgB,CAAE,MAAM,CAAC,CAAC,IAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,cAAc,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAM,EAAE,EAAE,WAAW,IAAI,EAAE,GAAG,CAAC,EAAE,OAAO,KAAK,IAAM,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,EAAE,8DAAoE,EAAM,EAAQ,CAAC,EAAQ,EAAK,EAAa,CAAC,CAAC,CAAC,MAAY,EAAE,EAAa,EAAE,OAAO,EAAQ,EAAG,EAAa,EAAE,MAAM,EACrf,EAAE,UAAU,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,IAAM,EAAE,EAAE,qBAAqB,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,aAAa,EAAE,sBAAsB,EAAE,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,IAAM,GAAI,EAAG,EAAG,EAAE,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,EAAE,OAAO,EAAG,EAAE,CAAE,EAAE,EAAE,MAAM,EAAG,EAAE,EAAG,EAAG,EAAE,EAAG,EAAE,CAAC,EAAE,EAAE,MAAM,EAAG,EAAE,EAAG,EAAE,EAAG,EAAG,EAAE,CAAC,EAAE,EAAE,MAAM,EAAG,EAAG,EAAE,EAAG,EAAG,CAAC,EAAE,EAAE,MAAM,EAAG,EAAG,EAAG,EAAE,EAAG,CAAC,EAAE,EAAE,UAAU,CAAE,EAC3X,EAAM,EAAE,qBAAqB,GAAG,GAAG,IAAI,GAAG,EAAE,EAAM,aAAa,EAAE,SAAS,EAAE,EAAM,aAAa,EAAE,SAAS,EAAE,EAAE,UAAU,EAAM,EAAG,GAAG,GAAG,GAAG,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,YAAY,UAAU,EAAE,UAAU,EAAE,EAAE,QAAQ,QAAQ,EAAE,SAAS,QAAQ,EAAE,UAAU,EAAE,EAAE,OAAO,IAAI,GAAG,EAAE,EAAE,OAAO,IAAI,GAAG,EAAE,EAAE,OAAO,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,aAAa,SAAS,EAAE,SAAS,iBAAiB,IAAI,GAAG,EAAE,EAAE,UAAU,QAAQ,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAK,OAAO,uBAA0B,cAAc,EAAE,GAAG,GAAG,EAAE,EAAE,UAAU,OAC9iB,EAAE,UAAU,wBAAwB,EAAG,GAAG,IAAI,EAAE,IAAI,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,YAAY,uBAAuB,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,UAAU,SAAS,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,GAAG,EAAG,EAAG,KAAK,MAAS,KAAK,EAAE,IAAI,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,IAAM,GAAO,EAAG,IAAO,CAAC,IAAI,EAAE,EAAE,IAAI,IAAM,KAAM,EAAK,GAAG,EAAE,GAAG,EAAG,WAAW,CAAC,GAAG,IAAI,EAAE,UAAU,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,IAAI,EAAG,IAAI,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,IAAM,EAAI,EAAK,QAAQ,kCAAkC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAI,EAAG,GAAG,EAAE,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,IAAM,EAAE,EAAK,OAAO,GAAG,EAAK,MAAM,EAAE,EAAE,EAAE,IAAI,EAAK,EAAE,SAAS,EAAE,EAAG,GAAG,CAAE,EAAE,EAAM,IAAI,EAAE,KAAK,IAAI,EAAE,EAAM,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,KAAK,EAAE,EAAE,GAAG,EAC9zB,EAAE,UAAU,EAAM,uBAAuB,wBAAwB,EAAG,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,YAAY,EAAM,sBAAsB,wBAAwB,EAAE,OAAO,EAAE,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,oBAAoB,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,EAAE,UAAU,UAAU,IAAI,EAAG,GAAoB,IAAjB,EAAE,KAAK,EAAE,IAAI,CAAE,EAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAG,IAAG,EAAE,KAAK,EAAE,IAAI,GAAI,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAM,UAAU,UAAU,EAAE,SAAS,GAAG,EAAM,SAAS,KAAK,EAAK,EAAE,KAAK,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,cAAc,EAAI,EAAE,IAAI,EAAE,QAAQ,EAAe,CAAI,EAAE,aAAa,EAAE,EAAE,GAAG,EACxoB,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,IAAM,EAAE,EAAK,QAAQ,IAAI,KAAK,EAAK,OAAO,CAAC,CAAC,mBAAmB,QAAQ,CAAC,KAAK,UAAU,OAAO,SAAS,CAAC,EAAE,GAAsR,OAAnR,EAAE,SAAS,GAAG,EAAE,iBAAiB,EAAE,IAAI,GAAG,iCAAiC,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,0BAA6B,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,sCAAyC,EAAE,EAAE,IAAI,EAAS,MAAM,IAAI,QAAQ,GAAK,EAAE,OAAO,GAAG,EAAI,CAAC,EAAE,WAAW,CAAC,CAAE,CAA2E,eAAsB,GAAc,EAAE,EAAK,CAAC,EAAE,CAAC,IAAM,EAAK,MAAM,GAAa,EAAE,CAAI,EAAE,GAAG,CAAC,EAAK,MAAO,GAAM,IAAM,EAAK,kBAAkB,EAAE,KAAK,KAAK,GAAG,EAAE,KAAK,KAAK,MAAM,YAAY,CAAC,CAAC,QAAQ,gBAAgB,GAAG,EAAQ,EAAK,OAAO,KAAO,IAAY,IAAI,KAAK,CAAC,CAAI,EAAE,EAAK,CAAC,KAAK,WAAW,CAAC,EAAE,KAAW,EAAI,EAAU,GAAG,CAAC,GAAG,GAAM,EAAI,UAAU,EAAI,SAAS,CAAC,MAAM,CAAC,CAAI,CAAC,CAAC,EAAwF,OAArF,MAAM,EAAI,MAAM,CAAC,MAAM,CAAC,CAAI,EAAE,MAAM,GAAG,EAAE,KAAK,KAAK,KAAK,EAAE,KAAK,KAAK,cAAc,CAAC,EAAS,EAAM,OAAO,EAAE,CAEhhC,GAAG,GAAG,EAAE,OAAO,aAAa,MAAO,EAAM,CAAC,IAAM,EAAE,SAAS,cAAc,GAAG,EAAqJ,MAAnJ,GAAE,KAAK,IAAI,gBAAgB,CAAI,EAAE,EAAE,SAAS,EAAK,SAAS,KAAK,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAS,EAAK,0GAzHrL,IAA6D,IAAiC,EAAc,EAAM,CAAC,KAAK,iBAAiB,OAAO,oBAAoB,QAAQ,qHAAqH,EAAyH,EAAW,mHAI7c,GAAS,wCACnB,GAAK,CAAC,KAAK,UAAU,KAAK,UAAU,KAAK,wBAAwB,KAAK,UAAU,MAAM,UAAU,IAAI,UAAU,KAAK,UAAU,MAAM,UAAU,KAAK,UAAU,MAAM,UAAU,KAAK,UAAU,OAAO,UAAU,KAAK,UAAU,SAAS,UAAU,SAAS,uBAAuB,KAAK,UAAU,IAAI,UAAU,QAAQ,sBAAsB,MAAM,UAAU,GAAG,UAAU,KAAK,wBAAwB,OAAO,wBAAwB,OAAO,wBAAwB,WAAW,uBAAuB,KAAK,UAAU,SAAS,uBAAuB,QAAQ,UAAU,IAAI,UAAU,KAAK,UAAU,QAAQ,UAAU,KAAK,SAAS,EAAQ,EAAM,GAAkB,EAAE,OAAO,YAAY,OAAO,KAAK,CAAK,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,YAAY,EAAE,IAAI,EAAM,GAAG,EAAE,CAAC,CAAC,EAAQ,GAAK,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,GAAG,EAAsiB,EAAK,iGAA8G,GAAK,EAAkB,EAAQ,oGAAwc,EAAK,GAAI,gDAAgD,EAAG,MAAgI,EAAQ,CAAC,CAAC,KAAK,iBAAiB,KAAK,iBAAiB,QAAQ,UAAU,KAAK,8BAA8B,KAAK,EAAK,EAAE,EAAE,IAAI,EAAI,EAAE,CAAC,KAAK,UAAU,KAAK,UAAU,QAAQ,QAAQ,KAAK,uBAAuB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAI,EAAE,CAAC,KAAK,UAAU,KAAK,UAAU,QAAQ,QAAQ,KAAK,uBAAuB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAI,EAAE,CAAC,KAAK,aAAa,KAAK,aAAa,QAAQ,UAAU,KAAK,0BAA0B,KAAK,EAAK,EAAE,EAAE,IAAI,EAAI,EAAE,CAAC,KAAK,UAAU,KAAK,UAAU,QAAQ,SAAS,KAAK,uBAAuB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAI,EAAE,CAAC,KAAK,mBAAmB,KAAK,mBAAmB,QAAQ,SAAS,KAAK,gCAAgC,KAAK,EAAK,CAAC,EAAE,IAAI,EAAI,EAAE,CAAC,KAAK,gBAAgB,KAAK,gBAAgB,QAAQ,SAAS,KAAK,yBAAyB,KAAK,EAAK,CAAC,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,oBAAoB,KAAK,oBAAoB,QAAQ,SAAS,KAAK,6BAA6B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,eAAe,KAAK,eAAe,QAAQ,UAAU,KAAK,wBAAwB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,aAAa,KAAK,aAAa,QAAQ,cAAc,KAAK,sBAAsB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,gBAAgB,KAAK,gBAAgB,QAAQ,WAAW,KAAK,yBAAyB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,YAAY,KAAK,YAAe,QAAQ,SAAS,KAAK,qBAAqB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,qBAAqB,KAAK,aAAa,QAAQ,UAAU,KAAK,8BAA8B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,uBAAuB,KAAK,cAAc,QAAQ,WAAW,KAAK,gCAAgC,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,mBAAmB,KAAK,mBAAmB,QAAQ,eAAe,KAAK,4BAA4B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,MAAM,KAAK,MAAM,QAAQ,MAAM,KAAK,eAAe,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,cAAc,KAAK,cAAiB,QAAQ,SAAS,KAAK,uBAAuB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,oBAAoB,KAAK,mBAAmB,QAAQ,YAAY,KAAK,6BAA6B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,iBAAiB,KAAK,iBAAiB,QAAQ,SAAS,KAAK,0BAA0B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,iBAAiB,KAAK,iBAAiB,QAAQ,SAAS,KAAK,0BAA0B,KAAK,EAAK,CAAC,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,uBAAuB,KAAK,uBAAuB,QAAQ,SAAS,KAAK,gCAAgC,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,kBAAkB,KAAK,kBAAkB,QAAQ,SAAS,KAAK,2BAA2B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,iBAAiB,KAAK,iBAAiB,QAAQ,QAAQ,KAAK,0BAA0B,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,aAAa,KAAK,2BAA2B,QAAQ,QAAQ,KAAK,sBAAsB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,SAAS,KAAK,SAAS,QAAQ,UAAU,KAAK,kBAAkB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,UAAU,KAAK,UAAU,QAAQ,UAAU,KAAK,mBAAmB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,aAAa,KAAK,aAAa,QAAQ,UAAU,KAAK,sBAAsB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,aAAa,KAAK,aAAa,QAAQ,UAAU,KAAK,sBAAsB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,eAAe,KAAK,eAAe,QAAQ,QAAQ,KAAK,wBAAwB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,UAAU,KAAK,WAAW,QAAQ,QAAQ,KAAK,mBAAmB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,eAAe,KAAK,eAAe,QAAQ,QAAQ,KAAK,wBAAwB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,UAAU,KAAK,UAAU,QAAQ,QAAQ,KAAK,mBAAmB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,YAAY,KAAK,YAAY,QAAQ,UAAU,KAAK,qBAAqB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,eAAe,KAAK,gBAAgB,QAAQ,UAAU,KAAK,wBAAwB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,kBAAkB,KAAK,kBAAkB,QAAQ,SAAS,KAAK,2BAA2B,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,UAAU,KAAK,UAAU,QAAQ,SAAS,KAAK,mBAAmB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,eAAe,KAAK,eAAe,QAAQ,WAAW,KAAK,wBAAwB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,sBAAsB,KAAK,aAAa,QAAQ,UAAU,KAAK,+BAA+B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,qBAAqB,KAAK,eAAe,QAAQ,cAAc,KAAK,8BAA8B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,mBAAmB,KAAK,YAAY,QAAQ,UAAU,KAAK,4BAA4B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,cAAc,KAAK,cAAc,QAAQ,SAAS,KAAK,uBAAuB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,cAAc,KAAK,cAAc,QAAQ,SAAS,KAAK,uBAAuB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,qBAAqB,KAAK,eAAe,QAAQ,SAAS,KAAK,8BAA8B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,cAAc,KAAK,cAAc,QAAQ,SAAS,KAAK,uBAAuB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,qBAAqB,KAAK,eAAe,QAAQ,UAAU,KAAK,8BAA8B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,eAAe,KAAK,MAAM,QAAQ,UAAU,KAAK,wBAAwB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,oBAAoB,KAAK,YAAY,QAAQ,SAAS,KAAK,6BAA6B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,kBAAkB,KAAK,SAAS,QAAQ,UAAU,KAAK,2BAA2B,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,2BAA2B,KAAK,iBAAiB,QAAQ,UAAU,KAAK,oCAAoC,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,yBAAyB,KAAK,iBAAiB,QAAQ,SAAS,KAAK,kCAAkC,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,yBAAyB,KAAK,iBAAiB,QAAQ,SAAS,KAAK,kCAAkC,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,uBAAuB,KAAK,iBAAiB,QAAQ,QAAQ,KAAK,gCAAgC,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,yBAAyB,KAAK,mBAAmB,QAAQ,UAAU,KAAK,kCAAkC,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,oBAAoB,KAAK,oBAAoB,QAAQ,gBAAgB,KAAK,6BAA6B,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,oBAAoB,KAAK,oBAAoB,QAAQ,gBAAgB,KAAK,6BAA6B,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,UAAU,KAAK,UAAU,QAAQ,SAAS,KAAK,mBAAmB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,YAAY,KAAK,YAAY,QAAQ,QAAQ,KAAK,qBAAqB,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,aAAa,KAAK,aAAa,QAAQ,cAAc,KAAK,sBAAsB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,WAAW,KAAK,WAAW,QAAQ,YAAY,KAAK,oBAAoB,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,uBAAuB,KAAK,eAAe,QAAQ,QAAQ,KAAK,gCAAgC,KAAK,EAAK,GAAG,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,uBAAuB,KAAK,uBAAuB,QAAQ,OAAO,KAAK,gCAAgC,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,EAAE,CAAC,KAAK,uBAAuB,KAAK,uBAAuB,QAAQ,SAAS,KAAK,gCAAgC,KAAK,EAAK,EAAE,EAAE,IAAI,EAAK,CAAC,EAAe,EAAa,GAAG,EAAQ,KAAK,GAAG,EAAE,OAAO,CAAC,EACz3R,EAAS,CAAC,EASvV,GAAS,gBAAoB,EAAW,EAAqnB,GAAY,GAAG,CAAC,CAAC,GAAG,OAAO,GAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,UAAU,QAAQ,SAAS,OAAO,CAAC,CAAC,KAAK,GAAG,EAAE,IAAI,IAAI,GAAG,EAAE,OAAO,MAK9qB,GAAgB,KAAkI,GAAa,IAA6I,GAAkB,IAAU,EAAc,CAAC,EAIhd,EAAU,CAAC,EAWJ,EAAI,GAAG,GAAG,KAAK,MAAM,EAAE,GAAG,EAAE,GAAgB,EAAK,GAAG,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAkvB,GAAe,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,UAAU,EAAE,WAK/G,EAAQ,GAAG,CAAC,CAAC,EAAE,SAAS,EAAY,EAAE,EAAE,QAAQ,IAAI,IAAI,IAAA,IAAW,EAAE,QAAQ,MAAM,IAGxlB,EAAe,GAAG,GAAG,GAAG,OAAO,GAAG,GAAG,SAAS,MAAmB,GAAQ,GAAU,GAAA,wCACzU,GAAU,YAAkB,GAAW;QACrC,GAAK,CAAK,EAAE;2BACO,GAAK,EAAI,EAAE;;;;;;uBAMf,EAAE,IAAI;;oBAET,EAAE,IAAI;;8BAEI,EAAE,KAAK;mHAC8E,EAAE,IAAI;;;;;;;;;2BAS9F,EAAQ,mGAAmG,EAAE,IAAI;uCACrG,EAAK,yCAAyC,EAAE,KAAK;;;oBAGxE,EAAE,IAAI;yBACD,EAAE,IAAI;;;uBAGR,EAAQ;uBACR,GAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+Bu6J,GAAK,IAAQ,CAAC,MAAM,OAAO,SAAS,KAAK,OAAO,SAAS,QAAQ,SAAS,UAAU,aAAa,GAAG,CAAK,GAAgB,GAAK,IAAQ,CAAC,WAAW,EAAE,KAAK,OAAO,aAAa,EAAE,OAAO,aAAa,GAAG,GAAG,CAAK,GAC3oK,EAAE,GAAI,8CAA8C,EAAG,MACvD,EAAK,CAAC,mBAAmB,cAAc,EAAsD,EAAM,CAAC,WAAW,EAAK,SAAS,GAAG,WAAW,IAAI,MAAM,UAAU,cAAc,UAAU,KC1GqJ,SAAgB,IAAa,CAAC,GAAG,CAAC,IAAM,EAAI,aAAa,QAAQ,EAAW,EAAE,OAAO,EAAI,KAAK,MAAM,CAAG,EAAE,IAAK,MAAM,CAAC,OAAO,IAAK,CAAC,CAAC,SAAS,GAAY,EAAU,EAAU,CAAC,IAAM,EAAE,CAAC,UAAU,GAAK,YAAU,YAAU,GAAG,IAAI,KAAK,CAAA,CAAE,YAAY,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,aAAa,QAAQ,GAAY,KAAK,UAAU,CAAC,CAAC,CAAE,MAAM,CAAC,CAAC,EAAO,cAAc,IAAI,YAAY,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,CAAC,SAAgB,IAAoB,CAAW,IAAS,QAAY,EAAO,cAAc,IAAI,YAAY,oBAAoB,CAAC,CAAE,CAGz0B,SAAS,GAAa,EAAE,CAAC,GAAU,IAAS,QAAa,EAAS,EAAE,OAAO,IAAM,EAAE,EAAa,EAAQ,CAAC,CAAC,GAAG,UAAa,MAAC,GAAS,CAAC,EAAE,QAAqG,IAAvF,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,AAAW,EAAE,OAAK,UAAU,CAAC,EAAE,UAAU,KAAK,SAAS,CAAE,EAAK,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,GAAK,EAAE,KAAK,UAAU,UAAU,CAAC,kBAAkB,SAAS,WAAW,SAAS,aAAa,SAAS,mBAAmB,QAAQ,CAAC,EAAE,IAAM,EAAE,SAAS,cAAc,QAAQ,EAAE,EAAE,MAAM,GAAK,EAAE,IAAI,+CAA+C,IAAQ,SAAS,KAAK,YAAY,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,IAAI,EAAE,EAAE,KAAK,SAAS,EAAM,CAAC,aAAa,EAAI,CAAC,CAAE,CAAC,EAAE,cAAc,KAAS,CAAC,EAAQ,EAAE,KAAK,UAAU,SAAS,CAAC,kBAAkB,EAAQ,UAAU,SAAS,WAAW,SAAS,aAAa,GAAG,UAAU,UAAU,SAAS,mBAAmB,QAAQ,CAAC,CAAxM,CAA0M,CAAoS,SAAS,GAAO,EAAE,CAAC,OAAoB,EAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,aAAa,eAAe,gBAAgB,IAAI,GAAG,QAAQ,SAAS,UAAU,aAAa,EAAE,OAAO,OAAOG,EAAE,OAAO,UAAU,SAAS,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAE,GAAG,EAAE,SAASA,EAAE,KAAK,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,MAAM,EAAE,KAAK,EAAE,SAASA,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,QAAQ,CAAC,KAAK,WAAW,QAAQA,EAAE,GAAG,SAASA,EAAE,OAAO,SAAS,GAAGA,EAAE,KAAKA,EAAE,IAAI,EAAE,OAAO,OAAO,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,YAAY,UAAU,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAwB,IAAW,CAAC,GAAK,CAAC,EAAK,GAASC,EAAS,EAAK,EAAO,CAAC,EAAS,GAAaA,EAAS,EAAK,EAAO,CAAC,EAAU,GAAcA,EAAS,EAAK,EAAO,CAAC,EAAU,GAAcA,EAAS,EAAK,EAAygB,GAAvgB,MAAc,CAAC,IAAM,EAAE,GAAY,EAAM,GAAqB,EAAa,EAAE,SAAS,EAAE,EAAa,EAAE,SAAS,GAArE,EAAQ,EAAI,EAA4D,GAAa,CAAC,EAAE,IAAM,MAAO,CAAC,IAAM,EAAG,GAAY,EAAK,IAAI,EAAa,EAAG,SAAS,EAAE,EAAa,EAAG,SAAS,GAAG,EAAY,EAAI,EAAE,EAAQ,EAAI,CAAE,EAAQ,EAAQ,GAAG,GAAa,EAAE,MAAM,EAAiG,OAA/F,EAAO,iBAAiB,qBAAqB,CAAE,EAAE,EAAO,iBAAiB,aAAa,CAAO,MAAY,CAAC,EAAO,oBAAoB,qBAAqB,CAAE,EAAE,EAAO,oBAAoB,aAAa,CAAO,CAAE,CAAE,EAAE,CAAC,CAAC,EAAK,CAAC,EAAK,OAAO,KAAK,IAAM,GAAM,EAAE,IAAI,CAAC,GAAY,EAAE,CAAC,EAAE,EAAQ,EAAK,EAAE,EAAY,EAAK,CAAE,EAAE,OAAoB,EAAM,MAAM,CAAC,KAAK,SAAS,aAAa,QAAQ,kBAAkB,UAAU,UAAU,aAAa,MAAM,CAAC,SAAS,QAAQ,KAAK,GAAG,MAAM,GAAG,OAAO,gEAAgE,OAAO,GAAG,QAAQ,OAAO,eAAe,SAAS,cAAc,OAAO,WAAW,CAAI,EAAE,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS,8DAA8D,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,cAAc,OAAO,MAAM,OAAO,SAAS,IAAI,UAAU,aAAa,QAAQ,GAAG,aAAa,GAAG,WAAW,qBAAqB,eAAe,4BAA4B,qBAAqB,4BAA4B,OAAO,oBAAoB,UAAU,6BAA6B,MAAM,EAAE,IAAI,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,GAAG,UAAU,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAE,IAAI,aAAa,CAAC,EAAE,SAAS,SAAS,CAAC,EAAe,EAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,GAAG,WAAW,GAAG,EAAE,SAAS,CAAC,wMAAwM,IAAiB,EAAK,IAAI,CAAC,KAAK,WAAW,UAAU,OAAO,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,GAAuB,EAAM,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,CAAc,EAAK,GAAO,CAAC,MAAM,qBAAqB,KAAK,8DAA8D,GAAG,GAAK,OAAO,EAAI,CAAC,EAAe,EAAK,GAAO,CAAC,MAAM,YAAY,KAAK,6EAA6E,GAAG,EAAU,IAAI,CAAY,CAAC,EAAe,EAAK,GAAO,CAAC,MAAM,wBAAwB,KAAK,sFAAsF,GAAG,EAAU,IAAI,CAAY,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,SAAS,OAAO,IAAI,EAAE,UAAU,GAAG,eAAe,UAAU,EAAE,SAAS,CAAC,EAAsB,EAAK,SAAS,CAAC,KAAK,SAAS,MAAM,EAAI,EAAK,EAAE,YAAY,EAAK,EAAU,CAAS,EAAE,SAAS,cAAc,CAAC,EAAe,EAAK,SAAS,CAAC,KAAK,SAAS,MAAM,EAAI,EAAK,EAAE,YAAY,EAAY,EAAI,EAAE,SAAS,UAAU,CAAC,EAAe,EAAK,SAAS,CAAC,KAAK,SAAS,MAAM,EAAI,EAAK,EAAE,YAAY,EAAK,GAAM,EAAK,EAAE,SAAS,sBAAsB,CAAC,EAAe,EAAK,SAAS,CAAC,KAAK,SAAS,MAAM,EAAI,EAAI,EAAE,YAAY,EAAK,GAAK,EAAI,EAAE,SAAS,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,6BAHj3J,IAAsC,IAAuH,EAAc,GAAY,aAA8E,EAAM,eAGye,EAAI,IAAU,CAAC,OAAO,GAAG,QAAQ,SAAS,aAAa,GAAG,OAAO,EAAQ,OAAO,aAAa,EAAE,OAAO,OAAO,UAAU,WAAW,EAAQ,0CAA0C,UAAU,MAAM,EAAQ,UAAU,EAAE,IAAI,WAAW,EAAK,SAAS,GAAG,WAAW,IAAI,WAAW,QAAQ,MCEnkC,SAAwB,GAAS,EAAM,CAAC,GAAa,EAAE,IAAM,GAAK,EAAM,IAAqB,EAAM,MAAM,CAAC,aAAa,EAAM,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,SAAS,GAAG,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAE,IAAI,cAAc,CAAC,EAAE,SAAS,CAAK,CAAC,EAAE,EAAM,KAAK,CAAC,EAAE,KAAkB,EAAK,IAAI,CAAC,KAAK,EAAE,UAAU,UAAU,MAAM,CAAC,SAAS,KAAK,MAAM,UAAU,eAAe,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAoB,EAAM,SAAS,CAAC,UAAU,KAAK,MAAM,CAAC,GAAG,EAAM,MAAM,MAAM,OAAO,WAAW,EAAE,KAAK,UAAU,aAAa,EAAE,OAAO,MAAM,UAAU,WAAW,CAAI,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,GAAK,CAAC,SAAS,KAAK,WAAW,GAAG,cAAc,GAAG,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,CAAC,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,SAAS,OAAO,eAAe,gBAAgB,IAAI,EAAE,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,SAAS,GAAG,EAAE,SAAS,CAAc,EAAK,IAAI,CAAC,KAAK,IAAI,aAAa,GAAG,EAAM,KAAK,OAAO,MAAM,CAAC,eAAe,OAAO,QAAQ,aAAa,EAAE,SAAsB,EAAK,GAAS,CAAC,OAAO,EAAI,CAAC,CAAC,CAAC,EAAe,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,GAAG,WAAW,IAAI,MAAM,sBAAsB,EAAE,SAAS,EAAM,OAAO,CAAC,EAAe,EAAM,IAAI,CAAC,KAAKC,GAAS,OAAO,SAAS,IAAI,WAAW,MAAM,CAAC,UAAU,aAAa,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,OAAO,GAAG,QAAQ,SAAS,aAAa,GAAG,WAAW,UAAU,MAAM,UAAU,eAAe,OAAO,SAAS,GAAG,WAAW,GAAG,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,cAAc,OAAO,MAAM,CAAC,QAAQ,QAAQ,WAAW,CAAC,EAAE,SAAsB,EAAK,OAAO,CAAC,KAAK,eAAe,EAAE,uKAAuK,CAAC,CAAC,CAAC,EAAE,6BAA6B,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAI,cAAc,EAAQ,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,KAAK,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAI,iBAAiB,CAAC,CAAC,eAAe,eAAe,EAAE,CAAC,WAAW,QAAQ,EAAE,CAAC,OAAO,OAAO,EAAE,CAAC,uBAAuB,uBAAuB,EAAE,CAAC,iBAAiB,UAAU,EAAE,CAAC,eAAe,QAAQ,EAAE,CAAC,gBAAgB,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,SAAS,OAAO,IAAI,WAAW,QAAQ,YAAY,aAAa,GAAG,WAAW,wBAAwB,OAAO,aAAa,EAAE,OAAO,SAAS,KAAK,MAAM,SAAS,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,GAAG,QAAQ,SAAS,aAAa,GAAG,OAAO,iCAAiC,MAAM,EAAE,IAAI,WAAW,IAAI,SAAS,GAAG,QAAQ,cAAc,WAAW,QAAQ,EAAE,SAAS,KAAK,CAAC,EAAe,EAAK,OAAO,CAAC,SAAS,2CAA2C,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,KAAkB,EAAK,IAAI,CAAC,KAAK,EAAE,OAAO,SAAS,IAAI,WAAW,UAAU,OAAO,MAAM,CAAC,MAAM,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,EAAe,EAAK,IAAI,CAAC,KAAK,wBAAwB,UAAU,OAAO,MAAM,CAAC,MAAM,UAAU,WAAW,MAAM,EAAE,SAAS,cAAc,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,GAAG,WAAW,IAAI,MAAM,uBAAuB,EAAE,SAAS,CAAC,EAAM,KAAK,6RAAgS,IAAI,KAAK,CAAA,CAAE,YAAY,EAAE,IAAI,EAAM,KAAK,IAAI,IAAiB,EAAK,SAAS,CAAC,KAAK,SAAS,QAAQ,GAAmB,UAAU,OAAO,MAAM,CAAC,WAAW,OAAO,OAAO,OAAO,QAAQ,EAAE,KAAK,UAAU,MAAM,wBAAwB,OAAO,SAAS,EAAE,SAAS,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,GAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,wBAP5tH,IAAuJ,KAAwI,EAA2DA,GAAS,6BAAmC,GAAG,CAAC,CAAC,gBAAgB,gCAAgC,EAAE,CAAC,UAAU,6BAA6B,EAAE,CAAC,UAAU,4BAA4B,CAAC,KCKpkB,SAAS,IAAa,CAAI,YAAO,SAAW,KAAmB,GAAG,CAAC,GAAG,4BAA4B,KAAK,SAAS,QAAQ,EAAE,OAAO,IAAI,EAAE,SAAS,cAAc,uBAAuB,EAAM,IAAG,EAAE,SAAS,cAAc,MAAM,EAAE,EAAE,KAAK,WAAW,SAAS,KAAK,YAAY,CAAC,GAAG,IAAM,EAAK,0DAA6D,EAAE,UAAU,IAAK,EAAE,QAAQ,EAAK,MAAM,CAAC,CAAC,CAAguB,SAAS,IAAQ,CAAC,GAAK,CAAC,EAAM,GAAUC,EAAS,EAAK,EAAE,MAAc,CAAC,IAAM,EAAE,eAAe,EAAS,EAAI,EAAE,IAAI,EAAE,UAAU,aAAa,CAAC,CAAE,EAAE,CAAC,CAAC,EAAE,GAAK,CAAC,QAAM,EAAM,GAAG,CAAC,OAAO,UAAU,OAAO,MAAM,KAAK,CAAC,CAAC,EAAQ,GAAO,GAAM,SAAS,CAAC,EAAA,CAAG,OAAO,GAAG,EAAE,SAAS,EAAE,SAAS,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,GAAO,CAAC,EAAM,OAAO,OAAO,KAAK,IAAM,EAAI,GAAK,EAAM,IAAI,GAAG,CAAC,IAAM,EAAE,EAAa,EAAE,OAAO,EAAE,OAAoB,EAAM,OAAO,CAAC,cAAc,GAAK,IAAA,GAAU,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,QAAQ,SAAS,WAAW,SAAS,SAAS,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,UAAU,SAAS,SAAS,EAAE,IAAI,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,KAAK,KAAK,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,WAAW,GAAG,EAAE,SAAS,EAAE,QAAQ,OAAO,EAAE,QAAQ,IAAI,CAAC,EAAe,EAAM,OAAO,CAAC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,WAAW,GAAG,EAAE,SAAS,CAAC,EAAK,EAAE,QAAQ,KAAK,EAAE,EAAQ,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAI,IAAI,IAAI,EAAE,EAAE,CAAE,CAAC,EAAE,OAAoB,EAAK,MAAM,CAAC,UAAU,cAAc,SAAS,EAAE,aAAa,mBAAmB,MAAM,CAAC,OAAO,GAAG,QAAQ,OAAO,WAAW,SAAS,SAAS,SAAS,aAAa,aAAa,EAAE,OAAO,UAAU,sFAAsF,gBAAgB,qFAAqF,EAAE,SAAsB,EAAM,MAAM,CAAC,UAAU,UAAU,SAAS,CAAC,EAAI,EAAK,EAAE,EAAI,EAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAOxnF,SAAwB,GAAM,EAAM,CAAC,GAAa,EAAM,UAAU,EAAM,eAAe,EAAE,GAAK,CAAC,EAAI,GAAO,GAAS,EAAQ,EAAQ,EAAM,IAAS,CAAC,EAAK,GAASA,EAAS,EAAE,EAAO,CAAC,EAAK,GAASA,EAAS,EAAE,EAAE,MAAc,CAAC,GAAY,EAAE,EAAQ,EAAO,SAAS,SAAS,QAAQ,MAAM,EAAE,GAAG,GAAG,EAAE,EAAQ,EAAO,SAAS,IAAI,EAAE,IAAM,MAAO,EAAQ,EAAO,SAAS,IAAI,EAA2C,OAAzC,EAAO,iBAAiB,aAAa,CAAE,MAAY,EAAO,oBAAoB,aAAa,CAAE,CAAE,EAAE,CAAC,CAAC,EACpd,MAAc,CAAC,GAAG,OAAO,SAAW,KAAa,EAAM,UAAU,OAAO,IAAM,EAAK,GAAU,EAAO,SAAS,SAAS,QAAQ,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,EAAK,QAAU,CAAC,SAAS,OAAO,kBAAkB,KAAK,SAAS,KAAK,KAAE,SAAS,MAAM,GAAG,EAAK,GAAG,KAAK,EAAM,QAAO,IAAI,EAAE,SAAS,cAAc,0BAA0B,EAAM,IAAG,EAAE,SAAS,cAAc,MAAM,EAAE,EAAE,KAAK,cAAc,SAAS,KAAK,YAAY,CAAC,IAAM,CAAC,EAAE,SAAS,oBAAoB,KAAK,EAAE,OAAO,KAAE,EAAE,QAAQ,EAAK,GAAG,EAAE,CAAC,CAAC,EACle,MAAc,CAAI,OAAO,SAAW,MAAmB,SAAS,KAAK,MAAM,cAAc,EAAQ,2CAA2C,GAAG,EAAE,CAAC,CAAO,CAAC,EAAE,IAAM,EAAK,GAAG,IAAI,QAAQ,IAAO,KAAK,IAAO,OAAO,IAAI,IAAI,IAAO,KAAK,IAAO,OAAO,IAAO,GAAG,IAAI,KAAK,EAAK,WAAW,EAAE,GAAG,EAAE,OAAoB,EAAM,SAAS,CAAK,MAAI,UAAU,KAAK,MAAM,CAAC,GAAG,EAAM,MAAM,MAAM,OAAO,SAAS,WAAW,OAAO,GAAG,MAAM,EAAE,IAAI,WAAW,CAAI,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,WAAW,kBAAkB,eAAe,4BAA4B,qBAAqB,4BAA4B,aAAa,aAAa,EAAE,MAAM,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,SAAS,KAAK,OAAO,SAAS,QAAQ,EAAQ,SAAS,SAAS,UAAU,aAAa,QAAQ,OAAO,oBAAoB,EAAQ,WAAW,eAAe,WAAW,SAAS,IAAI,GAAG,OAAO,EAAQ,GAAG,EAAE,EAAE,SAAS,CAAc,EAAK,IAAI,CAAC,KAAK,IAAI,aAAa,GAAG,EAAM,KAAK,OAAO,MAAM,CAAC,eAAe,OAAO,QAAQ,cAAc,YAAY,OAAO,EAAE,SAAsB,EAAK,GAAS,CAAC,KAAK,EAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAsB,EAAK,MAAM,CAAC,aAAa,OAAO,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,CAAC,EAAE,SAAS,GAAM,KAAK,CAAC,EAAE,KAAK,CAAC,IAAM,EAAG,EAAK,CAAC,EAAE,OAAoB,EAAK,IAAI,CAAC,KAAK,EAAE,eAAe,EAAG,OAAO,IAAA,GAAU,UAAU,UAAU,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,OAAO,GAAG,QAAQ,SAAS,aAAa,GAAG,WAAW,EAAG,wBAAwB,cAAc,SAAS,GAAG,WAAW,IAAI,cAAc,UAAU,MAAM,EAAG,EAAE,IAAI,EAAE,KAAK,eAAe,OAAO,WAAW,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC,CAAE,CAAC,CAAC,CAAC,EAAe,EAAM,OAAO,CAAC,MAAM,CAAC,YAAY,MAAM,QAAQ,cAAc,WAAW,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAM,IAAI,CAAC,KAAK,GAAS,OAAO,SAAS,IAAI,WAAW,aAAa,8BAA8B,MAAM,8BAA8B,MAAM,CAAC,OAAO,GAAG,QAAQ,EAAQ,QAAQ,SAAS,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,aAAa,GAAG,WAAW,uBAAuB,MAAM,UAAU,SAAS,GAAG,WAAW,IAAI,eAAe,MAAM,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,cAAc,OAAO,MAAM,CAAC,QAAQ,QAAQ,WAAW,CAAC,EAAE,SAAsB,EAAK,OAAO,CAAC,KAAK,eAAe,EAAE,uKAAuK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAS,UAAU,CAAC,CAAC,EAAe,EAAK,IAAI,CAAC,KAAK,wBAAwB,aAAa,0CAA0C,MAAM,gCAAgC,MAAM,CAAC,OAAO,GAAG,QAAQ,SAAS,QAAQ,cAAc,WAAW,SAAS,aAAa,GAAG,OAAO,kCAAkC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAE,KAAK,eAAe,MAAM,EAAE,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAM,aAAa,IAAmB,EAAK,GAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAsB,EAAK,MAAM,CAAC,aAAa,OAAO,UAAU,KAAK,MAAM,CAAC,SAAS,QAAQ,KAAK,GAAG,MAAM,GAAG,OAAO,2CAA2C,OAAO,GAAG,QAAQ,OAAO,oBAAoB,iBAAiB,QAAQ,EAAE,aAAa,GAAG,WAAW,qBAAqB,eAAe,4BAA4B,qBAAqB,4BAA4B,OAAO,iCAAiC,UAAU,4BAA4B,EAAE,SAAS,GAAM,QAAQ,EAAE,KAAK,EAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,IAAM,EAAG,EAAK,CAAC,EAAE,OAAoB,EAAM,IAAI,CAAC,KAAK,EAAE,eAAe,EAAG,OAAO,IAAA,GAAU,MAAM,CAAC,OAAO,GAAG,QAAQ,OAAO,cAAc,SAAS,WAAW,SAAS,eAAe,SAAS,IAAI,EAAE,aAAa,GAAG,WAAW,EAAG,uBAAuB,cAAc,eAAe,OAAO,MAAM,EAAG,EAAE,IAAI,EAAE,MAAM,SAAS,GAAG,WAAW,GAAG,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,OAAO,eAAe,YAAY,MAAM,cAAc,QAAQ,eAAe,QAAQ,cAAc,OAAO,SAAS,EAAM,EAAE,CAAC,EAAE,IAAI,cAAc,OAAO,IAAI,eAAe,SAAS,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,iCAb34H,IAAsC,IAAoD,IAAmL,EAI8D,GAAY,EAA4D,GAAS,6BAAmC,GAAM,CAAC,CAAC,cAAc,GAAG,EAAE,CAAC,SAAS,OAAO,EAAE,CAAC,eAAe,eAAe,EAAE,CAAC,OAAO,OAAO,EAAE,CAAC,eAAe,eAAe,CAAC,EAAQ,EAAM,CAAC,IAAiB,EAAK,OAAO,CAAC,EAAE,yBAAyB,CAAC,EAAE,QAAqB,EAAK,OAAO,CAAC,EAAE,uDAAuD,CAAC,EAAE,gBAA6B,EAAK,OAAO,CAAC,EAAE,kCAAkC,CAAC,EAAE,QAAqB,EAAK,OAAO,CAAC,EAAE,2FAA2F,CAAC,CAAC,EAA2vD,GAAU,CAAC,IAAI,CAAC,2DAA2D,sLAAsL,EAAE,8BAA8B,CAAC,uCAAuC,0JAA0J,EAAE,uBAAuB,CAAC,gCAAgC,mJAAmJ,EAAE,uBAAuB,CAAC,gCAAgC,mJAAmJ,EAAE,0BAA0B,CAAC,mCAAmC,sJAAsJ,EAAE,uBAAuB,CAAC,gCAAgC,mJAAmJ,EAAE,gCAAgC,CAAC,+BAA+B,qHAAqH,EAAE,gBAAgB,CAAC,wCAAwC,gHAAgH,EAAE,gBAAgB,CAAC,oCAAoC,yGAAyG,EAAE,SAAS,CAAC,uBAAuB,mFAAmF,EAAE,wBAAwB,CAAC,uBAAuB,sFAAsF,EAAE,WAAW,CAAC,iBAAiB,uCAAuC,EAAE,SAAS,CAAC,eAAe,qCAAqC,EAAE,WAAW,CAAC,gBAAgB,0DAA0D,CAAC,EASxiC,EAAoB,GAAM,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,EAAE,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,gBAAgB,EAAI,EAAE,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,EAAK,CAAC,CAAC,KCdjtI,SAAwB,GAAS,EAAO,EAAa,CAAC,MAAM,CAAC,YAAY,6IAA6I,QAAQ,uEAAuE,OAAO,0BAA0B,YAAY,qEAAqE,MAAM,gBAAgB,CAAE"}