{"version":3,"file":"EditorialVisuals.LPU24mYf.mjs","names":["p","m","C","r","n","a","u","c","d","g","c","u","p","n","r","t","o","d","css","_Fragment","React.useState","React.useRef"],"sources":["https:/framerusercontent.com/modules/6HaRNLvYKDgK0IadxGdx/D7uaziDxGBlAD8iQIOgu/dPXVqTSfS-0.js","https:/framerusercontent.com/modules/6HaRNLvYKDgK0IadxGdx/D7uaziDxGBlAD8iQIOgu/dPXVqTSfS-1.js","https:/framerusercontent.com/modules/6HaRNLvYKDgK0IadxGdx/D7uaziDxGBlAD8iQIOgu/dPXVqTSfS.js","https:/framerusercontent.com/modules/El0Rff96flR4F5X4SKq0/NyEMViwXeO8VOpDyNJMU/ogLRJnfb4.js","https:/framerusercontent.com/modules/HIPa0N6JsTFOfRJ1YBkU/GcQVFAhWuP8TcLqUsDuG/EditorialVisuals.js"],"sourcesContent":["function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t;}var e,r,i=Object.create,n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,l=(t,e)=>function(){try{return e||(0,t[o(t)[0]])((e={exports:{}}).exports,e),e.exports;}catch(t){throw e=0,t;}},h=(t,e,r,i)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let a of o(e))u.call(t,a)||a===r||n(t,a,{get:()=>e[a],enumerable:!(i=s(e,a))||i.enumerable});return t;},c=(t,e,r)=>(r=null!=t?i(a(t)):{},h(// If the importer is in node compatibility mode or this is not an ESM\n    // file that has been converted to a CommonJS file using a Babel-\n    // compatible transform (i.e. \"__esModule\" has not been set), then set\n    // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n    !e&&t&&t.__esModule?r:n(r,\"default\",{value:t,enumerable:!0}),t)),f=l({\"../../../node_modules/dataloader/index.js\"(t,e){var r,i=/* @__PURE__ */function(){function t(t,e){if(\"function\"!=typeof t)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: \"+t+\".\");this._batchLoadFn=t,this._maxBatchSize=function(t){if(!(!t||!1!==t.batch))return 1;var e=t&&t.maxBatchSize;if(void 0===e)return 1/0;if(\"number\"!=typeof e||e<1)throw TypeError(\"maxBatchSize must be a positive number: \"+e);return e;}(e),this._batchScheduleFn=function(t){var e=t&&t.batchScheduleFn;if(void 0===e)return n;if(\"function\"!=typeof e)throw TypeError(\"batchScheduleFn must be a function: \"+e);return e;}(e),this._cacheKeyFn=function(t){var e=t&&t.cacheKeyFn;if(void 0===e)return function(t){return t;};if(\"function\"!=typeof e)throw TypeError(\"cacheKeyFn must be a function: \"+e);return e;}(e),this._cacheMap=function(t){if(!(!t||!1!==t.cache))return null;var e=t&&t.cacheMap;if(void 0===e)return /* @__PURE__ */new Map;if(null!==e){var r=[\"get\",\"set\",\"delete\",\"clear\"].filter(function(t){return e&&\"function\"!=typeof e[t];});if(0!==r.length)throw TypeError(\"Custom cacheMap missing methods: \"+r.join(\", \"));}return e;}(e),this._batch=null,this.name=e&&e.name?e.name:null;}var e=t.prototype;return e.load=function(t){if(null==t)throw TypeError(\"The loader.load() function must be called with a value, but got: \"+String(t)+\".\");var e=function(t){var e=t._batch;if(null!==e&&!e.hasDispatched&&e.keys.length<t._maxBatchSize)return e;var r={hasDispatched:!1,keys:[],callbacks:[]};return t._batch=r,t._batchScheduleFn(function(){(function(t,e){var r;if(e.hasDispatched=!0,0===e.keys.length){o(e);return;}try{r=t._batchLoadFn(e.keys);}catch(r){return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: \"+String(r)+\".\"));}if(!r||\"function\"!=typeof r.then)return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: \"+String(r)+\".\"));r.then(function(t){if(!a(t))throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: \"+String(t)+\".\");if(t.length!==e.keys.length)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.\\n\\nKeys:\\n\"+String(e.keys)+\"\\n\\nValues:\\n\"+String(t));o(e);for(var r=0;r<e.callbacks.length;r++){var i=t[r];i instanceof Error?e.callbacks[r].reject(i):e.callbacks[r].resolve(i);}}).catch(function(r){s(t,e,r);});})(t,r);}),r;}(this),r=this._cacheMap,i=this._cacheKeyFn(t);if(r){var n=r.get(i);if(n){var u=e.cacheHits||(e.cacheHits=[]);return new Promise(function(t){u.push(function(){t(n);});});}}e.keys.push(t);var l=new Promise(function(t,r){e.callbacks.push({resolve:t,reject:r});});return r&&r.set(i,l),l;},e.loadMany=function(t){if(!a(t))throw TypeError(\"The loader.loadMany() function must be called with Array<key> but got: \"+t+\".\");for(var e=[],r=0;r<t.length;r++)e.push(this.load(t[r]).catch(function(t){return t;}));return Promise.all(e);},e.clear=function(t){var e=this._cacheMap;if(e){var r=this._cacheKeyFn(t);e.delete(r);}return this;},e.clearAll=function(){var t=this._cacheMap;return t&&t.clear(),this;},e.prime=function(t,e){var r=this._cacheMap;if(r){var i,n=this._cacheKeyFn(t);void 0===r.get(n)&&(e instanceof Error?(i=Promise.reject(e)).catch(function(){}):i=Promise.resolve(e),r.set(n,i));}return this;},t;}(),n=\"object\"==typeof process&&\"function\"==typeof process.nextTick?function(t){r||(r=Promise.resolve()),r.then(function(){process.nextTick(t);});}:\"function\"==typeof setImmediate?function(t){setImmediate(t);}:function(t){setTimeout(t);};function s(t,e,r){o(e);for(var i=0;i<e.keys.length;i++)t.clear(e.keys[i]),e.callbacks[i].reject(r);}function o(t){if(t.cacheHits)for(var e=0;e<t.cacheHits.length;e++)t.cacheHits[e]();}function a(t){return\"object\"==typeof t&&null!==t&&\"number\"==typeof t.length&&(0===t.length||t.length>0&&Object.prototype.hasOwnProperty.call(t,t.length-1));}e.exports=i;}}),d=c(f(),1);import{yieldToMain as g}from\"framer\";// ../../shared/src/yield.ts\nfunction v(t){return\"function\"==typeof t?t():t;}var y={background:0,\"user-visible\":1,\"user-blocking\":2};function p(t,e){return y[t]>y[e];}// ../../library/src/utils/schedulerPriority.ts\nfunction m(t){let e;for(let r of t){let t=v(r);if((void 0===e||p(t,e))&&(e=t),\"user-blocking\"===e)break;}return e;}// src/code-generation/components/cms/bundled/BufferReader.ts\nvar w={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},b=(e=class e{getOffset(){return this.offset;}ensureLength(t){let e=this.bytes.length;if(!(this.offset+t<=e))throw Error(\"Reading out of bounds\");}readUint8(){let t=w.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=w.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=w.Uint32;this.ensureLength(t);let e=this.view.getUint32(this.offset);return this.offset+=t,e;}readUint64(){let t=this.readBigUint64();return Number(t);}readBigUint64(){let t=w.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=w.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=w.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=w.Int32;this.ensureLength(t);let e=this.view.getInt32(this.offset);return this.offset+=t,e;}readInt64(){let t=this.readBigInt64();return Number(t);}readBigInt64(){let t=w.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=w.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=w.Float64;this.ensureLength(t);let e=this.view.getFloat64(this.offset);return this.offset+=t,e;}readBytes(t){let e=this.offset,r=e+t,i=this.bytes.subarray(e,r);return this.offset=r,i;}readString(){let t=this.readUint32(),r=this.readBytes(t);return e.textDecoder.decode(r);}readJson(){let t=this.readString();return JSON.parse(t);}constructor(e){t(this,\"bytes\",void 0),t(this,\"offset\",0),t(this,\"view\",void 0),this.bytes=e,this.view=I(this.bytes);}},// TextDecoder has no per-decode state unless streaming is enabled. Reusing one class-owned decoder\n// avoids constructing one for every CMS item, where each item gets its own BufferReader.\nt(e,\"textDecoder\",new TextDecoder),e);function I(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as S,yieldToMain as U}from\"framer\";// ../../library/src/utils/utils.ts\nvar k=\"undefined\"!=typeof window,L=k&&\"function\"==typeof window.requestIdleCallback;// src/code-generation/components/cms/bundled/assert.ts\nfunction B(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function E(t){throw Error(`Unexpected value: ${t}`);}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar M=1024,P=1.5,T=t=>2**t-1,F=t=>-(2**(t-1)),x=t=>2**(t-1)-1,N={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:F(8),Int16:F(16),Int32:F(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},A={Uint8:T(8),Uint16:T(16),Uint32:T(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:x(8),Int16:x(16),Int32:x(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function O(t,e,r,i){B(t>=e,t,\"outside lower bound for\",i),B(t<=r,t,\"outside upper bound for\",i);}var R=class{getOffset(){return this.offset;}slice(t=0,e=this.offset){return this.bytes.slice(t,e);}subarray(t=0,e=this.offset){return this.bytes.subarray(t,e);}ensureLength(t){let e=this.bytes.length;if(this.offset+t<=e)return;let r=new Uint8Array(Math.ceil(e*P)+t);r.set(this.bytes),this.bytes=r,this.view=I(r);}writeUint8(t){O(t,N.Uint8,A.Uint8,\"Uint8\");let e=w.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){O(t,N.Uint16,A.Uint16,\"Uint16\");let e=w.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){O(t,N.Uint32,A.Uint32,\"Uint32\");let e=w.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){O(t,N.Uint64,A.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){O(t,N.BigUint64,A.BigUint64,\"BigUint64\");let e=w.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){O(t,N.Int8,A.Int8,\"Int8\");let e=w.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){O(t,N.Int16,A.Int16,\"Int16\");let e=w.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){O(t,N.Int32,A.Int32,\"Int32\");let e=w.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){O(t,N.Int64,A.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){O(t,N.BigInt64,A.BigInt64,\"BigInt64\");let e=w.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=w.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=w.Float64;this.ensureLength(e),this.view.setFloat64(this.offset,t),this.offset+=e;}writeBytes(t){let e=t.length;this.ensureLength(e),this.bytes.set(t,this.offset),this.offset+=e;}encodeString(t){let e=this.encodedStrings.get(t);if(e)return e;let r=this.encoder.encode(t);return this.encodedStrings.set(t,r),r;}writeString(t){let e=this.encodeString(t),r=e.length;this.writeUint32(r),this.writeBytes(e);}writeJson(t){let e=JSON.stringify(t);this.writeString(e);}constructor(){t(this,\"offset\",0),t(this,\"bytes\",new Uint8Array(M)),t(this,\"view\",I(this.bytes)),t(this,\"encoder\",new TextEncoder),t(this,\"encodedStrings\",/* @__PURE__ */new Map);}};// src/utils/typeChecks.ts\nfunction q(t){return\"string\"==typeof t;}function _(t){return Number.isFinite(t);}function j(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar D=class e{static fromString(t){let[r,i,n]=t.split(\"/\").map(Number);return B(_(r),\"Invalid chunkId\"),B(_(i),\"Invalid offset\"),B(_(n),\"Invalid length\"),new e(r,i,n);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(t){let r=t.readUint16(),i=t.readUint32(),n=t.readUint32();return new e(r,i,n);}write(t){t.writeUint16(this.chunkId),t.writeUint32(this.offset),t.writeUint32(this.length);}compare(t){return this.chunkId<t.chunkId?-1:this.chunkId>t.chunkId?1:this.offset<t.offset?-1:this.offset>t.offset?1:(B(this.length===t.length),0);}constructor(e,r,i){t(this,\"chunkId\",void 0),t(this,\"offset\",void 0),t(this,\"length\",void 0),this.chunkId=e,this.offset=r,this.length=i;}};// src/code-generation/components/cms/bundled/models/DatabaseValueModel.ts\nimport{ControlType as C}from\"framer\";function J(t){if(j(t))return 0/* Null */;switch(t.type){case C.Array:return 1/* Array */;case C.Boolean:return 2/* Boolean */;case C.Color:return 3/* Color */;case C.Date:return 4/* Date */;case C.Enum:return 5/* Enum */;case C.File:return 6/* File */;case C.ResponsiveImage:return 10/* ResponsiveImage */;case C.Link:return 7/* Link */;case C.Number:return 8/* Number */;case C.Object:return 9/* Object */;case C.RichText:return 11/* RichText */;case C.String:return 12/* String */;case C.VectorSetItem:return 13/* VectorSetItem */;default:E(t);}}function V(t){let e=t.readUint16(),i=[];for(let n=0;n<e;n++){let e=r.read(t);i.push(e);}return{type:C.Array,value:i};}function W(t,e){for(let i of(t.writeUint16(e.value.length),e.value))r.write(t,i);}function $(t,e,i){let n=t.value.length,s=e.value.length;if(n<s)return -1;if(n>s)return 1;for(let s=0;s<n;s++){let n=t.value[s],o=e.value[s],a=r.compare(n,o,i);if(0!==a)return a;}return 0;}function z(t){return{type:C.Boolean,value:0!==t.readUint8()};}function K(t,e){t.writeUint8(e.value?1:0);}function G(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function H(t){return{type:C.Color,value:t.readString()};}function X(t,e){t.writeString(e.value);}function Q(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function Y(t){let e=t.readInt64(),r=new Date(e);return{type:C.Date,value:r.toISOString()};}function Z(t,e){let r=new Date(e.value),i=r.getTime();t.writeInt64(i);}function tt(t,e){let r=new Date(t.value),i=new Date(e.value);return r<i?-1:r>i?1:0;}function te(t){return{type:C.Enum,value:t.readString()};}function tr(t,e){t.writeString(e.value);}function ti(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tn(t){return{type:C.File,value:t.readString()};}function ts(t,e){t.writeString(e.value);}function to(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function ta(t){return{type:C.Link,value:t.readJson()};}function tu(t,e){t.writeJson(e.value);}function tl(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function th(t){return{type:C.Number,value:t.readFloat64()};}function tc(t,e){t.writeFloat64(e.value);}function tf(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function td(t){let e=t.readUint16(),i={};for(let n=0;n<e;n++){let e=t.readString();i[e]=r.read(t);}return{type:C.Object,value:i};}function tg(t,e){let i=Object.entries(e.value);for(let[e,n]of(t.writeUint16(i.length),i))t.writeString(e),r.write(t,n);}function tv(t,e,i){let n=Object.keys(t.value).sort(),s=Object.keys(e.value).sort();if(n.length<s.length)return -1;if(n.length>s.length)return 1;for(let o=0;o<n.length;o++){let a=n[o],u=s[o];if(a<u)return -1;if(a>u)return 1;let l=t.value[a]??null,h=e.value[u]??null,c=r.compare(l,h,i);if(0!==c)return c;}return 0;}function ty(t){return{type:C.ResponsiveImage,value:t.readJson()};}function tp(t,e){t.writeJson(e.value);}function tm(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tw(t){let e=t.readInt8();if(0===e)return{type:C.RichText,value:t.readUint32()};if(1===e)return{type:C.RichText,value:t.readString()};throw Error(\"Invalid rich text pointer\");}function tb(t,e){if(_(e.value)){t.writeInt8(0),t.writeUint32(e.value);return;}if(q(e.value)){t.writeInt8(1),t.writeString(e.value);return;}throw Error(\"Invalid rich text pointer\");}function tI(t,e){let r=t.value,i=e.value;if(_(r)&&_(i)||q(r)&&q(i))return r<i?-1:r>i?1:0;throw Error(\"Invalid rich text pointer\");}function tS(t){return{type:C.String,value:t.readString()};}function tU(t,e){t.writeString(e.value);}function tk(t,e,r){let i=t.value,n=e.value;return(0/* CaseInsensitive */===r.type&&(i=t.value.toLowerCase(),n=e.value.toLowerCase()),i<n)?-1:i>n?1:0;}function tL(t){return{type:C.VectorSetItem,value:t.readUint32()};}function tB(t,e){t.writeUint32(e.value);}function tE(t,e){let r=t.value,i=e.value;return r<i?-1:r>i?1:0;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return V(t);case 2/* Boolean */:return z(t);case 3/* Color */:return H(t);case 4/* Date */:return Y(t);case 5/* Enum */:return te(t);case 6/* File */:return tn(t);case 7/* Link */:return ta(t);case 8/* Number */:return th(t);case 9/* Object */:return td(t);case 10/* ResponsiveImage */:return ty(t);case 11/* RichText */:return tw(t);case 12/* String */:return tS(t);case 13/* VectorSetItem */:return tL(t);default:E(e);}},t.write=function(t,e){let r=J(e);if(t.writeUint8(r),!j(e))switch(e.type){case C.Array:return W(t,e);case C.Boolean:return K(t,e);case C.Color:return X(t,e);case C.Date:return Z(t,e);case C.Enum:return tr(t,e);case C.File:return ts(t,e);case C.Link:return tu(t,e);case C.Number:return tc(t,e);case C.Object:return tg(t,e);case C.ResponsiveImage:return tp(t,e);case C.RichText:return tb(t,e);case C.VectorSetItem:return tB(t,e);case C.String:return tU(t,e);default:E(e);}},t.compare=function(t,e,r){let i=J(t),n=J(e);if(i<n)return -1;if(i>n)return 1;if(j(t)||j(e))return 0;switch(t.type){case C.Array:return B(e.type===C.Array),$(t,e,r);case C.Boolean:return B(e.type===C.Boolean),G(t,e);case C.Color:return B(e.type===C.Color),Q(t,e);case C.Date:return B(e.type===C.Date),tt(t,e);case C.Enum:return B(e.type===C.Enum),ti(t,e);case C.File:return B(e.type===C.File),to(t,e);case C.Link:return B(e.type===C.Link),tl(t,e);case C.Number:return B(e.type===C.Number),tf(t,e);case C.Object:return B(e.type===C.Object),tv(t,e,r);case C.ResponsiveImage:return B(e.type===C.ResponsiveImage),tm(t,e);case C.RichText:return B(e.type===C.RichText),tI(t,e);case C.VectorSetItem:return B(e.type===C.VectorSetItem),tE(t,e);case C.String:return B(e.type===C.String),tk(t,e,r);default:E(t);}};})(r||(r={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar tM=class e{sortEntries(){this.entries.sort((t,e)=>{for(let i=0;i<this.fieldNames.length;i++){let n=t.values[i],s=e.values[i],o=r.compare(n,s,this.options.collation);if(0!==o)return o;}return t.pointer.compare(e.pointer);});}static async deserialize(t,i){let n=new b(t),s=n.readJson(),o=n.readUint8(),a=[];for(let t=0;t<o;t++){let t=n.readString();a.push(t);}let u=new e(a,{collation:s}),l=n.readUint32(),h=()=>{let t=[];for(let e=0;e<o;e++){let e=r.read(n);t.push(e);}let e=D.read(n);u.entries.push({values:t,pointer:e});};for(let t=0;t<l;t++){let t=i?.();t&&await t,h();}return u;}serialize(){let t=new R;for(let e of(t.writeJson(this.options.collation),t.writeUint8(this.fieldNames.length),this.fieldNames))t.writeString(e);for(let e of(this.sortEntries(),t.writeUint32(this.entries.length),this.entries)){let{values:i,pointer:n}=e;for(let e of i)r.write(t,e);n.write(t);}return t.subarray();}addItem(t,e){let r=this.fieldNames.map(e=>t.getField(e)??null);this.entries.push({values:r,pointer:e});}constructor(e,r){t(this,\"fieldNames\",void 0),t(this,\"options\",void 0),t(this,\"entries\",[]),this.fieldNames=e,this.options=r;}},tP=3,tT=250,tF=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],tx=async(t,e)=>{let r=0;for(;;){try{let i=await fetch(t,e);if(!tF.includes(i.status)||++r>tP)return i;}catch(t){if(e?.signal?.aborted||++r>tP)throw t;}await tN(r);}};async function tN(t){let e=Math.floor(tT*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function tA(t,e){let r=tq(e),i=[],n=0;for(let t of r)i.push(`${t.from}-${t.to-1}`),n+=t.to-t.from;let s=new URL(t),o=i.join(\",\");s.searchParams.set(\"range\",o);let a=await tx(s);if(200!==a.status)throw Error(`Request failed: ${a.status} ${a.statusText}`);let u=await a.arrayBuffer(),l=new Uint8Array(u);if(l.length!==n)throw Error(\"Request failed: Unexpected response length\");let h=new tO,c=0;for(let t of r){let e=t.to-t.from,r=c+e,i=l.subarray(c,r);h.write(t.from,i),c=r;}return e.map(t=>h.read(t.from,t.to-t.from));}var tO=class{read(t,e){for(let r of this.chunks){if(t<r.start)break;if(t>r.end)continue;if(t+e>r.end)break;let i=t-r.start,n=i+e;return r.data.slice(i,n);}throw Error(\"Missing data\");}write(t,e){let r=t,i=r+e.length,n=0,s=this.chunks.length;for(;n<s;n++){let t=this.chunks[n];if(B(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let i=r-t.start,n=t.data.subarray(0,i);e=tR(n,e),r=t.start;}break;}}for(;s>n;s--){let t=this.chunks[s-1];if(B(t,\"Missing chunk\"),!(i<t.start)){if(i<t.end){let r=i-t.start,n=t.data.subarray(r);e=tR(e,n),i=t.end;}break;}}let o={start:r,end:i,data:e},a=s-n;this.chunks.splice(n,a,o);}constructor(){t(this,\"chunks\",[]);}};function tR(t,e){let r=t.length+e.length,i=new Uint8Array(r);return i.set(t,0),i.set(e,t.length),i;}function tq(t){B(t.length>0,\"Must have at least one range\");let e=[...t].sort((t,e)=>t.from-e.from),r=[];for(let t of e){let e=r.length-1,i=r[e];i&&t.from<=i.to?r[e]={from:i.from,to:Math.max(i.to,t.to)}:r.push(t);}return r;}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nvar t_=class{async loadModel(){let[t]=await tA(this.options.url,[this.options.range]);return B(t,\"Failed to load model\"),tM.deserialize(t,()=>{let t=m(this.modelPrioritySources);return t?U({batch:!0,priority:t}):void 0;});}async getModel(t){return this.model||(t&&this.modelPrioritySources.add(t),this.modelPromise??=this.loadModel().finally(()=>{this.modelPrioritySources.clear();}),this.model??=await this.modelPromise),this.model;}async lookupItems(t,e){B(t.length===this.fields.length,\"Invalid query length\");let r=await this.getModel(e),i=[r.entries];for(let[r,n]of t.entries()){let t=[];for(let s of i){let i;let o=e?U({batch:!0,priority:v(e)}):void 0;switch(o&&await o,n.type){case\"All\"/* All */:i=[s];break;case\"Equals\"/* Equals */:i=this.queryEquals(s,n,r);break;case\"NotEquals\"/* NotEquals */:i=this.queryNotEquals(s,n,r);break;case\"LessThan\"/* LessThan */:i=this.queryLessThan(s,n,r);break;case\"GreaterThan\"/* GreaterThan */:i=this.queryGreaterThan(s,n,r);break;case\"Contains\"/* Contains */:i=await this.queryContains(s,n,r,e);break;case\"StartsWith\"/* StartsWith */:i=await this.queryStartsWith(s,n,r,e);break;case\"EndsWith\"/* EndsWith */:i=await this.queryEndsWith(s,n,r,e);break;default:E(n);}t.push(...i);}i=t;}let n=[];for(let t of i)for(let r of t){let t=e?U({batch:!0,priority:v(e)}):void 0;t&&await t;let i={};for(let t=0;t<this.options.fieldNames.length;t++){let e=this.options.fieldNames[t],n=r.values[t];i[e]=n;}n.push({pointer:r.pointer.toString(),data:i});}return n;}queryEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=t.slice(i,n+1);return s.length>0?[s]:[];}queryNotEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=[],o=t.slice(0,i);o.length>0&&s.push(o);let a=t.slice(n+1);return a.length>0&&s.push(a),s;}queryLessThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getRightMost(t,r,e.value),n=t.slice(0,i+1);return n.length>0?[n]:[];}let n=this.getLeftMost(t,r,e.value),s=t.slice(0,n);return s.length>0?[s]:[];}queryGreaterThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getLeftMost(t,r,e.value),n=t.slice(i);return n.length>0?[n]:[];}let n=this.getRightMost(t,r,e.value),s=t.slice(n+1);return s.length>0?[s]:[];}queryContains(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.includes(i);});}queryStartsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.startsWith(i);});}queryEndsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.endsWith(i);});}/**\n   * Returns the index of the left most entry that is equal to the target.\n   *\n   * ```text\n   *   Left most\n   *       ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the left most entry that is equal to the target.\n   */getLeftMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];0>r.compare(u,i,this.collation)?n=o+1:s=o;}return n;}/**\n   * Returns the index of the right most entry that is equal to the target.\n   *\n   * ```text\n   *              Right most\n   *                   ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the right most entry that is equal to the target.\n   */getRightMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];r.compare(u,i,this.collation)>0?s=o:n=o+1;}return s-1;}/**\n   * Finds all items that are matching the predicate and groups adjacent items together.\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param predicate The predicate to match the values against.\n   * @returns An array of chunks that match the predicate.\n   */async findItems(t,e,r,i){let n=[],s=0;for(let o=0;o<t.length;o++){let a=r?U({batch:!0,priority:v(r)}):void 0;a&&await a;let u=t[o],l=u.values[e],h=i(l);if(!h){if(s<o){let e=t.slice(s,o);n.push(e);}s=o+1;}}if(s<t.length){let e=t.slice(s);n.push(e);}return n;}constructor(e){t(this,\"options\",void 0),t(this,\"schema\",void 0),t(this,\"fields\",void 0),t(this,\"supportedLookupTypes\",[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */]),t(this,\"modelPromise\",void 0),t(this,\"model\",void 0),t(this,\"modelPrioritySources\",/* @__PURE__ */new Set),t(this,\"collation\",void 0),this.options=e;let r={},i=[];for(let t of this.options.fieldNames){let e=this.options.collectionSchema[t];B(e,\"Missing definition for field\",t),r[t]=e,i.push({type:\"Identifier\",name:t});}this.schema=r,this.fields=i,this.collation=this.options.collation;}};// src/code-generation/components/cms/bundled/models/DatabaseItemModel.ts\nfunction tj(t){let e={},i=t.readUint16();for(let n=0;n<i;n++){let i=t.readString();e[i]=r.read(t);}return e;}// src/code-generation/components/cms/bundled/DatabaseCollection.ts?bundle\nfunction*tD(t){for(let e of t)yield*e.prioritySources;}var tC=class{scanItems(t){return this.itemsPromise?this.isScanning&&t&&this.scanPrioritySources.add(t):(this.isScanning=!0,t&&this.scanPrioritySources.add(t),this.itemsPromise=tx(this.url).then(async t=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer(),r=new Uint8Array(e),i=new b(r),n=[],s=i.readUint32();for(let t=0;t<s;t++){let t=m(this.scanPrioritySources),e=t?g({batch:!0,priority:t}):void 0;e&&await e;let r=i.getOffset(),s=tj(i),o=i.getOffset()-r,a=new D(this.id,r,o),u=a.toString(),l={pointer:u,data:s};this.itemLoader.prime({pointer:u,prioritySources:/* @__PURE__ */new Set},l),n.push(l);}return n;}).finally(()=>{this.isScanning=!1,this.scanPrioritySources.clear();})),this.itemsPromise;}resolveItem(t,e){let r=this.itemPrioritySources.get(t);r||(r=/* @__PURE__ */new Set,this.itemPrioritySources.set(t,r)),e&&r.add(e);let i=this.itemLoader.load({pointer:t,prioritySources:r}),n=()=>this.itemPrioritySources.delete(t);return i.then(n,n),i;}constructor(e,r){t(this,\"id\",void 0),t(this,\"url\",void 0),t(this,\"itemsPromise\",void 0),t(this,\"isScanning\",!1),t(this,\"scanPrioritySources\",/* @__PURE__ */new Set),t(this,\"itemPrioritySources\",/* @__PURE__ */new Map),t(this,\"itemLoader\",new d.default(async t=>{let e=t.map(({pointer:t})=>{let e=D.fromString(t);return{from:e.offset,to:e.offset+e.length};}),r=await tA(this.url,e),i=[];for(let e=0;e<r.length;e++){let n=m(tD(t)),s=n?g({batch:!0,priority:n}):void 0;s&&await s;let o=r[e];B(o,\"Missing range bytes\");let a=new b(o),u=tj(a),l=t[e]?.pointer;B(l,\"Missing pointer\"),i.push({pointer:l,data:u});}return i;},{// capping to 250 avoids overly long URLs that can cause requests to fail with 414\nmaxBatchSize:250,// Different route workflows can request the same item. Keep DataLoader's cache keyed by the\n// pointer while still carrying the strongest scheduling priority into the shared batch\ncacheKeyFn:t=>t.pointer})),this.id=e,this.url=r;}},tJ=class{async scanItems(t){let e=await Promise.all(this.chunks.map(async e=>e.scanItems(t)));return e.flat();}resolveItems(t,e){return Promise.all(t.map(t=>{let r=D.fromString(t),i=this.chunks[r.chunkId];return B(i,\"Missing chunk\"),i.resolveItem(t,e);}));}compareItems(t,e){let r=D.fromString(t.pointer),i=D.fromString(e.pointer);return r.compare(i);}compareValues(t,e,i){return r.compare(t,e,i);}constructor(e){t(this,\"options\",void 0),t(this,\"id\",void 0),t(this,\"schema\",void 0),t(this,\"indexes\",void 0),t(this,\"resolveRichText\",void 0),t(this,\"resolveVectorSetItem\",void 0),t(this,\"chunks\",void 0),this.options=e,this.chunks=this.options.chunks.map((t,e)=>new tC(e,t)),this.schema=e.schema,this.indexes=e.indexes,this.resolveRichText=e.resolveRichText,this.resolveVectorSetItem=e.resolveVectorSetItem,this.id=e.id;}};export{tJ as DatabaseCollection,t_ as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{jsx as e}from\"react/jsx-runtime\";import{AutoBreakpointVariant as t,ComponentPresetsConsumer as r,Link as n,motion as o}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as i}from\"react\";// ../../library/src/utils/utils.ts\nvar a,l=\"undefined\"!=typeof window,f=l&&\"function\"==typeof window.requestIdleCallback,u=\"preload\";function c(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/i(e)&&u in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as p,createElement as s}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction m(e,...t){if(!e)throw Error(\"Assertion Error\"+(t.length>0?\": \"+t.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar d=((a=d||{})[a.Fragment=1]=\"Fragment\",a[a.Link=2]=\"Link\",a[a.Module=3]=\"Module\",a[a.Tag=4]=\"Tag\",a[a.Text=5]=\"Text\",a);function g(i){let a=/* @__PURE__ */new Map;return l=>{let f=a.get(l);if(f)return f;let u=JSON.parse(l),d=function a(l){switch(l[0]){case 1/* Fragment */:{let[,...e]=l,t=e.map(a);return /*#__PURE__*/s(p,void 0,...t);}case 2/* Link */:{let[,e,...t]=l,r=t.map(a);return /*#__PURE__*/s(n,e,...r);}case 3/* Module */:{let[,n,o,f,u]=l;for(let e of f){let t=o[e];t&&(o[e]=a(t));}for(let e of u){let t=o[e];if(\"string\"!=typeof t)continue;let r=i[t];r&&(c(r)&&r.preload(),o[e]=r);}let p=i[n];return m(p,\"Module not found\"),c(p)&&p.preload(),/*#__PURE__*/e(r,{componentIdentifier:n,children:r=>/*#__PURE__*/e(t,{component:p,props:{...r,...o}})});}case 4/* Tag */:{let[,e,t,...r]=l,n=r.map(a);if(\"a\"===e)return /*#__PURE__*/s(o.a,t,...n);return /*#__PURE__*/s(e,t,...n);}case 5/* Text */:{let[,e]=l;return e;}}}(u);return a.set(l,d),d;};}export{d as RichTextJsonType,g as getRichTextJsonResolver};\nexport const __FramerMetadata__ = {\"exports\":{\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (54493e9)\nimport{addPropertyControls as e,ControlType as t,QueryEngine as l}from\"framer\";import{DatabaseCollection as i}from\"./dPXVqTSfS-0.js\";import{getRichTextJsonResolver as a}from\"./dPXVqTSfS-1.js\";let r={createdAt:{isNullable:!0,type:t.Date},id:{isNullable:!1,type:t.String},KBD2vp_hU:{isNullable:!0,type:t.String},nextItemId:{isNullable:!0,type:t.String},previousItemId:{isNullable:!0,type:t.String},ULxTXr2bt:{isNullable:!0,type:t.String},updatedAt:{isNullable:!0,type:t.Date}},d=[],n=e=>{let t=d[e];if(t)return t().then(e=>e.default);},o={},p=a(o),u=new l,c={collectionByLocaleId:{default:new i({chunks:[new URL(\"./dPXVqTSfS-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"009cd741-a3a6-487e-b14f-2e74f4233cdddefault\",indexes:[],resolveRichText:p,resolveVectorSetItem:n,schema:r})},displayName:\"Categories\",id:\"009cd741-a3a6-487e-b14f-2e74f4233cdd\"};export default c;e(c,{ULxTXr2bt:{defaultValue:\"\",title:\"Title\",type:t.String},KBD2vp_hU:{preventLocalization:!1,title:\"Slug\",type:t.String},createdAt:{title:\"Created\",type:t.Date},updatedAt:{title:\"Updated\",type:t.Date},previousItemId:{dataIdentifier:\"local-module:collection/dPXVqTSfS:default\",title:\"Previous\",type:t.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/dPXVqTSfS:default\",title:\"Next\",type:t.CollectionReference}});export const enumToDisplayNameFunctions={};export const utils={async getSlugByRecordId(e,t){let[l]=await u.query({from:{data:c,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"KBD2vp_hU\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.KBD2vp_hU;},async getRecordIdBySlug(e,t){let[l]=await u.query({from:{data:c,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"KBD2vp_hU\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerData\":\"true\",\"framerSlug\":\"KBD2vp_hU\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerCollectionUtils\":\"1\",\"framerCollectionId\":\"dPXVqTSfS\",\"framerColorSyntax\":\"false\",\"framerRecordIdKey\":\"id\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (54493e9)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;GT Standard L Light\",\"CUSTOMV2;GT Standard M Medium\",\"CUSTOMV2;GT Standard L Medium Oblique\",\"CUSTOMV2;GT Standard S Light Oblique\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"GT Standard L Light\",openType:true,source:\"custom\",style:\"normal\",uiFamilyName:\"GT Standard\",url:\"https://framerusercontent.com/assets/cD3PlB0qn71m4YssUzzkDBThmPA.woff2\",weight:\"300\"},{cssFamilyName:\"GT Standard M Medium\",openType:true,source:\"custom\",style:\"normal\",uiFamilyName:\"GT Standard\",url:\"https://framerusercontent.com/assets/kUkUzecLkzTxlJFR2XmXgBZuhg.woff2\",weight:\"500\"},{cssFamilyName:\"GT Standard L Medium Oblique\",openType:true,source:\"custom\",style:\"italic\",uiFamilyName:\"GT Standard\",url:\"https://framerusercontent.com/assets/m7aMVatiQWpygc1FYeytlM0E8.woff2\",weight:\"500\"},{cssFamilyName:\"GT Standard S Light Oblique\",openType:true,source:\"custom\",style:\"italic\",uiFamilyName:\"GT Standard\",url:\"https://framerusercontent.com/assets/hzcShgyStA4RBax09moAcNHRAuo.woff2\",weight:\"300\"}]}];export const css=['.framer-jHYut .framer-styles-preset-5xnopg:not(.rich-text-wrapper), .framer-jHYut .framer-styles-preset-5xnopg.rich-text-wrapper p { --framer-font-family: \"GT Standard L Light\", \"GT Standard L Light Placeholder\", sans-serif; --framer-font-family-bold: \"GT Standard M Medium\", \"GT Standard M Medium Placeholder\", sans-serif; --framer-font-family-bold-italic: \"GT Standard L Medium Oblique\", \"GT Standard L Medium Oblique Placeholder\", sans-serif; --framer-font-family-italic: \"GT Standard S Light Oblique\", \"GT Standard S Light Oblique Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 20px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 300; --framer-font-weight-bold: 500; --framer-font-weight-bold-italic: 500; --framer-font-weight-italic: 300; --framer-letter-spacing: -0.02em; --framer-line-height: 1.6em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-429b3e15-2814-4372-8218-5a2fcf15e31d, #202020); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-jHYut\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{animate}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";const ink=\"#30332F\",blue=\"#6E929C\",copper=\"#B78265\",sage=\"#89947B\",line=\"#C9CBC1\";const css=`\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) > [data-framer-name=\"Content\"] > p > a:only-child:has(> strong):is([href*=\"/nature-is-our-learning-environment\"],[href*=\"/ai-infrastructure-at-periodic\"]){display:inline-flex;align-items:center;gap:10px;box-sizing:border-box;max-width:100%;border:1px solid #202020;padding:11px 12px;background:transparent;color:#202020!important;font:400 12px/12px \"Formular Mono Regular\",monospace!important;letter-spacing:1.2px!important;text-transform:uppercase;text-decoration:none!important;transition:none}\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) > [data-framer-name=\"Content\"] > p > a:only-child:has(> strong):is([href*=\"/nature-is-our-learning-environment\"],[href*=\"/ai-infrastructure-at-periodic\"]) strong{font:inherit!important;letter-spacing:inherit!important;color:inherit!important;text-decoration:underline!important}\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) > [data-framer-name=\"Content\"] > p > a:only-child:has(> strong):is([href*=\"/nature-is-our-learning-environment\"],[href*=\"/ai-infrastructure-at-periodic\"])::after{content:\"\";display:block;flex-shrink:0;width:10px;height:10px;background:url(\"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%22-1%20-1%2010%2010%22%3E%3Cpath%20d%3D%22M%204.5%200%20L%207.5%203%20L%207.5%204%20L%207.5%205%20L%204.5%208%20M%200%204%20L%207.5%204%22%20fill%3D%22none%22%20stroke%3D%22%23202020%22%2F%3E%3C%2Fsvg%3E\") center/contain no-repeat}\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) > [data-framer-name=\"Content\"] > p > a:only-child:has(> strong):is([href*=\"/nature-is-our-learning-environment\"],[href*=\"/ai-infrastructure-at-periodic\"]):focus-visible{outline:2px solid #202020;outline-offset:3px}\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) > [data-framer-name=\"Content\"] > p:has(> a:only-child:is([href*=\"/nature-is-our-learning-environment\"],[href*=\"/ai-infrastructure-at-periodic\"]) > strong){display:flex}\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) > [data-framer-name=\"Content\"] > p:has(> a:only-child[href*=\"/ai-infrastructure-at-periodic\"] > strong) + p{margin-top:var(--pl-links-spacing)!important}\n\n[data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) > [data-framer-name=\"Content\"] > :is(h2,h3){font-family:\"GT Standard L Light\",sans-serif!important;font-weight:400!important;font-style:normal!important}\n[data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) > [data-framer-name=\"Content\"] > h2{font-size:35px!important}\n[data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) > [data-framer-name=\"Content\"] > h3{font-size:30px!important}\n@media(max-width:809px){[data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) > [data-framer-name=\"Content\"] > h2{font-size:30px!important}[data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) > [data-framer-name=\"Content\"] > h3{font-size:24px!important}}\n[data-framer-name=\"article-content\"] .pl-caption-source{display:none!important}\n[data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) .pl-captioned-figure{--pl-caption-inset:calc(100% * 32 / 1120)}\n[data-framer-name=\"article-content\"] .pl-captioned-figure{box-sizing:border-box;width:100%;margin:64px auto 40px}\n[data-framer-name=\"article-content\"] .pl-captioned-figure > img{display:block;width:100%;height:auto;max-width:100%;margin:0 0 calc(-1 * var(--pl-art-bottom,0%));mix-blend-mode:multiply}\n[data-framer-name=\"article-content\"] .pl-captioned-figure > .framer-text-module{width:100%;margin:0!important}\n[data-framer-name=\"article-content\"] .pl-captioned-figure > .pl-inline-interactive{margin:0 0 calc(-1 * var(--pl-art-bottom,0%))!important}\n[data-framer-name=\"article-content\"] .pl-captioned-figure > figcaption{box-sizing:border-box;width:100%;max-width:none;margin:16px 0 0;padding:0 var(--pl-caption-inset,0%);font-family:\"GT Standard L Light\",sans-serif;font-size:16px!important;font-weight:400;line-height:1.5!important;letter-spacing:normal!important;text-align:left!important;color:#686C63!important;font-style:normal!important}\n[data-framer-name=\"article-content\"] .pl-captioned-figure > figcaption :is(em,span,a,strong){font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;color:inherit!important;font-style:normal!important}\n@media(max-width:809px){[data-framer-name=\"article-content\"] .pl-captioned-figure{margin:36px auto 32px}[data-framer-name=\"article-content\"] .pl-captioned-figure > figcaption{font-size:14px!important;margin-top:12px}}\n\n[data-framer-name=\"article-content\"]:has(.pl-text-opening){--pl-links-spacing:50px;gap:var(--pl-links-spacing)!important}\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) .pl-film{margin-bottom:0!important}\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) .pl-film figcaption:empty{display:none}\n[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) img:not(.pl-disclosure-body img):is([alt=\"Periodic Neon XRD analysis performance versus cost\"],[alt=\"Periodic Neon performance compared with frontier models by cost per analysis\"],[alt=\"Generalization to held-out chemical systems\"],[alt=\"Scientific analysis improves with reinforcement learning compute\"],[alt=\"Cumulative research gains in scientific analysis\"],[alt=\"Periodic scientific harness compared with Claude Code\"],[alt=\"Agreement between LLM judges and expert scientists\"],[alt=\"Scientific midtraining improves reinforcement learning performance\"],[alt=\"Materials discovery loop: what to make, how to make it, and what was made\"],[alt=\"Training, inference, and sandboxing throughput improvements\"],[alt=\"Architecture of the asynchronous inference stack\"],[alt=\"Delta router replay mechanism\"],[alt=\"Fast distributed weight resharding from Megatron to Hugging Face\"],[alt=\"Parallelism layout for long-context model training\"],[alt=\"GPU memory optimizations for smaller RL trainers\"],[alt=\"Pbox sandbox performance compared with a hosted provider\"]){display:block!important;width:min(var(--pl-figure-width,1120px),calc(100vw - 48px))!important;max-width:none!important;height:auto!important;margin-left:50%!important;margin-right:0!important;transform:translateX(-50%);filter:none!important;mix-blend-mode:normal!important}\n[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) .pl-captioned-figure:has(> img:not(.pl-disclosure-body img):is([alt=\"Periodic Neon XRD analysis performance versus cost\"],[alt=\"Periodic Neon performance compared with frontier models by cost per analysis\"],[alt=\"Generalization to held-out chemical systems\"],[alt=\"Scientific analysis improves with reinforcement learning compute\"],[alt=\"Cumulative research gains in scientific analysis\"],[alt=\"Periodic scientific harness compared with Claude Code\"],[alt=\"Agreement between LLM judges and expert scientists\"],[alt=\"Scientific midtraining improves reinforcement learning performance\"],[alt=\"Materials discovery loop: what to make, how to make it, and what was made\"],[alt=\"Training, inference, and sandboxing throughput improvements\"],[alt=\"Architecture of the asynchronous inference stack\"],[alt=\"Delta router replay mechanism\"],[alt=\"Fast distributed weight resharding from Megatron to Hugging Face\"],[alt=\"Parallelism layout for long-context model training\"],[alt=\"GPU memory optimizations for smaller RL trainers\"],[alt=\"Pbox sandbox performance compared with a hosted provider\"])){width:min(var(--pl-figure-width,1120px),calc(100vw - 48px))!important;max-width:none!important;margin-left:50%!important;margin-right:0!important;transform:translateX(-50%)}\n[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) .pl-captioned-figure:has(> img:not(.pl-disclosure-body img):is([alt=\"Periodic Neon XRD analysis performance versus cost\"],[alt=\"Periodic Neon performance compared with frontier models by cost per analysis\"],[alt=\"Generalization to held-out chemical systems\"],[alt=\"Scientific analysis improves with reinforcement learning compute\"],[alt=\"Cumulative research gains in scientific analysis\"],[alt=\"Periodic scientific harness compared with Claude Code\"],[alt=\"Agreement between LLM judges and expert scientists\"],[alt=\"Scientific midtraining improves reinforcement learning performance\"],[alt=\"Materials discovery loop: what to make, how to make it, and what was made\"],[alt=\"Training, inference, and sandboxing throughput improvements\"],[alt=\"Architecture of the asynchronous inference stack\"],[alt=\"Delta router replay mechanism\"],[alt=\"Fast distributed weight resharding from Megatron to Hugging Face\"],[alt=\"Parallelism layout for long-context model training\"],[alt=\"GPU memory optimizations for smaller RL trainers\"],[alt=\"Pbox sandbox performance compared with a hosted provider\"])) > img{width:100%!important;max-width:100%!important;margin:0!important;transform:none!important;height:auto!important;mix-blend-mode:normal!important}\n[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) .pl-captioned-figure:has(> iframe:is([title=\"Interactive XRD analyses by Periodic Neon\"],[title=\"Pbox GPU–sandbox colocation animation\"],[title=\"Efficient training on long, variable-length sequences\"],[title=\"Asynchronous inference animation\"],[title=\"Delta router replay animation\"],[title=\"Fast weight resharding animation\"],[title=\"Long-context parallelism animation\"],[title=\"GPU memory optimization animation\"],[title=\"Rollout timing\"])){width:min(var(--pl-figure-width,1120px),calc(100vw - 48px))!important;max-width:none!important;margin-left:50%!important;margin-right:0!important;transform:translateX(-50%)}\n[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) .pl-captioned-figure > iframe:is([title=\"Interactive XRD analyses by Periodic Neon\"],[title=\"Pbox GPU–sandbox colocation animation\"],[title=\"Efficient training on long, variable-length sequences\"],[title=\"Asynchronous inference animation\"],[title=\"Delta router replay animation\"],[title=\"Fast weight resharding animation\"],[title=\"Long-context parallelism animation\"],[title=\"GPU memory optimization animation\"],[title=\"Rollout timing\"]){display:block!important;width:100%!important;max-width:100%!important;margin:0!important;transform:none!important}\n[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) > [data-framer-name=\"Content\"] > iframe.pl-inline-interactive:is([title=\"Interactive XRD analyses by Periodic Neon\"],[title=\"Pbox GPU–sandbox colocation animation\"],[title=\"Efficient training on long, variable-length sequences\"],[title=\"Asynchronous inference animation\"],[title=\"Delta router replay animation\"],[title=\"Fast weight resharding animation\"],[title=\"Long-context parallelism animation\"],[title=\"GPU memory optimization animation\"],[title=\"Rollout timing\"]){display:block!important;width:min(var(--pl-figure-width,1120px),calc(100vw - 48px))!important;max-width:none!important;margin-left:50%!important;margin-right:0!important;transform:translateX(-50%)}\n[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) .pl-disclosure-body{overflow:visible}\n\n[data-framer-name=\"article-content\"]:has(.pl-text-opening) > [data-framer-name=\"Content\"] > h2{text-align:center!important}\n\n.pl-editorial{width:100%;padding:0 24px}.pl-visual{color:${ink};font-family:\"GT Standard L Light\",sans-serif;width:100%;position:relative;isolation:isolate}\n.pl-visual *{box-sizing:border-box}\n[data-framer-name=\"article-content\"] > [data-framer-name=\"Content\"] > :is(p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote){width:100%;box-sizing:border-box;max-width:720px;margin-left:auto!important;margin-right:auto!important}\n[data-framer-name=\"article-content\"] > [data-framer-name=\"Content\"] > p:has(> br:only-child),\n.pl-disclosure-body > p:has(> br:only-child){display:none}\n[data-framer-name=\"article-content\"] > [data-framer-name=\"Content\"] > img{display:block;width:100%;height:auto;max-width:100%;margin:64px auto 32px;mix-blend-mode:multiply}\n[data-framer-name=\"article-content\"] > [data-framer-name=\"Content\"] > :is(h2,h3){margin-top:72px!important;margin-bottom:28px!important;line-height:1.15!important;letter-spacing:-.015em!important}\n@media(max-width:809px){[data-framer-name=\"article-content\"] > [data-framer-name=\"Content\"] > img{margin-top:36px;margin-bottom:24px}[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) img:not(.pl-disclosure-body img):is([alt=\"Periodic Neon XRD analysis performance versus cost\"],[alt=\"Periodic Neon performance compared with frontier models by cost per analysis\"],[alt=\"Generalization to held-out chemical systems\"],[alt=\"Scientific analysis improves with reinforcement learning compute\"],[alt=\"Cumulative research gains in scientific analysis\"],[alt=\"Periodic scientific harness compared with Claude Code\"],[alt=\"Agreement between LLM judges and expert scientists\"],[alt=\"Scientific midtraining improves reinforcement learning performance\"],[alt=\"Materials discovery loop: what to make, how to make it, and what was made\"],[alt=\"Training, inference, and sandboxing throughput improvements\"],[alt=\"Architecture of the asynchronous inference stack\"],[alt=\"Delta router replay mechanism\"],[alt=\"Fast distributed weight resharding from Megatron to Hugging Face\"],[alt=\"Parallelism layout for long-context model training\"],[alt=\"GPU memory optimizations for smaller RL trainers\"],[alt=\"Pbox sandbox performance compared with a hosted provider\"]),[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) .pl-captioned-figure:has(> img:not(.pl-disclosure-body img):is([alt=\"Periodic Neon XRD analysis performance versus cost\"],[alt=\"Periodic Neon performance compared with frontier models by cost per analysis\"],[alt=\"Generalization to held-out chemical systems\"],[alt=\"Scientific analysis improves with reinforcement learning compute\"],[alt=\"Cumulative research gains in scientific analysis\"],[alt=\"Periodic scientific harness compared with Claude Code\"],[alt=\"Agreement between LLM judges and expert scientists\"],[alt=\"Scientific midtraining improves reinforcement learning performance\"],[alt=\"Materials discovery loop: what to make, how to make it, and what was made\"],[alt=\"Training, inference, and sandboxing throughput improvements\"],[alt=\"Architecture of the asynchronous inference stack\"],[alt=\"Delta router replay mechanism\"],[alt=\"Fast distributed weight resharding from Megatron to Hugging Face\"],[alt=\"Parallelism layout for long-context model training\"],[alt=\"GPU memory optimizations for smaller RL trainers\"],[alt=\"Pbox sandbox performance compared with a hosted provider\"])),[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) .pl-captioned-figure:has(> iframe:is([title=\"Interactive XRD analyses by Periodic Neon\"],[title=\"Pbox GPU–sandbox colocation animation\"],[title=\"Efficient training on long, variable-length sequences\"],[title=\"Asynchronous inference animation\"],[title=\"Delta router replay animation\"],[title=\"Fast weight resharding animation\"],[title=\"Long-context parallelism animation\"],[title=\"GPU memory optimization animation\"],[title=\"Rollout timing\"])),[data-framer-name=\"article-content\"]:is(:has([data-story=\"building-labs-that-learn\"]),:has([data-story=\"nature-is-our-learning-environment\"]),:has([data-story=\"ai-infrastructure-at-periodic\"])) > [data-framer-name=\"Content\"] > iframe.pl-inline-interactive:is([title=\"Interactive XRD analyses by Periodic Neon\"],[title=\"Pbox GPU–sandbox colocation animation\"],[title=\"Efficient training on long, variable-length sequences\"],[title=\"Asynchronous inference animation\"],[title=\"Delta router replay animation\"],[title=\"Fast weight resharding animation\"],[title=\"Long-context parallelism animation\"],[title=\"GPU memory optimization animation\"],[title=\"Rollout timing\"]){width:min(var(--pl-figure-width,1120px),calc(100vw - 40px))!important}}\n.pl-opening{max-width:1200px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:20px;width:100%;min-height:620px;padding:32px 0 48px}\n.pl-opening-copy{position:relative;z-index:2;padding:0 0 0 2px}\n.pl-opening h1{font-family:inherit;font-size:clamp(36px,3.6vw,64px);font-weight:400;letter-spacing:-.015em;line-height:1.04;margin:0 0 28px;text-wrap:balance}\n.pl-opening p{font-size:clamp(18px,1.55vw,23px);line-height:1.55;letter-spacing:-.025em;max-width:500px;margin:0;color:#686C63}\n.pl-opening-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:30px auto 0;max-width:720px;text-align:left}\n.pl-opening-category{flex-shrink:0}\n.pl-opening .pl-opening-category p{font-size:14px;line-height:1;color:#777C71;margin:0}\n.pl-opening time{display:block;font-size:14px;color:#777C71;white-space:nowrap;margin-left:auto}\n.pl-art{width:100%;position:relative;min-width:0}\n.pl-art svg{width:100%;height:auto;overflow:visible;display:block}\n.pl-art text{font-family:\"GT Standard L Light\",sans-serif;fill:${ink};font-size:16px;font-weight:300;letter-spacing:0}\n.pl-art .pl-label{font-family:\"GT Standard L Light\",sans-serif;font-size:14px;letter-spacing:0;fill:#798071}\n.pl-art .pl-fine{fill:#7B8076;font-size:12px}\n.pl-art .pl-flow{stroke-dasharray:3 17;animation:pl-flow 9s linear infinite;stroke-linecap:round}\n.pl-art .pl-scan{animation:pl-scan 7s ease-in-out infinite;transform-box:fill-box;transform-origin:center}\n.pl-art .pl-breathe{animation:pl-breathe 6s ease-in-out infinite}\n\n.pl-art .pl-peak{stroke-dasharray:900;stroke-dashoffset:0;animation:pl-draw 9s ease-in-out infinite}\n.pl-visual[data-paused=true] *{animation-play-state:paused!important}\n\n.pl-figure{margin:0;width:100%}\n.pl-figure-caption{border-top:1px solid #CDD0C5;padding:18px 0 0;display:flex;justify-content:space-between;gap:32px;font-size:14px;line-height:1.5;color:#747B6F}\n.pl-film{width:100%;margin:0;position:relative}\n.pl-film video{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;border-radius:2px}\n.pl-film figcaption{font-size:14px;color:#72786F;line-height:1.5;padding-top:16px}\n@keyframes pl-flow{to{stroke-dashoffset:-240}}\n@keyframes pl-breathe{0%,100%{opacity:.35}45%,60%{opacity:1}}\n@keyframes pl-scan{0%,12%,100%{opacity:.3;transform:scaleX(.7)}40%,65%{opacity:1;transform:scaleX(1)}}\n\n@keyframes pl-draw{0%,8%{stroke-dashoffset:900}70%,100%{stroke-dashoffset:0}}\n\n.pl-scale-opening{max-width:1440px;grid-template-columns:1fr;gap:0;padding-top:48px}\n.pl-scale-opening .pl-opening-copy{width:min(100%,980px);margin:auto;text-align:center;padding:0 20px}\n.pl-scale-opening h1{font-size:clamp(40px,4.6vw,72px);line-height:1.09;max-width:1000px;margin:0 auto 24px}\n.pl-scale-opening p{max-width:760px;margin:auto;font-size:22px}\n.pl-scale-opening .pl-art{margin:28px auto 0;width:100%;max-width:1440px}\n.pl-art .pl-packet{animation:pl-packet 8s linear infinite;stroke-dasharray:2 110;stroke-linecap:round}\n.pl-art .pl-cell{animation:pl-cell 8s ease-in-out infinite}\n@keyframes pl-packet{to{stroke-dashoffset:-448}}\n@keyframes pl-cell{0%,15%,100%{opacity:.3}40%,65%{opacity:1}}\n.pl-disclosure{width:100%;box-sizing:border-box;padding:0 24px;max-width:720px;margin:36px auto!important;border:1px solid rgba(48,51,47,.1);border-radius:4px;background:#F2EFEA;color:#30332F;font-style:normal}\n.pl-disclosure summary{list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none;padding:22px 42px 22px 0;position:relative;font:400 21px/1.4 \"GT Standard L Light\",sans-serif;letter-spacing:0}\n.pl-disclosure summary::-webkit-details-marker{display:none}\n.pl-disclosure summary::after{content:\"+\";position:absolute;right:4px;top:18px;font-size:27px;font-weight:300;color:currentColor}\n.pl-disclosure[open] summary::after{content:\"−\"}\n@media(max-width:809px){.pl-disclosure{padding:0 16px}}\n.pl-disclosure summary:focus{outline:none}\n.pl-disclosure summary:focus-visible{text-decoration:underline;text-decoration-color:currentColor;text-decoration-thickness:1px;text-underline-offset:5px}\n.pl-disclosure-body{padding:2px 0 28px}\n.pl-disclosure-body :is(p,li,span,em,strong){color:#30332F!important;font-style:normal!important;letter-spacing:normal!important}\n.pl-disclosure-body p{font-size:20px!important;line-height:1.6!important;margin:0 0 24px!important}\n.pl-disclosure-body p:last-child{margin-bottom:0!important}\n.pl-disclosure-body img{width:100%;max-width:100%;height:auto;display:block;mix-blend-mode:normal;margin:28px 0}\n.pl-disclosure-source{display:none!important}\n@media(max-width:809px){.pl-editorial{padding:0}.pl-opening{grid-template-columns:1fr;min-height:0;gap:20px;padding:20px 0 24px}.pl-opening-copy{padding:0}.pl-opening h1{font-size:clamp(35px,8vw,52px);letter-spacing:-.015em;max-width:650px;margin-bottom:20px}.pl-opening p{font-size:19px;max-width:600px}.pl-opening-meta{margin-top:20px;gap:16px}.pl-art{max-width:650px;margin:auto}.pl-figure-caption{font-size:12px;gap:16px}.pl-scale-opening .pl-opening-copy{padding:0;text-align:left}.pl-scale-opening p{font-size:19px}.pl-scale-opening .pl-art{width:calc(100% + 40px);max-width:none;margin-left:-20px;overflow:hidden;height:330px}.pl-scale-opening .pl-art svg{width:720px;max-width:none;position:relative;left:50%;transform:translateX(-50%)}.pl-scale-opening .pl-art text{display:none}.pl-opening:not(.pl-scale-opening) .pl-art text{font-size:24px}.pl-opening:not(.pl-scale-opening) .pl-art .pl-label{font-size:16px}.pl-opening:not(.pl-scale-opening) .pl-art .pl-fine{font-size:20px}.pl-scale-opening h1{font-size:clamp(35px,8vw,52px)}.pl-disclosure summary{font-size:19px}.pl-disclosure-body p{font-size:18px!important}}\n.pl-opening.pl-text-opening{display:block;max-width:720px;min-height:0;padding:48px 0}.pl-text-opening p{max-width:720px}\n.pl-art .pl-infra-mobile{display:none}\n@media(max-width:809px){.pl-opening.pl-text-opening{padding:20px 0 24px}.pl-scale-opening .pl-art:has(.pl-infra-mobile){width:100%;height:auto;overflow:visible;margin:28px auto 0}.pl-scale-opening .pl-art .pl-infra-desktop{display:none}.pl-scale-opening .pl-art .pl-infra-mobile{display:block;width:100%;height:auto;position:static;left:auto;transform:none;max-width:420px;margin:auto}.pl-scale-opening .pl-art .pl-infra-mobile text{display:block;font-size:13px}.pl-scale-opening .pl-art .pl-infra-mobile .pl-label{letter-spacing:0}}\n@media(prefers-reduced-motion:reduce){.pl-visual *{animation:none!important}}\n\n.pl-captioned-figure:has(> img:not(.pl-disclosure-body img):is([alt=\"Periodic Neon XRD analysis performance versus cost\"],[alt=\"Periodic Neon performance compared with frontier models by cost per analysis\"],[alt=\"Generalization to held-out chemical systems\"],[alt=\"Scientific analysis improves with reinforcement learning compute\"],[alt=\"Cumulative research gains in scientific analysis\"])){--pl-figure-width:min(720px,100%)}\n`;function Guide(){return /*#__PURE__*/_jsxs(\"g\",{stroke:line,strokeWidth:\".65\",opacity:\".42\",fill:\"none\",children:[[100,200,300,400,500].map(x=>/*#__PURE__*/_jsx(\"path\",{d:`M${x} 60V510`},x)),[100,200,300,400,500].map(y=>/*#__PURE__*/_jsx(\"path\",{d:`M40 ${y}H570`},y)),/*#__PURE__*/_jsx(\"circle\",{cx:\"300\",cy:\"280\",r:\"200\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"300\",cy:\"280\",r:\"150\"})]});}// A square CuO2 net: Cu at square-lattice vertices, O at bond midpoints.\n// This is the planar structural motif in Hg-1223, not a complete unit cell.\nfunction Crystal({x=300,y=260,s=1}){const pt=(i,j)=>[(i-j)*27,(i+j-4)*16];return /*#__PURE__*/_jsx(\"g\",{transform:`translate(${x} ${y}) scale(${s})`,children:[0,1,2,3,4].flatMap(i=>[0,1,2,3,4].map(j=>{const[a,b]=pt(i,j);return /*#__PURE__*/_jsxs(\"g\",{children:[i<4&&/*#__PURE__*/_jsx(\"line\",{x1:a,y1:b,x2:a+27,y2:b+16,stroke:line,strokeWidth:\"1.5\"}),j<4&&/*#__PURE__*/_jsx(\"line\",{x1:a,y1:b,x2:a-27,y2:b+16,stroke:line,strokeWidth:\"1.5\"}),i<4&&/*#__PURE__*/_jsx(\"circle\",{cx:a+13.5,cy:b+8,r:\"3.3\",fill:blue}),j<4&&/*#__PURE__*/_jsx(\"circle\",{cx:a-13.5,cy:b+8,r:\"3.3\",fill:blue}),/*#__PURE__*/_jsx(\"circle\",{cx:a,cy:b,r:\"5.2\",fill:copper})]},`${i}-${j}`);}))});}function NatureArt(){const point=angle=>[300+190*Math.cos(angle*Math.PI/180),270+190*Math.sin(angle*Math.PI/180)];return /*#__PURE__*/_jsxs(\"svg\",{viewBox:\"0 0 680 560\",role:\"img\",\"aria-label\":\"A copper–oxygen plane from the Hg-1223 structural motif, inside a circular propose, synthesize, characterize learning cycle\",children:[/*#__PURE__*/_jsxs(\"g\",{stroke:line,fill:\"none\",children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"300\",cy:\"270\",r:\"218\",opacity:\".3\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"300\",cy:\"270\",r:\"145\",opacity:\".3\"})]}),/*#__PURE__*/_jsx(\"circle\",{className:\"pl-flow\",pathLength:\"1200\",cx:\"300\",cy:\"270\",r:\"190\",fill:\"none\",stroke:copper,strokeWidth:\"2\"}),[[-112,-8],[8,112],[128,232]].map(([start,end])=>{const a=point(start),b=point(end);return /*#__PURE__*/_jsxs(\"g\",{fill:\"none\",stroke:line,strokeWidth:\"1.3\",children:[/*#__PURE__*/_jsx(\"path\",{d:`M${a[0]} ${a[1]}A190 190 0 0 1 ${b[0]} ${b[1]}`}),/*#__PURE__*/_jsx(\"path\",{transform:`translate(${b[0]} ${b[1]}) rotate(${end+90})`,d:\"m-10-5 10 5-10 5\",stroke:copper,strokeWidth:\"1.5\"})]},start);}),/*#__PURE__*/_jsx(Crystal,{x:300,y:270,s:1.05}),/*#__PURE__*/_jsxs(\"g\",{children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"269\",cy:\"392\",r:\"3\",fill:copper}),/*#__PURE__*/_jsx(\"text\",{x:\"277\",y:\"396\",className:\"pl-fine\",children:\"Cu\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"312\",cy:\"392\",r:\"3\",fill:blue}),/*#__PURE__*/_jsx(\"text\",{x:\"320\",y:\"396\",className:\"pl-fine\",children:\"O\"})]}),/*#__PURE__*/_jsx(\"text\",{x:\"174\",y:\"88\",textAnchor:\"end\",className:\"pl-label\",children:\"Propose\"}),/*#__PURE__*/_jsx(\"text\",{x:\"174\",y:\"109\",textAnchor:\"end\",children:\"What to make?\"}),/*#__PURE__*/_jsx(\"text\",{x:\"513\",y:\"237\",className:\"pl-label\",children:\"Synthesize\"}),/*#__PURE__*/_jsx(\"text\",{x:\"513\",y:\"258\",children:\"How to make it?\"}),/*#__PURE__*/_jsx(\"text\",{x:\"215\",y:\"484\",textAnchor:\"middle\",className:\"pl-label\",children:\"Characterize\"}),/*#__PURE__*/_jsx(\"text\",{x:\"215\",y:\"505\",textAnchor:\"middle\",children:\"What was made?\"})]});}function InfraArt(){const centerX=720,centerY=335;const feedback=`M${centerX+585} 620C${centerX+330} 686 ${centerX-330} 686 ${centerX-585} 620`;return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"svg\",{className:\"pl-infra-desktop\",viewBox:\"0 0 1440 690\",role:\"img\",\"aria-label\":\"Many parallel reinforcement-learning rollout trajectories fan out through a field of isolated sandboxes, return results, and receive new model updates\",children:[/*#__PURE__*/_jsxs(\"defs\",{children:[/*#__PURE__*/_jsxs(\"linearGradient\",{id:\"infra-edge\",children:[/*#__PURE__*/_jsx(\"stop\",{stopColor:\"#F7F2ED\",stopOpacity:\"0\"}),/*#__PURE__*/_jsx(\"stop\",{offset:\".08\",stopColor:\"#F7F2ED\"}),/*#__PURE__*/_jsx(\"stop\",{offset:\".92\",stopColor:\"#F7F2ED\"}),/*#__PURE__*/_jsx(\"stop\",{offset:\"1\",stopColor:\"#F7F2ED\",stopOpacity:\"0\"})]}),/*#__PURE__*/_jsx(\"mask\",{id:\"infra-mask\",children:/*#__PURE__*/_jsx(\"rect\",{width:\"1440\",height:\"690\",fill:\"url(#infra-edge)\"})})]}),/*#__PURE__*/_jsxs(\"g\",{mask:\"url(#infra-mask)\",children:[Array.from({length:37},(_,i)=>/*#__PURE__*/_jsx(\"path\",{d:`M${i*40} 15V660`,stroke:line,strokeWidth:\".6\",opacity:\".24\"},i)),Array.from({length:17},(_,i)=>/*#__PURE__*/_jsx(\"path\",{d:`M0 ${i*40+15}H1440`,stroke:line,strokeWidth:\".6\",opacity:\".24\"},i)),Array.from({length:84},(_,i)=>{const y=centerY+(i-41.5)*7.1;const bundleY=centerY+(i-41.5)*.48;const col=[blue,sage,copper][i%3];const d=`M${centerX-760} ${bundleY}C${centerX-500} ${bundleY} ${centerX-460} ${y} ${centerX-240} ${y}H${centerX+240}C${centerX+460} ${y} ${centerX+500} ${bundleY} ${centerX+760} ${bundleY}`;return /*#__PURE__*/_jsxs(\"g\",{fill:\"none\",children:[/*#__PURE__*/_jsx(\"path\",{d:d,stroke:col,strokeWidth:\".85\",opacity:\".35\"}),/*#__PURE__*/_jsx(\"path\",{className:\"pl-packet\",d:d,stroke:col,strokeWidth:i%4===0?2:1.15,style:{animationDelay:`-${i*.193}s`,animationDuration:`${10+i%7}s`},opacity:\".95\"})]},i);}),Array.from({length:12},(_,r)=>Array.from({length:15},(_,c)=>/*#__PURE__*/_jsx(\"rect\",{className:\"pl-cell\",x:centerX-223.5+c*31,y:centerY-267+r*47,width:\"13\",height:\"17\",rx:\"2\",fill:[blue,sage,copper][r%3],fillOpacity:\".5\",stroke:[blue,sage,copper][r%3],strokeWidth:\".7\",style:{animationDelay:`-${(r*.43+c*.71)%8}s`}},`${r}-${c}`))),/*#__PURE__*/_jsx(\"path\",{d:feedback,stroke:line,strokeWidth:\"1\",fill:\"none\"}),/*#__PURE__*/_jsx(\"path\",{className:\"pl-packet\",d:feedback,stroke:blue,strokeWidth:\"2\",fill:\"none\"})]}),/*#__PURE__*/_jsx(\"text\",{x:centerX-570,y:\"35\",textAnchor:\"middle\",className:\"pl-label\",children:\"Inference\"}),/*#__PURE__*/_jsx(\"text\",{x:centerX,y:\"35\",textAnchor:\"middle\",className:\"pl-label\",children:\"Parallel rollouts \\xb7 Isolated sandboxes\"}),/*#__PURE__*/_jsx(\"text\",{x:centerX+570,y:\"35\",textAnchor:\"middle\",className:\"pl-label\",children:\"Training\"}),/*#__PURE__*/_jsx(\"text\",{x:centerX,y:\"687\",textAnchor:\"middle\",className:\"pl-label\",children:\"Continuous model updates\"})]}),/*#__PURE__*/_jsx(InfraMobileArt,{})]});}function InfraMobileArt(){return /*#__PURE__*/_jsxs(\"svg\",{className:\"pl-infra-mobile\",viewBox:\"0 0 360 560\",role:\"img\",\"aria-label\":\"Inference fans into many parallel rollouts and isolated sandboxes, then converges into training and model updates\",children:[/*#__PURE__*/_jsxs(\"g\",{transform:\"translate(0 36) scale(1 .9)\",children:[/*#__PURE__*/_jsxs(\"g\",{stroke:line,opacity:\".28\",strokeWidth:\".6\",children:[Array.from({length:12},(_,i)=>/*#__PURE__*/_jsx(\"path\",{d:`M${15+i*30} 50V490`},i)),Array.from({length:15},(_,i)=>/*#__PURE__*/_jsx(\"path\",{d:`M15 ${55+i*30}H345`},i))]}),Array.from({length:48},(_,i)=>{const x=38+i*6.04,col=[blue,sage,copper][i%3],d=`M${180+(i-23.5)*.3} 52C${180+(i-23.5)*.3} 112 ${x} 116 ${x} 185L${x} 370C${x} 448 ${180+(i-23.5)*.3} 444 ${180+(i-23.5)*.3} 494`;return /*#__PURE__*/_jsxs(\"g\",{fill:\"none\",children:[/*#__PURE__*/_jsx(\"path\",{d:d,stroke:col,strokeWidth:\".7\",opacity:\".35\"}),/*#__PURE__*/_jsx(\"path\",{className:\"pl-packet\",d:d,stroke:col,strokeWidth:\"1.5\",style:{animationDelay:`-${i*.27}s`,animationDuration:`${8+i%5}s`}})]},i);}),Array.from({length:10},(_,row)=>Array.from({length:9},(_,col)=>/*#__PURE__*/_jsx(\"rect\",{className:\"pl-cell\",x:70+col*26,y:170+row*23,width:\"12\",height:\"15\",rx:\"2\",fill:[blue,sage,copper][row%3],fillOpacity:\".5\",stroke:[blue,sage,copper][row%3],strokeWidth:\".7\",style:{animationDelay:`-${(row*.43+col*.71)%8}s`}},`${row}-${col}`)))]}),/*#__PURE__*/_jsx(\"text\",{x:\"180\",y:\"70\",textAnchor:\"middle\",className:\"pl-label\",children:\"Inference\"}),/*#__PURE__*/_jsx(\"text\",{x:\"180\",y:\"510\",textAnchor:\"middle\",className:\"pl-label\",children:\"Training\"})]});}function Art({story}){return story.includes(\"ai-infrastructure\")?/*#__PURE__*/_jsx(InfraArt,{}):/*#__PURE__*/_jsx(NatureArt,{});}function MotionFrame({children,style}){const[offscreen,setOffscreen]=React.useState(false);const ref=React.useRef(null);React.useEffect(()=>{const observer=new IntersectionObserver(([entry])=>setOffscreen(!entry.isIntersecting));if(ref.current)observer.observe(ref.current);return()=>observer.disconnect();},[]);return /*#__PURE__*/_jsxs(\"div\",{ref:ref,className:\"pl-visual\",\"data-paused\":offscreen,style:style,children:[/*#__PURE__*/_jsx(\"style\",{children:css+infraMobileCss}),children]});}// CMS keeps each explanation and its figures together in a blockquote.\n// Present those groups as native, keyboard-accessible disclosures.\nfunction useResearchDetails(ref,story){React.useEffect(()=>{if(story!==\"nature-is-our-learning-environment\")return;const article=ref.current?.closest('[data-framer-name=\"article-content\"]');if(!article)return;const created=[];const enhance=()=>{article.querySelectorAll('[data-framer-name=\"Content\"] > blockquote:not(.pl-disclosure-source)').forEach(source=>{const heading=source.querySelector(\"h3\");if(!heading)return;const details=document.createElement(\"details\");details.className=\"pl-disclosure\";const summary=document.createElement(\"summary\");summary.textContent=heading.textContent;summary.addEventListener(\"mousedown\",event=>{if(event.detail>1)event.preventDefault();});const body=document.createElement(\"div\");body.className=\"pl-disclosure-body\";Array.from(source.children).filter(child=>child!==heading).forEach(child=>body.append(child.cloneNode(true)));details.append(summary,body);source.before(details);source.classList.add(\"pl-disclosure-source\");created.push({source,details});});};enhance();const observer=new MutationObserver(enhance);observer.observe(article,{childList:true,subtree:true});return()=>{observer.disconnect();created.forEach(({source,details})=>{details.remove();source.classList.remove(\"pl-disclosure-source\");});};},[story]);}// Upgrade the CMS illustration in place while keeping its caption and reading order.\nfunction InfraFigureTransparency(){return /*#__PURE__*/_jsx(\"svg\",{width:\"0\",height:\"0\",\"aria-hidden\":\"true\",style:{position:\"absolute\"},children:/*#__PURE__*/_jsx(\"defs\",{children:[[\"training\",\"#fcfcfa\"]].map(([id,paper])=>/*#__PURE__*/_jsxs(\"filter\",{id:`pl-paper-${id}`,colorInterpolationFilters:\"sRGB\",x:\"0\",y:\"0\",width:\"100%\",height:\"100%\",children:[/*#__PURE__*/_jsx(\"feFlood\",{floodColor:paper,result:\"paper\"}),/*#__PURE__*/_jsx(\"feBlend\",{in:\"SourceGraphic\",in2:\"paper\",mode:\"difference\",result:\"difference\"}),/*#__PURE__*/_jsx(\"feColorMatrix\",{in:\"difference\",type:\"matrix\",values:\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 255 0 0\",result:\"mask\"}),/*#__PURE__*/_jsx(\"feComposite\",{in:\"SourceGraphic\",in2:\"mask\",operator:\"in\"})]},id))})});}// CMS captions are italic paragraphs immediately after their images or videos.\n// Keep the CMS text editable while presenting each pair as one semantic figure.\nfunction useArticleCaptions(ref,story){React.useEffect(()=>{const article=ref.current?.closest('[data-framer-name=\"article-content\"]');if(!article)return;const created=[];const enhance=()=>{article.querySelectorAll('[data-framer-name=\"Content\"] > :is(img, .framer-text-module:has(video))').forEach(media=>{const source=media.nextElementSibling;if(!source?.matches(\"p\")||!source.textContent?.trim())return;const emphasis=Array.from(source.querySelectorAll(\"em\")).map(node=>node.textContent).join(\"\").trim();if(emphasis!==source.textContent.trim())return;const figure=document.createElement(\"figure\");figure.className=\"pl-captioned-figure\";figure.style.maxWidth=getComputedStyle(media).maxWidth;const caption=document.createElement(\"figcaption\");Array.from(source.childNodes).forEach(node=>caption.append(node.cloneNode(true)));media.before(figure);figure.append(media,caption);source.classList.add(\"pl-caption-source\");created.push({media,source,figure});});};enhance();const observer=new MutationObserver(enhance);observer.observe(article,{childList:true,subtree:true});return()=>{observer.disconnect();created.forEach(({media,source,figure})=>{figure.before(media);figure.remove();source.classList.remove(\"pl-caption-source\");});};},[story]);}// Reserve all playback states before showing the XRD tabs; scale only with width.\nfunction prepareXrdHtml(html){return html.replace(\"</head>\",\"<style>html,body{overflow:hidden!important;scrollbar-width:none}::-webkit-scrollbar{display:none}</style></head>\").replace(\"let selected = 0, ready = false;\",\"let selected = 0, ready = false, playerHeight = 1060;\").replace(\"observeActive();\",\"applyHeight();\").replace(/  function playerRoot\\(frame\\) \\{[\\s\\S]*?(?=  entries\\.forEach)/,`  function applyHeight() {\n    const scale = stage.clientWidth / 960;\n    frames.forEach(frame => {\n      frame.style.transform = 'scale(' + scale + ')';\n      frame.style.height = playerHeight + 'px';\n    });\n    stage.style.height = Math.ceil(playerHeight * scale) + 'px';\n    window.parent.postMessage({ type: 'periodic-figure-height', height: Math.ceil(document.body.getBoundingClientRect().height) }, '*');\n  }\n  const size = applyHeight;\n\n`).replace(/      try \\{\\n        const fd = frame.contentDocument.querySelector\\('details.xr-combined-fold'\\);[\\s\\S]*?      \\} catch \\(e\\) \\{\\}\\n/,\"\").replace(\"        ready = true;\",`        playerHeight = Math.ceil(Math.max(...frames.map(frame => frame.contentDocument.getElementById('xrd-story-player').getBoundingClientRect().height)));\n        frames.forEach(frame => {\n          frame.contentDocument.getElementById('xrd-story-player').style.minHeight = playerHeight + 'px';\n        });\n        ready = true;`).replace('    frame.srcdoc = entry.html.replace(\"<!--DISPLAY_LIBRARIES-->\", () => libraryTags);',`    frame.setAttribute('scrolling', 'no');\n    frame.srcdoc = entry.html\n      .replace('slot.style.height = \"auto\";', 'slot.style.height = storyBudget + \"px\";')\n      .replace('$(\".xr-phases\").style.height = hasStructures ? galleryBudget + \"px\" : \"auto\";', '$(\".xr-phases\").style.height = galleryBudget + \"px\";')\n      .replace('Math.max(0, storyBudget - $(\".xr-story-slot\").getBoundingClientRect().height)', '0')\n      .replace('</body>', '<style>html,body{overflow:hidden!important;scrollbar-width:none}::-webkit-scrollbar{display:none}#xrd-story-player [data-plot=\"matrix\"]{overflow:hidden}#xrd-story-player .xr-phases[hidden]{display:grid!important;visibility:hidden}</style></body>')\n      .replace(\"<!--DISPLAY_LIBRARIES-->\", () => libraryTags);`);}function useInlineFigure(ref,asset,alt,title,heightMessage=\"periodic-figure-height\"){React.useEffect(()=>{if(!asset||!alt)return;const article=ref.current?.closest('[data-framer-name=\"article-content\"]');if(!article)return;const abort=new AbortController;let frame,source,observer,visibility;const resize=event=>{if(event.source===frame?.contentWindow&&event.data?.type===heightMessage){const height=Number(event.data.height);if(Number.isFinite(height)&&height>0)frame.style.height=`${Math.ceil(height)}px`;}};window.addEventListener(\"message\",resize);fetch(asset,{signal:abort.signal}).then(response=>{if(!response.ok)throw new Error(\"Interactive figure could not load\");return response.text();}).then(html=>{if(title===\"Interactive XRD analyses by Periodic Neon\"){html=prepareXrdHtml(html);}if(title===\"Pbox GPU–sandbox colocation animation\"){html=html.replace(/<span class=\"number\">0[123]<\\/span>/g,\"\").replace(\"</head>\",\"<style>html,body{background:transparent!important}</style></head>\");}if(heightMessage===\"training-figure-size\"){html=html.replace(\"</head>\",\"<style>.toolbar{padding-left:2.5%!important;padding-right:2.5%!important}</style></head>\");}if([\"Efficient training on long, variable-length sequences\",\"Long-context parallelism animation\",\"GPU memory optimization animation\",\"Fast weight resharding animation\"].includes(title)){html=prepareInfraMobileHtml(html,title);}const mount=()=>{if(frame)return;source=Array.from(article.querySelectorAll(\"img\")).find(image=>image.alt===alt);if(!source)return;frame=document.createElement(\"iframe\");frame.title=title;if(title===\"Interactive XRD analyses by Periodic Neon\")frame.setAttribute(\"scrolling\",\"no\");frame.className=\"pl-inline-interactive\";frame.setAttribute(\"sandbox\",\"allow-scripts allow-same-origin\");frame.style.cssText=\"display:block;width:100%;height:1200px;border:0;margin:64px auto 32px;background:transparent;mix-blend-mode:multiply\";source.before(frame);source.style.setProperty(\"display\",\"none\",\"important\");visibility=new IntersectionObserver(([entry])=>{if(entry.intersectionRatio<.1)return;frame.srcdoc=html;visibility.disconnect();},{threshold:.1});visibility.observe(frame);};mount();observer=new MutationObserver(mount);observer.observe(article,{childList:true,subtree:true});}).catch(error=>{if(error.name!==\"AbortError\")console.error(error);});return()=>{abort.abort();observer?.disconnect();visibility?.disconnect();window.removeEventListener(\"message\",resize);frame?.remove();if(source)source.style.removeProperty(\"display\");};},[asset,alt,title,heightMessage]);}/** @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 1200\n * @framerIntrinsicHeight 680\n */function useArticleButtonMotion(ref,story){React.useEffect(()=>{if(story!==\"building-labs-that-learn\")return;const article=ref.current?.closest('[data-framer-name=\"article-content\"]');if(!article)return;const links=article.querySelectorAll(':scope > [data-framer-name=\"Content\"] > p > a:only-child:has(> strong):is([href*=\"/nature-is-our-learning-environment\"],[href*=\"/ai-infrastructure-at-periodic\"])');const reducedMotion=window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;const cleanups=Array.from(links,link=>{let stop=()=>{};const update=()=>{stop();const target=link.matches(\":hover, :focus-visible\")?\"#ffffff\":\"rgba(0, 0, 0, 0)\";// Use Motion's color mixer, as the native footer button does.\n// CSS color interpolation skips its gray intermediate colors.\nconst animation=animate(getComputedStyle(link).backgroundColor,target,{duration:reducedMotion?0:.6,ease:[.44,0,.56,1],onUpdate:color=>{link.style.backgroundColor=color;}});stop=()=>animation.stop();};const events=[\"pointerenter\",\"pointerleave\",\"focus\",\"blur\"];events.forEach(event=>link.addEventListener(event,update));return()=>{stop();events.forEach(event=>link.removeEventListener(event,update));link.style.removeProperty(\"background-color\");};});return()=>cleanups.forEach(cleanup=>cleanup());},[story]);}export default function EditorialVisuals({title,description,story,date,category,labVideo,xrdVideo,xrdInteractive,pboxInteractive,sequencesInteractive,inferenceAnimation,replayAnimation,reshardAnimation,parallelismAnimation,memoryAnimation,rolloutInteractive,style}){const ref=React.useRef(null);useArticleCaptions(ref,story);useInfraMobileFigures(ref,story);useInfraMobileMainBars(ref,story);useResearchDetails(ref,story);useArticleButtonMotion(ref,story);const isResearch=story===\"nature-is-our-learning-environment\",isInfra=story.includes(\"ai-infrastructure\"),hasArt=isInfra;const openingDescription=description;useInlineFigure(ref,isResearch?xrdInteractive:isInfra?pboxInteractive:null,isResearch?\"Example XRD analysis reasoning by Periodic Neon\":isInfra?\"Pbox architecture with Slurm, gVisor, and colocated CPU resources\":null,isResearch?\"Interactive XRD analyses by Periodic Neon\":\"Pbox GPU–sandbox colocation animation\");useInlineFigure(ref,isInfra?sequencesInteractive:null,\"Efficient packing of long variable-length scientific traces\",\"Efficient training on long, variable-length sequences\",\"training-figure-size\");useInlineFigure(ref,isInfra?inferenceAnimation:null,\"Architecture of the asynchronous inference stack\",\"Asynchronous inference animation\");useInlineFigure(ref,isInfra?replayAnimation:null,\"Delta router replay mechanism\",\"Delta router replay animation\");useInlineFigure(ref,isInfra?reshardAnimation:null,\"Fast distributed weight resharding from Megatron to Hugging Face\",\"Fast weight resharding animation\");useInlineFigure(ref,isInfra?parallelismAnimation:null,\"Parallelism layout for long-context model training\",\"Long-context parallelism animation\");useInlineFigure(ref,isInfra?memoryAnimation:null,\"GPU memory optimizations for smaller RL trainers\",\"GPU memory optimization animation\");useInlineFigure(ref,isInfra?rolloutInteractive:null,\"Example of a typical reasoning trace lasting over an hour on our X-ray diffraction analysis task\",\"Rollout timing\");const film=story===\"building-labs-that-learn\"?labVideo:story===\"nature-is-our-learning-environment\"?xrdVideo:null;return /*#__PURE__*/_jsxs(\"div\",{ref:ref,className:\"pl-editorial\",\"data-story\":story,style:style,children:[isInfra&&/*#__PURE__*/_jsx(InfraFigureTransparency,{}),/*#__PURE__*/_jsx(MotionFrame,{children:/*#__PURE__*/_jsxs(\"header\",{className:`pl-opening ${isResearch||isInfra?\"pl-scale-opening\":!hasArt?\"pl-text-opening\":\"\"}`,style:isResearch?{minHeight:0}:undefined,children:[/*#__PURE__*/_jsxs(\"div\",{className:\"pl-opening-copy\",children:[/*#__PURE__*/_jsx(\"h1\",{children:title}),!hasArt&&!isResearch&&/*#__PURE__*/_jsx(\"p\",{children:openingDescription.split(/(\\*[^*]+\\*)/g).map((part,index)=>part.startsWith(\"*\")?/*#__PURE__*/_jsx(\"em\",{children:part.slice(1,-1)},index):part)}),/*#__PURE__*/_jsxs(\"div\",{className:\"pl-opening-meta\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"pl-opening-category\",children:category}),date&&/*#__PURE__*/_jsx(\"time\",{dateTime:date,children:new Date(date).toLocaleDateString(\"en-US\",{timeZone:\"UTC\",month:\"long\",day:\"numeric\",year:\"numeric\"})})]})]}),hasArt&&/*#__PURE__*/_jsx(\"div\",{className:\"pl-art\",children:/*#__PURE__*/_jsx(Art,{story:story})})]})}),film&&/*#__PURE__*/_jsx(LabFilm,{video:film,caption:\"\",style:{maxWidth:1120,margin:\"48px auto 32px\"}})]});}addPropertyControls(EditorialVisuals,{title:{type:ControlType.String,defaultValue:\"Nature Is Our Learning Environment\"},description:{type:ControlType.String,displayTextArea:true,defaultValue:\"How our autonomous labs and AI systems learn from the physical world to accelerate materials discovery.\"},story:{type:ControlType.String,title:\"Story slug\",defaultValue:\"building-labs-that-learn\"},date:{type:ControlType.Date,title:\"Date\"},category:{type:ControlType.Slot,maxCount:1,title:\"Category\"},labVideo:{type:ControlType.File,title:\"Lab film\",allowedFileTypes:[\"mp4\"]},xrdVideo:{type:ControlType.File,title:\"XRD film\",allowedFileTypes:[\"mp4\"]},xrdInteractive:{type:ControlType.File,title:\"XRD interactive\",allowedFileTypes:[\"html\"]},sequencesInteractive:{type:ControlType.File,title:\"Sequences animation\",allowedFileTypes:[\"html\"]},inferenceAnimation:{type:ControlType.File,title:\"Inference animation\",allowedFileTypes:[\"html\"]},replayAnimation:{type:ControlType.File,title:\"Router replay animation\",allowedFileTypes:[\"html\"]},reshardAnimation:{type:ControlType.File,title:\"Resharding animation\",allowedFileTypes:[\"html\"]},parallelismAnimation:{type:ControlType.File,title:\"Parallelism animation\",allowedFileTypes:[\"html\"]},memoryAnimation:{type:ControlType.File,title:\"Memory animation\",allowedFileTypes:[\"html\"]},rolloutInteractive:{type:ControlType.File,title:\"Rollout interactive\",allowedFileTypes:[\"html\"]},pboxInteractive:{type:ControlType.File,title:\"Pbox animation\",allowedFileTypes:[\"html\"]}});/** @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 1000\n * @framerIntrinsicHeight 670\n */export function LearningLoop({style}){return /*#__PURE__*/_jsx(MotionFrame,{style:style,children:/*#__PURE__*/_jsxs(\"figure\",{className:\"pl-figure\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"pl-art\",style:{maxWidth:820,margin:\"auto\"},children:/*#__PURE__*/_jsx(NatureArt,{})}),/*#__PURE__*/_jsxs(\"figcaption\",{className:\"pl-figure-caption\",children:[/*#__PURE__*/_jsx(\"span\",{children:\"Propose. Synthesize. Characterize.\"}),/*#__PURE__*/_jsx(\"span\",{children:\"Physical experiments close the learning loop.\"})]})]})});}/** @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 1000\n * @framerIntrinsicHeight 600\n */export function LabFilm({video,caption,style}){const ref=React.useRef(null);React.useEffect(()=>{const reduce=matchMedia(\"(prefers-reduced-motion: reduce)\");const observer=new IntersectionObserver(([entry])=>{if(entry.isIntersecting&&!reduce.matches)ref.current?.play().catch(()=>{});else ref.current?.pause();});if(ref.current)observer.observe(ref.current);return()=>observer.disconnect();},[video]);return /*#__PURE__*/_jsxs(\"figure\",{className:\"pl-film\",style:style,children:[/*#__PURE__*/_jsx(\"style\",{children:css}),/*#__PURE__*/_jsx(\"video\",{ref:ref,src:video,muted:true,loop:true,playsInline:true,disablePictureInPicture:true,preload:\"auto\"}),/*#__PURE__*/_jsx(\"figcaption\",{children:caption})]});}addPropertyControls(LabFilm,{video:{type:ControlType.File,allowedFileTypes:[\"mp4\",\"webm\"]},caption:{type:ControlType.String,defaultValue:\"Autonomous sample handling at Periodic Labs.\",displayTextArea:true}});/** @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 1120\n * @framerIntrinsicHeight 129\n */export function NewsIntro({style}){return /*#__PURE__*/_jsxs(\"div\",{className:\"pl-news-intro\",style:style,children:[/*#__PURE__*/_jsx(\"style\",{children:css+`\n.pl-news-intro{width:100%;max-width:1120px;margin:auto;padding:20px 0 44px;border-bottom:1px solid #C9CBC1;font-family:\"GT Standard L Light\",sans-serif;color:#30332F}\n.pl-news-intro h1{font-size:64px;line-height:1;letter-spacing:-.025em;font-weight:400;margin:0}\n@media(max-width:809px){.pl-news-intro{box-sizing:border-box;padding:20px 40px 36px}.pl-news-intro h1{font-size:48px}}\n`}),/*#__PURE__*/_jsx(\"h1\",{children:\"News\"})]});}const mobileReshardingSource=\"function mobileResharding(t) {\\n body='';\\n text(14,28,'Fast resharding',22,C.ink);\\n text(14,56,'Kimi 1T \\xb7 Megatron → Hugging Face',15,C.muted);\\n text(14,81,'Conversion time \\xb7 30 min → ~1 min',15,C.muted);\\n line(14,98,346,98,C.line,1);\\n text(14,124,'Before',15,C.amber);\\n text(88,124,'Single process',16,C.ink);\\n group(t>15?1-between(t,15,16):.4+.6*between(t,0,1.6));\\n text(14,151,'Checkpoint',13,C.muted);\\n for(let i=0;i<8;i++){const x=14+i%4*27,y=163+Math.floor(i/4)*28;rect(x,y,23,23,C.amberBg,'none',4);text(x+11.5,y+16,String.fromCharCode(65+i),13,C.amber,400,'text-anchor=\\\"middle\\\"');}\\n arrow(126,190,155,C.amber,1.2);\\n rect(164,160,182,84,C.amberBg,'none',8);\\n text(174,181,'Rebuild full tensor',14,C.ink);\\n const copied=Math.min(5,Math.floor(Math.max(0,t-2)*.65));\\n for(let i=0;i<8;i++){\\n  const active=i<copied&&t>=2;\\n  rect(175+i%4*39,193+Math.floor(i/4)*20,32,15,active?'#DDC5AC':'#E7E1D7','none',3);\\n  if(active)text(191+i%4*39,205+Math.floor(i/4)*20,String.fromCharCode(65+i),11,'#805E3E',400,'text-anchor=\\\"middle\\\"');\\n }\\n text(14,267,'Full-tensor allocation + copies',13,C.amber);\\n line(253,245,253,267,C.line,1);\\n text(184,290,'Convert',14,C.muted);\\n arrow(240,286,274,C.line,1.2);\\n text(281,290,'HF shards',13,C.muted);\\n text(14,290,t>=5?'Still processing…':'',13,C.muted);\\n end();\\n line(14,313,346,313,C.line,1);\\n text(14,342,'After',15,C.teal);\\n text(88,342,'Ray parallel conversion',16,C.ink);\\n text(14,369,'4 nodes x 16 workers',14,C.muted);\\n text(14,402,'Chunks',13,C.muted);\\n text(126,402,'Direct conversion',13,C.muted);\\n text(276,402,'HF shards',13,C.muted);\\n group(t>15?1-between(t,15,16):.4+.6*between(t,0,1.6));\\n for(let row=0;row<4;row++){\\n  const y=419+row*43,start=5+row*.12,p=clamp((t-start)/4.6);\\n  for(let j=0;j<2;j++){\\n   const label=String.fromCharCode(65+row*2+j);\\n   rect(14+j*27,y,23,26,'#e7ecdf','none',4);text(25.5+j*27,y+18,label,13,C.teal,400,'text-anchor=\\\"middle\\\"');\\n   const arrival=between(t,start+3.1+j*.9,start+3.55+j*.9);\\n   rect(276+j*29,y,25,26,'#eff1e9','none',4);\\n   group(arrival);text(288.5+j*29,y+18,label+'′',12,C.teal,400,'text-anchor=\\\"middle\\\"');end();\\n  }\\n  arrow(70,y+13,112,'#D1DAD1',1.2);\\n  rect(121,y-2,109,30,p>=1?'#e7ecdf':'#eff1e9','none',5);\\n  text(131,y+18,'Node '+(row+1),14,C.ink);\\n  rect(187,y+8,32,3,'#D2DFD5','none',1);rect(187,y+8,32*p,3,C.teal,'none',1);\\n  arrow(237,y+13,269,'#D1DAD1',1.2);\\n  line(332,y+13,342,y+13,'#D1DAD1',1);\\n }\\n const done=between(t,10.45,11.3);\\n line(342,432,342,584,C.line,1);line(261,584,342,584,C.line,1);add(`<path d=\\\"M267 579l-6 5 6 5\\\" fill=\\\"none\\\" stroke=\\\"${C.line}\\\"/>`);\\n text(185,589,'HF index',14,done>.7?C.teal:C.muted);\\n text(14,616,'MoE expert chunks → HF tensors.',14,C.teal);\\n text(14,637,'No full-tensor rebuild.',14,C.teal);\\n end();\\n const fontScale=Math.max(1,360/innerWidth);\\n const drawing=body.replace(/font-size=\\\"([\\\\d.]+)\\\"/g,(_,size)=>`font-size=\\\"${Number(size)*fontScale}\\\"`);\\n return `<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"360\\\" height=\\\"658\\\" viewBox=\\\"0 0 360 658\\\">${drawing}</svg>`;\\n}\\n\";const infraMobileCss=`\n@media(max-width:809px){\n [data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]){padding-left:24px!important;padding-right:24px!important}\n [data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) > [data-framer-name=\"Content\"] > :is(p,ul,ol){--framer-font-size:18px;--framer-line-height:1.6em;font-size:18px!important;line-height:1.6!important}\n [data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) > [data-framer-name=\"Content\"] :is(ul,ol) :is(li,p,span,strong,em,a){--framer-font-size:18px;--framer-line-height:1.6em;font-size:18px!important;line-height:1.6!important}\n [data-framer-name=\"article-content\"]:has([data-story=\"ai-infrastructure-at-periodic\"]) .pl-captioned-figure > figcaption{font-size:15px!important;line-height:1.5!important;padding:0 4px}\n .pl-mobile-benchmark{font:400 15px/1.45 \"GT Standard L Light\",sans-serif;color:#30332F;width:100%;box-sizing:border-box;padding:0 4px}\n .pl-mobile-benchmark h3{font:400 21px/1.25 \"GT Standard L Light\",sans-serif;margin:0 0 16px!important;letter-spacing:-.015em}\n .pl-mobile-benchmark button{font:inherit;color:inherit;border:0;border-radius:6px;background:#eeece5;padding:10px 8px;min-height:44px;cursor:pointer}\n .pl-mobile-benchmark button[aria-pressed=true]{background:#e6edef;color:#50717d;box-shadow:inset 0 -2px #50717d}\n .pl-mobile-benchmark button:focus-visible{outline:2px solid #50717d;outline-offset:3px}\n .pl-mobile-benchmark .pl-mobile-views{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}\n .pl-mobile-benchmark .pl-mobile-panel{min-height:360px}\n .pl-mobile-benchmark .pl-mobile-panel[hidden]{display:none}\n .pl-mobile-benchmark .pl-mobile-key{display:flex;flex-wrap:wrap;gap:4px 16px;color:#686c63;font-size:13px;margin:0 0 10px}\n .pl-mobile-benchmark i{display:inline-block;width:10px;height:10px;margin-right:5px;background:#76919b}\n .pl-mobile-benchmark i.provider{background:#c8c9c0}\n .pl-mobile-benchmark svg{display:block;width:100%;height:auto;overflow:visible}\n .pl-mobile-benchmark svg text{font-family:\"GT Standard L Light\",sans-serif;fill:#30332f;font-size:14px}\n .pl-mobile-benchmark .pl-mobile-summary{margin:10px 0 0;font-size:15px;line-height:1.4;color:#686c63}\n .pl-mobile-main-bars{font:400 15px/1.45 \"GT Standard L Light\",sans-serif;color:#30332f;width:100%;box-sizing:border-box;padding:0 4px}\n .pl-mobile-main-bars h3{font:400 21px/1.25 \"GT Standard L Light\",sans-serif;letter-spacing:-.015em;margin:0 0 24px!important}\n .pl-mobile-main-bars section+section{margin-top:28px}\n .pl-mobile-main-bars h4{font:400 15px/1.4 \"GT Standard L Light\",sans-serif;margin:0!important}\n .pl-mobile-main-bars .metric-unit{font-size:13px;color:#686c63;margin:3px 0 12px}\n .pl-mobile-main-bars .metric-row{display:grid;grid-template-columns:88px minmax(0,1fr) 32px;align-items:center;gap:8px;min-height:26px;margin-top:7px}\n .pl-mobile-main-bars .metric-label{font-size:13px;line-height:1.2;color:#686c63}\n .pl-mobile-main-bars .metric-bar{height:18px;background:#76919b}\n .pl-mobile-main-bars .metric-row[data-baseline] .metric-bar{background:#c8c9c0}\n .pl-mobile-main-bars .metric-value{font-size:14px;text-align:right;font-variant-numeric:tabular-nums}\n}\n@media(max-width:374px){.pl-mobile-benchmark svg text{font-size:16px}.pl-mobile-benchmark button{font-size:13px}}\n`;function prepareInfraMobileHtml(html,title){if(title===\"Fast weight resharding animation\"){if(!html.includes(\"function svg(t){\"))return html;return html.replace(\"function svg(t){\",mobileReshardingSource+\"\\nfunction svg(t){if(innerWidth<600)return mobileResharding(t);\").replace(\"</head>\",\"<style>@media(max-width:599px){.scene{aspect-ratio:360/658!important;height:auto!important}.scene>svg{height:auto!important}}</style></head>\");}const css=`<style>@media(max-width:599px){\n      .graphic-title{font-size:21px!important;line-height:1.25!important;padding:0 12px 12px!important;letter-spacing:-.015em!important}\n      .stages button{font-size:14px!important;min-height:44px}\n      .phase-heading{font-size:16px!important;line-height:1.35!important}\n      #canvas text[id^=\"sample-label\"],#canvas text[id^=\"srowlabel\"],#canvas text[id^=\"smicrobatch\"]{font-size:13px!important}\n      #canvas text[id^=\"spp-\"],#canvas text[id^=\"sdp-\"],#canvas #sschedule-note{font-size:11px!important}\n    }</style>`;const script=`<script>(()=>{\n      const title=document.querySelector('.graphic-title');\n      if(!title)return;\n      const original=title.innerHTML,label=title.textContent;\n      const query=matchMedia('(max-width:599px)');\n      const update=()=>{title.innerHTML=query.matches?'':original;if(query.matches)title.textContent=label;};\n      query.addEventListener('change',update);update();\n    })();</script>`;return html.replace(\"</head>\",css+\"</head>\").replace(\"</body>\",script+\"</body>\");}function useInfraMobileMainBars(ref,story){React.useEffect(()=>{if(story!==\"ai-infrastructure-at-periodic\")return;const article=ref.current?.closest('[data-framer-name=\"article-content\"]');if(!article)return;const media=matchMedia(\"(max-width:809px)\");const abort=new AbortController;let root,source;let pending=false;let originalDisplay=\"\",originalPriority=\"\";const cleanup=()=>{root?.remove();root=undefined;if(source){if(originalDisplay)source.style.setProperty(\"display\",originalDisplay,originalPriority);else source.style.removeProperty(\"display\");}};const mount=async()=>{if(!media.matches){cleanup();return;}if(root||pending)return;source=article.querySelector('img[alt=\"Training, inference, and sandboxing throughput improvements\"]')||undefined;if(!source)return;originalDisplay=source.style.getPropertyValue(\"display\");originalPriority=source.style.getPropertyPriority(\"display\");pending=true;try{const response=await fetch(source.currentSrc||source.src,{signal:abort.signal});if(!response.ok)throw new Error(\"Throughput chart could not load\");const svg=new DOMParser().parseFromString(await response.text(),\"image/svg+xml\");const expected=\"Training throughput: Periodic 325 versus Megatron 79 tokens per second per GPU, approximately 4.1x. Inference: Periodic 25 versus SGLang 10 tokens per second per request, 2.5x. Sandbox throughput: Periodic pbox 393 versus SOTA provider 118 megabytes per second, approximately 3.3x.\";if(svg.querySelector(\"desc\")?.textContent?.trim()!==expected)throw new Error(\"Throughput data changed; keep original chart\");if(!media.matches||abort.signal.aborted)return;root=document.createElement(\"div\");root.className=\"pl-mobile-main-bars\";const heading=document.createElement(\"h3\");heading.textContent=\"Training, inference, and sandboxing throughput\";root.append(heading);const groups=[{title:\"Training \\xb7 4.1x training throughput\",unit:\"Tokens / second / GPU\",names:[\"Periodic\",\"Megatron\"],values:[325,79]},{title:\"Inference \\xb7 2.5x generation speed\",unit:\"Tokens / second / request\",names:[\"Periodic\",\"SGLang\"],values:[25,10]},{title:\"Sandbox \\xb7 3.3x data throughput\",unit:\"Megabytes / second\",names:[\"Periodic (pbox)\",\"SOTA provider\"],values:[393,118]}];for(const group of groups){const section=document.createElement(\"section\");const title=document.createElement(\"h4\");title.textContent=group.title;const unit=document.createElement(\"div\");unit.className=\"metric-unit\";unit.textContent=group.unit;section.append(title,unit);group.values.forEach((value,index)=>{const row=document.createElement(\"div\");row.className=\"metric-row\";if(index===1)row.setAttribute(\"data-baseline\",\"\");const label=document.createElement(\"span\");label.className=\"metric-label\";label.textContent=group.names[index];const track=document.createElement(\"div\");const bar=document.createElement(\"div\");bar.className=\"metric-bar\";bar.style.width=`${value/Math.max(...group.values)*100}%`;bar.setAttribute(\"aria-hidden\",\"true\");const number=document.createElement(\"span\");number.className=\"metric-value\";number.textContent=String(value);track.append(bar);row.append(label,track,number);section.append(row);});root.append(section);}source.before(root);source.style.setProperty(\"display\",\"none\",\"important\");}catch(error){if(!abort.signal.aborted)console.error(error);cleanup();}finally{pending=false;}};mount();const observer=new MutationObserver(()=>{if(!root&&!pending)mount();});observer.observe(article,{childList:true,subtree:true});media.addEventListener(\"change\",mount);return()=>{abort.abort();observer.disconnect();media.removeEventListener(\"change\",mount);cleanup();};},[story]);}function useInfraMobileFigures(ref,story){React.useEffect(()=>{if(story!==\"ai-infrastructure-at-periodic\")return;const article=ref.current?.closest('[data-framer-name=\"article-content\"]');if(!article)return;const media=matchMedia(\"(max-width:809px)\");const abort=new AbortController;let root,source;let pending=false;const cleanup=()=>{root?.remove();root=undefined;source?.style.removeProperty(\"display\");};const mount=async()=>{if(!media.matches){cleanup();return;}if(root||pending)return;source=article.querySelector('img[alt=\"Pbox sandbox performance compared with a hosted provider\"]')||undefined;if(!source)return;pending=true;try{const response=await fetch(source.currentSrc||source.src,{signal:abort.signal});if(!response.ok)throw new Error(\"Benchmark could not load\");const svg=new DOMParser().parseFromString(await response.text(),\"image/svg+xml\");const required=[\"patch_5\",\"patch_6\",\"patch_10\",\"patch_11\",\"patch_15\",\"patch_16\",\"axes_4\"];const dataLabels=Array.from(svg.querySelectorAll(\"[aria-label]\")).map(node=>node.getAttribute(\"aria-label\"));if(!required.every(id=>svg.getElementById(id))||![\"1.58\",\"1.44\",\"162.2\",\"726.8\",\"393.3\",\"118.2\"].every(value=>dataLabels.includes(value)))throw new Error(\"Unrecognized benchmark layout\");if(!media.matches||abort.signal.aborted)return;const ns=\"http://www.w3.org/2000/svg\";const chart=(viewBox,label)=>{const element=document.createElementNS(ns,\"svg\");element.setAttribute(\"viewBox\",viewBox);element.setAttribute(\"role\",\"img\");element.setAttribute(\"aria-label\",label);return element;};const label=(parent,x,y,value,anchor=\"start\")=>{const node=document.createElementNS(ns,\"text\");node.setAttribute(\"x\",String(x));node.setAttribute(\"y\",String(y));node.setAttribute(\"text-anchor\",anchor);node.textContent=value;parent.append(node);};root=document.createElement(\"div\");root.className=\"pl-mobile-benchmark\";const heading=document.createElement(\"h3\");heading.textContent=\"Pbox vs a state-of-the-art sandbox provider\";const buttons=document.createElement(\"div\");buttons.className=\"pl-mobile-views\";const metrics=document.createElement(\"div\");metrics.className=\"pl-mobile-panel\";const distribution=document.createElement(\"div\");distribution.className=\"pl-mobile-panel\";distribution.hidden=true;const key=document.createElement(\"div\");key.className=\"pl-mobile-key\";key.innerHTML='<span><i></i>pbox</span><span><i class=\"provider\"></i>SOTA sandbox provider</span>';metrics.append(key);const metricChart=chart(\"0 0 342 306\",\"Startup time: pbox 1.58 s, provider 1.44 s. Round-trip latency: pbox 162.2 ms, provider 726.8 ms. Throughput: pbox 393.3 MiB/s, provider 118.2 MiB/s. Bars include original minimum and maximum error bars.\");const rows=[{title:\"Startup time (s)\",ids:[\"patch_5\",\"patch_6\"],x:[95.81,191.242],center:[124.006,219.437],error:[[\"160.006\",\"131.829\"],[\"170.483\",\"142.303\"]],values:[\"1.58\",\"1.44\"]},{title:\"1 MiB round-trip latency, p50 (ms)\",ids:[\"patch_10\",\"patch_11\"],x:[385.683,481.114],center:[413.878,509.309],error:[[\"257.887\",\"253.769\"],[\"140.619\",\"131.829\"]],values:[\"162.2\",\"726.8\"]},{title:\"Data throughput (MiB/s)\",ids:[\"patch_15\",\"patch_16\"],x:[675.555,770.986],center:[703.75,799.181],error:[[\"142.109\",\"131.829\"],[\"261.605\",\"237.323\"]],values:[\"393.3\",\"118.2\"]}];rows.forEach((row,i)=>{const y=i*101;label(metricChart,0,y+15,row.title);row.ids.forEach((id,j)=>{const g=document.createElementNS(ns,\"g\");// Rotate the original bar geometry; do not infer or round its data.\ng.setAttribute(\"transform\",`matrix(0 .3 -1.38 0 ${290.405*1.38} ${y+30+j*27-row.x[j]*.3})`);const path=svg.getElementById(id).cloneNode(true);path.removeAttribute(\"id\");path.removeAttribute(\"clip-path\");g.append(path);const error=document.createElementNS(ns,\"path\");const[lo,hi]=row.error[j].map(Number),cx=row.center[j];error.setAttribute(\"d\",`M${cx} ${lo}V${hi}M${cx-9} ${lo}h18M${cx-9} ${hi}h18`);error.setAttribute(\"stroke\",\"#30332f\");error.setAttribute(\"stroke-width\",\"1.4\");error.setAttribute(\"fill\",\"none\");g.append(error);metricChart.append(g);label(metricChart,337,y+44+j*27,row.values[j],\"end\");});});metrics.append(metricChart);const metricNote=document.createElement(\"p\");metricNote.className=\"pl-mobile-summary\";metricNote.textContent=\"Bars: average of 4 runs. Whiskers: minimum and maximum.\";metrics.append(metricNote);const hist=chart(\"0 0 342 294\",\"Sampled execution speedup on a log scale. pbox is faster in 86.9% of executions; median speedup is 2.5x.\");label(hist,0,16,\"Share of sampled code executions\");const sx=296/790.56,sy=.85,tx=38-65.88*sx,ty=224-556.042*sy;const geometry=document.createElementNS(ns,\"g\");geometry.setAttribute(\"transform\",`matrix(${sx} 0 0 ${sy} ${tx} ${ty})`);svg.querySelectorAll(\"#axes_4 path\").forEach(path=>{if(path.closest(\"#legend_1\"))return;const clone=path.cloneNode(true);clone.removeAttribute(\"id\");clone.removeAttribute(\"clip-path\");geometry.append(clone);});hist.append(geometry);[0,10,20,30].forEach((n,i)=>label(hist,31,228-i*59.266*.85,n+\"%\",\"end\"));[[.1,\"0.1x\"],[.3,\"0.3x\"],[1,\"1x\"],[3,\"3x\"],[10,\"10x\"]].forEach(([n,s])=>label(hist,38+(Math.log10(Number(n))+1)/2*296,248,String(s),\"middle\"));label(hist,38,274,\"Provider time / pbox time (log scale)\");const note=document.createElement(\"p\");note.className=\"pl-mobile-summary\";note.textContent=\"Median: 2.5x faster. pbox is faster in 86.9% of sampled executions.\";distribution.append(hist,note);[\"System metrics\",\"Execution speedup\"].forEach((name,i)=>{const button=document.createElement(\"button\");button.type=\"button\";button.textContent=name;button.setAttribute(\"aria-pressed\",String(i===0));button.onclick=()=>{metrics.hidden=i!==0;distribution.hidden=i!==1;Array.from(buttons.children).forEach((b,j)=>b.setAttribute(\"aria-pressed\",String(i===j)));};buttons.append(button);});root.append(heading,buttons,metrics,distribution);source.before(root);source.style.setProperty(\"display\",\"none\",\"important\");}catch(error){if(!abort.signal.aborted)console.error(error);cleanup();}finally{pending=false;}};mount();const observer=new MutationObserver(()=>{if(!root&&!pending)mount();});observer.observe(article,{childList:true,subtree:true});media.addEventListener(\"change\",mount);return()=>{abort.abort();observer.disconnect();media.removeEventListener(\"change\",mount);cleanup();};},[story]);}\nexport const __FramerMetadata__ = {\"exports\":{\"NewsIntro\":{\"type\":\"reactComponent\",\"name\":\"NewsIntro\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicWidth\":\"1120\",\"framerIntrinsicHeight\":\"129\",\"framerSupportedLayoutWidth\":\"any\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"EditorialVisuals\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"LearningLoop\":{\"type\":\"reactComponent\",\"name\":\"LearningLoop\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicHeight\":\"670\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicWidth\":\"1000\"}},\"LabFilm\":{\"type\":\"reactComponent\",\"name\":\"LabFilm\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicHeight\":\"600\",\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicWidth\":\"1000\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./EditorialVisuals.map"],"mappings":"wUAAA,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,KAAK,EAAE,OAAO,eAAe,EAAE,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,aAAa,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAE,CAKxH,SAAS,GAAE,EAAE,CAAC,OAAkB,OAAO,GAAnB,WAAqB,EAAE,EAAE,CAAE,CAAyD,SAASA,GAAE,EAAE,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,EAAG,CACzI,SAASC,GAAE,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,GAAE,CAAC,EAAE,IAAa,IAAT,IAAK,IAAOD,GAAE,EAAE,CAAC,KAAK,EAAE,GAAqB,IAAlB,gBAAoB,KAAM,CAAC,OAAO,CAAE,CAG5E,SAAS,GAAE,EAAE,CAAC,OAAO,IAAI,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,CAAE,CAG5G,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,mBAAmB,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,GAAG,CAAE,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,MAAM,qBAAqB,GAAG,CAAE,CAE9I,SAAS,EAAE,EAAE,CAAC,OAAgB,OAAO,GAAjB,QAAmB,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,OAAO,SAAS,CAAC,CAAE,CAAC,SAAS,EAAE,EAAE,CAAC,OAAc,IAAP,IAAS,CAE1E,SAAS,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,MAAO,GAAY,OAAO,EAAE,KAAT,CAAe,KAAKE,EAAE,MAAM,MAAO,GAAa,KAAKA,EAAE,QAAQ,MAAO,GAAe,KAAKA,EAAE,MAAM,MAAO,GAAa,KAAKA,EAAE,KAAK,MAAO,GAAY,KAAKA,EAAE,KAAK,MAAO,GAAY,KAAKA,EAAE,KAAK,MAAO,GAAY,KAAKA,EAAE,gBAAgB,MAAO,IAAwB,KAAKA,EAAE,KAAK,MAAO,GAAY,KAAKA,EAAE,OAAO,MAAO,GAAc,KAAKA,EAAE,OAAO,MAAO,GAAc,KAAKA,EAAE,SAAS,MAAO,IAAiB,KAAKA,EAAE,OAAO,MAAO,IAAe,KAAKA,EAAE,cAAc,MAAO,IAAsB,QAAQ,EAAE,CAAC,CAAE,CAAC,CAAC,SAAS,GAAE,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAEC,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAE,CAAC,MAAM,CAAC,KAAKD,EAAE,MAAM,MAAM,CAAC,CAAE,CAAC,SAAS,GAAE,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAE,CAAC,SAAS,GAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,OAAO,EAAE,EAAE,MAAM,OAAO,GAAG,EAAE,EAAE,MAAO,GAAG,GAAG,EAAE,EAAE,MAAO,GAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,MAAM,GAAG,EAAEC,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAO,IAAJ,EAAM,OAAO,CAAE,CAAC,MAAO,EAAE,CAAC,SAAS,GAAE,EAAE,CAAC,MAAM,CAAC,KAAKD,EAAE,QAAQ,MAAU,EAAE,UAAU,IAAhB,CAAiB,CAAE,CAAC,SAAS,GAAE,EAAE,EAAE,CAAC,EAAE,WAAW,KAAE,KAAS,CAAE,CAAC,SAAS,GAAE,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAE,MAAM,EAAE,MAAU,CAAC,SAAS,GAAE,EAAE,CAAC,MAAM,CAAC,KAAKA,EAAE,MAAM,MAAM,EAAE,WAAW,CAAC,CAAE,CAAC,SAAS,GAAE,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAE,CAAC,SAAS,GAAE,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAE,MAAM,EAAE,MAAU,CAAC,SAAS,GAAE,EAAE,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,KAAK,CAAC,EAAE,MAAM,CAAC,KAAKA,EAAE,KAAK,MAAM,EAAE,YAAY,CAAC,CAAE,CAAC,SAAS,GAAE,EAAE,EAAE,CAAC,IAAwB,EAAE,IAAhB,KAAK,EAAE,KAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,WAAW,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,IAAE,EAAM,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,KAAKA,EAAE,KAAK,MAAM,EAAE,WAAW,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAE,MAAM,EAAE,MAAU,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,KAAKA,EAAE,KAAK,MAAM,EAAE,WAAW,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAE,MAAM,EAAE,MAAU,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,KAAKA,EAAE,KAAK,MAAM,EAAE,SAAS,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,UAAU,EAAE,KAAK,EAAE,EAAE,KAAK,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,IAAE,EAAM,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,KAAKA,EAAE,OAAO,MAAM,EAAE,YAAY,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAE,MAAM,EAAE,MAAU,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,GAAGC,EAAE,KAAK,CAAC,CAAE,CAAC,MAAM,CAAC,KAAKD,EAAE,OAAO,MAAM,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,QAAQ,EAAE,KAAK,EAAE,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,CAAC,EAAEC,EAAE,MAAM,EAAE,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,OAAO,KAAK,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,MAAO,GAAG,GAAG,EAAE,OAAO,EAAE,OAAO,MAAO,GAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,MAAO,GAAG,GAAG,EAAE,EAAE,MAAO,GAAE,IAAI,EAAE,EAAE,MAAM,IAAI,KAAK,EAAE,EAAE,MAAM,IAAI,KAAK,EAAEA,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAO,IAAJ,EAAM,OAAO,CAAE,CAAC,MAAO,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,KAAKD,EAAE,gBAAgB,MAAM,EAAE,SAAS,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,UAAU,EAAE,KAAK,EAAE,EAAE,KAAK,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,IAAE,EAAM,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,GAAO,IAAJ,EAAM,MAAM,CAAC,KAAKA,EAAE,SAAS,MAAM,EAAE,WAAW,CAAC,EAAE,GAAO,IAAJ,EAAM,MAAM,CAAC,KAAKA,EAAE,SAAS,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,MAAM,2BAA2B,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAO,CAAC,MAAM,MAAM,2BAA2B,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,IAAE,GAAM,MAAM,MAAM,2BAA2B,CAAE,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,KAAKA,EAAE,OAAO,MAAM,EAAE,WAAW,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,OAAgC,EAAE,OAA3B,IAAkC,EAAE,EAAE,MAAM,YAAY,EAAE,EAAE,EAAE,MAAM,YAAY,GAAG,EAAE,EAAG,GAAG,IAAE,EAAM,CAAC,SAAS,GAAG,EAAE,CAAC,MAAM,CAAC,KAAKA,EAAE,cAAc,MAAM,EAAE,WAAW,CAAC,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAE,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,OAAO,EAAE,EAAE,GAAG,IAAE,EAAM,CAMxpH,eAAe,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,MAAM,IAAI,KAAK,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,IAAI,QAAQ,GAAG,CAAC,WAAW,EAAE,CAAC,CAAE,CAAC,CAAE,CACzR,eAAe,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,KAAK,EAAE,EAAE,KAAK,GAAG,EAAE,KAAK,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,aAAa,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAG,CAAC,EAAE,GAAS,EAAE,SAAR,IAAe,MAAM,MAAM,mBAAmB,EAAE,OAAO,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,IAAI,WAAW,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,MAAM,4CAA4C,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,CAAE,CAAC,OAAO,EAAE,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,CAAE,CAAqoB,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,WAAW,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,CAAE,CAAC,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,8BAA8B,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,CAAE,CAAC,OAAO,CAAE,CAuCp9C,SAAS,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,GAAGC,EAAE,KAAK,CAAC,CAAE,CAAC,OAAO,CAAE,CAC5G,SAAS,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,MAAM,EAAE,eAAgB,uFA3DkyI,EAJvtI,GAAE,OAAO,OAAOC,EAAE,OAAO,eAAe,GAAE,OAAO,yBAAyB,EAAE,OAAO,oBAAoBC,GAAE,OAAO,eAAeC,GAAE,OAAO,UAAU,eAAe,IAAG,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAA,EAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAA,CAAG,QAAQ,CAAC,EAAE,EAAE,OAAQ,OAAO,EAAE,CAAC,KAAM,GAAE,EAAE,CAAE,CAAC,EAAE,IAAG,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,GAAa,OAAO,GAAjB,UAAgC,OAAO,GAAnB,WAAqB,IAAI,IAAI,KAAK,EAAE,CAAC,EAAE,GAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAGF,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,GAAG,WAAW,EAAE,EAAE,GAAE,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,OAAO,CAAE,EAAEG,IAAG,EAAE,EAAE,KAAK,EAAQ,GAAN,KAAgB,CAAC,EAAT,GAAEF,GAAE,CAAC,CAAC,EAAK,GAIxlB,CAAC,GAAG,GAAG,EAAE,WAAW,EAAED,EAAE,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,GAAuuII,GAAED,GAApuI,GAAE,CAAC,4CAA4C,EAAE,EAAE,CAAC,IAAI,EAAE,EAAiB,UAAU,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC,GAAe,OAAO,GAAnB,WAAqB,MAAM,UAAU,uHAAuH,EAAE,GAAG,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,MAAO,GAAE,IAAI,EAAE,GAAG,EAAE,aAAa,GAAY,IAAT,IAAK,GAAM,MAAO,KAAI,GAAa,OAAO,GAAjB,UAAoB,EAAE,EAAE,MAAM,UAAU,2CAA2C,CAAC,EAAE,OAAO,CAAE,EAAE,CAAC,EAAE,KAAK,iBAAiB,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,gBAAgB,GAAY,IAAT,IAAK,GAAM,OAAO,EAAE,GAAe,OAAO,GAAnB,WAAqB,MAAM,UAAU,uCAAuC,CAAC,EAAE,OAAO,CAAE,EAAE,CAAC,EAAE,KAAK,YAAY,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,GAAY,IAAT,IAAK,GAAM,OAAO,SAAS,EAAE,CAAC,OAAO,CAAE,EAAE,GAAe,OAAO,GAAnB,WAAqB,MAAM,UAAU,kCAAkC,CAAC,EAAE,OAAO,CAAE,EAAE,CAAC,EAAE,KAAK,UAAU,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,OAAO,KAAK,IAAI,EAAE,GAAG,EAAE,SAAS,GAAY,IAAT,IAAK,GAAM,OAAsB,IAAI,IAAI,GAAU,IAAP,KAAS,CAAC,IAAI,EAAE,CAAC,MAAM,MAAM,SAAS,OAAO,CAAC,CAAC,OAAO,SAAS,EAAE,CAAC,OAAO,GAAe,OAAO,EAAE,IAArB,UAAwB,CAAC,EAAE,GAAO,EAAE,SAAN,EAAa,MAAM,UAAU,oCAAoC,EAAE,KAAK,IAAI,CAAC,CAAE,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE,KAAK,OAAO,KAAK,KAAK,KAAK,GAAG,EAAE,KAAK,EAAE,KAAK,IAAK,CAAC,IAAI,EAAE,EAAE,UAAU,MAAO,GAAE,KAAK,SAAS,EAAE,CAAC,GAAS,GAAN,KAAQ,MAAM,UAAU,oEAAoE,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,GAAU,IAAP,MAAU,CAAC,EAAE,eAAe,EAAE,KAAK,OAAO,EAAE,cAAc,OAAO,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,MAAO,GAAE,OAAO,EAAE,EAAE,iBAAiB,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,cAAc,CAAC,EAAM,EAAE,KAAK,SAAX,EAAkB,CAAC,EAAE,CAAC,EAAE,MAAO,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,CAAE,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,sJAAsJ,OAAO,CAAC,EAAE,GAAG,CAAC,CAAE,CAAC,GAAG,CAAC,GAAe,OAAO,EAAE,MAArB,WAA0B,OAAO,EAAE,EAAE,EAAE,UAAU,yJAAyJ,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,UAAU,qKAAqK,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,OAAO,MAAM,UAAU;;;EAAuN,OAAO,EAAE,IAAI,EAAE;;;EAAgB,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,UAAU,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,aAAa,MAAM,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC,QAAQ,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAE,CAAC,CAAE,EAAA,CAAG,EAAE,CAAC,CAAE,CAAC,EAAE,CAAE,EAAE,IAAI,EAAE,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,AAAc,EAAE,YAAU,CAAC,EAAG,OAAO,IAAI,QAAQ,SAAS,EAAE,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,CAAE,CAAC,CAAE,CAAC,CAAE,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,QAAQ,SAAS,EAAE,EAAE,CAAC,EAAE,UAAU,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAE,CAAC,EAAE,OAAO,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAE,EAAE,EAAE,SAAS,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,UAAU,0EAA0E,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,EAAE,KAAK,KAAK,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,OAAO,CAAE,CAAC,CAAC,EAAE,OAAO,QAAQ,IAAI,CAAC,CAAE,EAAE,EAAE,MAAM,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,UAAU,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAE,CAAC,OAAO,IAAK,EAAE,EAAE,SAAS,UAAU,CAAC,IAAI,EAAE,KAAK,UAAU,OAAO,GAAG,EAAE,MAAM,EAAE,IAAK,EAAE,EAAE,MAAM,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,UAAU,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,YAAY,CAAC,EAAW,EAAE,IAAI,CAAC,IAAhB,IAAK,KAAe,aAAa,OAAO,EAAE,QAAQ,OAAO,CAAC,EAAA,CAAG,MAAM,UAAU,CAAC,CAAC,EAAE,EAAE,QAAQ,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAG,CAAC,OAAO,IAAK,EAAE,CAAE,EAAE,EAAE,EAAY,OAAO,SAAjB,UAAsC,OAAO,QAAQ,UAA3B,WAAoC,SAAS,EAAE,CAAC,AAAI,IAAE,QAAQ,QAAQ,EAAG,EAAE,KAAK,UAAU,CAAC,QAAQ,SAAS,CAAC,CAAE,CAAC,CAAE,EAAc,OAAO,cAAnB,WAAgC,SAAS,EAAE,CAAC,aAAa,CAAC,CAAE,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,CAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,OAAO,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,CAAE,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,EAAE,UAAU,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,UAAU,OAAO,IAAI,EAAE,UAAU,EAAE,CAAC,CAAE,CAAC,SAAS,EAAE,EAAE,CAAC,OAAgB,OAAO,GAAjB,YAA2B,GAAa,OAAO,EAAE,QAAnB,WAAgC,EAAE,SAAN,GAAc,EAAE,OAAO,GAAG,OAAO,UAAU,eAAe,KAAK,EAAE,EAAE,OAAO,CAAC,EAAG,CAAC,EAAE,QAAQ,CAAE,CAAC,CAAO,CAAC,CAAC,EAAE,CAAC,EAC9vI,EAAE,CAAC,WAAW,EAAE,eAAe,EAAE,gBAAgB,CAAC,EAElG,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,OAAO,KAAK,MAAO,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,KAAK,MAAM,OAAO,GAAG,EAAE,KAAK,OAAO,GAAG,GAAG,MAAM,MAAM,uBAAuB,CAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,MAAM,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,SAAS,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,OAAO,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,UAAU,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,OAAO,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,UAAU,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,cAAc,EAAE,OAAO,OAAO,CAAC,CAAE,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,UAAU,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,aAAa,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,KAAK,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,QAAQ,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,MAAM,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,SAAS,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,MAAM,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,SAAS,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,aAAa,EAAE,OAAO,OAAO,CAAC,CAAE,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,SAAS,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,YAAY,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,QAAQ,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,WAAW,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,QAAQ,KAAK,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,WAAW,KAAK,MAAM,EAAE,MAAO,MAAK,QAAQ,EAAE,CAAE,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,MAAM,SAAS,EAAE,CAAC,EAAE,MAAO,MAAK,OAAO,EAAE,CAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,WAAW,EAAE,EAAE,KAAK,UAAU,CAAC,EAAE,OAAO,EAAE,YAAY,OAAO,CAAC,CAAE,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,WAAW,EAAE,OAAO,KAAK,MAAM,CAAC,CAAE,CAAC,YAAY,EAAE,CAAC,EAAE,KAAK,QAAQ,IAAK,EAAC,EAAE,EAAE,KAAK,SAAS,CAAC,EAAE,EAAE,KAAK,OAAO,IAAK,EAAC,EAAE,KAAK,MAAM,EAAE,KAAK,KAAK,GAAE,KAAK,KAAK,CAAE,CAAC,EAEvzD,EAAE,EAAE,cAAc,IAAI,WAAW,EAAE,GAET,IAAS,QAAsB,EAAO,oBAE/C,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,EAAyD,EAAE,CAAC,EAAQ,EAAE,EAAE,EAAQ,EAAE,EAAE,EAAyC,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,GAAa,EAAE,CAAC,EAAS,EAAE,EAAE,EAAS,EAAE,EAAE,EAA2C,OAAO,CAAC,GAAG,OAAO,EAAE,EAAE,OAAO,CAAC,EAAO,EAAE,CAAC,EAAQ,EAAE,EAAE,EAAQ,EAAE,EAAE,EAAyC,OAAO,CAAC,GAAG,OAAO,EAAE,EAAE,OAAO,CAAC,EAEva,EAAE,MAAM,CAAC,CAAC,OAAO,WAAW,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAE,CAAC,UAAU,CAAC,MAAM,GAAG,KAAK,QAAQ,GAAG,KAAK,OAAO,GAAG,KAAK,QAAS,CAAC,OAAO,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,IAAI,EAAE,EAAE,EAAE,CAAC,CAAE,CAAC,MAAM,EAAE,CAAC,EAAE,YAAY,KAAK,OAAO,EAAE,EAAE,YAAY,KAAK,MAAM,EAAE,EAAE,YAAY,KAAK,MAAM,CAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,KAAK,QAAQ,EAAE,QAAQ,GAAG,KAAK,QAAQ,EAAE,QAAQ,EAAE,KAAK,OAAO,EAAE,OAAO,GAAG,KAAK,OAAO,EAAE,OAAO,GAAG,EAAE,KAAK,SAAS,EAAE,MAAM,EAAE,EAAG,CAAC,YAAY,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,UAAU,IAAK,EAAC,EAAE,EAAE,KAAK,SAAS,IAAK,EAAC,EAAE,EAAE,KAAK,SAAS,IAAK,EAAC,EAAE,KAAK,QAAQ,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,CAAE,CAAC,GACyoG,GAAG,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,OAAO,EAAP,CAAU,IAAK,GAAY,OAAO,KAAK,IAAK,GAAa,OAAO,GAAE,CAAC,EAAE,IAAK,GAAe,OAAO,GAAE,CAAC,EAAE,IAAK,GAAa,OAAO,GAAE,CAAC,EAAE,IAAK,GAAY,OAAO,GAAE,CAAC,EAAE,IAAK,GAAY,OAAO,GAAG,CAAC,EAAE,IAAK,GAAY,OAAO,GAAG,CAAC,EAAE,IAAK,GAAY,OAAO,GAAG,CAAC,EAAE,IAAK,GAAc,OAAO,GAAG,CAAC,EAAE,IAAK,GAAc,OAAO,GAAG,CAAC,EAAE,IAAK,IAAwB,OAAO,GAAG,CAAC,EAAE,IAAK,IAAiB,OAAO,GAAG,CAAC,EAAE,IAAK,IAAe,OAAO,GAAG,CAAC,EAAE,IAAK,IAAsB,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAE,CAAC,EAAE,EAAE,MAAM,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,KAAT,CAAe,KAAKL,EAAE,MAAM,OAAO,GAAE,EAAE,CAAC,EAAE,KAAKA,EAAE,QAAQ,OAAO,GAAE,EAAE,CAAC,EAAE,KAAKA,EAAE,MAAM,OAAO,GAAE,EAAE,CAAC,EAAE,KAAKA,EAAE,KAAK,OAAO,GAAE,EAAE,CAAC,EAAE,KAAKA,EAAE,KAAK,OAAO,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,KAAK,OAAO,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,KAAK,OAAO,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,OAAO,OAAO,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,OAAO,OAAO,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,gBAAgB,OAAO,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,SAAS,OAAO,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,cAAc,OAAO,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,OAAO,OAAO,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAE,CAAC,EAAE,EAAE,QAAQ,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,MAAO,GAAG,GAAG,EAAE,EAAE,MAAO,GAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,MAAO,GAAE,OAAO,EAAE,KAAT,CAAe,KAAKA,EAAE,MAAM,OAAO,EAAE,EAAE,OAAOA,EAAE,KAAK,EAAE,GAAE,EAAE,EAAE,CAAC,EAAE,KAAKA,EAAE,QAAQ,OAAO,EAAE,EAAE,OAAOA,EAAE,OAAO,EAAE,GAAE,EAAE,CAAC,EAAE,KAAKA,EAAE,MAAM,OAAO,EAAE,EAAE,OAAOA,EAAE,KAAK,EAAE,GAAE,EAAE,CAAC,EAAE,KAAKA,EAAE,KAAK,OAAO,EAAE,EAAE,OAAOA,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,KAAK,OAAO,EAAE,EAAE,OAAOA,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,KAAK,OAAO,EAAE,EAAE,OAAOA,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,KAAK,OAAO,EAAE,EAAE,OAAOA,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,OAAO,OAAO,EAAE,EAAE,OAAOA,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,OAAO,OAAO,EAAE,EAAE,OAAOA,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,KAAKA,EAAE,gBAAgB,OAAO,EAAE,EAAE,OAAOA,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,SAAS,OAAO,EAAE,EAAE,OAAOA,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,cAAc,OAAO,EAAE,EAAE,OAAOA,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE,KAAKA,EAAE,OAAO,OAAO,EAAE,EAAE,OAAOA,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAE,CAAC,CAAE,EAAA,CAAGC,AAAI,IAAE,CAAC,CAAE,EAC3+I,EAAG,EAAE,GAAG,IAAI,GAAG,CAAC,IAC1nC,IACA,IACA,IACA,IACA,GAAG,EAAE,EAAG,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS,EAAE,MAAM,GAAG,EAAE,EAAE,EAAG,OAAO,CAAE,OAAO,EAAE,CAAC,GAAG,GAAG,QAAQ,SAAS,EAAE,EAAE,EAAG,MAAM,CAAE,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,EACwW,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,KAAK,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,MAAM,GAAG,EAAE,EAAE,IAAI,SAAS,GAAG,EAAE,EAAE,EAAE,IAAI,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC,CAAE,CAAC,MAAM,MAAM,cAAc,CAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,OAAO,OAAO,KAAK,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,GAAG,GAAG,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,MAA6B,EAAE,GAAvB,EAAE,KAAK,SAAS,EAAE,CAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,KAAM,CAAC,KAAM,CAAC,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,GAAG,GAAG,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAI,CAAC,KAAM,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,OAAO,OAAO,EAAE,EAAE,CAAC,CAAE,CAAC,aAAa,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAE,CAAC,EAwCplC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,OAAO,KAAK,aAAa,KAAK,YAAY,GAAG,KAAK,oBAAoB,IAAI,CAAC,GAAG,KAAK,WAAW,CAAC,EAAE,GAAG,KAAK,oBAAoB,IAAI,CAAC,EAAE,KAAK,aAAa,EAAG,KAAK,GAAG,CAAC,CAAC,KAAK,KAAM,IAAG,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,MAAM,mBAAmB,EAAE,OAAO,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAsB,EAAE,IAAI,EAAE,IAAtB,WAAW,CAAW,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAEF,GAAE,KAAK,mBAAmB,EAAE,EAAE,EAAEQ,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,IAAK,GAAE,GAAG,MAAM,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,EAAuB,EAAE,IAAjB,EAAE,KAAK,GAAG,EAAE,CAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,KAAK,WAAW,MAAM,CAAC,QAAQ,EAAE,gBAA+B,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,CAAE,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,WAAW,CAAC,EAAE,KAAK,oBAAoB,MAAM,CAAE,CAAC,GAAG,KAAK,YAAa,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,oBAAoB,IAAI,CAAC,EAAE,IAAI,EAAiB,IAAI,IAAI,KAAK,oBAAoB,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,WAAW,KAAK,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,EAAE,MAAM,KAAK,oBAAoB,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAE,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,KAAK,KAAK,IAAK,EAAC,EAAE,EAAE,KAAK,MAAM,IAAK,EAAC,EAAE,EAAE,KAAK,eAAe,IAAK,EAAC,EAAE,EAAE,KAAK,aAAa,CAAC,CAAC,EAAE,EAAE,KAAK,sBAAqC,IAAI,GAAG,EAAE,EAAE,KAAK,sBAAqC,IAAI,GAAG,EAAE,EAAE,KAAK,aAAa,IAAID,GAAE,QAAQ,KAAM,IAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,QAAQ,KAAK,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,EAAE,OAAO,EAAE,MAAM,CAAE,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,CAAC,IAAI,EAAEP,GAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAEQ,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,IAAK,GAAE,GAAG,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,qBAAqB,EAAE,IAAe,EAAE,GAAG,IAAV,EAAE,CAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,iBAAiB,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAE,CAAC,OAAO,CAAE,EAAE,CACnoD,aAAa,IAEb,WAAW,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE,KAAK,GAAG,EAAE,KAAK,IAAI,CAAE,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,UAAU,EAAE,CAAmE,OAAO,MAA7D,QAAQ,IAAI,KAAK,OAAO,IAAI,KAAM,IAAG,EAAE,UAAU,CAAC,CAAC,CAAC,EAAA,CAAW,KAAK,CAAE,CAAC,aAAa,EAAE,EAAE,CAAC,OAAO,QAAQ,IAAI,EAAE,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,KAAK,OAAO,EAAE,SAAS,OAAO,EAAE,EAAE,eAAe,EAAE,EAAE,YAAY,EAAE,CAAC,CAAE,CAAC,CAAC,CAAE,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAE,CAAC,cAAc,EAAE,EAAE,EAAE,CAAC,OAAON,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAE,CAAC,YAAY,EAAE,CAAC,EAAE,KAAK,UAAU,IAAK,EAAC,EAAE,EAAE,KAAK,KAAK,IAAK,EAAC,EAAE,EAAE,KAAK,SAAS,IAAK,EAAC,EAAE,EAAE,KAAK,UAAU,IAAK,EAAC,EAAE,EAAE,KAAK,kBAAkB,IAAK,EAAC,EAAE,EAAE,KAAK,uBAAuB,IAAK,EAAC,EAAE,EAAE,KAAK,SAAS,IAAK,EAAC,EAAE,KAAK,QAAQ,EAAE,KAAK,OAAO,KAAK,QAAQ,OAAO,KAAK,EAAE,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,OAAO,KAAK,QAAQ,EAAE,QAAQ,KAAK,gBAAgB,EAAE,gBAAgB,KAAK,qBAAqB,EAAE,qBAAqB,KAAK,GAAG,EAAE,EAAG,CAAC,KC/DpwB,SAASO,GAAE,EAAE,CAAC,OAAgB,OAAO,GAAjB,YAA2B,GAAG,CAAc,EAAE,CAAC,GAAGC,MAAK,CAAE,CAE/K,SAAS,GAAE,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,mBAAmB,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,GAAG,CAAE,CACkC,SAAS,GAAE,EAAE,CAAC,IAAI,EAAiB,IAAI,IAAI,MAAO,IAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAoB,EAAE,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,GAAT,CAAa,IAAK,GAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,EAAa,OAAoB,EAAEC,EAAE,IAAK,GAAE,GAAxC,EAAE,IAAI,CAAqC,CAAC,CAAE,CAAC,IAAK,GAAY,CAAC,GAAG,EAAE,EAAE,GAAG,GAAG,EAAa,OAAoB,EAAEC,EAAE,EAAE,GAAnC,EAAE,IAAI,CAAgC,CAAC,CAAE,CAAC,IAAK,GAAc,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC,EAAG,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,GAAa,OAAO,GAAjB,SAAmB,SAAS,IAAI,EAAE,EAAE,GAAG,IAAIH,GAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAG,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,GAAE,EAAE,kBAAkB,EAAEA,GAAE,CAAC,GAAG,EAAE,QAAQ,EAAe,EAAEI,EAAE,CAAC,oBAAoB,EAAE,SAAS,GAAgB,EAAEC,GAAE,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAK,GAAW,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAA+C,OAAd,EAAtB,IAAN,IAA8BC,EAAE,EAAgC,EAA9B,EAAE,GAAG,CAAC,CAAkC,CAAC,IAAK,GAAY,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAE,CAAC,CAAC,EAAtsB,KAAK,MAAM,CAA6rB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAE,CAAE,8BAL94B,IAAmG,IACpG,EACV,IAAS,QAAsB,EAAO,oBAAoBL,GAAE,UAGpFM,IAAG,CAAC,EAAEA,IAAG,CAAC,EAAA,CAAG,EAAE,SAAS,GAAG,WAAW,EAAE,EAAE,KAAK,GAAG,OAAO,EAAE,EAAE,OAAO,GAAG,SAAS,EAAE,EAAE,IAAI,GAAG,MAAM,EAAE,EAAE,KAAK,GAAG,OAAO,iCCLxH,KAAA,KAAA,EAAA,GAAA,CAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAA,EAAA,IAAA,EAAA,GAAA,CAAA,WAAA,CAAA,EAAA,KAAA,EAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAA,EAAA,MAAA,EAAA,WAAA,CAAA,WAAA,CAAA,EAAA,KAAA,EAAA,MAAA,EAAA,eAAA,CAAA,WAAA,CAAA,EAAA,KAAA,EAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAA,EAAA,MAAA,EAAA,UAAA,CAAA,WAAA,CAAA,EAAA,KAAA,EAAA,IAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,GAAA,CAAA,IAAA,EAAA,GAAA,GAAA,GAAA,EAAA,OAAA,EAAA,CAAA,CAAA,KAAA,GAAA,EAAA,OAAA,CAAA,EAAA,GAAA,GAAA,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,CAAA,QAAA,IAAA,GAAA,CAAA,OAAA,CAAA,IAAA,IAAA,wCAA0oB,8FAAe,CAAA,CAAA,KAAA,QAAA,YAAA,OAAA,CAAA,EAAA,GAAA,8CAAA,QAAA,CAAA,EAAA,gBAAA,GAAA,qBAAA,GAAA,OAAA,EAAA,CAAA,CAAA,EAAA,YAAA,aAAA,GAAA,sCAAA,EAAA,EAAA,EAAA,CAAA,UAAA,CAAA,aAAA,GAAA,MAAA,QAAA,KAAA,EAAA,MAAA,EAAA,UAAA,CAAA,oBAAA,CAAA,EAAA,MAAA,OAAA,KAAA,EAAA,MAAA,EAAA,UAAA,CAAA,MAAA,UAAA,KAAA,EAAA,IAAA,EAAA,UAAA,CAAA,MAAA,UAAA,KAAA,EAAA,IAAA,EAAA,eAAA,CAAA,eAAA,4CAAA,MAAA,WAAA,KAAA,EAAA,mBAAA,EAAA,WAAA,CAAA,eAAA,4CAAA,MAAA,OAAA,KAAA,EAAA,mBAAA,CAAA,CAAA,2BCA5nB,EAAC,EAAU,UAAU,CAAC,+BAA+B,gCAAgC,wCAAwC,sCAAsC,CAAC,EAAe,GAAM,CAAC,CAAC,cAAc,GAAK,MAAM,CAAC,CAAC,cAAc,sBAAsB,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,aAAa,cAAc,IAAI,yEAAyE,OAAO,KAAK,EAAE,CAAC,cAAc,uBAAuB,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,aAAa,cAAc,IAAI,wEAAwE,OAAO,KAAK,EAAE,CAAC,cAAc,+BAA+B,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,aAAa,cAAc,IAAI,uEAAuE,OAAO,KAAK,EAAE,CAAC,cAAc,8BAA8B,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,aAAa,cAAc,IAAI,yEAAyE,OAAO,KAAK,CAAC,CAAC,CAAC,EAAeC,GAAI,CAAC,wzCAAk0C,EAAe,GAAU,kBCyGj5E,SAAS,GAAQ,CAAC,IAAE,IAAI,IAAE,IAAI,IAAE,GAAG,CAAC,IAAM,GAAI,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,OAAoB,EAAK,IAAI,CAAC,UAAU,aAAa,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAK,CAAC,EAAE,GAAG,EAAG,EAAE,CAAC,EAAE,OAAoB,EAAM,IAAI,CAAC,SAAS,CAAC,EAAE,GAAgB,EAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,OAAO,EAAK,YAAY,KAAK,CAAC,EAAE,EAAE,GAAgB,EAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,OAAO,EAAK,YAAY,KAAK,CAAC,EAAE,EAAE,GAAgB,EAAK,SAAS,CAAC,GAAG,EAAE,KAAK,GAAG,EAAE,EAAE,EAAE,MAAM,KAAK,CAAI,CAAC,EAAE,EAAE,GAAgB,EAAK,SAAS,CAAC,GAAG,EAAE,KAAK,GAAG,EAAE,EAAE,EAAE,MAAM,KAAK,CAAI,CAAC,EAAe,EAAK,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,MAAM,KAAK,CAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAE,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAS,IAAW,CAAC,IAAM,EAAM,GAAO,CAAC,IAAI,IAAI,KAAK,IAAI,EAAM,KAAK,GAAG,GAAG,EAAE,IAAI,IAAI,KAAK,IAAI,EAAM,KAAK,GAAG,GAAG,CAAC,EAAE,OAAoB,EAAM,MAAM,CAAC,QAAQ,cAAc,KAAK,MAAM,aAAa,8HAA8H,SAAS,CAAc,EAAM,IAAI,CAAC,OAAO,EAAK,KAAK,OAAO,SAAS,CAAc,EAAK,SAAS,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,MAAM,QAAQ,IAAI,CAAC,EAAe,EAAK,SAAS,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,MAAM,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,SAAS,CAAC,UAAU,UAAU,WAAW,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,MAAM,KAAK,OAAO,OAAO,EAAO,YAAY,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAM,KAAO,CAAC,IAAM,EAAE,EAAM,CAAK,EAAE,EAAE,EAAM,CAAG,EAAE,OAAoB,EAAM,IAAI,CAAC,KAAK,OAAO,OAAO,EAAK,YAAY,MAAM,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,EAAE,GAAG,iBAAiB,EAAE,GAAG,GAAG,EAAE,IAAI,CAAC,EAAe,EAAK,OAAO,CAAC,UAAU,aAAa,EAAE,GAAG,GAAG,EAAE,GAAG,WAAW,EAAI,GAAG,GAAG,EAAE,mBAAmB,OAAO,EAAO,YAAY,KAAK,CAAC,CAAC,CAAC,EAAE,CAAK,CAAE,CAAC,EAAe,EAAK,GAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAe,EAAM,IAAI,CAAC,SAAS,CAAc,EAAK,SAAS,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,IAAI,KAAK,CAAM,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,UAAU,UAAU,SAAS,IAAI,CAAC,EAAe,EAAK,SAAS,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,IAAI,KAAK,CAAI,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,UAAU,UAAU,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,WAAW,MAAM,UAAU,WAAW,SAAS,SAAS,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,WAAW,MAAM,SAAS,eAAe,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,UAAU,WAAW,SAAS,YAAY,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,SAAS,iBAAiB,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,WAAW,SAAS,UAAU,WAAW,SAAS,cAAc,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,WAAW,SAAS,SAAS,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAS,IAAU,CAAC,IAAoC,EAAS,qCAA+E,OAAoB,EAAMC,EAAU,CAAC,SAAS,CAAc,EAAM,MAAM,CAAC,UAAU,mBAAmB,QAAQ,eAAe,KAAK,MAAM,aAAa,yJAAyJ,SAAS,CAAc,EAAM,OAAO,CAAC,SAAS,CAAc,EAAM,iBAAiB,CAAC,GAAG,aAAa,SAAS,CAAc,EAAK,OAAO,CAAC,UAAU,UAAU,YAAY,GAAG,CAAC,EAAe,EAAK,OAAO,CAAC,OAAO,MAAM,UAAU,SAAS,CAAC,EAAe,EAAK,OAAO,CAAC,OAAO,MAAM,UAAU,SAAS,CAAC,EAAe,EAAK,OAAO,CAAC,OAAO,IAAI,UAAU,UAAU,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,GAAG,aAAa,SAAsB,EAAK,OAAO,CAAC,MAAM,OAAO,OAAO,MAAM,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,IAAI,CAAC,KAAK,mBAAmB,SAAS,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAiB,EAAK,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,SAAS,OAAO,EAAK,YAAY,KAAK,QAAQ,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAiB,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,OAAO,EAAK,YAAY,KAAK,QAAQ,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,IAAM,EAAE,KAAS,EAAE,MAAM,IAAU,EAAQ,KAAS,EAAE,MAAM,IAAU,EAAI,CAAC,EAAK,EAAK,CAAM,CAAC,CAAC,EAAE,GAAS,EAAE,QAAmB,EAAQ,OAAkB,EAAQ,OAAkB,EAAE,OAAkB,EAAE,YAAiC,EAAE,QAAkB,EAAQ,QAAkB,IAAU,OAAoB,EAAM,IAAI,CAAC,KAAK,OAAO,SAAS,CAAc,EAAK,OAAO,CAAG,IAAE,OAAO,EAAI,YAAY,MAAM,QAAQ,KAAK,CAAC,EAAe,EAAK,OAAO,CAAC,UAAU,YAAc,IAAE,OAAO,EAAI,YAAY,EAAE,GAAI,EAAE,EAAE,KAAK,MAAM,CAAC,eAAe,IAAI,EAAE,KAAK,GAAG,kBAAkB,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,QAAQ,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAiB,EAAK,OAAO,CAAC,UAAU,UAAU,EAAE,MAAc,EAAE,GAAG,EAAE,GAAY,EAAE,GAAG,MAAM,KAAK,OAAO,KAAK,GAAG,IAAI,KAAK,CAAC,EAAK,EAAK,CAAM,CAAC,CAAC,EAAE,GAAG,YAAY,KAAK,OAAO,CAAC,EAAK,EAAK,CAAM,CAAC,CAAC,EAAE,GAAG,YAAY,KAAK,MAAM,CAAC,eAAe,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,EAAS,OAAO,EAAK,YAAY,IAAI,KAAK,MAAM,CAAC,EAAe,EAAK,OAAO,CAAC,UAAU,YAAY,EAAE,EAAS,OAAO,EAAK,YAAY,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,IAAY,EAAE,KAAK,WAAW,SAAS,UAAU,WAAW,SAAS,WAAW,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,IAAQ,EAAE,KAAK,WAAW,SAAS,UAAU,WAAW,SAAS,wCAA2C,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,KAAY,EAAE,KAAK,WAAW,SAAS,UAAU,WAAW,SAAS,UAAU,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,IAAQ,EAAE,MAAM,WAAW,SAAS,UAAU,WAAW,SAAS,0BAA0B,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,GAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAS,IAAgB,CAAC,OAAoB,EAAM,MAAM,CAAC,UAAU,kBAAkB,QAAQ,cAAc,KAAK,MAAM,aAAa,oHAAoH,SAAS,CAAc,EAAM,IAAI,CAAC,UAAU,8BAA8B,SAAS,CAAc,EAAM,IAAI,CAAC,OAAO,EAAK,QAAQ,MAAM,YAAY,KAAK,SAAS,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAiB,EAAK,OAAO,CAAC,EAAE,IAAI,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAiB,EAAK,OAAO,CAAC,EAAE,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,IAAM,EAAE,GAAG,EAAE,KAAK,EAAI,CAAC,EAAK,EAAK,CAAM,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,EAAE,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,KAAK,EAAE,MAAM,GAAG,OAAO,KAAK,EAAE,MAAM,GAAG,MAAM,OAAoB,EAAM,IAAI,CAAC,KAAK,OAAO,SAAS,CAAc,EAAK,OAAO,CAAG,IAAE,OAAO,EAAI,YAAY,KAAK,QAAQ,KAAK,CAAC,EAAe,EAAK,OAAO,CAAC,UAAU,YAAc,IAAE,OAAO,EAAI,YAAY,MAAM,MAAM,CAAC,eAAe,IAAI,EAAE,IAAI,GAAG,kBAAkB,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,IAAM,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAmB,EAAK,OAAO,CAAC,UAAU,UAAU,EAAE,GAAG,EAAI,GAAG,EAAE,IAAI,EAAI,GAAG,MAAM,KAAK,OAAO,KAAK,GAAG,IAAI,KAAK,CAAC,EAAK,EAAK,CAAM,CAAC,CAAC,EAAI,GAAG,YAAY,KAAK,OAAO,CAAC,EAAK,EAAK,CAAM,CAAC,CAAC,EAAI,GAAG,YAAY,KAAK,MAAM,CAAC,eAAe,KAAK,EAAI,IAAI,EAAI,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAI,GAAG,GAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,WAAW,SAAS,UAAU,WAAW,SAAS,WAAW,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,WAAW,SAAS,UAAU,WAAW,SAAS,UAAU,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAS,GAAI,CAAC,SAAO,CAAC,OAAO,EAAM,SAAS,mBAAmB,EAAe,EAAK,GAAS,CAAC,CAAC,EAAe,EAAK,GAAU,CAAC,CAAC,CAAE,CAAC,SAAS,GAAY,CAAC,WAAS,SAAO,CAAC,GAAK,CAAC,EAAU,GAAcC,EAAe,EAAK,EAAQ,EAAIC,EAAa,IAAI,EAAkM,OAAhM,MAAoB,CAAC,IAAM,EAAS,IAAI,sBAAsB,CAAC,KAAS,EAAa,CAAC,EAAM,cAAc,CAAC,EAA+C,OAA1C,EAAI,SAAQ,EAAS,QAAQ,EAAI,OAAO,MAAY,EAAS,WAAW,CAAE,EAAE,CAAC,CAAC,EAAsB,EAAM,MAAM,CAAK,MAAI,UAAU,YAAY,cAAc,EAAgB,QAAM,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS,EAAI,EAAc,CAAC,EAAE,CAAQ,CAAC,CAAC,CAAE,CAEtoP,SAAS,GAAmB,EAAI,EAAM,CAAC,MAAoB,CAAC,GAAG,IAAQ,qCAAqC,OAAO,IAAM,EAAQ,EAAI,SAAS,QAAQ,sCAAsC,EAAE,GAAG,CAAC,EAAQ,OAAO,IAAM,EAAQ,CAAC,EAAQ,MAAY,CAAC,EAAQ,iBAAiB,sEAAsE,CAAC,CAAC,QAAQ,GAAQ,CAAC,IAAM,EAAQ,EAAO,cAAc,IAAI,EAAE,GAAG,CAAC,EAAQ,OAAO,IAAM,EAAQ,SAAS,cAAc,SAAS,EAAE,EAAQ,UAAU,gBAAgB,IAAM,EAAQ,SAAS,cAAc,SAAS,EAAE,EAAQ,YAAY,EAAQ,YAAY,EAAQ,iBAAiB,YAAY,GAAO,CAAI,EAAM,OAAO,GAAE,EAAM,eAAe,CAAE,CAAC,EAAE,IAAM,EAAK,SAAS,cAAc,KAAK,EAAE,EAAK,UAAU,qBAAqB,MAAM,KAAK,EAAO,QAAQ,CAAC,CAAC,OAAO,GAAO,IAAQ,CAAO,CAAC,CAAC,QAAQ,GAAO,EAAK,OAAO,EAAM,UAAU,EAAI,CAAC,CAAC,EAAE,EAAQ,OAAO,EAAQ,CAAI,EAAE,EAAO,OAAO,CAAO,EAAE,EAAO,UAAU,IAAI,sBAAsB,EAAE,EAAQ,KAAK,CAAC,SAAO,SAAO,CAAC,CAAE,CAAC,CAAE,EAAE,EAAQ,EAAE,IAAM,EAAS,IAAI,iBAAiB,CAAO,EAA0D,OAAxD,EAAS,QAAQ,EAAQ,CAAC,UAAU,GAAK,QAAQ,EAAI,CAAC,MAAY,CAAC,EAAS,WAAW,EAAE,EAAQ,SAAS,CAAC,SAAO,aAAW,CAAC,EAAQ,OAAO,EAAE,EAAO,UAAU,OAAO,sBAAsB,CAAE,CAAC,CAAE,CAAE,EAAE,CAAC,CAAK,CAAC,CAAE,CAC5uC,SAAS,IAAyB,CAAC,OAAoB,EAAK,MAAM,CAAC,MAAM,IAAI,OAAO,IAAI,cAAc,OAAO,MAAM,CAAC,SAAS,UAAU,EAAE,SAAsB,EAAK,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAG,KAAsB,EAAM,SAAS,CAAC,GAAG,YAAY,IAAK,0BAA0B,OAAO,EAAE,IAAI,EAAE,IAAI,MAAM,OAAO,OAAO,OAAO,SAAS,CAAc,EAAK,UAAU,CAAC,WAAW,EAAM,OAAO,OAAO,CAAC,EAAe,EAAK,UAAU,CAAC,GAAG,gBAAgB,IAAI,QAAQ,KAAK,aAAa,OAAO,YAAY,CAAC,EAAe,EAAK,gBAAgB,CAAC,GAAG,aAAa,KAAK,SAAS,OAAO,gDAAgD,OAAO,MAAM,CAAC,EAAe,EAAK,cAAc,CAAC,GAAG,gBAAgB,IAAI,OAAO,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAExuB,SAAS,GAAmB,EAAI,EAAM,CAAC,MAAoB,CAAC,IAAM,EAAQ,EAAI,SAAS,QAAQ,sCAAsC,EAAE,GAAG,CAAC,EAAQ,OAAO,IAAM,EAAQ,CAAC,EAAQ,MAAY,CAAC,EAAQ,iBAAiB,yEAAyE,CAAC,CAAC,QAAQ,GAAO,CAAC,IAAM,EAAO,EAAM,mBAAqL,GAA/J,CAAC,GAAQ,QAAQ,GAAG,GAAG,CAAC,EAAO,aAAa,KAAK,GAAwB,MAAM,KAAK,EAAO,iBAAiB,IAAI,CAAC,CAAC,CAAC,IAAI,GAAM,EAAK,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAiB,IAAI,EAAO,YAAY,KAAK,EAAE,OAAO,IAAM,EAAO,SAAS,cAAc,QAAQ,EAAE,EAAO,UAAU,sBAAsB,EAAO,MAAM,SAAS,iBAAiB,CAAK,CAAC,CAAC,SAAS,IAAM,EAAQ,SAAS,cAAc,YAAY,EAAE,MAAM,KAAK,EAAO,UAAU,CAAC,CAAC,QAAQ,GAAM,EAAQ,OAAO,EAAK,UAAU,EAAI,CAAC,CAAC,EAAE,EAAM,OAAO,CAAM,EAAE,EAAO,OAAO,EAAM,CAAO,EAAE,EAAO,UAAU,IAAI,mBAAmB,EAAE,EAAQ,KAAK,CAAC,QAAM,SAAO,QAAM,CAAC,CAAE,CAAC,CAAE,EAAE,EAAQ,EAAE,IAAM,EAAS,IAAI,iBAAiB,CAAO,EAA0D,OAAxD,EAAS,QAAQ,EAAQ,CAAC,UAAU,GAAK,QAAQ,EAAI,CAAC,MAAY,CAAC,EAAS,WAAW,EAAE,EAAQ,SAAS,CAAC,QAAM,SAAO,YAAU,CAAC,EAAO,OAAO,CAAK,EAAE,EAAO,OAAO,EAAE,EAAO,UAAU,OAAO,mBAAmB,CAAE,CAAC,CAAE,CAAE,EAAE,CAAC,CAAK,CAAC,CAAE,CAC3tC,SAAS,GAAe,EAAK,CAAC,OAAO,EAAK,QAAQ,UAAU,kHAAkH,CAAC,CAAC,QAAQ,mCAAmC,uDAAuD,CAAC,CAAC,QAAQ,mBAAmB,gBAAgB,CAAC,CAAC,QAAQ,kEAAkE;;;;;;;;;;;CAW1Y,CAAC,CAAC,QAAQ,yIAAyI,EAAE,CAAC,CAAC,QAAQ,wBAAwB;;;;sBAIlK,CAAC,CAAC,QAAQ,wFAAwF;;;;;;+DAMzD,CAAE,CAAC,SAAS,EAAgB,EAAI,EAAM,EAAI,EAAM,EAAc,yBAAyB,CAAC,MAAoB,CAAC,GAAG,CAAC,GAAO,CAAC,EAAI,OAAO,IAAM,EAAQ,EAAI,SAAS,QAAQ,sCAAsC,EAAE,GAAG,CAAC,EAAQ,OAAO,IAAM,EAAM,IAAI,gBAAoB,EAAM,EAAO,EAAS,EAAiB,EAAO,GAAO,CAAC,GAAG,EAAM,SAAS,GAAO,eAAe,EAAM,MAAM,OAAO,EAAc,CAAC,IAAM,EAAO,OAAO,EAAM,KAAK,MAAM,EAAK,OAAO,SAAS,CAAM,GAAG,EAAO,IAAE,EAAM,MAAM,OAAO,GAAG,KAAK,KAAK,CAAM,EAAE,IAAI,CAAC,EAA4xD,OAA1xD,EAAO,iBAAiB,UAAU,CAAM,EAAE,MAAM,EAAM,CAAC,OAAO,EAAM,MAAM,CAAC,CAAC,CAAC,KAAK,GAAU,CAAC,GAAG,CAAC,EAAS,GAAG,MAAU,MAAM,mCAAmC,EAAE,OAAO,EAAS,KAAK,CAAE,CAAC,CAAC,CAAC,KAAK,GAAM,CAAI,IAAQ,8CAA6C,EAAK,GAAe,CAAI,GAAM,IAAQ,0CAAyC,EAAK,EAAK,QAAQ,uCAAuC,EAAE,CAAC,CAAC,QAAQ,UAAU,mEAAmE,GAAM,IAAgB,yBAAwB,EAAK,EAAK,QAAQ,UAAU,0FAA0F,GAAM,CAAC,wDAAwD,qCAAqC,oCAAoC,kCAAkC,CAAC,CAAC,SAAS,CAAK,IAAG,EAAK,GAAuB,EAAK,CAAK,GAAG,IAAM,MAAU,CAAI,IAAa,EAAO,MAAM,KAAK,EAAQ,iBAAiB,KAAK,CAAC,CAAC,CAAC,KAAK,GAAO,EAAM,MAAM,CAAG,EAAM,IAAc,EAAM,SAAS,cAAc,QAAQ,EAAE,EAAM,MAAM,EAAS,IAAQ,6CAA4C,EAAM,aAAa,YAAY,IAAI,EAAE,EAAM,UAAU,wBAAwB,EAAM,aAAa,UAAU,iCAAiC,EAAE,EAAM,MAAM,QAAQ,uHAAuH,EAAO,OAAO,CAAK,EAAE,EAAO,MAAM,YAAY,UAAU,OAAO,WAAW,EAAE,EAAW,IAAI,sBAAsB,CAAC,KAAS,CAAI,EAAM,kBAAkB,KAAU,EAAM,OAAO,EAAK,EAAW,WAAW,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE,EAAW,QAAQ,CAAK,GAAE,EAAE,EAAM,EAAE,EAAS,IAAI,iBAAiB,CAAK,EAAE,EAAS,QAAQ,EAAQ,CAAC,UAAU,GAAK,QAAQ,EAAI,CAAC,CAAE,CAAC,CAAC,CAAC,MAAM,GAAO,CAAI,EAAM,OAAO,cAAa,QAAQ,MAAM,CAAK,CAAE,CAAC,MAAY,CAAC,EAAM,MAAM,EAAE,GAAU,WAAW,EAAE,GAAY,WAAW,EAAE,EAAO,oBAAoB,UAAU,CAAM,EAAE,GAAO,OAAO,EAAK,GAAO,EAAO,MAAM,eAAe,SAAS,CAAE,CAAE,EAAE,CAAC,EAAM,EAAI,EAAM,CAAa,CAAC,CAAE,CAInjF,SAAS,GAAuB,EAAI,EAAM,CAAC,MAAoB,CAAC,GAAG,IAAQ,2BAA2B,OAAO,IAAM,EAAQ,EAAI,SAAS,QAAQ,sCAAsC,EAAE,GAAG,CAAC,EAAQ,OAAO,IAAM,EAAM,EAAQ,iBAAiB,mKAAmK,EAAQ,EAAc,EAAO,WAAW,kCAAkC,CAAC,CAAC,QAAc,EAAS,MAAM,KAAK,EAAM,GAAM,CAAC,IAAI,MAAS,CAAC,EAAQ,MAAW,CAAC,EAAK,EAAE,IAAM,EAAO,EAAK,QAAQ,wBAAwB,EAAE,UAAU,mBAElnB,EAAU,EAAQ,iBAAiB,CAAI,CAAC,CAAC,gBAAgB,EAAO,CAAC,SAAS,EAAc,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,SAAS,GAAO,CAAC,EAAK,MAAM,gBAAgB,CAAM,CAAC,CAAC,EAAE,MAAS,EAAU,KAAK,CAAE,EAAQ,EAAO,CAAC,eAAe,eAAe,QAAQ,MAAM,EAA6D,OAA3D,EAAO,QAAQ,GAAO,EAAK,iBAAiB,EAAM,CAAM,CAAC,MAAY,CAAC,EAAK,EAAE,EAAO,QAAQ,GAAO,EAAK,oBAAoB,EAAM,CAAM,CAAC,EAAE,EAAK,MAAM,eAAe,kBAAkB,CAAE,CAAE,CAAC,EAAE,UAAU,EAAS,QAAQ,GAAS,EAAQ,CAAC,CAAE,EAAE,CAAC,CAAK,CAAC,CAAE,CAAC,SAAwB,GAAiB,CAAC,QAAM,cAAY,QAAM,OAAK,WAAS,WAAS,WAAS,iBAAe,kBAAgB,uBAAqB,qBAAmB,kBAAgB,mBAAiB,uBAAqB,kBAAgB,qBAAmB,SAAO,CAAC,IAAM,EAAIA,EAAa,IAAI,EAAE,GAAmB,EAAI,CAAK,EAAE,GAAsB,EAAI,CAAK,EAAE,GAAuB,EAAI,CAAK,EAAE,GAAmB,EAAI,CAAK,EAAE,GAAuB,EAAI,CAAK,EAAE,IAAM,EAAW,IAAQ,qCAAqC,EAAQ,EAAM,SAAS,mBAAmB,EAAE,EAAO,EAAc,GAAmB,EAAY,EAAgB,EAAI,EAAW,EAAe,EAAQ,EAAgB,KAAK,EAAW,kDAAkD,EAAQ,oEAAoE,KAAK,EAAW,4CAA4C,uCAAuC,EAAE,EAAgB,EAAI,EAAQ,EAAqB,KAAK,8DAA8D,wDAAwD,sBAAsB,EAAE,EAAgB,EAAI,EAAQ,EAAmB,KAAK,mDAAmD,kCAAkC,EAAE,EAAgB,EAAI,EAAQ,EAAgB,KAAK,gCAAgC,+BAA+B,EAAE,EAAgB,EAAI,EAAQ,EAAiB,KAAK,mEAAmE,kCAAkC,EAAE,EAAgB,EAAI,EAAQ,EAAqB,KAAK,qDAAqD,oCAAoC,EAAE,EAAgB,EAAI,EAAQ,EAAgB,KAAK,mDAAmD,mCAAmC,EAAE,EAAgB,EAAI,EAAQ,EAAmB,KAAK,mGAAmG,gBAAgB,EAAE,IAAM,EAAK,IAAQ,2BAA2B,EAAS,IAAQ,qCAAqC,EAAS,KAAK,OAAoB,EAAM,MAAM,CAAK,MAAI,UAAU,eAAe,aAAa,EAAY,QAAM,SAAS,CAAC,GAAsB,EAAK,GAAwB,CAAC,CAAC,EAAe,EAAK,GAAY,CAAC,SAAsB,EAAM,SAAS,CAAC,UAAU,cAAc,GAAY,EAAQ,mBAAoB,EAAyB,GAAlB,oBAAuB,MAAM,EAAW,CAAC,UAAU,CAAC,EAAE,IAAA,GAAU,SAAS,CAAc,EAAM,MAAM,CAAC,UAAU,kBAAkB,SAAS,CAAc,EAAK,KAAK,CAAC,SAAS,CAAK,CAAC,EAAE,CAAC,GAAQ,CAAC,GAAyB,EAAK,IAAI,CAAC,SAAS,GAAmB,MAAM,cAAc,CAAC,CAAC,KAAK,EAAK,IAAQ,EAAK,WAAW,GAAG,EAAe,EAAK,KAAK,CAAC,SAAS,EAAK,MAAM,EAAE,EAAE,CAAC,EAAE,CAAK,EAAE,CAAI,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,UAAU,kBAAkB,SAAS,CAAc,EAAK,MAAM,CAAC,UAAU,sBAAsB,SAAS,CAAQ,CAAC,EAAE,GAAmB,EAAK,OAAO,CAAC,SAAS,EAAK,SAAS,IAAI,KAAK,CAAI,CAAC,CAAC,mBAAmB,QAAQ,CAAC,SAAS,MAAM,MAAM,OAAO,IAAI,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAqB,EAAK,MAAM,CAAC,UAAU,SAAS,SAAsB,EAAK,GAAI,CAAO,OAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAmB,EAAK,GAAQ,CAAC,MAAM,EAAK,QAAQ,GAAG,MAAM,CAAC,SAAS,KAAK,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAQttH,SAAgB,GAAQ,CAAC,QAAM,UAAQ,SAAO,CAAC,IAAM,EAAIA,EAAa,IAAI,EAAuU,OAArU,MAAoB,CAAC,IAAM,EAAO,WAAW,kCAAkC,EAAQ,EAAS,IAAI,sBAAsB,CAAC,KAAS,CAAI,EAAM,gBAAgB,CAAC,EAAO,QAAQ,EAAI,SAAS,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,EAAO,EAAI,SAAS,MAAM,CAAE,CAAC,EAA+C,OAA1C,EAAI,SAAQ,EAAS,QAAQ,EAAI,OAAO,MAAY,EAAS,WAAW,CAAE,EAAE,CAAC,CAAK,CAAC,EAAsB,EAAM,SAAS,CAAC,UAAU,UAAgB,QAAM,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS,CAAG,CAAC,EAAe,EAAK,QAAQ,CAAK,MAAI,IAAI,EAAM,MAAM,GAAK,KAAK,GAAK,YAAY,GAAK,wBAAwB,GAAK,QAAQ,MAAM,CAAC,EAAe,EAAK,aAAa,CAAC,SAAS,CAAO,CAAC,CAAC,CAAC,CAAC,CAAE,CAIhsB,SAAgB,GAAU,CAAC,SAAO,CAAC,OAAoB,EAAM,MAAM,CAAC,UAAU,gBAAsB,QAAM,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS,EAAI;;;;CAI9J,CAAC,EAAe,EAAK,KAAK,CAAC,SAAS,MAAM,CAAC,CAAC,CAAC,CAAC,CAAE,CAgC/C,SAAS,GAAuB,EAAK,EAAM,CAazB,OAb6B,IAAQ,mCAAwC,EAAK,SAAS,kBAAkB,EAAqB,EAAK,QAAQ,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8DAAwF,CAAC,CAAC,QAAQ,UAAU,8IAA8I,EAAtS,EAa/G,EAAK,QAAQ,UAAU;;;;;;qBAAa,CAAC,CAAC,QAAQ,UAAU;;;;;;;2BAAgB,CAAE,CAAC,SAAS,GAAuB,EAAI,EAAM,CAAC,MAAoB,CAAC,GAAG,IAAQ,gCAAgC,OAAO,IAAM,EAAQ,EAAI,SAAS,QAAQ,sCAAsC,EAAE,GAAG,CAAC,EAAQ,OAAO,IAAM,EAAM,WAAW,mBAAmB,EAAQ,EAAM,IAAI,gBAAoB,EAAK,EAAW,EAAQ,GAAU,EAAgB,GAAG,EAAiB,GAAS,MAAY,CAAC,GAAM,OAAO,EAAE,EAAK,IAAA,GAAa,IAAW,EAAgB,EAAO,MAAM,YAAY,UAAU,EAAgB,CAAgB,EAAO,EAAO,MAAM,eAAe,SAAS,EAAG,EAAQ,EAAM,SAAS,CAAC,GAAG,CAAC,EAAM,QAAQ,CAAC,EAAQ,EAAE,MAAO,CAAI,QAAM,KAAe,EAAO,EAAQ,cAAc,wEAAwE,GAAG,IAAA,GAAc,GAAoI,CAAtH,EAAgB,EAAO,MAAM,iBAAiB,SAAS,EAAE,EAAiB,EAAO,MAAM,oBAAoB,SAAS,EAAE,EAAQ,GAAK,GAAG,CAAC,IAAM,EAAS,MAAM,MAAM,EAAO,YAAY,EAAO,IAAI,CAAC,OAAO,EAAM,MAAM,CAAC,EAAE,GAAG,CAAC,EAAS,GAAG,MAAU,MAAM,iCAAiC,EAA8X,GAAlX,IAAI,UAAU,CAAC,CAAC,gBAAgB,MAAM,EAAS,KAAK,EAAE,eAAiU,CAAC,CAAC,cAAc,MAAM,CAAC,EAAE,aAAa,KAAK,IAAI,4RAAS,MAAU,MAAM,8CAA8C,EAAE,GAAG,CAAC,EAAM,SAAS,EAAM,OAAO,QAAQ,OAAO,EAAK,SAAS,cAAc,KAAK,EAAE,EAAK,UAAU,sBAAsB,IAAM,EAAQ,SAAS,cAAc,IAAI,EAAE,EAAQ,YAAY,iDAAiD,EAAK,OAAO,CAAO,EAAyY,IAAI,IAAM,IAAS,CAA5Y,CAAC,MAAM,sCAAyC,KAAK,wBAAwB,MAAM,CAAC,WAAW,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,oCAAuC,KAAK,4BAA4B,MAAM,CAAC,WAAW,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,MAAM,iCAAoC,KAAK,qBAAqB,MAAM,CAAC,kBAAkB,eAAe,EAAE,OAAO,CAAC,IAAI,GAAG,CAAC,CAA2B,EAAE,CAAC,IAAM,EAAQ,SAAS,cAAc,SAAS,EAAQ,EAAM,SAAS,cAAc,IAAI,EAAE,EAAM,YAAY,EAAM,MAAM,IAAM,EAAK,SAAS,cAAc,KAAK,EAAE,EAAK,UAAU,cAAc,EAAK,YAAY,EAAM,KAAK,EAAQ,OAAO,EAAM,CAAI,EAAE,EAAM,OAAO,SAAS,EAAM,IAAQ,CAAC,IAAM,EAAI,SAAS,cAAc,KAAK,EAAE,EAAI,UAAU,aAAgB,IAAQ,GAAE,EAAI,aAAa,gBAAgB,EAAE,EAAE,IAAM,EAAM,SAAS,cAAc,MAAM,EAAE,EAAM,UAAU,eAAe,EAAM,YAAY,EAAM,MAAM,GAAO,IAAM,EAAM,SAAS,cAAc,KAAK,EAAQ,EAAI,SAAS,cAAc,KAAK,EAAE,EAAI,UAAU,aAAa,EAAI,MAAM,MAAM,GAAG,EAAM,KAAK,IAAI,GAAG,EAAM,MAAM,EAAE,IAAI,GAAG,EAAI,aAAa,cAAc,MAAM,EAAE,IAAM,EAAO,SAAS,cAAc,MAAM,EAAE,EAAO,UAAU,eAAe,EAAO,YAAY,OAAO,CAAK,EAAE,EAAM,OAAO,CAAG,EAAE,EAAI,OAAO,EAAM,EAAM,CAAM,EAAE,EAAQ,OAAO,CAAG,CAAE,CAAC,EAAE,EAAK,OAAO,CAAO,CAAE,CAAC,EAAO,OAAO,CAAI,EAAE,EAAO,MAAM,YAAY,UAAU,OAAO,WAAW,CAAE,OAAO,EAAM,CAAK,EAAM,OAAO,SAAQ,QAAQ,MAAM,CAAK,EAAE,EAAQ,CAAE,QAAQ,CAAC,EAAQ,EAAM,CAAj3E,CAAk3E,EAAE,EAAM,EAAE,IAAM,EAAS,IAAI,qBAAqB,CAAI,CAAC,GAAM,CAAC,GAAQ,EAAM,CAAE,CAAC,EAAiG,OAA/F,EAAS,QAAQ,EAAQ,CAAC,UAAU,GAAK,QAAQ,EAAI,CAAC,EAAE,EAAM,iBAAiB,SAAS,CAAK,MAAY,CAAC,EAAM,MAAM,EAAE,EAAS,WAAW,EAAE,EAAM,oBAAoB,SAAS,CAAK,EAAE,EAAQ,CAAE,CAAE,EAAE,CAAC,CAAK,CAAC,CAAE,CAAC,SAAS,GAAsB,EAAI,EAAM,CAAC,MAAoB,CAAC,GAAG,IAAQ,gCAAgC,OAAO,IAAM,EAAQ,EAAI,SAAS,QAAQ,sCAAsC,EAAE,GAAG,CAAC,EAAQ,OAAO,IAAM,EAAM,WAAW,mBAAmB,EAAQ,EAAM,IAAI,gBAAoB,EAAK,EAAW,EAAQ,GAAY,MAAY,CAAC,GAAM,OAAO,EAAE,EAAK,IAAA,GAAU,GAAQ,MAAM,eAAe,SAAS,CAAE,EAAQ,EAAM,SAAS,CAAC,GAAG,CAAC,EAAM,QAAQ,CAAC,EAAQ,EAAE,MAAO,CAAI,QAAM,KAAe,EAAO,EAAQ,cAAc,qEAAqE,GAAG,IAAA,GAAc,GAAc,GAAQ,GAAK,GAAG,CAAC,IAAM,EAAS,MAAM,MAAM,EAAO,YAAY,EAAO,IAAI,CAAC,OAAO,EAAM,MAAM,CAAC,EAAE,GAAG,CAAC,EAAS,GAAG,MAAU,MAAM,0BAA0B,EAAE,IAAM,EAAI,IAAI,UAAU,CAAC,CAAC,gBAAgB,MAAM,EAAS,KAAK,EAAE,eAAe,EAAQ,EAAS,CAAC,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,QAAQ,EAAQ,EAAW,MAAM,KAAK,EAAI,iBAAiB,cAAc,CAAC,CAAC,CAAC,IAAI,GAAM,EAAK,aAAa,YAAY,CAAC,EAAE,GAAG,CAAC,EAAS,MAAM,GAAI,EAAI,eAAe,CAAE,CAAC,GAAG,CAAC,CAAC,OAAO,OAAO,QAAQ,QAAQ,QAAQ,OAAO,CAAC,CAAC,MAAM,GAAO,EAAW,SAAS,CAAK,CAAC,EAAE,MAAU,MAAM,+BAA+B,EAAE,GAAG,CAAC,EAAM,SAAS,EAAM,OAAO,QAAQ,OAAO,IAAM,EAAG,6BAAmC,GAAO,EAAQ,IAAQ,CAAC,IAAM,EAAQ,SAAS,gBAAgB,EAAG,KAAK,EAAsH,OAApH,EAAQ,aAAa,UAAU,CAAO,EAAE,EAAQ,aAAa,OAAO,KAAK,EAAE,EAAQ,aAAa,aAAa,CAAK,EAAS,CAAQ,EAAQ,GAAO,EAAO,EAAE,EAAE,EAAM,EAAO,UAAU,CAAC,IAAM,EAAK,SAAS,gBAAgB,EAAG,MAAM,EAAE,EAAK,aAAa,IAAI,OAAO,CAAC,CAAC,EAAE,EAAK,aAAa,IAAI,OAAO,CAAC,CAAC,EAAE,EAAK,aAAa,cAAc,CAAM,EAAE,EAAK,YAAY,EAAM,EAAO,OAAO,CAAI,CAAE,EAAE,EAAK,SAAS,cAAc,KAAK,EAAE,EAAK,UAAU,sBAAsB,IAAM,EAAQ,SAAS,cAAc,IAAI,EAAE,EAAQ,YAAY,8CAA8C,IAAM,EAAQ,SAAS,cAAc,KAAK,EAAE,EAAQ,UAAU,kBAAkB,IAAM,EAAQ,SAAS,cAAc,KAAK,EAAE,EAAQ,UAAU,kBAAkB,IAAM,EAAa,SAAS,cAAc,KAAK,EAAE,EAAa,UAAU,kBAAkB,EAAa,OAAO,GAAK,IAAM,EAAI,SAAS,cAAc,KAAK,EAAE,EAAI,UAAU,gBAAgB,EAAI,UAAU,qFAAqF,EAAQ,OAAO,CAAG,EAAE,IAAM,EAAY,EAAM,cAAc,6MAA6M,EAAojB,CAAtiB,CAAC,MAAM,mBAAmB,IAAI,CAAC,UAAU,SAAS,EAAE,EAAE,CAAC,MAAM,OAAO,EAAE,OAAO,CAAC,QAAQ,OAAO,EAAE,MAAM,CAAC,CAAC,UAAU,SAAS,EAAE,CAAC,UAAU,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,qCAAqC,IAAI,CAAC,WAAW,UAAU,EAAE,EAAE,CAAC,QAAQ,OAAO,EAAE,OAAO,CAAC,QAAQ,OAAO,EAAE,MAAM,CAAC,CAAC,UAAU,SAAS,EAAE,CAAC,UAAU,SAAS,CAAC,EAAE,OAAO,CAAC,QAAQ,OAAO,CAAC,EAAE,CAAC,MAAM,0BAA0B,IAAI,CAAC,WAAW,UAAU,EAAE,EAAE,CAAC,QAAQ,OAAO,EAAE,OAAO,CAAC,OAAO,OAAO,EAAE,MAAM,CAAC,CAAC,UAAU,SAAS,EAAE,CAAC,UAAU,SAAS,CAAC,EAAE,OAAO,CAAC,QAAQ,OAAO,CAAC,CAAM,CAAC,CAAC,SAAS,EAAI,IAAI,CAAC,IAAM,EAAE,EAAE,IAAI,EAAM,EAAY,EAAE,EAAE,GAAG,EAAI,KAAK,EAAE,EAAI,IAAI,SAAS,EAAG,IAAI,CAAC,IAAM,EAAE,SAAS,gBAAgB,EAAG,GAAG,EAC16N,EAAE,aAAa,YAAY,uBAAuB,QAAQ,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAI,EAAE,GAAG,GAAG,EAAE,EAAE,IAAM,EAAK,EAAI,eAAe,CAAE,CAAC,CAAC,UAAU,EAAI,EAAE,EAAK,gBAAgB,IAAI,EAAE,EAAK,gBAAgB,WAAW,EAAE,EAAE,OAAO,CAAI,EAAE,IAAM,EAAM,SAAS,gBAAgB,EAAG,MAAM,EAAO,CAAC,EAAG,GAAI,EAAI,MAAM,EAAE,CAAC,IAAI,MAAM,EAAE,EAAG,EAAI,OAAO,GAAG,EAAM,aAAa,IAAI,IAAI,EAAG,GAAG,EAAG,GAAG,EAAG,GAAG,EAAG,EAAE,GAAG,EAAG,MAAM,EAAG,EAAE,GAAG,EAAG,IAAI,EAAE,EAAM,aAAa,SAAS,SAAS,EAAE,EAAM,aAAa,eAAe,KAAK,EAAE,EAAM,aAAa,OAAO,MAAM,EAAE,EAAE,OAAO,CAAK,EAAE,EAAY,OAAO,CAAC,EAAE,EAAM,EAAY,IAAI,EAAE,GAAG,EAAE,GAAG,EAAI,OAAO,GAAG,KAAK,CAAE,CAAC,CAAE,CAAC,EAAE,EAAQ,OAAO,CAAW,EAAE,IAAM,EAAW,SAAS,cAAc,GAAG,EAAE,EAAW,UAAU,oBAAoB,EAAW,YAAY,0DAA0D,EAAQ,OAAO,CAAU,EAAE,IAAM,EAAK,EAAM,cAAc,0GAA0G,EAAE,EAAM,EAAK,EAAE,GAAG,kCAAkC,EAAE,IAAkE,EAAS,SAAS,gBAAgB,EAAG,GAAG,EAAE,EAAS,aAAa,YAAY,4EAAqC,EAAE,EAAI,iBAAiB,cAAc,CAAC,CAAC,QAAQ,GAAM,CAAC,GAAG,EAAK,QAAQ,WAAW,EAAE,OAAO,IAAM,EAAM,EAAK,UAAU,EAAI,EAAE,EAAM,gBAAgB,IAAI,EAAE,EAAM,gBAAgB,WAAW,EAAE,EAAS,OAAO,CAAK,CAAE,CAAC,EAAE,EAAK,OAAO,CAAQ,EAAE,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,SAAS,EAAE,IAAI,EAAM,EAAK,GAAG,IAAI,EAAE,OAAO,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,EAAM,EAAK,IAAI,KAAK,MAAM,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,IAAI,OAAO,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAM,EAAK,GAAG,IAAI,uCAAuC,EAAE,IAAM,EAAK,SAAS,cAAc,GAAG,EAAE,EAAK,UAAU,oBAAoB,EAAK,YAAY,sEAAsE,EAAa,OAAO,EAAK,CAAI,EAAE,CAAC,iBAAiB,mBAAmB,CAAC,CAAC,SAAS,EAAK,IAAI,CAAC,IAAM,EAAO,SAAS,cAAc,QAAQ,EAAE,EAAO,KAAK,SAAS,EAAO,YAAY,EAAK,EAAO,aAAa,eAAe,OAAO,IAAI,CAAC,CAAC,EAAE,EAAO,YAAY,CAAC,EAAQ,OAAO,IAAI,EAAE,EAAa,OAAO,IAAI,EAAE,MAAM,KAAK,EAAQ,QAAQ,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,aAAa,eAAe,OAAO,IAAI,CAAC,CAAC,CAAC,CAAE,EAAE,EAAQ,OAAO,CAAM,CAAE,CAAC,EAAE,EAAK,OAAO,EAAQ,EAAQ,EAAQ,CAAY,EAAE,EAAO,OAAO,CAAI,EAAE,EAAO,MAAM,YAAY,UAAU,OAAO,WAAW,CAAE,OAAO,EAAM,CAAK,EAAM,OAAO,SAAQ,QAAQ,MAAM,CAAK,EAAE,EAAQ,CAAE,QAAQ,CAAC,EAAQ,EAAM,CADoyD,CACnyD,EAAE,EAAM,EAAE,IAAM,EAAS,IAAI,qBAAqB,CAAI,CAAC,GAAM,CAAC,GAAQ,EAAM,CAAE,CAAC,EAAiG,OAA/F,EAAS,QAAQ,EAAQ,CAAC,UAAU,GAAK,QAAQ,EAAI,CAAC,EAAE,EAAM,iBAAiB,SAAS,CAAK,MAAY,CAAC,EAAM,MAAM,EAAE,EAAS,WAAW,EAAE,EAAM,oBAAoB,SAAS,CAAK,EAAE,EAAQ,CAAE,CAAE,EAAE,CAAC,CAAK,CAAC,CAAE,qCAzM7pF,IAA4B,IAAmC,IAAoD,EAAO,EAAI,UAAU,EAAK,UAAU,EAAO,UAAU,EAAK,UAAU,EAAK,UAAgB,EAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DAmCnO,EAAI;;;;;;;;;;;;;;;;;;iEAkBE,EAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsFqpH,EAAoB,GAAiB,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,aAAa,oCAAoC,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,gBAAgB,GAAK,aAAa,yGAAyG,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,0BAA0B,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,MAAM,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,SAAS,EAAE,MAAM,UAAU,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,WAAW,iBAAiB,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,WAAW,iBAAiB,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,kBAAkB,iBAAiB,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC,KAAK,EAAY,KAAK,MAAM,sBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC,KAAK,EAAY,KAAK,MAAM,sBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAY,KAAK,MAAM,0BAA0B,iBAAiB,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC,KAAK,EAAY,KAAK,MAAM,uBAAuB,iBAAiB,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC,KAAK,EAAY,KAAK,MAAM,wBAAwB,iBAAiB,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAY,KAAK,MAAM,mBAAmB,iBAAiB,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC,KAAK,EAAY,KAAK,MAAM,sBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAY,KAAK,MAAM,iBAAiB,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAQj/I,EAAoB,GAAQ,CAAC,MAAM,CAAC,KAAK,EAAY,KAAK,iBAAiB,CAAC,MAAM,MAAM,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,aAAa,+CAA+C,gBAAgB,EAAI,CAAC,CAAC,EAQouE,GAAe"}