=0;t--){let s=e[t].trim();!/([\"\'])[^\'\"]+\1/.test(s)&&!Ch.includes(s)&&(s=`"${s}"`),e[t]=s}return`${this.fontStyle} ${this.fontVariant} ${this.fontWeight} ${t} ${e.join(",")}`}};let Ph=Dh;function Oh(t){const e=Ie.shared;return Array.isArray(t)?t.map((t=>e.setValue(t).toHex())):e.setValue(t).toHex()}function Fh(t,e,s){for(const i in s)Array.isArray(e[i])?t[i]=e[i].slice():t[i]=e[i]}Ph.defaultStyle={align:"left",breakWords:!1,dropShadow:!1,dropShadowAlpha:1,dropShadowAngle:Math.PI/6,dropShadowBlur:0,dropShadowColor:"black",dropShadowDistance:5,fill:"black",fillGradientType:Sh.LINEAR_VERTICAL,fillGradientStops:[],fontFamily:"Arial",fontSize:26,fontStyle:"normal",fontVariant:"normal",fontWeight:"normal",leading:0,letterSpacing:0,lineHeight:0,lineJoin:"miter",miterLimit:10,padding:0,stroke:"black",strokeThickness:0,textBaseline:"alphabetic",trim:!1,whiteSpace:"pre",wordWrap:!1,wordWrapWidth:100};const Bh={texture:!0,children:!1,baseTexture:!0},Nh=class extends Sn{constructor(t,e,s){var i;let r=!1;s||(s=A.ADAPTER.createCanvas(),r=!0),s.width=3,s.height=3;const n=Wi.from(s);n.orig=new Ls,n.trim=new Ls,super(n),this._ownCanvas=r,this.canvas=s,this.context=s.getContext("2d",{willReadFrequently:!0}),this._resolution=null!=(i=Nh.defaultResolution)?i:A.RESOLUTION,this._autoResolution=Nh.defaultAutoResolution,this._text=null,this._style=null,this._styleListener=null,this._font="",this.text=t,this.style=e,this.localStyleID=-1}static get experimentalLetterSpacing(){return Mh.experimentalLetterSpacing}static set experimentalLetterSpacing(t){Kt("7.1.0","Text.experimentalLetterSpacing is deprecated, use TextMetrics.experimentalLetterSpacing"),Mh.experimentalLetterSpacing=t}updateText(t){const e=this._style;if(this.localStyleID!==e.styleID&&(this.dirty=!0,this.localStyleID=e.styleID),!this.dirty&&t)return;this._font=this._style.toFontString();const s=this.context,i=Mh.measureText(this._text||" ",this._style,this._style.wordWrap,this.canvas),r=i.width,n=i.height,a=i.lines,o=i.lineHeight,h=i.lineWidths,l=i.maxLineWidth,u=i.fontProperties;let d,c;this.canvas.width=Math.ceil(Math.ceil(Math.max(1,r)+2*e.padding)*this._resolution),this.canvas.height=Math.ceil(Math.ceil(Math.max(1,n)+2*e.padding)*this._resolution),s.scale(this._resolution,this._resolution),s.clearRect(0,0,this.canvas.width,this.canvas.height),s.font=this._font,s.lineWidth=e.strokeThickness,s.textBaseline=e.textBaseline,s.lineJoin=e.lineJoin,s.miterLimit=e.miterLimit;const p=e.dropShadow?2:1;for(let t=0;t0&&n>a&&(o=(a+n)/2);const d=a+i,c=s.lineHeight*(t+1);let p=d;t+10}}function Uh(t,e){var s;let i=!1;if(null!=(s=null==t?void 0:t._textures)&&s.length)for(let s=0;s{!this.queue||this.prepareItems()},this.registerFindHook(zh),this.registerFindHook(Wh),this.registerFindHook(Uh),this.registerFindHook(kh),this.registerFindHook(Xh),this.registerUploadHook(Hh),this.registerUploadHook(Vh)}upload(t){return new Promise((e=>{t&&this.add(t),this.queue.length?(this.completes.push(e),this.ticking||(this.ticking=!0,$r.system.addOnce(this.tick,this,Wr.UTILITY))):e()}))}tick(){setTimeout(this.delayedTick,0)}prepareItems(){for(this.limiter.beginFrame();this.queue.length&&this.limiter.allowedToUpload();){const t=this.queue[0];let e=!1;if(t&&!t._destroyed)for(let s=0,i=this.uploadHooks.length;s=0;e--)this.add(t.children[e]);return this}destroy(){this.ticking&&$r.system.remove(this.tick,this),this.ticking=!1,this.addHooks=null,this.uploadHooks=null,this.renderer=null,this.completes=null,this.queue=null,this.limiter=null,this.uploadHookHelper=null}};let jh=Yh;function $h(t,e){return e instanceof ys&&(e._glTextures[t.CONTEXT_UID]||t.texture.bind(e),!0)}function qh(t,e){if(!(e instanceof ch))return!1;const{geometry:s}=e;e.finishPoly(),s.updateBatches();const{batches:i}=s;for(let e=0;ejh.uploadsPerFrame,set(t){Kt("7.1.0","settings.UPLOADS_PER_FRAME is deprecated, use prepare.BasePrepare.uploadsPerFrame"),jh.uploadsPerFrame=t}}});class Zh extends jh{constructor(t){super(t),this.uploadHookHelper=this.renderer,this.registerFindHook(Kh),this.registerUploadHook($h),this.registerUploadHook(qh)}}Zh.extension={name:"prepare",type:rs.RendererSystem},os.add(Zh);class Qh extends Sn{constructor(t,e=!0){super(t[0]instanceof Wi?t[0]:t[0].texture),this._textures=null,this._durations=null,this._autoUpdate=e,this._isConnectedToTicker=!1,this.animationSpeed=1,this.loop=!0,this.updateAnchor=!1,this.onComplete=null,this.onFrameChange=null,this.onLoop=null,this._currentTime=0,this._playing=!1,this._previousFrame=null,this.textures=t}stop(){!this._playing||(this._playing=!1,this._autoUpdate&&this._isConnectedToTicker&&($r.shared.remove(this.update,this),this._isConnectedToTicker=!1))}play(){this._playing||(this._playing=!0,this._autoUpdate&&!this._isConnectedToTicker&&($r.shared.add(this.update,this,Wr.HIGH),this._isConnectedToTicker=!0))}gotoAndStop(t){this.stop(),this.currentFrame=t}gotoAndPlay(t){this.currentFrame=t,this.play()}update(t){if(!this._playing)return;const e=this.animationSpeed*t,s=this.currentFrame;if(null!==this._durations){let s=this._currentTime%1*this._durations[this.currentFrame];for(s+=e/60*1e3;s<0;)this._currentTime--,s+=this._durations[this.currentFrame];const i=Math.sign(this.animationSpeed*t);for(this._currentTime=Math.floor(this._currentTime);s>=this._durations[this.currentFrame];)s-=this._durations[this.currentFrame]*i,this._currentTime+=i;this._currentTime+=s/this._durations[this.currentFrame]}else this._currentTime+=e;this._currentTime<0&&!this.loop?(this.gotoAndStop(0),this.onComplete&&this.onComplete()):this._currentTime>=this._textures.length&&!this.loop?(this.gotoAndStop(this._textures.length-1),this.onComplete&&this.onComplete()):s!==this.currentFrame&&(this.loop&&this.onLoop&&(this.animationSpeed>0&&this.currentFrames)&&this.onLoop(),this.updateTexture())}updateTexture(){const t=this.currentFrame;this._previousFrame!==t&&(this._previousFrame=t,this._texture=this._textures[t],this._textureID=-1,this._textureTrimmedID=-1,this._cachedTint=16777215,this.uvs=this._texture._uvs.uvsFloat32,this.updateAnchor&&this._anchor.copyFrom(this._texture.defaultAnchor),this.onFrameChange&&this.onFrameChange(this.currentFrame))}destroy(t){this.stop(),super.destroy(t),this.onComplete=null,this.onFrameChange=null,this.onLoop=null}static fromFrames(t){const e=[];for(let s=0;sthis.totalFrames-1)throw new Error(`[AnimatedSprite]: Invalid frame index value ${t}, expected to be between 0 and totalFrames ${this.totalFrames}.`);const e=this.currentFrame;this._currentTime=t,e!==this.currentFrame&&this.updateTexture()}get playing(){return this._playing}get autoUpdate(){return this._autoUpdate}set autoUpdate(t){t!==this._autoUpdate&&(this._autoUpdate=t,!this._autoUpdate&&this._isConnectedToTicker?($r.shared.remove(this.update,this),this._isConnectedToTicker=!1):this._autoUpdate&&!this._isConnectedToTicker&&this._playing&&($r.shared.add(this.update,this),this._isConnectedToTicker=!0))}}const Jh=new Bs;class tl extends Sn{constructor(t,e=100,s=100){super(t),this.tileTransform=new Js,this._width=e,this._height=s,this.uvMatrix=this.texture.uvMatrix||new or(t),this.pluginName="tilingSprite",this.uvRespectAnchor=!1}get clampMargin(){return this.uvMatrix.clampMargin}set clampMargin(t){this.uvMatrix.clampMargin=t,this.uvMatrix.update(!0)}get tileScale(){return this.tileTransform.scale}set tileScale(t){this.tileTransform.scale.copyFrom(t)}get tilePosition(){return this.tileTransform.position}set tilePosition(t){this.tileTransform.position.copyFrom(t)}_onTextureUpdate(){this.uvMatrix&&(this.uvMatrix.texture=this._texture),this._cachedTint=16777215}_render(t){const e=this._texture;!e||!e.valid||(this.tileTransform.updateLocalTransform(),this.uvMatrix.update(),t.batch.setObjectRenderer(t.plugins[this.pluginName]),t.plugins[this.pluginName].render(this))}_calculateBounds(){const t=this._width*-this._anchor._x,e=this._height*-this._anchor._y,s=this._width*(1-this._anchor._x),i=this._height*(1-this._anchor._y);this._bounds.addFrame(this.transform,t,e,s,i)}getLocalBounds(t){return 0===this.children.length?(this._bounds.minX=this._width*-this._anchor._x,this._bounds.minY=this._height*-this._anchor._y,this._bounds.maxX=this._width*(1-this._anchor._x),this._bounds.maxY=this._height*(1-this._anchor._y),t||(this._localBoundsRect||(this._localBoundsRect=new Ls),t=this._localBoundsRect),this._bounds.getRectangle(t)):super.getLocalBounds.call(this,t)}containsPoint(t){this.worldTransform.applyInverse(t,Jh);const e=this._width,s=this._height,i=-e*this.anchor._x;if(Jh.x>=i&&Jh.x=t&&Jh.y1?Ri.from("#version 300 es\n#define SHADER_NAME Tiling-Sprite-300\n\nprecision lowp float;\n\nin vec2 aVertexPosition;\nin vec2 aTextureCoord;\n\nuniform mat3 projectionMatrix;\nuniform mat3 translationMatrix;\nuniform mat3 uTransform;\n\nout vec2 vTextureCoord;\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n\n vTextureCoord = (uTransform * vec3(aTextureCoord, 1.0)).xy;\n}\n","#version 300 es\n#define SHADER_NAME Tiling-Sprite-100\n\nprecision lowp float;\n\nin vec2 vTextureCoord;\n\nout vec4 fragmentColor;\n\nuniform sampler2D uSampler;\nuniform vec4 uColor;\nuniform mat3 uMapCoord;\nuniform vec4 uClampFrame;\nuniform vec2 uClampOffset;\n\nvoid main(void)\n{\n vec2 coord = vTextureCoord + ceil(uClampOffset - vTextureCoord);\n coord = (uMapCoord * vec3(coord, 1.0)).xy;\n vec2 unclamped = coord;\n coord = clamp(coord, uClampFrame.xy, uClampFrame.zw);\n\n vec4 texSample = texture(uSampler, coord, unclamped == coord ? 0.0f : -32.0f);// lod-bias very negative to force lod 0\n\n fragmentColor = texSample * uColor;\n}\n",e):Ri.from(el,"#version 100\n#ifdef GL_EXT_shader_texture_lod\n #extension GL_EXT_shader_texture_lod : enable\n#endif\n#define SHADER_NAME Tiling-Sprite-100\n\nprecision lowp float;\n\nvarying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform vec4 uColor;\nuniform mat3 uMapCoord;\nuniform vec4 uClampFrame;\nuniform vec2 uClampOffset;\n\nvoid main(void)\n{\n vec2 coord = vTextureCoord + ceil(uClampOffset - vTextureCoord);\n coord = (uMapCoord * vec3(coord, 1.0)).xy;\n vec2 unclamped = coord;\n coord = clamp(coord, uClampFrame.xy, uClampFrame.zw);\n\n #ifdef GL_EXT_shader_texture_lod\n vec4 texSample = unclamped == coord\n ? texture2D(uSampler, coord) \n : texture2DLodEXT(uSampler, coord, 0);\n #else\n vec4 texSample = texture2D(uSampler, coord);\n #endif\n\n gl_FragColor = texSample * uColor;\n}\n",e)}render(t){const e=this.renderer,s=this.quad;let i=s.vertices;i[0]=i[6]=t._width*-t.anchor.x,i[1]=i[3]=t._height*-t.anchor.y,i[2]=i[4]=t._width*(1-t.anchor.x),i[5]=i[7]=t._height*(1-t.anchor.y);const r=t.uvRespectAnchor?t.anchor.x:0,n=t.uvRespectAnchor?t.anchor.y:0;i=s.uvs,i[0]=i[6]=-r,i[1]=i[3]=-n,i[2]=i[4]=1-r,i[5]=i[7]=1-n,s.invalidate();const a=t._texture,o=a.baseTexture,h=o.alphaMode>0,l=t.tileTransform.localTransform,u=t.uvMatrix;let d=o.isPowerOfTwo&&a.frame.width===o.width&&a.frame.height===o.height;d&&(o._glTextures[e.CONTEXT_UID]?d=o.wrapMode!==p.CLAMP:o.wrapMode===p.CLAMP&&(o.wrapMode=p.REPEAT));const c=d?this.simpleShader:this.shader,f=a.width,m=a.height,_=t._width,g=t._height;sl.set(l.a*f/_,l.b*f/g,l.c*m/_,l.d*m/g,l.tx/_,l.ty/g),sl.invert(),d?sl.prepend(u.mapCoord):(c.uniforms.uMapCoord=u.mapCoord.toArray(!0),c.uniforms.uClampFrame=u.uClampFrame,c.uniforms.uClampOffset=u.uClampOffset),c.uniforms.uTransform=sl.toArray(!0),c.uniforms.uColor=Ie.shared.setValue(t.tint).premultiply(t.worldAlpha,h).toArray(c.uniforms.uColor),c.uniforms.translationMatrix=t.transform.worldTransform.toArray(!0),c.uniforms.uSampler=a,e.shader.bind(c),e.geometry.bind(s),this.state.blendMode=Pe(t.blendMode,h),e.state.set(this.state),e.geometry.draw(this.renderer.gl.TRIANGLES,6,0)}}il.extension={name:"tilingSprite",type:rs.RendererPlugin},os.add(il);const rl=class{constructor(t,e,s=null){this.linkedSheets=[],this._texture=t instanceof Wi?t:null,this.baseTexture=t instanceof ys?t:this._texture.baseTexture,this.textures={},this.animations={},this.data=e;const i=this.baseTexture.resource;this.resolution=this._updateResolution(s||(i?i.url:null)),this._frames=this.data.frames,this._frameKeys=Object.keys(this._frames),this._batchIndex=0,this._callback=null}_updateResolution(t=null){const{scale:e}=this.data.meta;let s=ss(t,null);return null===s&&(s=parseFloat(null!=e?e:"1")),1!==s&&this.baseTexture.setResolution(s),s}parse(){return new Promise((t=>{this._callback=t,this._batchIndex=0,this._frameKeys.length<=rl.BATCH_SIZE?(this._processFrames(0),this._processAnimations(),this._parseComplete()):this._nextBatch()}))}_processFrames(t){let e=t;const s=rl.BATCH_SIZE;for(;e-t{this._batchIndex*rl.BATCH_SIZE{i[t]=e})),Object.keys(e.textures).forEach((t=>{i[t]=e.textures[t]})),!s){const s=$t.dirname(t[0]);e.linkedSheets.forEach(((t,r)=>{const n=ol([`${s}/${e.data.meta.related_multi_packs[r]}`],t,!0);Object.assign(i,n)}))}return i}const hl={extension:rs.Asset,cache:{test:t=>t instanceof nl,getCacheableAssets:(t,e)=>ol(t,e,!1)},resolver:{test:t=>{const e=t.split("?")[0].split("."),s=e.pop(),i=e.pop();return"json"===s&&al.includes(i)},parse:t=>{var e,s;const i=t.split(".");return{resolution:parseFloat(null!=(s=null==(e=A.RETINA_PREFIX.exec(t))?void 0:e[1])?s:"1"),format:i[i.length-2],src:t}}},loader:{name:"spritesheetLoader",extension:{type:rs.LoadParser,priority:ma.Normal},testParse:async(t,e)=>".json"===$t.extname(e.src).toLowerCase()&&!!t.frames,async parse(t,e,s){var i,r;let n=$t.dirname(e.src);n&&n.lastIndexOf("/")!==n.length-1&&(n+="/");let a=n+t.meta.image;a=la(a,e.src);const o=(await s.load([a]))[a],h=new nl(o.baseTexture,t,e.src);await h.parse();const l=null==(i=null==t?void 0:t.meta)?void 0:i.related_multi_packs;if(Array.isArray(l)){const t=[];for(const i of l){if("string"!=typeof i)continue;let a=n+i;null!=(r=e.data)&&r.ignoreMultiPack||(a=la(a,e.src),t.push(s.load({src:a,data:{ignoreMultiPack:!0}})))}const i=await Promise.all(t);h.linkedSheets=i,i.forEach((t=>{t.linkedSheets=[h].concat(h.linkedSheets.filter((e=>e!==t)))}))}return h},unload(t){t.destroy(!0)}}};os.add(hl);class ll{constructor(){this.info=[],this.common=[],this.page=[],this.char=[],this.kerning=[],this.distanceField=[]}}class ul{static test(t){return"string"==typeof t&&t.startsWith("info face=")}static parse(t){const e=t.match(/^[a-z]+\s+.+$/gm),s={info:[],common:[],page:[],char:[],chars:[],kerning:[],kernings:[],distanceField:[]};for(const t in e){const i=e[t].match(/^[a-z]+/gm)[0],r=e[t].match(/[a-zA-Z]+=([^\s"']+|"([^"]*)")/gm),n={};for(const t in r){const e=r[t].split("="),s=e[0],i=e[1].replace(/"/gm,""),a=parseFloat(i),o=isNaN(a)?i:a;n[s]=o}s[i].push(n)}const i=new ll;return s.info.forEach((t=>i.info.push({face:t.face,size:parseInt(t.size,10)}))),s.common.forEach((t=>i.common.push({lineHeight:parseInt(t.lineHeight,10)}))),s.page.forEach((t=>i.page.push({id:parseInt(t.id,10),file:t.file}))),s.char.forEach((t=>i.char.push({id:parseInt(t.id,10),page:parseInt(t.page,10),x:parseInt(t.x,10),y:parseInt(t.y,10),width:parseInt(t.width,10),height:parseInt(t.height,10),xoffset:parseInt(t.xoffset,10),yoffset:parseInt(t.yoffset,10),xadvance:parseInt(t.xadvance,10)}))),s.kerning.forEach((t=>i.kerning.push({first:parseInt(t.first,10),second:parseInt(t.second,10),amount:parseInt(t.amount,10)}))),s.distanceField.forEach((t=>i.distanceField.push({distanceRange:parseInt(t.distanceRange,10),fieldType:t.fieldType}))),i}}class dl{static test(t){const e=t;return"getElementsByTagName"in e&&e.getElementsByTagName("page").length&&null!==e.getElementsByTagName("info")[0].getAttribute("face")}static parse(t){const e=new ll,s=t.getElementsByTagName("info"),i=t.getElementsByTagName("common"),r=t.getElementsByTagName("page"),n=t.getElementsByTagName("char"),a=t.getElementsByTagName("kerning"),o=t.getElementsByTagName("distanceField");for(let t=0;t"))&&dl.test(A.ADAPTER.parseXML(t))}static parse(t){return dl.parse(A.ADAPTER.parseXML(t))}}const pl=[ul,dl,cl];function fl(t){for(let e=0;e=h-r*a){if(0===x)throw new Error(`[BitmapFont] textureHeight ${h}px is too small (fontFamily: '${d.fontFamily}', fontSize: ${d.fontSize}px, char: '${e}')`);--t,f=null,m=null,_=null,x=0,g=0,v=0;continue}if(v=Math.max(r+s.fontProperties.descent,v),b*a+g>=c){if(0===g)throw new Error(`[BitmapFont] textureWidth ${o}px is too small (fontFamily: '${d.fontFamily}', fontSize: ${d.fontSize}px, char: '${e}')`);--t,x+=v*a,x=Math.ceil(x),g=0,v=0;continue}ml(f,m,s,g,x,a,d);const E=_l(s.text);p.char.push({id:E,page:T.length-1,x:g/a,y:x/a,width:b,height:r,xoffset:0,yoffset:0,xadvance:i-(d.dropShadow?d.dropShadowDistance:0)-(d.stroke?d.strokeThickness:0)}),g+=(b+2*n)*a,g=Math.ceil(g)}for(let t=0,e=u.length;t{this.dirty=!0}),this,0,0),this._roundPixels=A.ROUND_PIXELS,this.dirty=!0,this._resolution=A.RESOLUTION,this._autoResolution=!0,this._textureCache={}}updateText(){var t;const e=vl.available[this._fontName],s=this.fontSize,i=s/e.size,r=new Bs,n=[],o=[],h=[],l=gl(this._text.replace(/(?:\r\n|\r)/g,"\n")||" "),u=this._maxWidth*e.size/s,d="none"===e.distanceFieldType?yl:Tl;let c=null,p=0,f=0,m=0,_=-1,g=0,x=0,v=0,y=0;for(let t=0;t0&&r.x>u&&(++x,ke(n,1+_-x,1+t-_),t=_,_=-1,o.push(g),h.push(n.length>0?n[n.length-1].prevSpaces:0),f=Math.max(f,g),m++,r.x=0,r.y+=e.lineHeight,c=null,y=0)}const T=l[l.length-1];"\r"!==T&&"\n"!==T&&(/(?:\s)/.test(T)&&(p=g),o.push(p),f=Math.max(f,p),h.push(-1));const b=[];for(let t=0;t<=m;t++){let e=0;"right"===this._align?e=f-o[t]:"center"===this._align?e=(f-o[t])/2:"justify"===this._align&&(e=h[t]<0?0:(f-o[t])/h[t]),b.push(e)}const E=n.length,A={},R=[],S=this._activePagesMeshData;d.push(...S);for(let t=0;t 0.99) {\r\n alpha = 1.0;\r\n }\r\n\r\n // Gamma correction for coverage-like alpha\r\n float luma = dot(uColor.rgb, vec3(0.299, 0.587, 0.114));\r\n float gamma = mix(1.0, 1.0 / 2.2, luma);\r\n float coverage = pow(uColor.a * alpha, gamma); \r\n\r\n // NPM Textures, NPM outputs\r\n gl_FragColor = vec4(uColor.rgb, coverage);\r\n}\r\n"),uniforms:{uFWidth:0}}),r=a.NORMAL_NPM);const n=new xh(s,i);n.blendMode=r,t={index:0,indexCount:0,vertexCount:0,uvsCount:0,total:0,mesh:n,vertices:null,uvs:null,indices:null}}t.index=0,t.indexCount=0,t.vertexCount=0,t.uvsCount=0,t.total=0;const{_textureCache:r}=this;r[i]=r[i]||new Wi(s.baseTexture),t.mesh.texture=r[i],t.mesh.tint=this._tintColor.value,R.push(t),A[i]=t}A[i].total++}for(let t=0;t6*i)||s.vertices.length<2*xh.BATCHABLE_SIZE)s.vertices=new Float32Array(8*i),s.uvs=new Float32Array(8*i),s.indices=new Uint16Array(6*i);else{const t=s.total,e=s.vertices;for(let s=4*t*2;se[t.mesh.texture.baseTexture.uid])).forEach((t=>{t.mesh.texture=Wi.EMPTY}));for(const t in e)e[t].destroy(),delete e[t];this._font=null,this._tintColor=null,this._textureCache=null,super.destroy(t)}};let Al=El;Al.styleDefaults={align:"left",tint:16777215,maxWidth:0,letterSpacing:0};const Rl=[".xml",".fnt"],Sl={extension:{type:rs.LoadParser,priority:ma.Normal},name:"loadBitmapFont",test:t=>Rl.includes($t.extname(t).toLowerCase()),testParse:async t=>ul.test(t)||cl.test(t),async parse(t,e,s){const i=ul.test(t)?ul.parse(t):cl.parse(t),{src:r}=e,{page:n}=i,a=[];for(let t=0;to[t]));return vl.install(i,h,!0)},load:async(t,e)=>(await A.ADAPTER.fetch(t)).text(),unload(t){t.destroy()}};os.add(Sl);const wl=class extends Ph{constructor(){super(...arguments),this._fonts=[],this._overrides=[],this._stylesheet="",this.fontsDirty=!1}static from(t){return new wl(Object.keys(wl.defaultOptions).reduce(((e,s)=>Qi(bt({},e),{[s]:t[s]})),{}))}cleanFonts(){this._fonts.length>0&&(this._fonts.forEach((t=>{URL.revokeObjectURL(t.src),t.refs--,0===t.refs&&(t.fontFace&&document.fonts.delete(t.fontFace),delete wl.availableFonts[t.originalUrl])})),this.fontFamily="Arial",this._fonts.length=0,this.styleID++,this.fontsDirty=!0)}loadFont(t,e={}){const{availableFonts:s}=wl;if(s[t]){const e=s[t];return this._fonts.push(e),e.refs++,this.styleID++,this.fontsDirty=!0,Promise.resolve()}return A.ADAPTER.fetch(t).then((t=>t.blob())).then((async t=>new Promise(((e,s)=>{const i=URL.createObjectURL(t),r=new FileReader;r.onload=()=>e([i,r.result]),r.onerror=s,r.readAsDataURL(t)})))).then((async([i,r])=>{const n=Object.assign({family:$t.basename(t,$t.extname(t)),weight:"normal",style:"normal",src:i,dataSrc:r,refs:1,originalUrl:t,fontFace:null},e);s[t]=n,this._fonts.push(n),this.styleID++;const a=new FontFace(n.family,`url(${n.src})`,{weight:n.weight,style:n.style});n.fontFace=a,await a.load(),document.fonts.add(a),await document.fonts.ready,this.styleID++,this.fontsDirty=!0}))}addOverride(...t){const e=t.filter((t=>!this._overrides.includes(t)));e.length>0&&(this._overrides.push(...e),this.styleID++)}removeOverride(...t){const e=t.filter((t=>this._overrides.includes(t)));e.length>0&&(this._overrides=this._overrides.filter((t=>!e.includes(t))),this.styleID++)}toCSS(t){return[`transform: scale(${t})`,"transform-origin: top left","display: inline-block",`color: ${this.normalizeColor(this.fill)}`,`font-size: ${this.fontSize}px`,`font-family: ${this.fontFamily}`,`font-weight: ${this.fontWeight}`,`font-style: ${this.fontStyle}`,`font-variant: ${this.fontVariant}`,`letter-spacing: ${this.letterSpacing}px`,`text-align: ${this.align}`,`padding: ${this.padding}px`,`white-space: ${this.whiteSpace}`,...this.lineHeight?[`line-height: ${this.lineHeight}px`]:[],...this.wordWrap?["word-wrap: "+(this.breakWords?"break-all":"break-word"),`max-width: ${this.wordWrapWidth}px`]:[],...this.strokeThickness?[`-webkit-text-stroke-width: ${this.strokeThickness}px`,`-webkit-text-stroke-color: ${this.normalizeColor(this.stroke)}`,`text-stroke-width: ${this.strokeThickness}px`,`text-stroke-color: ${this.normalizeColor(this.stroke)}`,"paint-order: stroke"]:[],...this.dropShadow?[this.dropShadowToCSS()]:[],...this._overrides].join(";")}toGlobalCSS(){return this._fonts.reduce(((t,e)=>`${t}\n @font-face {\n font-family: "${e.family}";\n src: url('${e.dataSrc}');\n font-weight: ${e.weight};\n font-style: ${e.style}; \n }`),this._stylesheet)}get stylesheet(){return this._stylesheet}set stylesheet(t){this._stylesheet!==t&&(this._stylesheet=t,this.styleID++)}normalizeColor(t){return Array.isArray(t)&&(t=Ce(t)),"number"==typeof t?Me(t):t}dropShadowToCSS(){let t=this.normalizeColor(this.dropShadowColor);const e=this.dropShadowAlpha,s=Math.round(Math.cos(this.dropShadowAngle)*this.dropShadowDistance),i=Math.round(Math.sin(this.dropShadowAngle)*this.dropShadowDistance);t.startsWith("#")&&e<1&&(t+=(255*e|0).toString(16).padStart(2,"0"));const r=`${s}px ${i}px`;return this.dropShadowBlur>0?`text-shadow: ${r} ${this.dropShadowBlur}px ${t}`:`text-shadow: ${r} ${t}`}reset(){Object.assign(this,wl.defaultOptions)}onBeforeDraw(){const{fontsDirty:t}=this;return this.fontsDirty=!1,this.isSafari&&this._fonts.length>0&&t?new Promise((t=>setTimeout(t,100))):Promise.resolve()}get isSafari(){const{userAgent:t}=A.ADAPTER.getNavigator();return/^((?!chrome|android).)*safari/i.test(t)}set fillGradientStops(t){console.warn("[HTMLTextStyle] fillGradientStops is not supported by HTMLText")}get fillGradientStops(){return super.fillGradientStops}set fillGradientType(t){console.warn("[HTMLTextStyle] fillGradientType is not supported by HTMLText")}get fillGradientType(){return super.fillGradientType}set miterLimit(t){console.warn("[HTMLTextStyle] miterLimit is not supported by HTMLText")}get miterLimit(){return super.miterLimit}set trim(t){console.warn("[HTMLTextStyle] trim is not supported by HTMLText")}get trim(){return super.trim}set textBaseline(t){console.warn("[HTMLTextStyle] textBaseline is not supported by HTMLText")}get textBaseline(){return super.textBaseline}set leading(t){console.warn("[HTMLTextStyle] leading is not supported by HTMLText")}get leading(){return super.leading}set lineJoin(t){console.warn("[HTMLTextStyle] lineJoin is not supported by HTMLText")}get lineJoin(){return super.lineJoin}};let Il=wl;Il.availableFonts={},Il.defaultOptions={align:"left",breakWords:!1,dropShadow:!1,dropShadowAlpha:1,dropShadowAngle:Math.PI/6,dropShadowBlur:0,dropShadowColor:"black",dropShadowDistance:5,fill:"black",fontFamily:"Arial",fontSize:26,fontStyle:"normal",fontVariant:"normal",fontWeight:"normal",letterSpacing:0,lineHeight:0,padding:0,stroke:"black",strokeThickness:0,whiteSpace:"normal",wordWrap:!1,wordWrapWidth:100};const Ml=class extends Sn{constructor(t="",e={}){var s;super(Wi.EMPTY),this._text=null,this._style=null,this._autoResolution=!0,this._loading=!1,this.localStyleID=-1,this.dirty=!1,this.ownsStyle=!1;const i=new Image,r=Wi.from(i,{scaleMode:A.SCALE_MODE,resourceOptions:{autoLoad:!1}});r.orig=new Ls,r.trim=new Ls,this.texture=r;const n="http://www.w3.org/2000/svg",a="http://www.w3.org/1999/xhtml",o=document.createElementNS(n,"svg"),h=document.createElementNS(n,"foreignObject"),l=document.createElementNS(a,"div"),u=document.createElementNS(a,"style");h.setAttribute("width","10000"),h.setAttribute("height","10000"),h.style.overflow="hidden",o.appendChild(h),this.maxWidth=Ml.defaultMaxWidth,this.maxHeight=Ml.defaultMaxHeight,this._domElement=l,this._styleElement=u,this._svgRoot=o,this._foreignObject=h,this._foreignObject.appendChild(u),this._foreignObject.appendChild(l),this._image=i,this._loadImage=new Image,this._autoResolution=Ml.defaultAutoResolution,this._resolution=null!=(s=Ml.defaultResolution)?s:A.RESOLUTION,this.text=t,this.style=e}measureText(t){var e,s;const{text:i,style:r,resolution:n}=Object.assign({text:this._text,style:this._style,resolution:this._resolution},t);Object.assign(this._domElement,{innerHTML:i,style:r.toCSS(n)}),this._styleElement.textContent=r.toGlobalCSS(),document.body.appendChild(this._svgRoot);const a=this._domElement.getBoundingClientRect();this._svgRoot.remove();const o=Math.min(this.maxWidth,Math.ceil(a.width)),h=Math.min(this.maxHeight,Math.ceil(a.height));return this._svgRoot.setAttribute("width",o.toString()),this._svgRoot.setAttribute("height",h.toString()),i!==this._text&&(this._domElement.innerHTML=this._text),r!==this._style&&(Object.assign(this._domElement,{style:null==(e=this._style)?void 0:e.toCSS(n)}),this._styleElement.textContent=null==(s=this._style)?void 0:s.toGlobalCSS()),{width:o+2*r.padding,height:h+2*r.padding}}async updateText(t=!0){const{style:e,_image:s,_loadImage:i}=this;if(this.localStyleID!==e.styleID&&(this.dirty=!0,this.localStyleID=e.styleID),!this.dirty&&t)return;const{width:r,height:n}=this.measureText();s.width=i.width=Math.ceil(Math.max(1,r)),s.height=i.height=Math.ceil(Math.max(1,n)),this._loading||(this._loading=!0,await new Promise((t=>{i.onload=async()=>{await e.onBeforeDraw(),this._loading=!1,s.src=i.src,i.onload=null,i.src="",this.updateTexture(),t()};const r=(new XMLSerializer).serializeToString(this._svgRoot);i.src=`data:image/svg+xml;charset=utf8,${encodeURIComponent(r)}`})))}get source(){return this._image}updateTexture(){const{style:t,texture:e,_image:s,resolution:i}=this,{padding:r}=t,{baseTexture:n}=e;e.trim.width=e._frame.width=s.width/i,e.trim.height=e._frame.height=s.height/i,e.trim.x=-r,e.trim.y=-r,e.orig.width=e._frame.width-2*r,e.orig.height=e._frame.height-2*r,this._onTextureUpdate(),n.setRealSize(s.width,s.height,i),this.dirty=!1}_render(t){this._autoResolution&&this._resolution!==t.resolution&&(this._resolution=t.resolution,this.dirty=!0),this.updateText(!0),super._render(t)}_renderCanvas(t){this._autoResolution&&this._resolution!==t.resolution&&(this._resolution=t.resolution,this.dirty=!0),this.updateText(!0),super._renderCanvas(t)}getLocalBounds(t){return this.updateText(!0),super.getLocalBounds(t)}_calculateBounds(){this.updateText(!0),this.calculateVertices(),this._bounds.addQuad(this.vertexData)}_onStyleChange(){this.dirty=!0}destroy(t){var e,s,i,r,n;"boolean"==typeof t&&(t={children:t}),t=Object.assign({},Ml.defaultDestroyOptions,t),super.destroy(t);const a=null;this.ownsStyle&&(null==(e=this._style)||e.cleanFonts()),this._style=a,null==(s=this._svgRoot)||s.remove(),this._svgRoot=a,null==(i=this._domElement)||i.remove(),this._domElement=a,null==(r=this._foreignObject)||r.remove(),this._foreignObject=a,null==(n=this._styleElement)||n.remove(),this._styleElement=a,this._loadImage.src="",this._loadImage.onload=null,this._loadImage=a,this._image.src="",this._image=a}get width(){return this.updateText(!0),Math.abs(this.scale.x)*this._image.width/this.resolution}set width(t){this.updateText(!0);const e=Xe(this.scale.x)||1;this.scale.x=e*t/this._image.width/this.resolution,this._width=t}get height(){return this.updateText(!0),Math.abs(this.scale.y)*this._image.height/this.resolution}set height(t){this.updateText(!0);const e=Xe(this.scale.y)||1;this.scale.y=e*t/this._image.height/this.resolution,this._height=t}get style(){return this._style}set style(t){this._style!==t&&((t=t||{})instanceof Il?(this.ownsStyle=!1,this._style=t):t instanceof Ph?(console.warn("[HTMLText] Cloning TextStyle, if this is not what you want, use HTMLTextStyle"),this.ownsStyle=!0,this._style=Il.from(t)):(this.ownsStyle=!0,this._style=new Il(t)),this.localStyleID=-1,this.dirty=!0)}get text(){return this._text}set text(t){t=String(""===t||null==t?" ":t),t=this.sanitiseText(t),this._text!==t&&(this._text=t,this.dirty=!0)}get resolution(){return this._resolution}set resolution(t){this._autoResolution=!1,this._resolution!==t&&(this._resolution=t,this.dirty=!0)}sanitiseText(t){return t.replace(/
/gi,"
").replace(/
/gi,"
").replace(/ /gi," ")}};let Cl=Ml;return Cl.defaultDestroyOptions={texture:!0,children:!1,baseTexture:!0},Cl.defaultMaxWidth=2024,Cl.defaultMaxHeight=2024,Cl.defaultAutoResolution=!0,t.ALPHA_MODES=m,t.AbstractMultiResource=on,t.AccessibilityManager=ta,t.AlphaFilter=Mn,t.AnimatedSprite=Qh,t.Application=sa,t.ArrayResource=hn,t.Assets=Ga,t.AssetsClass=La,t.Attribute=As,t.BLEND_MODES=a,t.BUFFER_BITS=n,t.BUFFER_TYPE=b,t.BackgroundSystem=Oi,t.BaseImageResource=ki,t.BasePrepare=jh,t.BaseRenderTexture=Ui,t.BaseTexture=ys,t.BatchDrawCall=Ts,t.BatchGeometry=Cs,t.BatchRenderer=Ci,t.BatchShaderGenerator=Si,t.BatchSystem=Fi,t.BatchTextureArray=wi,t.BitmapFont=vl,t.BitmapFontData=ll,t.BitmapText=Al,t.BlobResource=Za,t.BlurFilter=On,t.BlurFilterPass=Pn,t.Bounds=gn,t.BrowserAdapter=E,t.Buffer=Es,t.BufferResource=gs,t.BufferSystem=sn,t.CLEAR_MODES=_,t.COLOR_MASK_BITS=y,t.Cache=pa,t.CanvasResource=ln,t.Circle=Gs,t.Color=Ie,t.ColorMatrixFilter=Fn,t.CompressedTextureResource=Qa,t.Container=En,t.ContextSystem=Ni,t.CountLimiter=Gh,t.CubeResource=dn,t.DEG_TO_RAD=Os,t.DRAW_MODES=o,t.DisplacementFilter=Bn,t.DisplayObject=xn,t.ENV=i,t.Ellipse=Us,t.EventBoundary=jn,t.EventSystem=Kn,t.ExtensionType=rs,t.Extract=Go,t.FORMATS=h,t.FORMATS_TO_COMPONENTS=Mo,t.FXAAFilter=Nn,t.FederatedDisplayObject=Qn,t.FederatedEvent=kn,t.FederatedMouseEvent=Xn,t.FederatedPointerEvent=Hn,t.FederatedWheelEvent=Vn,t.FillStyle=hh,t.Filter=Pi,t.FilterState=Ki,t.FilterSystem=tr,t.Framebuffer=Gi,t.FramebufferSystem=ir,t.GC_MODES=g,t.GLFramebuffer=er,t.GLProgram=Ar,t.GLTexture=Xr,t.GRAPHICS_CURVES=jo,t.GenerateTextureSystem=yr,t.Geometry=Ms,t.GeometrySystem=nr,t.Graphics=ch,t.GraphicsData=rh,t.GraphicsGeometry=oh,t.HTMLText=Cl,t.HTMLTextStyle=Il,t.IGLUniformData=class{},t.INSTALLED=ps,t.INTERNAL_FORMATS=Wa,t.INTERNAL_FORMAT_TO_BYTES_PER_PIXEL=Ya,t.ImageBitmapResource=cn,t.ImageResource=Xi,t.LINE_CAP=Wo,t.LINE_JOIN=zo,t.LineStyle=lh,t.LoaderParserPriority=ma,t.MASK_TYPES=v,t.MIPMAP_MODES=f,t.MSAA_QUALITY=T,t.MaskData=lr,t.MaskSystem=ur,t.Matrix=Hs,t.Mesh=xh,t.MeshBatchUvs=fh,t.MeshGeometry=vh,t.MeshMaterial=yh,t.MultisampleSystem=tn,t.NineSlicePlane=class extends Eh{constructor(t,e,s,i,r){var n,a,o,h,l,u,d,c;super(Wi.WHITE,4,4),this._origWidth=t.orig.width,this._origHeight=t.orig.height,this._width=this._origWidth,this._height=this._origHeight,this._leftWidth=null!=(a=null!=e?e:null==(n=t.defaultBorders)?void 0:n.left)?a:10,this._rightWidth=null!=(h=null!=i?i:null==(o=t.defaultBorders)?void 0:o.right)?h:10,this._topHeight=null!=(u=null!=s?s:null==(l=t.defaultBorders)?void 0:l.top)?u:10,this._bottomHeight=null!=(c=null!=r?r:null==(d=t.defaultBorders)?void 0:d.bottom)?c:10,this.texture=t}textureUpdated(){this._textureID=this.shader.texture._updateID,this._refresh()}get vertices(){return this.geometry.getBuffer("aVertexPosition").data}set vertices(t){this.geometry.getBuffer("aVertexPosition").data=t}updateHorizontalVertices(){const t=this.vertices,e=this._getMinScale();t[9]=t[11]=t[13]=t[15]=this._topHeight*e,t[17]=t[19]=t[21]=t[23]=this._height-this._bottomHeight*e,t[25]=t[27]=t[29]=t[31]=this._height}updateVerticalVertices(){const t=this.vertices,e=this._getMinScale();t[2]=t[10]=t[18]=t[26]=this._leftWidth*e,t[4]=t[12]=t[20]=t[28]=this._width-this._rightWidth*e,t[6]=t[14]=t[22]=t[30]=this._width}_getMinScale(){const t=this._leftWidth+this._rightWidth,e=this._width>t?1:this._width/t,s=this._topHeight+this._bottomHeight,i=this._height>s?1:this._height/s;return Math.min(e,i)}get width(){return this._width}set width(t){this._width=t,this._refresh()}get height(){return this._height}set height(t){this._height=t,this._refresh()}get leftWidth(){return this._leftWidth}set leftWidth(t){this._leftWidth=t,this._refresh()}get rightWidth(){return this._rightWidth}set rightWidth(t){this._rightWidth=t,this._refresh()}get topHeight(){return this._topHeight}set topHeight(t){this._topHeight=t,this._refresh()}get bottomHeight(){return this._bottomHeight}set bottomHeight(t){this._bottomHeight=t,this._refresh()}_refresh(){const t=this.texture,e=this.geometry.buffers[1].data;this._origWidth=t.orig.width,this._origHeight=t.orig.height;const s=1/this._origWidth,i=1/this._origHeight;e[0]=e[8]=e[16]=e[24]=0,e[1]=e[3]=e[5]=e[7]=0,e[6]=e[14]=e[22]=e[30]=1,e[25]=e[27]=e[29]=e[31]=1,e[2]=e[10]=e[18]=e[26]=s*this._leftWidth,e[4]=e[12]=e[20]=e[28]=1-s*this._rightWidth,e[9]=e[11]=e[13]=e[15]=i*this._topHeight,e[17]=e[19]=e[21]=e[23]=1-i*this._bottomHeight,this.updateHorizontalVertices(),this.updateVerticalVertices(),this.geometry.buffers[0].update(),this.geometry.buffers[1].update()}},t.NoiseFilter=Ln,t.ObjectRenderer=Ii,t.ObjectRendererSystem=rn,t.ObservablePoint=Zs,t.PI_2=Ds,t.PRECISION=x,t.ParticleContainer=class extends En{constructor(t=1500,e,s=16384,i=!1){super();s>16384&&(s=16384),this._properties=[!1,!0,!1,!1,!1],this._maxSize=t,this._batchSize=s,this._buffers=null,this._bufferUpdateIDs=[],this._updateID=0,this.interactiveChildren=!1,this.blendMode=a.NORMAL,this.autoResize=i,this.roundPixels=!0,this.baseTexture=null,this.setProperties(e),this._tintColor=new Ie(0),this.tintRgb=new Float32Array(3),this.tint=16777215}setProperties(t){t&&(this._properties[0]="vertices"in t||"scale"in t?!!t.vertices||!!t.scale:this._properties[0],this._properties[1]="position"in t?!!t.position:this._properties[1],this._properties[2]="rotation"in t?!!t.rotation:this._properties[2],this._properties[3]="uvs"in t?!!t.uvs:this._properties[3],this._properties[4]="tint"in t||"alpha"in t?!!t.tint||!!t.alpha:this._properties[4])}updateTransform(){this.displayObjectUpdateTransform()}get tint(){return this._tintColor.value}set tint(t){this._tintColor.setValue(t),this._tintColor.toRgbArray(this.tintRgb)}render(t){!this.visible||this.worldAlpha<=0||!this.children.length||!this.renderable||(this.baseTexture||(this.baseTexture=this.children[0]._texture.baseTexture,this.baseTexture.valid||this.baseTexture.once("update",(()=>this.onChildrenChange(0)))),t.batch.setObjectRenderer(t.plugins.particle),t.plugins.particle.render(this))}onChildrenChange(t){const e=Math.floor(t/this._batchSize);for(;this._bufferUpdateIDs.length0&&(t.baseTexture.wrapMode=p.REPEAT),super(i,r),this.autoUpdate=!0}_render(t){const e=this.geometry;(this.autoUpdate||e._width!==this.shader.texture.height)&&(e._width=this.shader.texture.height,e.update()),super._render(t)}},t.Sprite=Sn,t.SpriteMaskFilter=hr,t.Spritesheet=nl,t.StartupSystem=Br,t.State=cs,t.StateSystem=Lr,t.StencilSystem=_r,t.SystemManager=Gr,t.TARGETS=l,t.TEXT_GRADIENT=Sh,t.TYPES=u,t.TYPES_TO_BYTES_PER_COMPONENT=Io,t.TYPES_TO_BYTES_PER_PIXEL=Co,t.TemporaryDisplayObject=vn,t.Text=Lh,t.TextFormat=ul,t.TextMetrics=Mh,t.TextStyle=Ph,t.Texture=Wi,t.TextureGCSystem=kr,t.TextureMatrix=or,t.TextureSystem=Hr,t.TextureUvs=Hi,t.Ticker=$r,t.TickerPlugin=qr,t.TilingSprite=tl,t.TilingSpriteRenderer=il,t.TimeLimiter=class{constructor(t){this.maxMilliseconds=t,this.frameStart=0}beginFrame(){this.frameStart=Date.now()}allowedToUpload(){return Date.now()-this.frameStart0&&-1==t.indexOf("(")&&(t="ncol("+t+")"),"rgb"==t.substr(0,3)||"hsl"==t.substr(0,3)||"hwb"==t.substr(0,3)||"ncol"==t.substr(0,4)||"cmyk"==t.substr(0,4)){if("ncol"==t.substr(0,4)?(4==t.split(",").length&&-1==t.indexOf("ncola")&&(t=t.replace("ncol","ncola")),a="ncol",t=t.substr(4)):"cmyk"==t.substr(0,4)?(a="cmyk",t=t.substr(4)):(a=t.substr(0,3),t=t.substr(3)),n=3,s=!1,"a"==t.substr(0,1).toLowerCase()?(n=4,s=!0,t=t.substr(1)):"cmyk"==a&&(n=4,5==t.split(",").length&&(n=5,s=!0)),c=(t=(t=t.replace("(","")).replace(")","")).split(","),"rgb"==a){if(c.length!=n)return emptyObject();for(i=0;i-1&&(c[i]=c[i].replace("%",""),c[i]=Number(c[i]/100),i<3&&(c[i]=Math.round(255*c[i]))),isNaN(c[i]))return emptyObject();parseInt(c[i])>255&&(c[i]=255),i<3&&(c[i]=parseInt(c[i])),3==i&&Number(c[i])>1&&(c[i]=1)}l={r:c[0],g:c[1],b:c[2]},1==s&&(h=Number(c[3]))}if("hsl"==a||"hwb"==a||"ncol"==a){for(;c.length=360&&(c[0]=0),i=1;i-1){if(c[i]=c[i].replace("%",""),c[i]=Number(c[i]),isNaN(c[i]))return emptyObject();c[i]=c[i]/100}else c[i]=Number(c[i]);Number(c[i])>1&&(c[i]=1),0>Number(c[i])&&(c[i]=0)}"hsl"==a&&(l=hslToRgb(c[0],c[1],c[2]),f=Number(c[0]),u=Number(c[1])),"hwb"==a&&(l=hwbToRgb(c[0],c[1],c[2])),"ncol"==a&&(l=ncolToRgb(c[0],c[1],c[2])),1==s&&(h=Number(c[3]))}if("cmyk"==a){for(;c.length-1){if(c[i]=c[i].replace("%",""),c[i]=Number(c[i]),isNaN(c[i]))return emptyObject();c[i]=c[i]/100}else c[i]=Number(c[i]);Number(c[i])>1&&(c[i]=1),0>Number(c[i])&&(c[i]=0)}l=cmykToRgb(c[0],c[1],c[2],c[3]),1==s&&(h=Number(c[4]))}}else if("ncs"==t.substr(0,3))l=ncsToRgb(t);else{for(i=0,o=!1,b=getColorArr("names");i=6&&(r-=6),r<1?(e-t)*r+t:r<3?e:r<4?(e-t)*(4-r)+t:t}function hwbToRgb(t,e,r){var a,n,i,s=[];for(n=hslToRgb(t,1,.5),s[0]=n.r/255,s[1]=n.g/255,s[2]=n.b/255,(i=e+r)>1&&(e=Number((e/i).toFixed(2)),r=Number((r/i).toFixed(2))),a=0;a<3;a++)s[a]*=1-e-r,s[a]+=e,s[a]=Number(255*s[a]);return{r:s[0],g:s[1],b:s[2]}}function cmykToRgb(t,e,r,a){return{r:255-255*Math.min(1,t*(1-a)+a),g:255-255*Math.min(1,e*(1-a)+a),b:255-255*Math.min(1,r*(1-a)+a)}}function ncolToRgb(t,e,r){var a,n,i;if(i=t,isNaN(t.substr(0,1))){if(a=t.substr(0,1).toUpperCase(),""==(n=t.substr(1))&&(n=0),isNaN(n=Number(n)))return!1;"R"==a&&(i=0+.6*n),"Y"==a&&(i=60+.6*n),"G"==a&&(i=120+.6*n),"C"==a&&(i=180+.6*n),"B"==a&&(i=240+.6*n),"M"==a&&(i=300+.6*n),"W"==a&&(i=0,e=1-n/100,r=n/100)}return hwbToRgb(i,e,r)}function hueToNcol(t){for(;t>=360;)t-=360;return t<60?"R"+t/.6:t<120?"Y"+(t-60)/.6:t<180?"G"+(t-120)/.6:t<240?"C"+(t-180)/.6:t<300?"B"+(t-240)/.6:t<360?"M"+(t-300)/.6:void 0}function ncsToRgb(t){var e,r,a,n,i,s,o,h,f,u,l,c,b,d,g,m,p;return-1==(t=(t=(t=(t=(t=w3trim(t).toUpperCase()).replace("(","")).replace(")","")).replace("NCS","NCS ")).replace(/ /g," ")).indexOf("NCS")&&(t="NCS "+t),null!==(t=t.match(/^(?:NCS|NCS\sS)\s(\d{2})(\d{2})-(N|[A-Z])(\d{2})?([A-Z])?$/))&&(e=parseInt(t[1],10),r=parseInt(t[2],10),("N"==(a=t[3])||"Y"==a||"R"==a||"B"==a||"G"==a)&&(n=parseInt(t[4],10)||0,"N"!==a?(i=1.05*e-5.25,s=r,"Y"===a&&n<=60?o=1:"Y"===a&&n>60||"R"===a&&n<=80?o=(Math.sqrt(14884-Math.pow(h="Y"===a?n-60:n+40,2))-22)/100:"R"===a&&n>80||"B"===a?o=0:"G"===a&&(o=(Math.sqrt(33800-Math.pow(h=n-170,2))-70)/100),"Y"===a&&n<=80?f=0:"Y"===a&&n>80||"R"===a&&n<=60?f=(104-Math.sqrt(11236-Math.pow(h="Y"===a?n-80+20.5:n+20+20.5,2)))/100:"R"===a&&n>60||"B"===a&&n<=80?f=(Math.sqrt(1e4-Math.pow(h="R"===a?n-60-60:n+40-60,2))-10)/100:"B"===a&&n>80||"G"===a&&n<=40?f=(122-Math.sqrt(19881-Math.pow(h="B"===a?n-80-131:n+20-131,2)))/100:"G"===a&&n>40&&(f=0),"Y"===a?green1=(85-.85*n)/100:"R"===a&&n<=60?green1=0:"R"===a&&n>60?green1=(67.5-Math.sqrt(5776-Math.pow(h=n-60+35,2)))/100:"B"===a&&n<=60?green1=(6.5+Math.sqrt(7044.5-Math.pow(h=1*n-68.5,2)))/100:"B"===a&&n>60||"G"===a&&n<=60?green1=.9:"G"===a&&n>60&&(green1=(90-1/8*(h=n-60))/100),u=((h=(o+green1+f)/3)-o)*(100-s)/100+o,c=(h-f)*(100-s)/100+f,b=1/(u>(l=(h-green1)*(100-s)/100+green1)&&u>c?u:l>u&&l>c?l:c>u&&c>l?c:(u+l+c)/3),(g=parseInt(u*b*(100-i)/100*255,10))>255&&(g=255),(m=parseInt(l*b*(100-i)/100*255,10))>255&&(m=255),(p=parseInt(c*b*(100-i)/100*255,10))>255&&(p=255),g<0&&(g=0),m<0&&(m=0),p<0&&(p=0)):((d=parseInt(255*(1-e/100),10))>255&&(d=255),d<0&&(d=0),g=d,m=d,p=d),{r:g,g:m,b:p}))}function rgbToHsl(t,e,r){var a,n,i,s,o,h,f=[];for(i=0,f[0]=t/255,f[1]=e/255,f[2]=r/255,a=f[0],n=f[0],o=0;i=n&&(n=f[i+1],o=i+1);return 0==o&&(h=(f[1]-f[2])/(n-a)),1==o&&(h=2+(f[2]-f[0])/(n-a)),2==o&&(h=4+(f[0]-f[1])/(n-a)),isNaN(h)&&(h=0),(h*=60)<0&&(h+=360),s=(a+n)/2,{h:h,s:a==n?0:s<.5?(n-a)/(n+a):(n-a)/(2-n-a),l:s}}function rgbToHwb(t,e,r){return t/=255,e/=255,r/=255,{h:0==(chroma=(max=Math.max(t,e,r))-(min=Math.min(t,e,r)))?0:t==max?(e-r)/chroma%6*360:e==max?((r-t)/chroma+2)%6*360:((t-e)/chroma+4)%6*360,w:min,b:1-max}}function rgbToCmyk(t,e,r){var a,n,i,s;return t/=255,e/=255,r/=255,1==(s=1-(max=Math.max(t,e,r)))?(a=0,n=0,i=0):(a=(1-t-s)/(1-s),n=(1-e-s)/(1-s),i=(1-r-s)/(1-s)),{c:a,m:n,y:i,k:s}}function toHex(t){for(var e=t.toString(16);e.length<2;)e="0"+e;return e}function cl(t){console.log(t)}function w3trim(t){return t.replace(/^\s+|\s+$/g,"")}function isHex(t){return"0123456789ABCDEFabcdef".indexOf(t)>-1}function w3SetColorsByAttribute(){var t,e,r;for(e=0,t=document.getElementsByTagName("*");e1&&(r-=1),r<1/6?t+6*(e-t)*r:r<.5?e:r<2/3?t+(e-t)*(2/3-r)*6:t}if(t=w(t,360),e=w(e,100),r=w(r,100),0===e)a=n=i=r;else{var o=r<.5?r*(1+e):r+e-r*e,h=2*r-o;a=s(h,o,t+1/3),n=s(h,o,t),i=s(h,o,t-1/3)}return{r:255*a,g:255*n,b:255*i}}(s.h,f,u),l=!0,c="hsl"),s.hasOwnProperty("a")&&(h=s.a)),h=_(h),{ok:l,format:s.format||c,r:Math.min(255,Math.max(o.r,0)),g:Math.min(255,Math.max(o.g,0)),b:Math.min(255,Math.max(o.b,0)),a:h});this._originalInput=n,this._r=G.r,this._g=G.g,this._b=G.b,this._a=G.a,this._roundA=Math.round(100*this._a)/100,this._format=i.format||G.format,this._gradientType=i.gradientType,this._r<1&&(this._r=Math.round(this._r)),this._g<1&&(this._g=Math.round(this._g)),this._b<1&&(this._b=Math.round(this._b)),this._ok=G.ok}function n(t,e,r){t=w(t,255),e=w(e,255),r=w(r,255);var a,n,i=Math.max(t,e,r),s=Math.min(t,e,r),o=(i+s)/2;if(i==s)a=n=0;else{var h=i-s;switch(n=o>.5?h/(2-i-s):h/(i+s),i){case t:a=(e-r)/h+(e>1)+720)%360;--e;)n.h=(n.h+i)%360,s.push(a(n));return s}function M(t,e){e=e||6;for(var r=a(t).toHsv(),n=r.h,i=r.s,s=r.v,o=[],h=1/e;e--;)o.push(a({h:n,s:i,v:s})),s=(s+h)%1;return o}a.prototype={isDark:function(){return 128>this.getBrightness()},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var t,e,r,a=this.toRgb();return t=a.r/255,e=a.g/255,r=a.b/255,.2126*(t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4))+.7152*(e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))+.0722*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))},setAlpha:function(t){return this._a=_(t),this._roundA=Math.round(100*this._a)/100,this},toHsv:function(){var t=i(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=i(this._r,this._g,this._b),e=Math.round(360*t.h),r=Math.round(100*t.s),a=Math.round(100*t.v);return 1==this._a?"hsv("+e+", "+r+"%, "+a+"%)":"hsva("+e+", "+r+"%, "+a+"%, "+this._roundA+")"},toHsl:function(){var t=n(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=n(this._r,this._g,this._b),e=Math.round(360*t.h),r=Math.round(100*t.s),a=Math.round(100*t.l);return 1==this._a?"hsl("+e+", "+r+"%, "+a+"%)":"hsla("+e+", "+r+"%, "+a+"%, "+this._roundA+")"},toHex:function(t){return s(this._r,this._g,this._b,t)},toHexString:function(t){return"#"+this.toHex(t)},toHexNumber:function(){return Number("0x"+this.toHex())},toHex8:function(t){var e,r,a,n,i,s;return e=this._r,r=this._g,a=this._b,n=this._a,i=t,s=[A(Math.round(e).toString(16)),A(Math.round(r).toString(16)),A(Math.round(a).toString(16)),A(R(n))],i&&s[0].charAt(0)==s[0].charAt(1)&&s[1].charAt(0)==s[1].charAt(1)&&s[2].charAt(0)==s[2].charAt(1)&&s[3].charAt(0)==s[3].charAt(1)?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")},toHex8String:function(t){return"#"+this.toHex8(t)},toRgb:function(){return{r:Math.round(this._r),g:Math.round(this._g),b:Math.round(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+")":"rgba("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:Math.round(100*w(this._r,255))+"%",g:Math.round(100*w(this._g,255))+"%",b:Math.round(100*w(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+Math.round(100*w(this._r,255))+"%, "+Math.round(100*w(this._g,255))+"%, "+Math.round(100*w(this._b,255))+"%)":"rgba("+Math.round(100*w(this._r,255))+"%, "+Math.round(100*w(this._g,255))+"%, "+Math.round(100*w(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1||!v[s(this._r,this._g,this._b,!0)])},toFilter:function(t){var e="#"+o(this._r,this._g,this._b,this._a),r=e,n=this._gradientType?"GradientType = 1, ":"";if(t){var i=a(t);r="#"+o(i._r,i._g,i._b,i._a)}return"progid:DXImageTransform.Microsoft.gradient("+n+"startColorstr="+e+",endColorstr="+r+")"},toString:function(t){var e=!!t;t=t||this._format;var r=!1,a=this._a<1&&this._a>=0;return e||!a||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"hex4"!==t&&"hex8"!==t&&"name"!==t?("rgb"===t&&(r=this.toRgbString()),"prgb"===t&&(r=this.toPercentageRgbString()),("hex"===t||"hex6"===t)&&(r=this.toHexString()),"hex3"===t&&(r=this.toHexString(!0)),"hex4"===t&&(r=this.toHex8String(!0)),"hex8"===t&&(r=this.toHex8String()),"name"===t&&(r=this.toName()),"hsl"===t&&(r=this.toHslString()),"hsv"===t&&(r=this.toHsvString()),r||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},clone:function(){return a(this.toString())},_applyModification:function(t,e){var r=t.apply(null,[this].concat([].slice.call(e)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(l,arguments)},brighten:function(){return this._applyModification(c,arguments)},darken:function(){return this._applyModification(b,arguments)},desaturate:function(){return this._applyModification(h,arguments)},saturate:function(){return this._applyModification(f,arguments)},greyscale:function(){return this._applyModification(u,arguments)},spin:function(){return this._applyModification(d,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(y,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(M,arguments)},splitcomplement:function(){return this._applyCombination(p,arguments)},triad:function(){return this._applyCombination(m,[3])},tetrad:function(){return this._applyCombination(m,[4])}},a.fromRatio=function(e,r){if("object"==t(e)){var n={};for(var i in e)e.hasOwnProperty(i)&&(n[i]="a"===i?e[i]:N(e[i]));e=n}return a(e,r)},a.equals=function(t,e){return!!t&&!!e&&a(t).toRgbString()==a(e).toRgbString()},a.random=function(){return a.fromRatio({r:Math.random(),g:Math.random(),b:Math.random()})},a.mix=function(t,e,r){r=0===r?0:r||50;var n=a(t).toRgb(),i=a(e).toRgb(),s=r/100;return a({r:(i.r-n.r)*s+n.r,g:(i.g-n.g)*s+n.g,b:(i.b-n.b)*s+n.b,a:(i.a-n.a)*s+n.a})},a.readability=function(t,e){var r=a(t),n=a(e);return(Math.max(r.getLuminance(),n.getLuminance())+.05)/(Math.min(r.getLuminance(),n.getLuminance())+.05)},a.isReadable=function(t,e,r){var n,i,s,o,h,f=a.readability(t,e);switch(i=!1,(s=r,o=((s=s||{level:"AA",size:"small"}).level||"AA").toUpperCase(),h=(s.size||"small").toLowerCase(),"AA"!==o&&"AAA"!==o&&(o="AA"),"small"!==h&&"large"!==h&&(h="small"),n={level:o,size:h}).level+n.size){case"AAsmall":case"AAAlarge":i=f>=4.5;break;case"AAlarge":i=f>=3;break;case"AAAsmall":i=f>=7}return i},a.mostReadable=function(t,e,r){var n,i,s,o,h=null,f=0;i=(r=r||{}).includeFallbackColors,s=r.level,o=r.size;for(var u=0;uf&&(f=n,h=a(e[u]));return a.isReadable(t,h,{level:s,size:o})||!i?h:(r.includeFallbackColors=!1,a.mostReadable(t,["#fff","#000"],r))};var k=a.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},v=a.hexNames=function(t){var e={};for(var r in t)t.hasOwnProperty(r)&&(e[t[r]]=r);return e}(k);function _(t){return(isNaN(t=parseFloat(t))||t<0||t>1)&&(t=1),t}function w(t,e){"string"==typeof(r=t)&&-1!=r.indexOf(".")&&1===parseFloat(r)&&(t="100%");var r,a,n="string"==typeof(a=t)&&-1!=a.indexOf("%");return t=Math.min(e,Math.max(0,parseFloat(t))),n&&(t=parseInt(t*e,10)/100),1e-6>Math.abs(t-e)?1:t%e/parseFloat(e)}function x(t){return Math.min(1,Math.max(0,t))}function S(t){return parseInt(t,16)}function A(t){return 1==t.length?"0"+t:""+t}function N(t){return t<=1&&(t=100*t+"%"),t}function R(t){return Math.round(255*parseFloat(t)).toString(16)}function C(t){return S(t)/255}var H,G,B,T=(G="[\\s|\\(]+("+(H="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?",B="[\\s|\\(]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?",{CSS_UNIT:RegExp(H),rgb:RegExp("rgb"+G),rgba:RegExp("rgba"+B),hsl:RegExp("hsl"+G),hsla:RegExp("hsla"+B),hsv:RegExp("hsv"+G),hsva:RegExp("hsva"+B),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});function F(t){return!!T.CSS_UNIT.exec(t)}return a})),w3color.prototype={toRgbString:function(){return"rgb("+this.red+", "+this.green+", "+this.blue+")"},toRgbaString:function(){return"rgba("+this.red+", "+this.green+", "+this.blue+", "+this.opacity+")"},toHwbString:function(){return"hwb("+this.hue+", "+Math.round(100*this.whiteness)+"%, "+Math.round(100*this.blackness)+"%)"},toHwbStringDecimal:function(){return"hwb("+this.hue+", "+this.whiteness+", "+this.blackness+")"},toHwbaString:function(){return"hwba("+this.hue+", "+Math.round(100*this.whiteness)+"%, "+Math.round(100*this.blackness)+"%, "+this.opacity+")"},toHslString:function(){return"hsl("+this.hue+", "+Math.round(100*this.sat)+"%, "+Math.round(100*this.lightness)+"%)"},toHslStringDecimal:function(){return"hsl("+this.hue+", "+this.sat+", "+this.lightness+")"},toHslaString:function(){return"hsla("+this.hue+", "+Math.round(100*this.sat)+"%, "+Math.round(100*this.lightness)+"%, "+this.opacity+")"},toCmykString:function(){return"cmyk("+Math.round(100*this.cyan)+"%, "+Math.round(100*this.magenta)+"%, "+Math.round(100*this.yellow)+"%, "+Math.round(100*this.black)+"%)"},toCmykStringDecimal:function(){return"cmyk("+this.cyan+", "+this.magenta+", "+this.yellow+", "+this.black+")"},toNcolString:function(){return this.ncol+", "+Math.round(100*this.whiteness)+"%, "+Math.round(100*this.blackness)+"%"},toNcolStringDecimal:function(){return this.ncol+", "+this.whiteness+", "+this.blackness},toNcolaString:function(){return this.ncol+", "+Math.round(100*this.whiteness)+"%, "+Math.round(100*this.blackness)+"%, "+this.opacity},toName:function(){var t,e,r,a=getColorArr("hexs");for(i=0;i1&&(this.sat=1),r=colorObject(hslToRgb(this.hue,this.sat,this.lightness),this.opacity,this.hue,this.sat),this.attachValues(r)},desaturate:function(t){var e,r;e=t/100||.1,this.sat-=e,this.sat<0&&(this.sat=0),r=colorObject(hslToRgb(this.hue,this.sat,this.lightness),this.opacity,this.hue,this.sat),this.attachValues(r)},lighter:function(t){var e,r;e=t/100||.1,this.lightness+=e,this.lightness>1&&(this.lightness=1),r=colorObject(hslToRgb(this.hue,this.sat,this.lightness),this.opacity,this.hue,this.sat),this.attachValues(r)},darker:function(t){var e,r;e=t/100||.1,this.lightness-=e,this.lightness<0&&(this.lightness=0),r=colorObject(hslToRgb(this.hue,this.sat,this.lightness),this.opacity,this.hue,this.sat),this.attachValues(r)},attachValues:function(t){this.red=t.red,this.green=t.green,this.blue=t.blue,this.hue=t.hue,this.sat=t.sat,this.lightness=t.lightness,this.whiteness=t.whiteness,this.blackness=t.blackness,this.cyan=t.cyan,this.magenta=t.magenta,this.yellow=t.yellow,this.black=t.black,this.ncol=t.ncol,this.opacity=t.opacity,this.valid=t.valid}}
\ No newline at end of file
diff --git a/obsidian/lib/scripts/webpage.js b/obsidian/lib/scripts/webpage.js
new file mode 100644
index 0000000..daf949e
--- /dev/null
+++ b/obsidian/lib/scripts/webpage.js
@@ -0,0 +1 @@
+let absoluteBasePath,relativeBasePath,relativePathname,webpageContainer,documentContainer,viewContent,leftSidebar,rightSidebar,sidebarCollapseIcons,sidebarGutters,sidebars,sidebarDefaultWidth,sidebarTargetWidth,contentTargetWidth,themeToggle,searchInput,fileTree,outlineTree,fileTreeItems,outlineTreeItems,canvasWrapper,canvas,canvasNodes,canvasBackground,canvasBackgroundPattern,focusedCanvasNode,loadingIcon,documentType,embedType,customType,deviceSize,lastScreenWidth,loadedURL=new URL(window.location.href),isOffline=!1,collapseIconUp=["m7 15 5 5 5-5","m7 9 5-5 5 5"],collapseIconDown=["m7 20 5-5 5 5","m7 4 5 5 5-5"],isTouchDevice=isTouchCapable(),fullyInitialized=!1;async function initGlobalObjects(){"file:"!=window.location.protocol&&await loadIncludes(),loadingIcon=document.createElement("div"),loadingIcon.classList.add("loading-icon"),document.body.appendChild(loadingIcon),loadingIcon.innerHTML="",webpageContainer=document.querySelector(".webpage-container"),documentContainer=document.querySelector(".document-container"),leftSidebar=document.querySelector(".sidebar-left"),rightSidebar=document.querySelector(".sidebar-right"),fileTree=document.querySelector(".file-tree"),outlineTree=document.querySelector(".outline-tree"),fileTreeItems=Array.from(document.querySelectorAll(".tree-container.file-tree .tree-item")),sidebars=[],sidebarGutters=[],sidebarCollapseIcons=[],leftSidebar&&rightSidebar&&(sidebarCollapseIcons=Array.from(document.querySelectorAll(".sidebar-collapse-icon")),sidebarGutters=[sidebarCollapseIcons[0].parentElement,sidebarCollapseIcons[1].parentElement],sidebars=[sidebarGutters[0].parentElement,sidebarGutters[1].parentElement]),themeToggle=document.querySelector(".theme-toggle-input")}async function initializePage(){focusedCanvasNode=null,canvasWrapper=document.querySelector(".canvas-wrapper")??canvasWrapper,canvas=document.querySelector(".canvas")??canvas;let e=document.querySelectorAll(".canvas-node");canvasNodes=e.length>0?e:canvasNodes,canvasBackground=document.querySelector(".canvas-background")??canvasBackground,canvasBackgroundPattern=document.querySelector(".canvas-background pattern")??canvasBackgroundPattern,viewContent=document.querySelector(".document-container > .view-content")??document.querySelector(".document-container > .markdown-preview-view")??viewContent,outlineTreeItems=Array.from(document.querySelectorAll(".tree-container.outline-tree .tree-item")),fullyInitialized||("file:"==window.location.protocol&&initializeForFileProtocol(),await initGlobalObjects(),initializeDocumentTypes(document),setupSidebars(),setupThemeToggle(),await setupSearch(),setupRootPath(document),sidebarDefaultWidth=await getComputedPixelValue("--sidebar-width"),contentTargetWidth=.9*await getComputedPixelValue("--line-width"),window.addEventListener("resize",(()=>onResize())),onResize()),setTimeout((()=>documentContainer.classList.remove("hide"))),!rightSidebar||"video"!=embedType&&"embed"!=embedType&&"excalidraw"!=customType&&"kanban"!=customType&&"canvas"!=documentType?rightSidebar&&rightSidebar.temporarilyCollapsed&&rightSidebar.collapsed&&(rightSidebar.collapse(!1),rightSidebar.temporarilyCollapsed=!1):rightSidebar.collapsed||rightSidebar.temporaryCollapse(),parseURLParams(),relativePathname=getVaultRelativePath(loadedURL.href)}function initializePageEvents(e){e&&(setupHeaders(e),setupTrees(e),setupLists(e),setupCallouts(e),setupCheckboxes(e),setupCanvas(e),setupCodeblocks(e),setupLinks(e),setupScroll(e))}function initializeDocumentTypes(e){e.querySelector(".document-container > .markdown-preview-view")?documentType="markdown":e.querySelector(".canvas-wrapper")?documentType="canvas":(documentType="custom",e.querySelector(".kanban-plugin")?customType="kanban":e.querySelector(".excalidraw-plugin")&&(customType="excalidraw"))}function initializeForFileProtocol(){let e=document.querySelector(".graph-view-placeholder");e&&(console.log("Running locally, skipping graph view initialization and hiding graph."),e.style.display="none",e.previousElementSibling.style.display="none")}function onEndResize(){document.body.classList.toggle("resizing",!1)}function onStartResize(){document.body.classList.toggle("resizing",!0)}window.onload=async function(){await initializePage(),initializePageEvents(document),setActiveDocument(loadedURL,!0,!1,!1),fullyInitialized=!0},window.onpopstate=function(e){if(e.preventDefault(),e.stopPropagation(),document.body.classList.contains("floating-sidebars")&&(!leftSidebar.collapsed||!rightSidebar.collapsed))return leftSidebar.collapse(!0),void rightSidebar.collapse(!0);loadDocument(getURLPath(),!1,!0),console.log("Popped state: "+getURLPath())};let checkStillResizingTimeout,isResizing=!1;function onResize(e=!1){function t(e,t){let o=window.innerWidth;return o>e&&oe&&o=t)}function o(e){let t=window.innerWidth;return t>e&&null==lastScreenWidth||t>e&&lastScreenWidthe}isResizing||(onStartResize(),isResizing=!0),o(contentTargetWidth+2*sidebarDefaultWidth)||o(1025)?(deviceSize="large-screen",document.body.classList.toggle("floating-sidebars",!1),document.body.classList.toggle("is-large-screen",!0),document.body.classList.toggle("is-small-screen",!1),document.body.classList.toggle("is-tablet",!1),document.body.classList.toggle("is-phone",!1),sidebars.forEach((function(e){e.collapse(!1)})),sidebarGutters.forEach((function(e){e.collapse(!1)}))):t(1*(contentTargetWidth+sidebarDefaultWidth),contentTargetWidth+2*sidebarDefaultWidth)||t(769,1024)?(deviceSize="small screen",document.body.classList.toggle("floating-sidebars",!1),document.body.classList.toggle("is-large-screen",!1),document.body.classList.toggle("is-small-screen",!0),document.body.classList.toggle("is-tablet",!1),document.body.classList.toggle("is-phone",!1),sidebarGutters.forEach((function(e){e.collapse(!1)})),leftSidebar&&rightSidebar&&!leftSidebar.collapsed&&rightSidebar.collapse(!0)):t(2*sidebarDefaultWidth,1*(contentTargetWidth+sidebarDefaultWidth))||t(481,768)?(deviceSize="tablet",document.body.classList.toggle("floating-sidebars",!0),document.body.classList.toggle("is-large-screen",!1),document.body.classList.toggle("is-small-screen",!1),document.body.classList.toggle("is-tablet",!0),document.body.classList.toggle("is-phone",!1),sidebarGutters.forEach((function(e){e.collapse(!1)})),leftSidebar&&rightSidebar&&!leftSidebar.collapsed&&rightSidebar.collapse(!0),leftSidebar&&!fullyInitialized&&leftSidebar.collapse(!0)):(n(2*sidebarDefaultWidth)||n(480))&&(deviceSize="phone",document.body.classList.toggle("floating-sidebars",!0),document.body.classList.toggle("is-large-screen",!1),document.body.classList.toggle("is-small-screen",!1),document.body.classList.toggle("is-tablet",!1),document.body.classList.toggle("is-phone",!0),sidebars.forEach((function(e){e.collapse(!0)})),sidebarGutters.forEach((function(e){e.collapse(!1)}))),lastScreenWidth=window.innerWidth,null!=checkStillResizingTimeout&&clearTimeout(checkStillResizingTimeout);let i=window.innerWidth;checkStillResizingTimeout=setTimeout((function(){window.innerWidth==i&&(checkStillResizingTimeout=void 0,isResizing=!1,onEndResize())}),200)}function clamp(e,t,o){return Math.min(Math.max(e,t),o)}async function delay(e){return new Promise((t=>setTimeout(t,e)))}async function waitUntil(e,t=100,o=2e3){return new Promise((n=>{let i=0,a=setTimeout((()=>{clearInterval(i),n()}),o);i=setInterval((()=>{e()&&(clearInterval(i),clearTimeout(a),n())}),t)}))}function getElBounds(e){let t=e.getBoundingClientRect(),o=t.x,n=t.y,i=t.width,a=t.height;return{x:o,y:n,width:i,height:a,minX:o,minY:n,maxX:o+i,maxY:n+a,centerX:t.x+t.width/2,centerY:t.y+t.height/2}}async function getComputedPixelValue(e){const t=document.createElement("div");document.body.appendChild(t),t.style.position="absolute",t.style.width=`var(${e})`,await new Promise((e=>setTimeout(e,10)));const o=window.getComputedStyle(t).width;return t.remove(),parseFloat(o)}function getPointerPosition(e){let t=e.touches?Array.from(e.touches):[];return{x:t.length>0?t.reduce(((e,t)=>e+t.clientX),0)/e.touches.length:e.clientX,y:t.length>0?t.reduce(((e,t)=>e+t.clientY),0)/e.touches.length:e.clientY}}function getTouchPosition(e){return{x:e.clientX,y:e.clientY}}function getAllChildrenRecursive(e){let t=[];for(let o=0;o0||navigator.msMaxTouchPoints>0}function downloadBlob(e,t="file.txt"){if(window.navigator&&window.navigator.msSaveOrOpenBlob)return window.navigator.msSaveOrOpenBlob(e);const o=window.URL.createObjectURL(e),n=document.createElement("a");n.href=o,n.download=t,n.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0,view:window})),setTimeout((()=>{window.URL.revokeObjectURL(o),n.remove()}),100)}function extentionToTag(e){return["png","jpg","jpeg","svg","gif","bmp","ico"].includes(e)?"img":["mp4","mov","avi","webm","mpeg"].includes(e)?"video":["mp3","wav","ogg","aac"].includes(e)?"audio":["pdf"].includes(e)?"embed":void 0}let slideUp=(e,t=500)=>{e.style.transitionProperty="height, margin, padding",e.style.transitionDuration=t+"ms",e.style.boxSizing="border-box",e.style.height=e.offsetHeight+"px",e.offsetHeight,e.style.overflow="hidden",e.style.height=0,e.style.paddingTop=0,e.style.paddingBottom=0,e.style.marginTop=0,e.style.marginBottom=0,window.setTimeout((async()=>{e.style.display="none",e.style.removeProperty("height"),e.style.removeProperty("padding-top"),e.style.removeProperty("padding-bottom"),e.style.removeProperty("margin-top"),e.style.removeProperty("margin-bottom"),e.style.removeProperty("overflow"),e.style.removeProperty("transition-duration"),e.style.removeProperty("transition-property")}),t)},slideUpAll=(e,t=500)=>{e.forEach((async e=>{e&&(e.style.transitionProperty="height, margin, padding",e.style.transitionDuration=t+"ms",e.style.boxSizing="border-box",e.style.height=e.offsetHeight+"px",e.offsetHeight,e.style.overflow="hidden",e.style.height=0,e.style.paddingTop=0,e.style.paddingBottom=0,e.style.marginTop=0,e.style.marginBottom=0)})),window.setTimeout((async()=>{e.forEach((async e=>{e&&(e.style.display="none",e.style.removeProperty("height"),e.style.removeProperty("padding-top"),e.style.removeProperty("padding-bottom"),e.style.removeProperty("margin-top"),e.style.removeProperty("margin-bottom"),e.style.removeProperty("overflow"),e.style.removeProperty("transition-duration"),e.style.removeProperty("transition-property"))}))}),t)},slideDown=(e,t=500)=>{e.style.removeProperty("display");let o=window.getComputedStyle(e).display;"none"===o&&(o="block"),e.style.display=o;let n=e.offsetHeight;e.style.overflow="hidden",e.style.height=0,e.style.paddingTop=0,e.style.paddingBottom=0,e.style.marginTop=0,e.style.marginBottom=0,e.offsetHeight,e.style.boxSizing="border-box",e.style.transitionProperty="height, margin, padding",e.style.transitionDuration=t+"ms",e.style.height=n+"px",e.style.removeProperty("padding-top"),e.style.removeProperty("padding-bottom"),e.style.removeProperty("margin-top"),e.style.removeProperty("margin-bottom"),window.setTimeout((async()=>{e.style.removeProperty("height"),e.style.removeProperty("overflow"),e.style.removeProperty("transition-duration"),e.style.removeProperty("transition-property")}),t)},slideDownAll=(e,t=500)=>{e.forEach((async e=>{if(!e)return;e.style.removeProperty("display");let o=window.getComputedStyle(e).display;"none"===o&&(o="block"),e.style.display=o;let n=e.offsetHeight;e.style.overflow="hidden",e.style.height=0,e.style.paddingTop=0,e.style.paddingBottom=0,e.style.marginTop=0,e.style.marginBottom=0,e.offsetHeight,e.style.boxSizing="border-box",e.style.transitionProperty="height, margin, padding",e.style.transitionDuration=t+"ms",e.style.height=n+"px",e.style.removeProperty("padding-top"),e.style.removeProperty("padding-bottom"),e.style.removeProperty("margin-top"),e.style.removeProperty("margin-bottom")})),window.setTimeout((async()=>{e.forEach((async e=>{e&&(e.style.removeProperty("height"),e.style.removeProperty("overflow"),e.style.removeProperty("transition-duration"),e.style.removeProperty("transition-property"))}))}),t)};var slideToggle=(e,t=500)=>"none"===window.getComputedStyle(e).display?slideDown(e,t):slideUp(e,t),slideToggleAll=(e,t=500)=>"none"===window.getComputedStyle(e[0]).display?slideDownAll(e,t):slideUpAll(e,t);function getURLExtention(e){return e.split(".").pop().split("?")[0].split("#")[0].toLowerCase().trim()}let transferDocument=document.implementation.createHTMLDocument(),loading=!1;async function loadDocument(e,t,o){if(e=decodeURI(e),loading)return void console.log("Already loading document.");loading=!0;let n=new URL(e,absoluteBasePath);if(relativePathname=getVaultRelativePath(n.href),console.log("Loading document: ",n.pathname),n.pathname==loadedURL?.pathname)return console.log("Document already loaded."),loadedURL=n,setActiveDocument(loadedURL,!1,!1),await initializePage(),void(loading=!1);loadedURL=n;let i,a=loadedURL.pathname;await showLoading(!0);try{i=await fetch(a)}catch(e){return window.location.assign(a),void(loading=!1)}if(i.ok){setActiveDocument(loadedURL,o,t);let n=getURLExtention(e);if("/"==n&&(n="html"),documentType="none",embedType="none",customType="none","html"==n){let e=(await i.text()).replaceAll("","").replaceAll("","").replaceAll("","");transferDocument.write(e),setupRootPath(transferDocument),initializeDocumentTypes(transferDocument);let t=transferDocument.querySelector(".document-container");documentContainer.innerHTML=t.innerHTML;let o=transferDocument.querySelector(".outline-tree");outlineTree&&o&&(outlineTree.innerHTML=o.innerHTML),document.title=transferDocument.title,transferDocument.close()}else if(documentType="embed",embedType=extentionToTag(n),null!=embedType){let t=document.createElement(embedType);t.controls=!0,t.src=e,t.style.maxWidth="100%","embed"==embedType&&(t.style.width="100%",t.style.height="100%"),t.style.objectFit="contain",viewContent.innerHTML="",viewContent.setAttribute("class","view-content embed"),viewContent.appendChild(t),document.querySelector(".outline-tree")&&(document.querySelector(".outline-tree").innerHTML=""),document.title=e.split("/").pop()}else{downloadBlob(await i.blob(),e.split("/").pop())}await initializePage(),initializePageEvents(documentContainer),initializePageEvents(outlineTree)}else pageNotFound(viewContent);await showLoading(!1),loading=!1}function setActiveDocument(e,t,o,n=!0){let i=getVaultRelativePath(e.href),a=decodeURI(i).split("#")[0].split("?")[0].replace('"','\\"').replace("'","\\'");"/"!=a&&""!=a||(a="index.html");let l=document.querySelector(".file-tree .tree-item.mod-active"),s=document.querySelector(`.file-tree .tree-item:has(>.tree-link[href^="${a}"])`);if(s&&!s.isEqualNode(l)&&(l?.classList.remove("mod-active"),s.classList.add("mod-active"),t&&scrollIntoView(s,{block:"center",inline:"nearest"},n)),"undefined"!=typeof graphData&&window.graphRenderer){let e=graphData?.paths.findIndex((function(e){return e.endsWith(a)}))??-1;e>=0&&(window.graphRenderer.activeNode=e)}console.log("Active document: "+o),o&&"file:"!=window.location.protocol&&(window.history.pushState({path:i},"",i),console.log("Pushed state: "+i))}function parseURLParams(){const e=loadedURL.searchParams.get("mark"),t=loadedURL.searchParams.get("query"),o=decodeURI(loadedURL.hash);if(e&&searchCurrentDocument(e),t&&search(t),o){const e=document.getElementById(o.substring(1));e?scrollIntoView(e,{behavior:"smooth",block:"start"}):console.log("Heading not found: "+o)}}async function showLoading(e){if(documentContainer.style.transitionDuration="",loadingIcon.classList.toggle("show",e),documentContainer.classList.toggle("hide",e),e){let e=getViewBounds();loadingIcon.style.left=e.centerX-loadingIcon.offsetWidth/2+"px",loadingIcon.style.top=e.centerY-loadingIcon.offsetHeight/2+"px","phone"==deviceSize&&leftSidebar.collapse(!0)}await delay(200)}function pageNotFound(e){e.innerHTML="\n\t\n\t\t
\n\t\t\tPage Not Found
\n\t\t\n\t
\n\t",document.querySelector(".outline-tree")&&(document.querySelector(".outline-tree").innerHTML=""),console.log("Page not found: "+absoluteBasePath+loadedURL.pathname);let t=getURLRootPath(absoluteBasePath+loadedURL.pathname);relativeBasePath=t,document.querySelector("base").href=t,document.title="Page Not Found"}function setupRootPath(e){let t=e.getElementById("root-path");if(!t)return;let o=t.getAttribute("root-path"),n=document.createElement("base");n.href=o,console.log("Setting root path: "+o),document.querySelector("base").replaceWith(n),document.querySelector("#root-path").setAttribute("root-path",o),relativeBasePath=o,absoluteBasePath=new URL(o,window.location.href).href}function getURLPath(e=window.location.pathname){return null==absoluteBasePath&&setupRootPath(document),e.replace(absoluteBasePath,"")}function getURLRootPath(e=window.location.pathname){let t=getURLPath(e).split("/"),o="";for(let e=0;ee+t.offsetHeight),0);e.markdownPreviewSizer.style.minHeight=t+"px"}}if(i.style.height=a+"px",t||"canvas"!=documentType||e.show(!0),e.collapsed=t,n)return i.style.transitionDuration="0s",e.classList.toggle("is-collapsed",t),i.style.height="",i.style.transitionDuration="",void l();let s=getComputedStyle(i).transitionDuration;s=s.endsWith("s")?parseFloat(s):s.endsWith("ms")?parseFloat(s)/1e3:0;let r=Math.min(s*Math.sqrt(a)/16,.5);i.style.transitionDuration=`${r}s`,i.style.height=t?"0px":a+"px",e.classList.toggle("is-animating",!0),e.classList.toggle("is-collapsed",t),e.markdownPreviewSizer.closest(".markdown-embed")&&l(t?0:void 0),setTimeout((function(){i.style.transitionDuration="",t||(i.style.height=""),e.classList.toggle("is-animating",!1),l()}),1e3*r)}function toggleTreeHeaderOpen(e,t=!0){e.collapse(!e.collapsed,t)}function hideHeader(e){if(e.forceShown)return;if(e.classList.contains("is-hidden")||e.classList.contains("is-collapsed"))return;if("none"==getComputedStyle(e).display)return;let t=e.offsetHeight;e.classList.toggle("is-hidden",!0),0!=t&&(e.style.height=t+"px"),e.style.visibility="hidden"}function showHeader(e,t=!0,o=!1,n=!1){if(n&&(e.forceShown=!0),t){let t=e.parentHeader;isHeadingWrapper(t)&&t.show(!0,!1,n)}if(o){e.querySelectorAll(".heading-wrapper").forEach((function(e){e.show(!1,!0,n)}))}e.classList.contains("is-hidden")&&!e.classList.contains("is-collapsed")&&(e.classList.toggle("is-hidden",!1),e.style.height="",e.style.visibility="")}function setupTrees(e){e.querySelectorAll(".collapse-tree-button").forEach((function(e){e.treeRoot=e.closest(".tree-container"),e.icon=e.firstChild,e.icon.innerHTML="",e.setIcon=function(t){e.icon.children[0].setAttribute("d",t?collapseIconUp[0]:collapseIconDown[0]),e.icon.children[1].setAttribute("d",t?collapseIconUp[1]:collapseIconDown[1])},e.collapse=function(t){setTreeCollapsedAll(e.treeRoot.classList.contains("file-tree")?fileTreeItems:outlineTreeItems,t),e.setIcon(t),e.collapsed=t},e.toggleCollapse=function(){e.collapse(!e.collapsed)},e.toggleState=function(t){void 0===t&&(t=!e.collapsed),e.collapsed=t,e.setIcon(t)},e.addEventListener("click",(function(t){return t.preventDefault(),t.stopPropagation(),e.toggleCollapse(),!1})),(e.treeRoot.classList.contains("file-tree")?fileTreeItems:outlineTreeItems).some((e=>!e.classList.contains("is-collapsed")&&e.classList.contains("mod-collapsible")))&&e.toggleState(!1)}));let t=Array.from(e.querySelectorAll(".tree-container.file-tree .tree-item:has(.collapse-icon) > .tree-link")),o=Array.from(e.querySelectorAll(".tree-container.outline-tree .tree-item:has(.collapse-icon) > .tree-link .collapse-icon")),n=Array.from(t).concat(Array.from(o));for(let e of n){let t=e?.closest(".tree-item");t&&e&&e?.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation(),toggleTreeCollapsed(t)}))}}async function setTreeCollapsed(e,t,o=!0,n=!0){if(e.classList.contains("mod-collapsible")||(e=e.closest(".mod-collapsible")),!e||!e.classList.contains("mod-collapsible"))return;if(e.classList.contains("is-collapsed")==t)return;if(n){let t=e.parentElement.closest(".mod-collapsible");t&&await setTreeCollapsed(t,!1,o,n)}let i=e.querySelector(".tree-item-children");if(t)e.classList.add("is-collapsed"),o?slideUp(i,100):i.style.display="none";else{e.classList.remove("is-collapsed"),o?slideDown(i,100):i.style.display="";let t=e.closest(".tree-container");if(t){let e=t.querySelector(".collapse-tree-button");e&&e.toggleState(!1)}}}async function setTreeCollapsedAll(e,t,o=!0){let n=[];e.forEach((async e=>{if(!e||!e.classList.contains("mod-collapsible"))return;let o=e.querySelector(".tree-item-children");t?e.classList.add("is-collapsed"):e.classList.remove("is-collapsed"),n.push(o)})),t?o?slideUpAll(n,100):n.forEach((async e=>{e&&(e.style.display="none")})):o?slideDownAll(n,100):n.forEach((async e=>{e&&(e.style.display="")}))}function toggleTreeCollapsed(e){(e=e.closest(".tree-item"))&&setTreeCollapsed(e,!e.classList.contains("is-collapsed"))}function toggleTreeCollapsedAll(e){e&&setTreeCollapsedAll(e,!e[0].classList.contains("is-collapsed"))}function getFileTreeItemFromPath(e){return document.querySelector(`.file-tree .tree-item:has(> .tree-link[href^="${e}"])`)}async function filterFileTree(e,t,o,n=!0){n&&await setTreeCollapsedAll(fileTreeItems,!1,!1);let i=Array.from(document.querySelectorAll(".file-tree .tree-item:not(.filtered-out)"));for await(let l of i)l.classList.add("filtered-out");await removeTreeHintLabels();for(let s=0;s0){let p=d.querySelector(".tree-link").appendChild(document.createElement("div"));function a(e,t){if(""==(e=e.trim()))return;let o=document.createElement("a");o.classList.add("tree-hint-label"),o.classList.add("internal-link"),o.textContent=e,o.href=decodeURI(t).replaceAll(" ","_"),p.appendChild(o)}p.classList.add("tree-hint-container");for(let h of c)a(h,r+"#"+h);setupLinks(p)}}}}async function clearFileTreeFilter(e=!0){await removeTreeHintLabels();let t=document.querySelectorAll(".file-tree .filtered-out");for await(let e of t)e.classList.remove("filtered-out");let o=document.querySelectorAll(".file-tree .tree-link[href*='?mark=']");for await(let e of o){let t=e.href.split("?")[0];t=getVaultRelativePath(t),e.href=t}e&&await setTreeCollapsedAll(fileTreeItems,!0,!1)}async function removeTreeHintLabels(){let e=document.querySelectorAll(".tree-hint-container");for await(let t of e)t.remove()}function sortFileTreeDocuments(e){let t=Array.from(document.querySelectorAll(".file-tree .tree-item.mod-tree-file:not(.filtered-out)"));t.sort(e);for(let e=1;e=0;i--){let e=o[i];if(t.parentElement==e.parentElement){e.after(t),n=!0;break}}n||t.parentElement.prepend(t)}}function sortFileTree(e){let t=Array.from(document.querySelectorAll(".file-tree .tree-item.mod-tree-file:not(.filtered-out)"));t.sort(e);for(let e=1;e=0;i--){let e=o[i];if(t.parentElement==e.parentElement){e.after(t),n=!0;break}}n||t.parentElement.prepend(t)}}function sortFileTreeAlphabetically(e=!1){sortFileTree((function(t,o){const n=t.querySelector(".tree-item-title"),i=o.querySelector(".tree-item-title");if(!n||!i)return 0;const a=n.textContent.toLowerCase(),l=i.textContent.toLowerCase();return a.localeCompare(l,void 0,{numeric:!0})*(e?-1:1)}))}function setupLists(e){let t=Array.from(e.querySelectorAll(".list-collapse-indicator"));for(let e=0;e1)&&(1==e.button||0==e.button||t.length>0)){let n=getPointerPosition(e),i=!1,a=0,l=t.length,s=function(t){let s=t.touches??[],r=getPointerPosition(t);l!=s.length&&(n=r,l=s.length);let c=r.x-n.x,d=r.y-n.y;if((1==e.button||1==s.length)&&focusedCanvasNode){let e=Math.abs(c)>Math.abs(1.5*d),t=Math.abs(d)>Math.abs(1.5*c),n=focusedCanvasNode.querySelector(".markdown-preview-sizer");if(n){let i=n.scrollHeight>n.parentElement.clientHeight+1,a=n.scrollWidth>n.parentElement.clientWidth+1;o=!(!(e&&a||t&&i)||!(window?.navigator?.platform?.startsWith("Win")??1))}}if(0==e.button&&focusedCanvasNode&&""!=focusedCanvasNode.querySelector(".canvas-node-content").textContent.trim()&&(o=!0),o||(translateCanvas(c,d),n=r),2==s.length){let e=getPointerPosition(t,!1),o=getTouchPosition(t.touches[0]),n=getTouchPosition(t.touches[1]),l=Math.sqrt(Math.pow(o.x-n.x,2)+Math.pow(o.y-n.y,2));i||(i=!0,a=l),scaleCanvasAroundPoint(1+(l-a)/a,e.x,e.y),a=l}},r=function(e){document.body.removeEventListener("mousemove",s),document.body.removeEventListener("mouseup",r),document.body.removeEventListener("mouseenter",c),document.body.removeEventListener("touchmove",s),document.body.removeEventListener("touchend",r),document.body.removeEventListener("touchcancel",r),o=!1},c=function(e){1!=e.buttons&&4!=e.buttons&&r(e)};document.body.addEventListener("mousemove",s),document.body.addEventListener("mouseup",r),document.body.addEventListener("mouseenter",c),document.body.addEventListener("touchmove",s),document.body.addEventListener("touchend",r),document.body.addEventListener("touchcancel",r)}}let i=0,a=0;canvasWrapper.addEventListener("mousemove",(function(e){let t=getPointerPosition(e);i=t.x,a=t.y}));let l=1,s=0,r=!1;canvasWrapper.addEventListener("wheel",(function(e){if(focusedCanvasNode){let e=focusedCanvasNode.querySelector(".markdown-preview-sizer");if(e&&e.scrollHeight>e.parentElement.clientHeight)return}if(e.preventDefault(),e.stopPropagation(),r){let t=1;t-=e.deltaY/700*t,t=clamp(t,.1,10);let o=getViewBounds();scaleCanvasAroundPoint(t,o.centerX,o.centerY)}else{let t=0==s;s-=e.deltaY/200;const o=.14*l;s=clamp(s,-o,o),t&&requestAnimationFrame(m)}}));let c=0,d=0,u=0;function m(e){if(c=e-d,0==d&&(c=30),d=e,u=.05*c+.95*u,u>50)return console.log("Scrolling too slow, turning on instant scroll"),void(r=!0);let t=l;l+=s*(c/1e3)*30,l=clamp(l,.1,10);getViewBounds();scaleCanvasAroundPoint(l/t,i,a),s*=.4,Math.abs(s)<.01?(s=0,d=0):requestAnimationFrame(m)}setTimeout(fitViewToCanvas,300)}function getViewBounds(){let e=viewContent.getBoundingClientRect(),t=e.x,o=e.y,n=e.x+e.width,i=e.y+e.height;return{x:t,y:o,width:n-t,height:i-o,minX:t,minY:o,maxX:n,maxY:i,centerX:e.x+e.width/2,centerY:e.y+e.height/2}}function getNodesBounds(){let e=1/0,t=1/0,o=-1/0,n=-1/0;canvasNodes.forEach((function(i){let a=i.getBoundingClientRect();a.xo&&(o=a.x+a.width),a.y+a.height>n&&(n=a.y+a.height)}));let i=o-e,a=n-t;return{x:e,y:t,width:i,height:a,minX:e,minY:t,maxX:o,maxY:n,centerX:e+i/2,centerY:t+a/2}}function getCanvasBounds(){let e=canvas.getBoundingClientRect(),t=e.x,o=e.y,n=e.width,i=e.height;return{x:t,y:o,width:n,height:i,minX:t,minY:o,maxX:t+n,maxY:o+i,centerX:e.x+e.width/2,centerY:e.y+e.height/2}}function scaleCanvasAroundPoint(e,t,o){let n=getCanvasBounds(),i=t-n.x,a=o-n.y,l=t-(n.x+i*e),s=o-(n.y+a*e);return scaleCanvas(e),translateCanvas(l,s),{x:l,y:s}}function scaleCanvas(e){let t=Math.max(e*canvas.style.scale,.001);canvas.style.scale=t,canvasWrapper.style.setProperty("--zoom-multiplier",1/Math.sqrt(t))}function translateCanvas(e,t){let o=canvas.style.translate,n=o.split(" "),i=n.length>0?parseFloat(o.split(" ")[0].trim()):0,a=n.length>1?parseFloat(o.split(" ")[1].trim()):i;canvas.style.translate=`${i+e}px ${a+t}px`}function setViewCenter(e,t){let o=getViewBounds();translateCanvas(o.centerX-e,o.centerY-t)}function getCanvasTranslation(){let e=canvas.style.translate,t=e.split(" "),o=t.length>0?parseFloat(e.split(" ")[0].trim()):0;return{x:o,y:t.length>1?parseFloat(e.split(" ")[1].trim()):o}}function scaleCanvasBackground(e){let t=e*canvasBackgroundPattern.getAttribute("width"),o=e*canvasBackgroundPattern.getAttribute("height");canvasBackgroundPattern.setAttribute("width",t),canvasBackgroundPattern.setAttribute("height",o)}function translateCanvasBackground(e,t){canvasBackgroundPattern.setAttribute("x",e+canvasBackgroundPattern.getAttribute("x")),canvasBackgroundPattern.setAttribute("y",t+canvasBackgroundPattern.getAttribute("y"))}function fitViewToNode(e){let t=getElBounds(e),o=getViewBounds(),n=getCanvasBounds(),i=.8*Math.min(o.width/t.width,o.height/t.height),a=n.x,l=n.y,s=a+(t.centerX-a)*i,r=l+(t.centerY-l)*i,c=o.centerX-s,d=o.centerY-r;t=getElBounds(e),canvas.style.transition="scale 0.5s cubic-bezier(0.5, -0.1, 0.5, 1.1), translate 0.5s cubic-bezier(0.5, -0.1, 0.5, 1.1)",scaleCanvas(i),translateCanvas(c,d),setTimeout((function(){canvas.style.transition=""}),550)}function fitViewToCanvas(){let e=getNodesBounds(),t=getViewBounds(),o=getCanvasBounds(),n=.8*Math.min(t.width/e.width,t.height/e.height),i=o.x,a=o.y,l=i+(e.centerX-i)*n,s=a+(e.centerY-a)*n,r=t.centerX-l,c=t.centerY-s;canvas.style.transition="scale 0.5s cubic-bezier(0.5, -0.1, 0.5, 1.1), translate 0.5s cubic-bezier(0.5, -0.1, 0.5, 1.1)",scaleCanvas(n),translateCanvas(r,c),setTimeout((function(){canvas.style.transition=""}),550)}function setupCallouts(e){e.querySelectorAll(".callout.is-collapsible .callout-title").forEach((function(e){e.addEventListener("click",(function(){var t=this.parentElement;t.classList.toggle("is-collapsed"),e.querySelector(".callout-fold").classList.toggle("is-collapsed"),slideToggle(t.querySelector(".callout-content"),100)}))}))}function setupCheckboxes(e){e.querySelectorAll(".task-list-item-checkbox").forEach((function(e){e.addEventListener("click",(function(){var e=this.parentElement;e.classList.toggle("is-checked"),e.setAttribute("data-task",e.classList.contains("is-checked")?"x":" ")}))})),e.querySelectorAll('.plugin-tasks-list-item input[type="checkbox"]').forEach((function(e){e.checked=e.parentElement.classList.contains("is-checked")})),e.querySelectorAll(".kanban-plugin__item.is-complete").forEach((function(e){e.querySelector('input[type="checkbox"]').checked=!0}))}function setupCodeblocks(e){e.querySelectorAll(".copy-code-button").forEach((function(t){t.addEventListener("click",(function(){var t=this.parentElement.querySelector("code").textContent;navigator.clipboard.writeText(t),this.textContent="Copied!",setTimeout((function(){e.querySelectorAll(".copy-code-button").forEach((function(e){e.textContent="Copy"}))}),2e3)}))}))}function setupLinks(e){e.querySelectorAll(".internal-link, a.tag, .tree-link, .footnote-link").forEach((function(e){e.addEventListener("click",(function(t){let o=e.getAttribute("href");if(t.preventDefault(),t.stopPropagation(),!o)return void console.log("No target found for link");let n=relativePathname.split("#")[0].split("?")[0];(o.startsWith("#")||o.startsWith("?"))&&(o=n+o),loadDocument(o,!0,!e.classList.contains("tree-link"))}))}))}function setupSidebars(){rightSidebar&&leftSidebar&&(sidebarCollapseIcons[0].otherIcon=sidebarCollapseIcons[1],sidebarCollapseIcons[1].otherIcon=sidebarCollapseIcons[0],sidebarCollapseIcons[0].gutter=sidebarGutters[0],sidebarCollapseIcons[1].gutter=sidebarGutters[1],sidebarCollapseIcons[0].sidebar=sidebars[0],sidebarCollapseIcons[1].sidebar=sidebars[1],sidebarGutters[0].otherGutter=sidebarGutters[1],sidebarGutters[1].otherGutter=sidebarGutters[0],sidebarGutters[0].collapseIcon=sidebarCollapseIcons[0],sidebarGutters[1].collapseIcon=sidebarCollapseIcons[1],sidebars[0].otherSidebar=sidebars[1],sidebars[1].otherSidebar=sidebars[0],sidebars[0].gutter=sidebarGutters[0],sidebars[1].gutter=sidebarGutters[1],sidebars.forEach((function(e){e.collapsed=e.classList.contains("is-collapsed"),e.collapse=function(t=!0){if(!t&&this.temporarilyCollapsed&&"large-screen"==deviceSize&&this.gutter.collapse(!0),!t&&document.body.classList.contains("floating-sidebars")){document.body.addEventListener("click",(function t(o){o.target.closest(".sidebar")||(e.collapse(!0),document.body.removeEventListener("click",t))}))}"phone"==deviceSize&&(t||e.otherSidebar.fullCollapse(!0,!0),t&&e.gutter.otherGutter.collapse(!1,!0)),"tablet"==deviceSize&&(t||e.otherSidebar.collapse(!0)),this.classList.toggle("is-collapsed",t),this.collapsed=t},e.temporaryCollapse=function(e=!0){this.temporarilyCollapsed=!0,this.collapse(!0),this.gutter.collapse(!1),this.collapsed=e},e.fullCollapse=function(e=!0,t=!1){this.collapse(e),this.gutter.collapse(!0,t),this.collapsed=e},e.toggleCollapse=function(){this.collapse(!this.collapsed)},e.toggleFullCollapse=function(){this.fullCollapse(!this.collapsed)}})),sidebarGutters.forEach((function(e){e.collapsed=e.classList.contains("is-collapsed"),e.collapse=function(e,t=!1){t&&(this.classList.toggle("is-collapsed",e),this.collapsed=e)},e.toggleCollapse=function(){this.collapse(!this.collapsed)}})),sidebarCollapseIcons.forEach((function(e){e.addEventListener("click",(function(t){t.stopPropagation(),e.sidebar.toggleCollapse()}))})),isMobile()||setupSidebarResize())}function setupSidebarResize(){let e=document.querySelector(".sidebar-left .sidebar-handle"),t=document.querySelector(".sidebar-right .sidebar-handle");if(!e||!t)return;let o=null,n=15*parseFloat(getComputedStyle(e.parentElement).fontSize),i=n/4,a=localStorage.getItem("sidebar-right-width"),l=localStorage.getItem("sidebar-left-width");function s(e){if(!o)return;var t=o.classList.contains("sidebar-left")?e.clientX:window.innerWidth-e.clientX,a=`min(max(${t}px, 15em), 40vw)`;tn&&(o.style.transitionDuration="0s"))}function r(e){o=e.target.closest(".sidebar"),o.classList.add("is-resizing"),document.addEventListener("pointermove",s),document.addEventListener("pointerup",(function(){document.removeEventListener("pointermove",s);var e=getComputedStyle(o).getPropertyValue("--sidebar-width");let t=o.classList.contains("sidebar-left");localStorage.setItem(t?"sidebar-left-width":"sidebar-right-width",e),o.classList.remove("is-resizing"),o.style.removeProperty("transition-duration")}))}function c(e){let t=e.target.closest(".sidebar");if(t){t.style.removeProperty("transition-duration"),t.style.removeProperty("--sidebar-width");let e=t.classList.contains("sidebar-left");localStorage.removeItem(e?"sidebar-left-width":"sidebar-right-width")}}a&&document.querySelector(".sidebar-right").style.setProperty("--sidebar-width",a),l&&document.querySelector(".sidebar-left").style.setProperty("--sidebar-width",l),e.addEventListener("pointerdown",r),t.addEventListener("pointerdown",r),e.addEventListener("dblclick",c),t.addEventListener("dblclick",c)}function getSidebarWidthProp(){return getComputedPixelValue("--sidebar-width")}function setupThemeToggle(){function e(e,t=!1){if(themeToggle.checked=e,t){var o=document.body.style.transition;document.body.style.transition="none"}!themeToggle.classList.contains("is-checked")&&e?themeToggle.classList.add("is-checked"):themeToggle.classList.contains("is-checked")&&!e&&themeToggle.classList.remove("is-checked"),e?(document.body.classList.contains("theme-dark")&&document.body.classList.remove("theme-dark"),document.body.classList.contains("theme-light")||document.body.classList.add("theme-light")):(document.body.classList.contains("theme-light")&&document.body.classList.remove("theme-light"),document.body.classList.contains("theme-dark")||document.body.classList.add("theme-dark")),t&&setTimeout((function(){document.body.style.transition=o}),100),localStorage.setItem("theme",e?"light":"dark")}themeToggle&&(null!=localStorage.getItem("theme")&&e("light"==localStorage.getItem("theme")),document.body.classList.contains("theme-light")?e(!0):e(!1),document.querySelector(".theme-toggle-input")?.addEventListener("change",(t=>{let o=!("light"==localStorage.getItem("theme"));console.log("Theme toggle changed to: "+o),e(o)})))}let index,searchResults,flashElement=null,flashAnimation=null;function scrollIntoView(e,t,o=!0){setTreeCollapsed(e,!1,o);flashElement&&(flashElement.remove(),flashAnimation.cancel()),flashElement=document.createElement("div"),flashElement.classList.add("scroll-highlight"),e.appendChild(flashElement),t?flashElement.scrollIntoView({behavior:o?"smooth":"auto",...t}):flashElement.scrollIntoView({behavior:o?"smooth":"auto"});var n=e.style.position;e.style.position="relative",flashAnimation=flashElement.animate([{opacity:0},{opacity:.8},{opacity:.8},{opacity:.8},{opacity:.8},{opacity:.8},{opacity:0}],{duration:1500,iterations:1,delay:300}),flashAnimation.onfinish=function(){flashElement.remove(),e.style.position=n}}function setupScroll(e){if("canvas"!=documentType)return;let t=Array.from(e.querySelectorAll(".markdown-preview-view")),o=0,n=0;t.forEach((async function(e){console.log("Setting up markdown view");let t=Array.from(e.querySelectorAll(".heading-wrapper"));e.updateVisibleWindowMarkdown=function(o=!0,i=!0){let a=e.getBoundingClientRect();n=Math.min(.1*a.height,150);let l=a.top-n,s=a.bottom+n;async function r(e){let t=e?.getBoundingClientRect();if(!t)return;let n=t.tops&&t.bottom>s;n&&o?e.hide():!n&&i&&e.show()}for(let e=0;en/3&&e.updateVisibleWindowMarkdown(!1,!0),o=e.scrollTop}))})),setInterval((async function(){t.length>0&&(t[o].updateVisibleWindowMarkdown(),o=(o+1)%t.length)}),200)}function setupExcalidraw(e){e.querySelectorAll(".excalidraw-svg svg").forEach((function(e){let t=e.querySelector("rect").getAttribute("fill")>"#7F7F7F";e.classList.add(t?"light":"dark")}))}async function setupSearch(){if(isFileProtocol)return;if(searchInput=document.querySelector('input[type="search"]'),!searchInput)return;const e=await fetch("lib/search-index.json"),t=await e.text();index=MiniSearch.loadJSON(t,{fields:["title","path","tags","headers"]});document.querySelector(".search-input-clear-button").addEventListener("click",(e=>{search("")})),searchInput.addEventListener("input",(e=>{const t=e.target.value??"";startsWithAny(t,["#","tag:","title:","name:","header:","H:"])?searchInput.style.color="var(--text-accent)":searchInput.style.color="",search(t)})),searchResults=document.createElement("div"),searchResults.setAttribute("id","search-results")}async function search(e){searchInput.value=e;let t=["title","content","tags","headers","path"];if(e.startsWith("#")&&(t=["tags","headers"]),e.startsWith("tag:")&&(e=e.substring(e.indexOf(":")+1),t=["tags"]),startsWithAny(e,["title:","name:"])&&(e=e.substring(e.indexOf(":")+1),t=["title"]),startsWithAny(e,["header:","H:"])&&(e=e.substring(e.indexOf(":")+1),t=["headers"]),startsWithAny(e,["path:"])&&(e=e.substring(e.indexOf(":")+1),t=["path"]),e.length>=1){const o=index.search(e,{prefix:!0,fuzzy:.3,boost:{title:4,headers:3,tags:2,path:1},fields:t});let n=[],i=[];for(let t of o){if((t.score<.33*o[0].score||n.length>12)&&n.length>3||t.score<.1*o[0].score)break;n.push(t.path);let a=[],l=!1;for(match in t.match){if(t.match[match].includes("headers"))for(let o of t.headers)if(o.toLowerCase().includes(match.toLowerCase())&&(a.push(o),e.toLowerCase()!=match.toLowerCase())){l=!0;break}if(l)break}i.push(a)}if(document.querySelector(".file-tree"))filterFileTree(n,i,e).then((()=>sortFileTreeDocuments(((e,t)=>{if(!e||!t)return 0;let o=getVaultRelativePath(e.firstChild.href),i=getVaultRelativePath(t.firstChild.href);return n.findIndex((e=>o.startsWith(e)))-n.findIndex((e=>i.startsWith(e)))}))));else{const t=document.createElement("div");o.slice(0,10).forEach((o=>{const n=document.createElement("div");n.classList.add("search-result");const i=document.createElement("a");i.classList.add("tree-link");const a=o.path+"?mark="+encodeURIComponent(e);i.setAttribute("href",a),i.appendChild(document.createTextNode(o.title)),n.appendChild(i),t.append(n)})),searchResults.replaceChildren(t),searchInput.parentElement.after(searchResults),initializePageEvents(searchResults)}}else searchResults&&searchResults.parentElement&&searchResults.parentNode.removeChild(searchResults),clearCurrentDocumentSearch(),fileTree&&clearFileTreeFilter().then((()=>sortFileTreeAlphabetically()))}function startsWithAny(e,t){for(let o=0;o{const o=t.nodeValue,n=o.replace(new RegExp(e,"gi"),(e=>`${e}`));if(n!==o){const e=document.createElement("div");e.innerHTML=n;Array.from(e.childNodes).forEach((e=>{e.nodeType!=Node.TEXT_NODE&&e.setAttribute("class","search-mark"),t.parentNode.insertBefore(e,t)})),t.parentNode.removeChild(t)}}));let t=document.querySelector(".search-mark");setTimeout((()=>{t&&scrollIntoView(t,{behavior:"smooth",block:"start"})}),500)}function clearCurrentDocumentSearch(){document.querySelectorAll(".search-mark").forEach((e=>{e.outerHTML=e.innerHTML}))}function getTextNodes(e){const t=[],o=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,null,!1);let n;for(;n=o.nextNode();)t.push(n);return t}
\ No newline at end of file
diff --git a/obsidian/lib/search-index.json b/obsidian/lib/search-index.json
new file mode 100644
index 0000000..4beea4c
--- /dev/null
+++ b/obsidian/lib/search-index.json
@@ -0,0 +1 @@
+{"documentCount":205,"nextId":205,"documentIds":{"0":"00-tags/tag-admin.html","1":"00-tags/tag-ai.html","2":"00-tags/tag-api.html","3":"00-tags/tag-application-ui.html","4":"00-tags/tag-art.html","5":"00-tags/tag-automated-email.html","6":"00-tags/tag-backend.html","7":"00-tags/tag-bash.html","8":"00-tags/tag-blender.html","9":"00-tags/tag-bootstrap.html","10":"00-tags/tag-bot.html","11":"00-tags/tag-browser-automation.html","12":"00-tags/tag-browser-extension.html","13":"00-tags/tag-character-design.html","14":"00-tags/tag-chrome-extension.html","15":"00-tags/tag-cicd.html","16":"00-tags/tag-concurrency.html","17":"00-tags/tag-css.html","18":"00-tags/tag-cybersecurity.html","19":"00-tags/tag-data-management.html","20":"00-tags/tag-data-science.html","21":"00-tags/tag-decryption.html","22":"00-tags/tag-devops.html","23":"00-tags/tag-diffing.html","24":"00-tags/tag-discord.html","25":"00-tags/tag-django.html","26":"00-tags/tag-django-rest-framework.html","27":"00-tags/tag-docker.html","28":"00-tags/tag-domain-name-management.html","29":"00-tags/tag-dsa.html","30":"00-tags/tag-express.html","31":"00-tags/tag-firefox-extension.html","32":"00-tags/tag-frontend.html","33":"00-tags/tag-fullstack.html","34":"00-tags/tag-game-design.html","35":"00-tags/tag-game-dev.html","36":"00-tags/tag-gamejam.html","37":"00-tags/tag-gdb.html","38":"00-tags/tag-genetic-algorithm.html","39":"00-tags/tag-github-actions.html","40":"00-tags/tag-github-contributor.html","41":"00-tags/tag-go.html","42":"00-tags/tag-godot.html","43":"00-tags/tag-hackathon.html","44":"00-tags/tag-heroku.html","45":"00-tags/tag-hosting.html","46":"00-tags/tag-html.html","47":"00-tags/tag-image-gen.html","48":"00-tags/tag-irc.html","49":"00-tags/tag-java.html","50":"00-tags/tag-js.html","51":"00-tags/tag-jupyter-notebook.html","52":"00-tags/tag-latex.html","53":"00-tags/tag-level-design.html","54":"00-tags/tag-linux.html","55":"00-tags/tag-low-level-debugging.html","56":"00-tags/tag-machine-learning.html","57":"00-tags/tag-matplotlib.html","58":"00-tags/tag-music.html","59":"00-tags/tag-myers-diff-algo.html","60":"00-tags/tag-network-traffic-capture.html","61":"00-tags/tag-networking.html","62":"00-tags/tag-neural-networks.html","63":"00-tags/tag-nextjs.html","64":"00-tags/tag-nltk.html","65":"00-tags/tag-nodejs.html","66":"00-tags/tag-npm.html","67":"00-tags/tag-numpy.html","68":"00-tags/tag-oauth.html","69":"00-tags/tag-oop.html","70":"00-tags/tag-openai.html","71":"00-tags/tag-pandas.html","72":"00-tags/tag-parcel.html","73":"00-tags/tag-php.html","74":"00-tags/tag-platformer.html","75":"00-tags/tag-postgres.html","76":"00-tags/tag-prod.html","77":"00-tags/tag-protocol.html","78":"00-tags/tag-proxy.html","79":"00-tags/tag-pug.html","80":"00-tags/tag-puppeteer.html","81":"00-tags/tag-pwndbg.html","82":"00-tags/tag-pygame.html","83":"00-tags/tag-python.html","84":"00-tags/tag-pytorch.html","85":"00-tags/tag-react.html","86":"00-tags/tag-realtime.html","87":"00-tags/tag-redis.html","88":"00-tags/tag-research.html","89":"00-tags/tag-reverse-engineering.html","90":"00-tags/tag-rust.html","91":"00-tags/tag-scikit.html","92":"00-tags/tag-scraping.html","93":"00-tags/tag-selenium.html","94":"00-tags/tag-server-management.html","95":"00-tags/tag-serverless.html","96":"00-tags/tag-slack-bot.html","97":"00-tags/tag-software-engineering.html","98":"00-tags/tag-sql.html","99":"00-tags/tag-sqlite.html","100":"00-tags/tag-ssl.html","101":"00-tags/tag-supabase.html","102":"00-tags/tag-svelte.html","103":"00-tags/tag-sveltekit.html","104":"00-tags/tag-tailwindcss.html","105":"00-tags/tag-tdd.html","106":"00-tags/tag-tensorflow.html","107":"00-tags/tag-threejs.html","108":"00-tags/tag-turbo-hotwired.html","109":"00-tags/tag-two-factor-auth.html","110":"00-tags/tag-typescript.html","111":"00-tags/tag-unity.html","112":"00-tags/tag-vb-net.html","113":"00-tags/tag-visual-novel.html","114":"00-tags/tag-vite.html","115":"00-tags/tag-webdesign.html","116":"00-tags/tag-webdev.html","117":"00-tags/tag-wip.html","118":"00-tags/tag-writing.html","119":"00-tags/tag-x3d.html","120":"01-projects/00-school/personal/dumpmon-grabber.html","121":"01-projects/00-school/personal/irc-bot.html","122":"01-projects/00-school/personal/personal.html","123":"01-projects/00-school/personal/raspberry-pi-setup-scripts.html","124":"01-projects/00-school/school.html","125":"01-projects/01-college/assignments/assignments.html","126":"01-projects/01-college/assignments/ict-site.html","127":"01-projects/01-college/assignments/irc-cals.html","128":"01-projects/01-college/personal/concatbot.html","129":"01-projects/01-college/personal/cyber-discovery-finalist-challenge.html","130":"01-projects/01-college/personal/hexbot.html","131":"01-projects/01-college/personal/personal.html","132":"01-projects/01-college/college.html","133":"01-projects/02-university/assignments/aiab.html","134":"01-projects/02-university/assignments/assignments.html","135":"01-projects/02-university/assignments/checkers.html","136":"01-projects/02-university/assignments/clue.html","137":"01-projects/02-university/assignments/computer-vision.html","138":"01-projects/02-university/assignments/database-design-and-sql.html","139":"01-projects/02-university/assignments/dsa-programming-project.html","140":"01-projects/02-university/assignments/individual-project.html","141":"01-projects/02-university/assignments/lovejoys-antique-evaluations.html","142":"01-projects/02-university/assignments/machine-learning.html","143":"01-projects/02-university/assignments/minesweeper.html","144":"01-projects/02-university/assignments/natural-language-engineering.html","145":"01-projects/02-university/assignments/web-3d.html","146":"01-projects/02-university/personal/bandcamp-web-downloader.html","147":"01-projects/02-university/personal/blaseball-peanut-clicker.html","148":"01-projects/02-university/personal/ghost-terminal-dracula-theme.html","149":"01-projects/02-university/personal/hacksussex-2019.html","150":"01-projects/02-university/personal/hosting-with-vps.html","151":"01-projects/02-university/personal/i3-config.html","152":"01-projects/02-university/personal/litebin.html","153":"01-projects/02-university/personal/markdown-dracula-theme.html","154":"01-projects/02-university/personal/mdview.html","155":"01-projects/02-university/personal/nixos-config.html","156":"01-projects/02-university/personal/pastel.codes.html","157":"01-projects/02-university/personal/personal.html","158":"01-projects/02-university/personal/ttttt.uk.html","159":"01-projects/02-university/personal/university-note-tools.html","160":"01-projects/02-university/university.html","161":"01-projects/03-work/personal/flipanalytica-hacksussex-2023.html","162":"01-projects/03-work/personal/hiddennet.works.html","163":"01-projects/03-work/personal/managing-a-minecraft-server.html","164":"01-projects/03-work/personal/personal.html","165":"01-projects/03-work/personal/watcher.html","166":"01-projects/03-work/projects/heythere/heythere-extensions.html","167":"01-projects/03-work/projects/heythere/heythere-web.html","168":"01-projects/03-work/projects/bizarrepg.html","169":"01-projects/03-work/projects/changewatch.html","170":"01-projects/03-work/projects/n0rt.html","171":"01-projects/03-work/projects/projects.html","172":"01-projects/03-work/projects/the-loop..html","173":"01-projects/03-work/work.html","174":"projects.html","175":"lib/scripts/graph-wasm.wasm","176":"lib/fonts/94f2f163d4b698242fef.otf","177":"lib/fonts/72505e6a122c6acd5471.woff2","178":"lib/fonts/2d5198822ab091ce4305.woff2","179":"lib/fonts/c8ba52b05a9ef10f4758.woff2","180":"lib/fonts/cb10ffd7684cd9836a05.woff2","181":"lib/fonts/b5f0f109bc88052d4000.woff2","182":"lib/fonts/cbe0ae49c52c920fd563.woff2","183":"lib/fonts/535a6cf662596b3bd6a6.woff2","184":"lib/fonts/70cc7ff27245e82ad414.ttf","185":"lib/fonts/454577c22304619db035.ttf","186":"lib/fonts/52ac8f3034507f1d9e53.ttf","187":"lib/fonts/05b618077343fbbd92b7.ttf","188":"lib/fonts/4bb6ac751d1c5478ff3a.woff2","189":"lib/media/874d8b8e340f75575caa.svg","190":"lib/html/file-tree.html","191":"lib/scripts/webpage.js","192":"lib/scripts/graph-view.js","193":"lib/scripts/graph-wasm.js","194":"lib/scripts/graph-render-worker.js","195":"lib/scripts/tinycolor.js","196":"lib/scripts/pixi.js","197":"lib/scripts/minisearch.js","198":"lib/media/favicon.png","199":"lib/scripts/graph-data.js","200":"lib/styles/obsidian.css","201":"lib/styles/other-plugins.css","202":"lib/styles/global-variable-styles.css","203":"lib/styles/main-styles.css","204":"lib/metadata.json"},"fieldIds":{"path":0,"title":1,"content":2,"tags":3,"headers":4},"fieldLength":{"0":[5,2,2,1,2],"1":[5,2,2,1,2],"2":[5,2,2,1,2],"3":[6,3,3,1,3],"4":[5,2,2,1,2],"5":[6,3,3,1,3],"6":[5,2,2,1,2],"7":[5,2,2,1,2],"8":[5,2,2,1,2],"9":[5,2,2,1,2],"10":[5,2,2,1,2],"11":[6,3,3,1,3],"12":[6,3,3,1,3],"13":[6,3,3,1,3],"14":[6,3,3,1,3],"15":[5,2,2,1,2],"16":[5,2,2,1,2],"17":[5,2,2,1,2],"18":[5,2,2,1,2],"19":[6,3,3,1,3],"20":[6,3,3,1,3],"21":[5,2,2,1,2],"22":[5,2,2,1,2],"23":[5,2,2,1,2],"24":[5,2,2,1,2],"25":[5,2,2,1,2],"26":[7,4,4,1,4],"27":[5,2,2,1,2],"28":[7,4,4,1,4],"29":[5,2,2,1,2],"30":[5,2,2,1,2],"31":[6,3,3,1,3],"32":[5,2,2,1,2],"33":[5,2,2,1,2],"34":[6,3,3,1,3],"35":[6,3,3,1,3],"36":[5,2,2,1,2],"37":[5,2,2,1,2],"38":[6,3,3,1,3],"39":[6,3,3,1,3],"40":[6,3,3,1,3],"41":[5,2,2,1,2],"42":[5,2,2,1,2],"43":[5,2,2,1,2],"44":[5,2,2,1,2],"45":[5,2,2,1,2],"46":[4,2,2,1,2],"47":[6,3,3,1,3],"48":[5,2,2,1,2],"49":[5,2,2,1,2],"50":[5,2,2,1,2],"51":[6,3,3,1,3],"52":[5,2,2,1,2],"53":[6,3,3,1,3],"54":[5,2,2,1,2],"55":[7,4,4,1,4],"56":[6,3,3,1,3],"57":[5,2,2,1,2],"58":[5,2,2,1,2],"59":[7,4,4,1,4],"60":[7,4,4,1,4],"61":[5,2,2,1,2],"62":[6,3,3,1,3],"63":[5,2,2,1,2],"64":[5,2,2,1,2],"65":[5,2,2,1,2],"66":[5,2,2,1,2],"67":[5,2,2,1,2],"68":[5,2,2,1,2],"69":[5,2,2,1,2],"70":[5,2,2,1,2],"71":[5,2,2,1,2],"72":[5,2,2,1,2],"73":[5,2,2,1,2],"74":[5,2,2,1,2],"75":[5,2,2,1,2],"76":[5,2,2,1,2],"77":[5,2,2,1,2],"78":[5,2,2,1,2],"79":[5,2,2,1,2],"80":[5,2,2,1,2],"81":[5,2,2,1,2],"82":[5,2,2,1,2],"83":[5,2,2,1,2],"84":[5,2,2,1,2],"85":[5,2,2,1,2],"86":[5,2,2,1,2],"87":[5,2,2,1,2],"88":[5,2,2,1,2],"89":[6,3,3,1,3],"90":[5,2,2,1,2],"91":[5,2,2,1,2],"92":[5,2,2,1,2],"93":[5,2,2,1,2],"94":[6,3,3,1,3],"95":[5,2,2,1,2],"96":[6,3,3,1,3],"97":[6,3,3,1,3],"98":[5,2,2,1,2],"99":[5,2,2,1,2],"100":[5,2,2,1,2],"101":[5,2,2,1,2],"102":[5,2,2,1,2],"103":[5,2,2,1,2],"104":[5,2,2,1,2],"105":[5,2,2,1,2],"106":[5,2,2,1,2],"107":[5,2,2,1,2],"108":[6,3,3,1,3],"109":[7,4,4,1,4],"110":[5,2,2,1,2],"111":[5,2,2,1,2],"112":[6,3,3,1,3],"113":[6,3,3,1,3],"114":[5,2,2,1,2],"115":[5,2,2,1,2],"116":[5,2,2,1,2],"117":[5,2,2,1,2],"118":[5,2,2,1,2],"119":[5,2,2,1,2],"120":[8,2,16,1,2],"121":[8,2,16,1,2],"122":[6,1,9,1,1],"123":[10,4,19,1,4],"124":[5,1,2,1,1],"125":[5,1,5,1,1],"126":[7,2,14,1,2],"127":[7,2,21,1,2],"128":[6,1,17,1,1],"129":[9,4,21,1,4],"130":[6,1,13,1,1],"131":[5,1,7,1,1],"132":[4,1,5,1,1],"133":[7,1,39,1,1],"134":[6,1,50,1,1],"135":[7,1,17,1,1],"136":[7,1,15,1,1],"137":[8,2,29,1,2],"138":[10,4,21,1,4],"139":[9,3,28,1,3],"140":[8,2,33,1,2],"141":[9,3,27,1,3],"142":[8,2,27,1,2],"143":[7,1,18,1,1],"144":[9,3,26,1,3],"145":[8,2,18,1,2],"146":[9,3,25,1,3],"147":[9,3,19,1,3],"148":[10,4,16,1,4],"149":[8,2,16,1,2],"150":[9,3,30,1,3],"151":[8,2,11,1,2],"152":[7,1,12,1,1],"153":[9,3,13,1,3],"154":[7,1,11,1,1],"155":[8,2,10,1,2],"156":[8,2,23,1,2],"157":[6,1,38,1,1],"158":[8,2,20,1,2],"159":[8,3,15,1,3],"160":[5,1,3,1,1],"161":[9,3,28,1,3],"162":[8,2,19,1,2],"163":[10,4,15,1,4],"164":[6,1,11,1,1],"165":[7,1,28,1,1],"166":[7,2,41,1,2],"167":[7,2,45,1,2],"168":[6,1,25,1,1],"169":[6,1,37,1,1],"170":[6,1,17,1,1],"171":[5,1,9,1,1],"172":[7,3,22,1,3],"173":[5,1,3,1,1],"174":[2,1,5,1,1],"175":[4,2,1,1,1],"176":[4,1,1,1,1],"177":[4,1,1,1,1],"178":[4,1,1,1,1],"179":[4,1,1,1,1],"180":[4,1,1,1,1],"181":[4,1,1,1,1],"182":[4,1,1,1,1],"183":[4,1,1,1,1],"184":[4,1,1,1,1],"185":[4,1,1,1,1],"186":[4,1,1,1,1],"187":[4,1,1,1,1],"188":[4,1,1,1,1],"189":[4,1,1,1,1],"190":[4,2,1,1,1],"191":[4,1,1,1,1],"192":[5,2,1,1,1],"193":[5,2,1,1,1],"194":[6,3,1,1,1],"195":[4,1,1,1,1],"196":[4,1,1,1,1],"197":[4,1,1,1,1],"198":[4,1,1,1,1],"199":[5,2,1,1,1],"200":[4,1,1,1,1],"201":[5,2,1,1,1],"202":[5,3,1,1,1],"203":[4,2,1,1,1],"204":[3,1,1,1,1]},"averageFieldLength":[5.668292682926832,2.073170731707318,6.770731707317072,1,2.0195121951219517],"storedFields":{"0":{"path":"00-tags/tag-admin.html","title":"tag-admin","tags":[],"headers":["tag-admin"]},"1":{"path":"00-tags/tag-ai.html","title":"tag-ai","tags":[],"headers":["tag-ai"]},"2":{"path":"00-tags/tag-api.html","title":"tag-api","tags":[],"headers":["tag-api"]},"3":{"path":"00-tags/tag-application-ui.html","title":"tag-application-ui","tags":[],"headers":["tag-application-ui"]},"4":{"path":"00-tags/tag-art.html","title":"tag-art","tags":[],"headers":["tag-art"]},"5":{"path":"00-tags/tag-automated-email.html","title":"tag-automated-email","tags":[],"headers":["tag-automated-email"]},"6":{"path":"00-tags/tag-backend.html","title":"tag-backend","tags":[],"headers":["tag-backend"]},"7":{"path":"00-tags/tag-bash.html","title":"tag-bash","tags":[],"headers":["tag-bash"]},"8":{"path":"00-tags/tag-blender.html","title":"tag-blender","tags":[],"headers":["tag-blender"]},"9":{"path":"00-tags/tag-bootstrap.html","title":"tag-bootstrap","tags":[],"headers":["tag-bootstrap"]},"10":{"path":"00-tags/tag-bot.html","title":"tag-bot","tags":[],"headers":["tag-bot"]},"11":{"path":"00-tags/tag-browser-automation.html","title":"tag-browser-automation","tags":[],"headers":["tag-browser-automation"]},"12":{"path":"00-tags/tag-browser-extension.html","title":"tag-browser-extension","tags":[],"headers":["tag-browser-extension"]},"13":{"path":"00-tags/tag-character-design.html","title":"tag-character-design","tags":[],"headers":["tag-character-design"]},"14":{"path":"00-tags/tag-chrome-extension.html","title":"tag-chrome-extension","tags":[],"headers":["tag-chrome-extension"]},"15":{"path":"00-tags/tag-cicd.html","title":"tag-cicd","tags":[],"headers":["tag-cicd"]},"16":{"path":"00-tags/tag-concurrency.html","title":"tag-concurrency","tags":[],"headers":["tag-concurrency"]},"17":{"path":"00-tags/tag-css.html","title":"tag-css","tags":[],"headers":["tag-css"]},"18":{"path":"00-tags/tag-cybersecurity.html","title":"tag-cybersecurity","tags":[],"headers":["tag-cybersecurity"]},"19":{"path":"00-tags/tag-data-management.html","title":"tag-data-management","tags":[],"headers":["tag-data-management"]},"20":{"path":"00-tags/tag-data-science.html","title":"tag-data-science","tags":[],"headers":["tag-data-science"]},"21":{"path":"00-tags/tag-decryption.html","title":"tag-decryption","tags":[],"headers":["tag-decryption"]},"22":{"path":"00-tags/tag-devops.html","title":"tag-devops","tags":[],"headers":["tag-devops"]},"23":{"path":"00-tags/tag-diffing.html","title":"tag-diffing","tags":[],"headers":["tag-diffing"]},"24":{"path":"00-tags/tag-discord.html","title":"tag-discord","tags":[],"headers":["tag-discord"]},"25":{"path":"00-tags/tag-django.html","title":"tag-django","tags":[],"headers":["tag-django"]},"26":{"path":"00-tags/tag-django-rest-framework.html","title":"tag-django-rest-framework","tags":[],"headers":["tag-django-rest-framework"]},"27":{"path":"00-tags/tag-docker.html","title":"tag-docker","tags":[],"headers":["tag-docker"]},"28":{"path":"00-tags/tag-domain-name-management.html","title":"tag-domain-name-management","tags":[],"headers":["tag-domain-name-management"]},"29":{"path":"00-tags/tag-dsa.html","title":"tag-DSA","tags":[],"headers":["tag-DSA"]},"30":{"path":"00-tags/tag-express.html","title":"tag-express","tags":[],"headers":["tag-express"]},"31":{"path":"00-tags/tag-firefox-extension.html","title":"tag-firefox-extension","tags":[],"headers":["tag-firefox-extension"]},"32":{"path":"00-tags/tag-frontend.html","title":"tag-frontend","tags":[],"headers":["tag-frontend"]},"33":{"path":"00-tags/tag-fullstack.html","title":"tag-fullstack","tags":[],"headers":["tag-fullstack"]},"34":{"path":"00-tags/tag-game-design.html","title":"tag-game-design","tags":[],"headers":["tag-game-design"]},"35":{"path":"00-tags/tag-game-dev.html","title":"tag-game-dev","tags":[],"headers":["tag-game-dev"]},"36":{"path":"00-tags/tag-gamejam.html","title":"tag-gamejam","tags":[],"headers":["tag-gamejam"]},"37":{"path":"00-tags/tag-gdb.html","title":"tag-gdb","tags":[],"headers":["tag-gdb"]},"38":{"path":"00-tags/tag-genetic-algorithm.html","title":"tag-genetic-algorithm","tags":[],"headers":["tag-genetic-algorithm"]},"39":{"path":"00-tags/tag-github-actions.html","title":"tag-github-actions","tags":[],"headers":["tag-github-actions"]},"40":{"path":"00-tags/tag-github-contributor.html","title":"tag-github-contributor","tags":[],"headers":["tag-github-contributor"]},"41":{"path":"00-tags/tag-go.html","title":"tag-go","tags":[],"headers":["tag-go"]},"42":{"path":"00-tags/tag-godot.html","title":"tag-godot","tags":[],"headers":["tag-godot"]},"43":{"path":"00-tags/tag-hackathon.html","title":"tag-hackathon","tags":[],"headers":["tag-hackathon"]},"44":{"path":"00-tags/tag-heroku.html","title":"tag-heroku","tags":[],"headers":["tag-heroku"]},"45":{"path":"00-tags/tag-hosting.html","title":"tag-hosting","tags":[],"headers":["tag-hosting"]},"46":{"path":"00-tags/tag-html.html","title":"tag-html","tags":[],"headers":["tag-html"]},"47":{"path":"00-tags/tag-image-gen.html","title":"tag-image-gen","tags":[],"headers":["tag-image-gen"]},"48":{"path":"00-tags/tag-irc.html","title":"tag-irc","tags":[],"headers":["tag-irc"]},"49":{"path":"00-tags/tag-java.html","title":"tag-java","tags":[],"headers":["tag-java"]},"50":{"path":"00-tags/tag-js.html","title":"tag-js","tags":[],"headers":["tag-js"]},"51":{"path":"00-tags/tag-jupyter-notebook.html","title":"tag-jupyter-notebook","tags":[],"headers":["tag-jupyter-notebook"]},"52":{"path":"00-tags/tag-latex.html","title":"tag-LaTeX","tags":[],"headers":["tag-LaTeX"]},"53":{"path":"00-tags/tag-level-design.html","title":"tag-level-design","tags":[],"headers":["tag-level-design"]},"54":{"path":"00-tags/tag-linux.html","title":"tag-linux","tags":[],"headers":["tag-linux"]},"55":{"path":"00-tags/tag-low-level-debugging.html","title":"tag-low-level-debugging","tags":[],"headers":["tag-low-level-debugging"]},"56":{"path":"00-tags/tag-machine-learning.html","title":"tag-machine-learning","tags":[],"headers":["tag-machine-learning"]},"57":{"path":"00-tags/tag-matplotlib.html","title":"tag-matplotlib","tags":[],"headers":["tag-matplotlib"]},"58":{"path":"00-tags/tag-music.html","title":"tag-music","tags":[],"headers":["tag-music"]},"59":{"path":"00-tags/tag-myers-diff-algo.html","title":"tag-myers-diff-algo","tags":[],"headers":["tag-myers-diff-algo"]},"60":{"path":"00-tags/tag-network-traffic-capture.html","title":"tag-network-traffic-capture","tags":[],"headers":["tag-network-traffic-capture"]},"61":{"path":"00-tags/tag-networking.html","title":"tag-networking","tags":[],"headers":["tag-networking"]},"62":{"path":"00-tags/tag-neural-networks.html","title":"tag-neural-networks","tags":[],"headers":["tag-neural-networks"]},"63":{"path":"00-tags/tag-nextjs.html","title":"tag-nextjs","tags":[],"headers":["tag-nextjs"]},"64":{"path":"00-tags/tag-nltk.html","title":"tag-nltk","tags":[],"headers":["tag-nltk"]},"65":{"path":"00-tags/tag-nodejs.html","title":"tag-nodejs","tags":[],"headers":["tag-nodejs"]},"66":{"path":"00-tags/tag-npm.html","title":"tag-npm","tags":[],"headers":["tag-npm"]},"67":{"path":"00-tags/tag-numpy.html","title":"tag-numpy","tags":[],"headers":["tag-numpy"]},"68":{"path":"00-tags/tag-oauth.html","title":"tag-oauth","tags":[],"headers":["tag-oauth"]},"69":{"path":"00-tags/tag-oop.html","title":"tag-oop","tags":[],"headers":["tag-oop"]},"70":{"path":"00-tags/tag-openai.html","title":"tag-openai","tags":[],"headers":["tag-openai"]},"71":{"path":"00-tags/tag-pandas.html","title":"tag-pandas","tags":[],"headers":["tag-pandas"]},"72":{"path":"00-tags/tag-parcel.html","title":"tag-parcel","tags":[],"headers":["tag-parcel"]},"73":{"path":"00-tags/tag-php.html","title":"tag-php","tags":[],"headers":["tag-php"]},"74":{"path":"00-tags/tag-platformer.html","title":"tag-platformer","tags":[],"headers":["tag-platformer"]},"75":{"path":"00-tags/tag-postgres.html","title":"tag-postgres","tags":[],"headers":["tag-postgres"]},"76":{"path":"00-tags/tag-prod.html","title":"tag-prod","tags":[],"headers":["tag-prod"]},"77":{"path":"00-tags/tag-protocol.html","title":"tag-protocol","tags":[],"headers":["tag-protocol"]},"78":{"path":"00-tags/tag-proxy.html","title":"tag-proxy","tags":[],"headers":["tag-proxy"]},"79":{"path":"00-tags/tag-pug.html","title":"tag-pug","tags":[],"headers":["tag-pug"]},"80":{"path":"00-tags/tag-puppeteer.html","title":"tag-puppeteer","tags":[],"headers":["tag-puppeteer"]},"81":{"path":"00-tags/tag-pwndbg.html","title":"tag-pwndbg","tags":[],"headers":["tag-pwndbg"]},"82":{"path":"00-tags/tag-pygame.html","title":"tag-pygame","tags":[],"headers":["tag-pygame"]},"83":{"path":"00-tags/tag-python.html","title":"tag-python","tags":[],"headers":["tag-python"]},"84":{"path":"00-tags/tag-pytorch.html","title":"tag-pytorch","tags":[],"headers":["tag-pytorch"]},"85":{"path":"00-tags/tag-react.html","title":"tag-react","tags":[],"headers":["tag-react"]},"86":{"path":"00-tags/tag-realtime.html","title":"tag-realtime","tags":[],"headers":["tag-realtime"]},"87":{"path":"00-tags/tag-redis.html","title":"tag-redis","tags":[],"headers":["tag-redis"]},"88":{"path":"00-tags/tag-research.html","title":"tag-research","tags":[],"headers":["tag-research"]},"89":{"path":"00-tags/tag-reverse-engineering.html","title":"tag-reverse-engineering","tags":[],"headers":["tag-reverse-engineering"]},"90":{"path":"00-tags/tag-rust.html","title":"tag-rust","tags":[],"headers":["tag-rust"]},"91":{"path":"00-tags/tag-scikit.html","title":"tag-scikit","tags":[],"headers":["tag-scikit"]},"92":{"path":"00-tags/tag-scraping.html","title":"tag-scraping","tags":[],"headers":["tag-scraping"]},"93":{"path":"00-tags/tag-selenium.html","title":"tag-selenium","tags":[],"headers":["tag-selenium"]},"94":{"path":"00-tags/tag-server-management.html","title":"tag-server-management","tags":[],"headers":["tag-server-management"]},"95":{"path":"00-tags/tag-serverless.html","title":"tag-serverless","tags":[],"headers":["tag-serverless"]},"96":{"path":"00-tags/tag-slack-bot.html","title":"tag-slack-bot","tags":[],"headers":["tag-slack-bot"]},"97":{"path":"00-tags/tag-software-engineering.html","title":"tag-software-engineering","tags":[],"headers":["tag-software-engineering"]},"98":{"path":"00-tags/tag-sql.html","title":"tag-sql","tags":[],"headers":["tag-sql"]},"99":{"path":"00-tags/tag-sqlite.html","title":"tag-sqlite","tags":[],"headers":["tag-sqlite"]},"100":{"path":"00-tags/tag-ssl.html","title":"tag-ssl","tags":[],"headers":["tag-ssl"]},"101":{"path":"00-tags/tag-supabase.html","title":"tag-supabase","tags":[],"headers":["tag-supabase"]},"102":{"path":"00-tags/tag-svelte.html","title":"tag-svelte","tags":[],"headers":["tag-svelte"]},"103":{"path":"00-tags/tag-sveltekit.html","title":"tag-sveltekit","tags":[],"headers":["tag-sveltekit"]},"104":{"path":"00-tags/tag-tailwindcss.html","title":"tag-tailwindcss","tags":[],"headers":["tag-tailwindcss"]},"105":{"path":"00-tags/tag-tdd.html","title":"tag-TDD","tags":[],"headers":["tag-TDD"]},"106":{"path":"00-tags/tag-tensorflow.html","title":"tag-tensorflow","tags":[],"headers":["tag-tensorflow"]},"107":{"path":"00-tags/tag-threejs.html","title":"tag-threejs","tags":[],"headers":["tag-threejs"]},"108":{"path":"00-tags/tag-turbo-hotwired.html","title":"tag-turbo-hotwired","tags":[],"headers":["tag-turbo-hotwired"]},"109":{"path":"00-tags/tag-two-factor-auth.html","title":"tag-two-factor-auth","tags":[],"headers":["tag-two-factor-auth"]},"110":{"path":"00-tags/tag-typescript.html","title":"tag-typescript","tags":[],"headers":["tag-typescript"]},"111":{"path":"00-tags/tag-unity.html","title":"tag-unity","tags":[],"headers":["tag-unity"]},"112":{"path":"00-tags/tag-vb-net.html","title":"tag-vb-net","tags":[],"headers":["tag-vb-net"]},"113":{"path":"00-tags/tag-visual-novel.html","title":"tag-visual-novel","tags":[],"headers":["tag-visual-novel"]},"114":{"path":"00-tags/tag-vite.html","title":"tag-vite","tags":[],"headers":["tag-vite"]},"115":{"path":"00-tags/tag-webdesign.html","title":"tag-webdesign","tags":[],"headers":["tag-webdesign"]},"116":{"path":"00-tags/tag-webdev.html","title":"tag-webdev","tags":[],"headers":["tag-webdev"]},"117":{"path":"00-tags/tag-wip.html","title":"tag-wip","tags":[],"headers":["tag-wip"]},"118":{"path":"00-tags/tag-writing.html","title":"tag-writing","tags":[],"headers":["tag-writing"]},"119":{"path":"00-tags/tag-x3d.html","title":"tag-x3d","tags":[],"headers":["tag-x3d"]},"120":{"path":"01-projects/00-school/personal/dumpmon-grabber.html","title":"Dumpmon grabber","tags":[],"headers":["Dumpmon grabber"]},"121":{"path":"01-projects/00-school/personal/irc-bot.html","title":"IRC Bot","tags":[],"headers":["IRC Bot"]},"122":{"path":"01-projects/00-school/personal/personal.html","title":"Personal","tags":[],"headers":["Personal"]},"123":{"path":"01-projects/00-school/personal/raspberry-pi-setup-scripts.html","title":"Raspberry Pi Setup Scripts","tags":[],"headers":["Raspberry Pi Setup Scripts"]},"124":{"path":"01-projects/00-school/school.html","title":"School","tags":[],"headers":["School"]},"125":{"path":"01-projects/01-college/assignments/assignments.html","title":"Assignments","tags":[],"headers":["Assignments"]},"126":{"path":"01-projects/01-college/assignments/ict-site.html","title":"ICT Site","tags":[],"headers":["ICT Site"]},"127":{"path":"01-projects/01-college/assignments/irc-cals.html","title":"IRC-CaLS","tags":[],"headers":["IRC-CaLS"]},"128":{"path":"01-projects/01-college/personal/concatbot.html","title":"concatBot","tags":[],"headers":["concatBot"]},"129":{"path":"01-projects/01-college/personal/cyber-discovery-finalist-challenge.html","title":"Cyber Discovery Finalist Challenge","tags":[],"headers":["Cyber Discovery Finalist Challenge"]},"130":{"path":"01-projects/01-college/personal/hexbot.html","title":"Hexbot","tags":[],"headers":["Hexbot"]},"131":{"path":"01-projects/01-college/personal/personal.html","title":"Personal","tags":[],"headers":["Personal"]},"132":{"path":"01-projects/01-college/college.html","title":"College","tags":[],"headers":["College"]},"133":{"path":"01-projects/02-university/assignments/aiab.html","title":"AIAB","tags":[],"headers":["AIAB"]},"134":{"path":"01-projects/02-university/assignments/assignments.html","title":"Assignments","tags":[],"headers":["Assignments"]},"135":{"path":"01-projects/02-university/assignments/checkers.html","title":"Checkers","tags":[],"headers":["Checkers"]},"136":{"path":"01-projects/02-university/assignments/clue.html","title":"Clue","tags":[],"headers":["Clue"]},"137":{"path":"01-projects/02-university/assignments/computer-vision.html","title":"Computer Vision","tags":[],"headers":["Computer Vision"]},"138":{"path":"01-projects/02-university/assignments/database-design-and-sql.html","title":"Database design and sql","tags":[],"headers":["Database design and sql"]},"139":{"path":"01-projects/02-university/assignments/dsa-programming-project.html","title":"DSA Programming Project","tags":[],"headers":["DSA Programming Project"]},"140":{"path":"01-projects/02-university/assignments/individual-project.html","title":"Individual Project","tags":[],"headers":["Individual Project"]},"141":{"path":"01-projects/02-university/assignments/lovejoys-antique-evaluations.html","title":"Lovejoys Antique Evaluations","tags":[],"headers":["Lovejoys Antique Evaluations"]},"142":{"path":"01-projects/02-university/assignments/machine-learning.html","title":"Machine learning","tags":[],"headers":["Machine learning"]},"143":{"path":"01-projects/02-university/assignments/minesweeper.html","title":"Minesweeper","tags":[],"headers":["Minesweeper"]},"144":{"path":"01-projects/02-university/assignments/natural-language-engineering.html","title":"Natural Language Engineering","tags":[],"headers":["Natural Language Engineering"]},"145":{"path":"01-projects/02-university/assignments/web-3d.html","title":"Web 3D","tags":[],"headers":["Web 3D"]},"146":{"path":"01-projects/02-university/personal/bandcamp-web-downloader.html","title":"Bandcamp Web Downloader","tags":[],"headers":["Bandcamp Web Downloader"]},"147":{"path":"01-projects/02-university/personal/blaseball-peanut-clicker.html","title":"Blaseball Peanut Clicker","tags":[],"headers":["Blaseball Peanut Clicker"]},"148":{"path":"01-projects/02-university/personal/ghost-terminal-dracula-theme.html","title":"Ghost Terminal Dracula theme","tags":[],"headers":["Ghost Terminal Dracula theme"]},"149":{"path":"01-projects/02-university/personal/hacksussex-2019.html","title":"Hacksussex 2019","tags":[],"headers":["Hacksussex 2019"]},"150":{"path":"01-projects/02-university/personal/hosting-with-vps.html","title":"Hosting with VPS","tags":[],"headers":["Hosting with VPS"]},"151":{"path":"01-projects/02-university/personal/i3-config.html","title":"i3 Config","tags":[],"headers":["i3 Config"]},"152":{"path":"01-projects/02-university/personal/litebin.html","title":"litebin","tags":[],"headers":["litebin"]},"153":{"path":"01-projects/02-university/personal/markdown-dracula-theme.html","title":"Markdown dracula theme","tags":[],"headers":["Markdown dracula theme"]},"154":{"path":"01-projects/02-university/personal/mdview.html","title":"MDView","tags":[],"headers":["MDView"]},"155":{"path":"01-projects/02-university/personal/nixos-config.html","title":"nixos config","tags":[],"headers":["nixos config"]},"156":{"path":"01-projects/02-university/personal/pastel.codes.html","title":"pastel.codes","tags":[],"headers":["pastel.codes"]},"157":{"path":"01-projects/02-university/personal/personal.html","title":"Personal","tags":[],"headers":["Personal"]},"158":{"path":"01-projects/02-university/personal/ttttt.uk.html","title":"TTTTT.uk","tags":[],"headers":["TTTTT.uk"]},"159":{"path":"01-projects/02-university/personal/university-note-tools.html","title":"University Note Tools","tags":[],"headers":["University Note Tools"]},"160":{"path":"01-projects/02-university/university.html","title":"University","tags":[],"headers":["University"]},"161":{"path":"01-projects/03-work/personal/flipanalytica-hacksussex-2023.html","title":"FlipAnalytica - Hacksussex 2023","tags":[],"headers":["FlipAnalytica - Hacksussex 2023"]},"162":{"path":"01-projects/03-work/personal/hiddennet.works.html","title":"hiddennet.works","tags":[],"headers":["hiddennet.works"]},"163":{"path":"01-projects/03-work/personal/managing-a-minecraft-server.html","title":"Managing a minecraft server","tags":[],"headers":["Managing a minecraft server"]},"164":{"path":"01-projects/03-work/personal/personal.html","title":"Personal","tags":[],"headers":["Personal"]},"165":{"path":"01-projects/03-work/personal/watcher.html","title":"Watcher","tags":[],"headers":["Watcher"]},"166":{"path":"01-projects/03-work/projects/heythere/heythere-extensions.html","title":"Heythere Extensions","tags":[],"headers":["Heythere Extensions"]},"167":{"path":"01-projects/03-work/projects/heythere/heythere-web.html","title":"Heythere Web","tags":[],"headers":["Heythere Web"]},"168":{"path":"01-projects/03-work/projects/bizarrepg.html","title":"BizarrePG","tags":[],"headers":["BizarrePG"]},"169":{"path":"01-projects/03-work/projects/changewatch.html","title":"Changewatch","tags":[],"headers":["Changewatch"]},"170":{"path":"01-projects/03-work/projects/n0rt.html","title":"N0RT","tags":[],"headers":["N0RT"]},"171":{"path":"01-projects/03-work/projects/projects.html","title":"Projects","tags":[],"headers":["Projects"]},"172":{"path":"01-projects/03-work/projects/the-loop..html","title":"The Loop.","tags":[],"headers":["The Loop."]},"173":{"path":"01-projects/03-work/work.html","title":"Work","tags":[],"headers":["Work"]},"174":{"path":"projects.html","title":"Projects","tags":[],"headers":["Projects"]},"175":{"path":"lib/scripts/graph-wasm.wasm","title":"graph-wasm","tags":[],"headers":[]},"176":{"path":"lib/fonts/94f2f163d4b698242fef.otf","title":"94f2f163d4b698242fef","tags":[],"headers":[]},"177":{"path":"lib/fonts/72505e6a122c6acd5471.woff2","title":"72505e6a122c6acd5471","tags":[],"headers":[]},"178":{"path":"lib/fonts/2d5198822ab091ce4305.woff2","title":"2d5198822ab091ce4305","tags":[],"headers":[]},"179":{"path":"lib/fonts/c8ba52b05a9ef10f4758.woff2","title":"c8ba52b05a9ef10f4758","tags":[],"headers":[]},"180":{"path":"lib/fonts/cb10ffd7684cd9836a05.woff2","title":"cb10ffd7684cd9836a05","tags":[],"headers":[]},"181":{"path":"lib/fonts/b5f0f109bc88052d4000.woff2","title":"b5f0f109bc88052d4000","tags":[],"headers":[]},"182":{"path":"lib/fonts/cbe0ae49c52c920fd563.woff2","title":"cbe0ae49c52c920fd563","tags":[],"headers":[]},"183":{"path":"lib/fonts/535a6cf662596b3bd6a6.woff2","title":"535a6cf662596b3bd6a6","tags":[],"headers":[]},"184":{"path":"lib/fonts/70cc7ff27245e82ad414.ttf","title":"70cc7ff27245e82ad414","tags":[],"headers":[]},"185":{"path":"lib/fonts/454577c22304619db035.ttf","title":"454577c22304619db035","tags":[],"headers":[]},"186":{"path":"lib/fonts/52ac8f3034507f1d9e53.ttf","title":"52ac8f3034507f1d9e53","tags":[],"headers":[]},"187":{"path":"lib/fonts/05b618077343fbbd92b7.ttf","title":"05b618077343fbbd92b7","tags":[],"headers":[]},"188":{"path":"lib/fonts/4bb6ac751d1c5478ff3a.woff2","title":"4bb6ac751d1c5478ff3a","tags":[],"headers":[]},"189":{"path":"lib/media/874d8b8e340f75575caa.svg","title":"874d8b8e340f75575caa","tags":[],"headers":[]},"190":{"path":"lib/html/file-tree.html","title":"file-tree","tags":[],"headers":[]},"191":{"path":"lib/scripts/webpage.js","title":"webpage","tags":[],"headers":[]},"192":{"path":"lib/scripts/graph-view.js","title":"graph-view","tags":[],"headers":[]},"193":{"path":"lib/scripts/graph-wasm.js","title":"graph-wasm","tags":[],"headers":[]},"194":{"path":"lib/scripts/graph-render-worker.js","title":"graph-render-worker","tags":[],"headers":[]},"195":{"path":"lib/scripts/tinycolor.js","title":"tinycolor","tags":[],"headers":[]},"196":{"path":"lib/scripts/pixi.js","title":"pixi","tags":[],"headers":[]},"197":{"path":"lib/scripts/minisearch.js","title":"minisearch","tags":[],"headers":[]},"198":{"path":"lib/media/favicon.png","title":"favicon","tags":[],"headers":[]},"199":{"path":"lib/scripts/graph-data.js","title":"graph-data","tags":[],"headers":[]},"200":{"path":"lib/styles/obsidian.css","title":"obsidian","tags":[],"headers":[]},"201":{"path":"lib/styles/other-plugins.css","title":"other-plugins","tags":[],"headers":[]},"202":{"path":"lib/styles/global-variable-styles.css","title":"global-variable-styles","tags":[],"headers":[]},"203":{"path":"lib/styles/main-styles.css","title":"main-styles","tags":[],"headers":[]},"204":{"path":"lib/metadata.json","title":"metadata","tags":[],"headers":[]}},"dirtCount":0,"index":[["874d8b8e340f75575caa",{"0":{"189":1},"1":{"189":1}}],["4bb6ac751d1c5478ff3a",{"0":{"188":1},"1":{"188":1}}],["454577c22304619db035",{"0":{"185":1},"1":{"185":1}}],["70cc7ff27245e82ad414",{"0":{"184":1},"1":{"184":1}}],["72505e6a122c6acd5471",{"0":{"177":1},"1":{"177":1}}],["94f2f163d4b698242fef",{"0":{"176":1},"1":{"176":1}}],["3d",{"0":{"145":1},"1":{"145":1},"2":{"134":2,"145":2},"4":{"145":1}}],["kr",{"2":{"134":1,"135":1}}],["52ac8f3034507f1d9e53",{"0":{"186":1},"1":{"186":1}}],["535a6cf662596b3bd6a6",{"0":{"183":1},"1":{"183":1}}],["5b21",{"2":{"140":1}}],["5b20",{"2":{"133":1,"137":1,"138":1,"142":1,"144":1}}],["5b19",{"2":{"139":1}}],["5d",{"2":{"133":1,"137":1,"138":1,"139":1,"140":1,"142":1,"144":1}}],["2d5198822ab091ce4305",{"0":{"178":1},"1":{"178":1}}],["2d7bfe64fef16444acaabc157e2bc6bacbb2b712",{"2":{"138":1,"139":1,"140":1,"142":1,"144":1}}],["2328719",{"2":{"172":1}}],["22",{"2":{"140":1}}],["21",{"2":{"133":1,"137":1,"138":1,"142":1,"144":1}}],["26",{"2":{"133":1,"139":1}}],["2023",{"0":{"161":1},"1":{"161":1},"2":{"161":2,"164":1,"170":1,"172":1},"4":{"161":1}}],["2019",{"0":{"149":1},"1":{"149":1},"2":{"149":2,"157":1},"4":{"149":1}}],["20engineering",{"2":{"144":1}}],["20language",{"2":{"144":1}}],["20learning",{"2":{"142":1}}],["20machine",{"2":{"142":1}}],["20of",{"2":{"142":1}}],["20project",{"2":{"140":1}}],["20algorithms",{"2":{"139":1}}],["20adaptive",{"2":{"133":1}}],["20structures",{"2":{"139":1}}],["20vision",{"2":{"137":1}}],["20behaviour",{"2":{"133":1}}],["20",{"2":{"133":2,"137":1,"138":1,"139":3,"140":1,"142":1,"144":1}}],["20intelligence",{"2":{"133":1}}],["=",{"2":{"133":1,"139":1}}],["05b618077343fbbd92b7",{"0":{"187":1},"1":{"187":1}}],["03",{"0":{"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1}}],["02",{"0":{"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1}}],["01",{"0":{"120":1,"121":1,"122":1,"123":1,"124":1,"125":2,"126":2,"127":2,"128":2,"129":2,"130":2,"131":2,"132":2,"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1},"2":{"132":4}}],["00",{"0":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1}}],["x3d",{"0":{"119":1},"1":{"119":1},"2":{"119":1,"145":1},"4":{"119":1}}],["woff2",{"0":{"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"188":1}}],["worker",{"0":{"194":1},"1":{"194":1}}],["works",{"0":{"162":1},"1":{"162":1},"2":{"162":3,"164":1},"4":{"162":1}}],["work",{"0":{"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":2},"1":{"173":1},"2":{"173":1,"174":1},"4":{"173":1}}],["wasm",{"0":{"175":2,"193":1},"1":{"175":1,"193":1}}],["watcher",{"0":{"165":1},"1":{"165":1},"2":{"164":1,"165":3},"4":{"165":1}}],["www",{"2":{"167":1,"168":1,"169":1}}],["winner",{"2":{"161":1}}],["wip",{"0":{"117":1},"1":{"117":1},"2":{"117":1,"165":1},"4":{"117":1}}],["whole",{"2":{"134":1}}],["webpage",{"0":{"191":1},"1":{"191":1}}],["web",{"0":{"145":1,"146":1,"167":1},"1":{"145":1,"146":1,"167":1},"2":{"134":2,"145":2,"146":2,"157":1,"167":1,"171":1},"4":{"145":1,"146":1,"167":1}}],["webdev",{"0":{"116":1},"1":{"116":1},"2":{"116":1,"141":2,"145":1,"146":1,"156":1,"158":1,"162":1,"165":1,"166":1,"167":1,"168":1,"169":2},"4":{"116":1}}],["webdesign",{"0":{"115":1},"1":{"115":1},"2":{"115":1,"145":1,"146":1,"156":1,"158":1,"162":1,"165":1,"167":1,"169":1},"4":{"115":1}}],["writing",{"0":{"118":1},"1":{"118":1},"2":{"118":1,"172":1},"4":{"118":1}}],["variable",{"0":{"202":1},"1":{"202":1}}],["vps",{"0":{"150":1},"1":{"150":1},"2":{"150":1,"157":1},"4":{"150":1}}],["view",{"0":{"192":1},"1":{"192":1}}],["vision",{"0":{"137":1},"1":{"137":1},"2":{"134":1,"137":1},"4":{"137":1}}],["visual",{"0":{"113":1},"1":{"113":1},"2":{"113":1,"172":1},"4":{"113":1}}],["vite",{"0":{"114":1},"1":{"114":1},"2":{"114":1,"168":1},"4":{"114":1}}],["vb",{"0":{"112":1},"1":{"112":1},"2":{"112":1,"127":1},"4":{"112":1}}],["uk",{"0":{"158":1},"1":{"158":1},"2":{"157":1,"158":3,"167":1,"169":1},"4":{"158":1}}],["unzipped",{"2":{"134":1}}],["uni",{"2":{"134":6}}],["university",{"0":{"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":2,"160":2},"1":{"159":1,"160":1},"2":{"133":1,"137":1,"138":1,"139":1,"140":1,"142":1,"144":1,"157":1,"159":2,"160":1,"174":1},"4":{"159":1,"160":1}}],["unity",{"0":{"111":1},"1":{"111":1},"2":{"111":1,"149":1},"4":{"111":1}}],["upload",{"2":{"134":1}}],["ui",{"0":{"3":1},"1":{"3":1},"2":{"3":1,"135":1,"143":1,"149":1},"4":{"3":1}}],["styles",{"0":{"200":1,"201":1,"202":2,"203":2},"1":{"202":1,"203":1}}],["structures",{"2":{"139":1}}],["svg",{"0":{"189":1}}],["sveltekit",{"0":{"103":1},"1":{"103":1},"2":{"103":1,"168":1},"4":{"103":1}}],["svelte",{"0":{"102":1},"1":{"102":1},"2":{"102":1,"168":1},"4":{"102":1}}],["submissions",{"2":{"134":1}}],["supabase",{"0":{"101":1},"1":{"101":1},"2":{"101":1,"168":1},"4":{"101":1}}],["site",{"0":{"126":1},"1":{"126":1},"2":{"125":1,"126":2,"150":1},"4":{"126":1}}],["simple",{"2":{"121":1}}],["ssl",{"0":{"100":1},"1":{"100":1},"2":{"100":1,"150":1,"156":1,"158":1},"4":{"100":1}}],["sqlite",{"0":{"99":1},"1":{"99":1},"2":{"99":1,"120":1,"121":1,"127":1,"159":1},"4":{"99":1}}],["sql",{"0":{"98":1,"138":1},"1":{"98":1,"138":1},"2":{"98":1,"120":1,"121":1,"127":1,"134":1,"138":2,"159":1,"167":1,"168":1,"169":1},"4":{"98":1,"138":1}}],["software",{"0":{"97":1},"1":{"97":1},"2":{"97":1,"127":1,"134":1,"136":2,"138":1,"143":1,"161":1,"166":1,"167":1,"169":1},"4":{"97":1}}],["slack",{"0":{"96":1},"1":{"96":1},"2":{"96":1,"167":1},"4":{"96":1}}],["service",{"2":{"165":1}}],["serverless",{"0":{"95":1},"1":{"95":1},"2":{"95":1,"165":2,"169":1},"4":{"95":1}}],["server",{"0":{"94":1,"163":1},"1":{"94":1,"163":1},"2":{"94":1,"123":1,"163":1,"164":1},"4":{"94":1,"163":1}}],["setups",{"2":{"123":1}}],["setup",{"0":{"123":1},"1":{"123":1},"2":{"122":1,"123":1},"4":{"123":1}}],["selenium",{"0":{"93":1},"1":{"93":1},"2":{"93":1,"169":1},"4":{"93":1}}],["scream",{"2":{"172":1}}],["scripts",{"0":{"123":1,"175":1,"191":1,"192":1,"193":1,"194":1,"195":1,"196":1,"197":1,"199":1},"1":{"123":1},"2":{"122":1,"123":1},"4":{"123":1}}],["scraping",{"0":{"92":1},"1":{"92":1},"2":{"92":1,"120":1,"128":1,"147":1,"165":1,"169":1},"4":{"92":1}}],["school",{"0":{"120":1,"121":1,"122":1,"123":1,"124":2},"1":{"124":1},"2":{"124":1,"174":1},"4":{"124":1}}],["scikit",{"0":{"91":1},"1":{"91":1},"2":{"91":1,"137":1,"140":1,"142":1},"4":{"91":1}}],["science",{"0":{"20":1},"1":{"20":1},"2":{"20":1,"140":1,"162":1},"4":{"20":1}}],["rate",{"2":{"172":1}}],["raspberry",{"0":{"123":1},"1":{"123":1},"2":{"122":1,"123":1},"4":{"123":1}}],["rpi",{"2":{"123":1}}],["rust",{"0":{"90":1},"1":{"90":1},"2":{"90":1,"152":1},"4":{"90":1}}],["render",{"0":{"194":1},"1":{"194":1}}],["reverse",{"0":{"89":1},"1":{"89":1},"2":{"89":1,"129":1,"146":1,"159":1,"166":1},"4":{"89":1}}],["research",{"0":{"88":1},"1":{"88":1},"2":{"88":1,"133":1,"137":1,"140":1,"142":1},"4":{"88":1}}],["rest",{"0":{"26":1},"1":{"26":1},"2":{"26":1,"167":1},"4":{"26":1}}],["redis",{"0":{"87":1},"1":{"87":1},"2":{"87":1,"167":1},"4":{"87":1}}],["realtime",{"0":{"86":1},"1":{"86":1},"2":{"86":1,"168":1},"4":{"86":1}}],["react",{"0":{"85":1},"1":{"85":1},"2":{"85":1,"165":1,"166":1},"4":{"85":1}}],["plugins",{"0":{"201":1},"1":{"201":1}}],["playbizarrepg",{"2":{"168":1}}],["platformer",{"0":{"74":1},"1":{"74":1},"2":{"74":1,"170":1},"4":{"74":1}}],["png",{"0":{"198":1}}],["possum",{"2":{"150":1}}],["postgres",{"0":{"75":1},"1":{"75":1},"2":{"75":1,"141":1,"167":1,"168":1,"169":1},"4":{"75":1}}],["peanut",{"0":{"147":1},"1":{"147":1},"2":{"147":2,"157":1},"4":{"147":1}}],["personal",{"0":{"120":1,"121":1,"122":2,"123":1,"128":1,"129":1,"130":1,"131":2,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":2,"158":1,"159":1,"161":1,"162":1,"163":1,"164":2,"165":1},"1":{"122":1,"131":1,"157":1,"164":1},"2":{"122":1,"124":1,"131":1,"132":2,"157":1,"160":1,"164":1,"173":1},"4":{"122":1,"131":1,"157":1,"164":1}}],["pixi",{"0":{"196":1},"1":{"196":1}}],["pi",{"0":{"123":1},"1":{"123":1},"2":{"122":1,"123":1},"4":{"123":1}}],["pytorch",{"0":{"84":1},"1":{"84":1},"2":{"84":1,"133":1},"4":{"84":1}}],["python",{"0":{"83":1},"1":{"83":1},"2":{"83":1,"120":1,"121":1,"127":1,"128":1,"130":1,"133":1,"135":1,"136":1,"137":1,"140":1,"141":1,"142":1,"144":1,"159":1,"167":1,"169":1},"4":{"83":1}}],["pygame",{"0":{"82":1},"1":{"82":1},"2":{"82":1,"135":1},"4":{"82":1}}],["pwndbg",{"0":{"81":1},"1":{"81":1},"2":{"81":1,"129":1},"4":{"81":1}}],["puppeteer",{"0":{"80":1},"1":{"80":1},"2":{"80":1,"147":1},"4":{"80":1}}],["pug",{"0":{"79":1},"1":{"79":1},"2":{"79":1,"146":1,"156":1},"4":{"79":1}}],["programming",{"0":{"139":1},"1":{"139":1},"2":{"134":1,"139":1},"4":{"139":1}}],["project",{"0":{"139":1,"140":1},"1":{"139":1,"140":1},"2":{"134":2,"139":1,"140":1},"4":{"139":1,"140":1}}],["projects",{"0":{"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":2,"167":2,"168":2,"169":2,"170":2,"171":3,"172":2,"173":1,"174":1},"1":{"171":1,"174":1},"2":{"132":2,"171":1,"173":1,"174":1},"4":{"171":1,"174":1}}],["proxy",{"0":{"78":1},"1":{"78":1},"2":{"78":1,"120":1},"4":{"78":1}}],["protocol",{"0":{"77":1},"1":{"77":1},"2":{"77":1,"121":1,"127":1},"4":{"77":1}}],["prod",{"0":{"76":1},"1":{"76":1},"2":{"76":1,"166":1,"167":2,"168":1},"4":{"76":1}}],["php",{"0":{"73":1},"1":{"73":1},"2":{"73":1,"145":1},"4":{"73":1}}],["pastel",{"0":{"156":1},"1":{"156":1},"2":{"150":5,"156":3,"157":2},"4":{"156":1}}],["parcel",{"0":{"72":1},"1":{"72":1},"2":{"72":1,"166":1},"4":{"72":1}}],["pandas",{"0":{"71":1},"1":{"71":1},"2":{"71":1,"140":1,"144":1},"4":{"71":1}}],["other",{"0":{"201":1},"1":{"201":1}}],["otf",{"0":{"176":1}}],["obsidian",{"0":{"200":1},"1":{"200":1}}],["off",{"2":{"170":1}}],["org",{"2":{"166":1}}],["openai",{"0":{"70":1},"1":{"70":1},"2":{"70":1,"167":2,"168":1},"4":{"70":1}}],["oop",{"0":{"69":1},"1":{"69":1},"2":{"69":1,"128":1,"136":1,"139":1,"141":1,"143":1},"4":{"69":1}}],["oauth",{"0":{"68":1},"1":{"68":1},"2":{"68":1,"166":1,"167":1},"4":{"68":1}}],["tinycolor",{"0":{"195":1},"1":{"195":1}}],["ttf",{"0":{"184":1,"185":1,"186":1,"187":1}}],["ttttt",{"0":{"158":1},"1":{"158":1},"2":{"157":1,"158":3},"4":{"158":1}}],["throw",{"2":{"161":1}}],["threejs",{"0":{"107":1},"1":{"107":1},"2":{"107":1,"161":1},"4":{"107":1}}],["the",{"0":{"172":1},"1":{"172":1},"2":{"161":2,"171":1,"172":1},"4":{"172":1}}],["theme",{"0":{"148":1,"153":1},"1":{"148":1,"153":1},"2":{"148":2,"153":1,"157":2},"4":{"148":1,"153":1}}],["terminal",{"0":{"148":1},"1":{"148":1},"2":{"148":2,"157":1},"4":{"148":1}}],["tensorflow",{"0":{"106":1},"1":{"106":1},"2":{"106":1,"137":1},"4":{"106":1}}],["tools",{"0":{"159":1},"1":{"159":1},"2":{"157":1,"159":2},"4":{"159":1}}],["to",{"2":{"134":1,"157":1}}],["tree",{"0":{"190":1},"1":{"190":1},"2":{"133":1,"137":1,"138":1,"139":1,"140":1,"142":1,"144":1}}],["traffic",{"0":{"60":1},"1":{"60":1},"2":{"60":1,"166":1},"4":{"60":1}}],["typescript",{"0":{"110":1},"1":{"110":1},"2":{"110":1,"165":1},"4":{"110":1}}],["two",{"0":{"109":1},"1":{"109":1},"2":{"109":1,"167":1},"4":{"109":1}}],["turbo",{"0":{"108":1},"1":{"108":1},"2":{"108":1,"167":1},"4":{"108":1}}],["tdd",{"0":{"105":1},"1":{"105":1},"2":{"105":1,"136":1,"143":1,"166":1,"167":1,"169":1},"4":{"105":1}}],["tailwindcss",{"0":{"104":1},"1":{"104":1},"2":{"104":1,"141":1,"156":1,"161":1,"166":1,"167":1,"168":1,"169":1},"4":{"104":1}}],["tag",{"0":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1},"1":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1},"2":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1,"120":6,"121":7,"123":5,"126":4,"127":9,"128":8,"129":7,"130":3,"133":11,"135":6,"136":5,"137":10,"138":2,"139":3,"140":14,"141":17,"142":6,"143":7,"144":6,"145":8,"146":11,"147":5,"148":3,"149":4,"150":6,"151":1,"152":4,"153":2,"154":3,"155":1,"156":14,"158":8,"159":4,"161":6,"162":7,"163":3,"165":14,"166":18,"167":32,"168":18,"169":27,"170":8,"172":9},"4":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1}}],["tags",{"0":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1}}],["minisearch",{"0":{"197":1},"1":{"197":1}}],["minecraft",{"0":{"163":1},"1":{"163":1},"2":{"163":1,"164":1},"4":{"163":1}}],["minesweeper",{"0":{"143":1},"1":{"143":1},"2":{"134":2,"143":2},"4":{"143":1}}],["metadata",{"0":{"204":1},"1":{"204":1}}],["media",{"0":{"189":1,"198":1}}],["mentallyeel",{"2":{"163":3}}],["mozilla",{"2":{"166":1}}],["mc",{"2":{"163":1}}],["mdview",{"0":{"154":1},"1":{"154":1},"2":{"154":2,"157":1},"4":{"154":1}}],["mumble",{"2":{"150":2}}],["music",{"0":{"58":1},"1":{"58":1},"2":{"58":1,"170":1,"172":1},"4":{"58":1}}],["myers",{"0":{"59":1},"1":{"59":1},"2":{"59":1,"169":1},"4":{"59":1}}],["map",{"2":{"163":1}}],["managing",{"0":{"163":1},"1":{"163":1},"2":{"163":1,"164":1},"4":{"163":1}}],["management",{"0":{"19":1,"28":1,"94":1},"1":{"19":1,"28":1,"94":1},"2":{"19":1,"28":1,"94":1,"123":1,"140":1,"150":1,"158":1,"162":1,"163":1},"4":{"19":1,"28":1,"94":1}}],["markdown",{"0":{"153":1},"1":{"153":1},"2":{"153":2,"157":1},"4":{"153":1}}],["matrix",{"2":{"150":3}}],["matplotlib",{"0":{"57":1},"1":{"57":1},"2":{"57":1,"133":1,"137":1,"140":1,"142":1,"144":1},"4":{"57":1}}],["main",{"0":{"203":1},"1":{"203":1},"2":{"133":1,"137":1}}],["machine",{"0":{"56":1,"142":1},"1":{"56":1,"142":1},"2":{"56":1,"133":1,"134":1,"140":1,"142":1},"4":{"56":1,"142":1}}],["lib",{"0":{"175":1,"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"192":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1}}],["litebin",{"0":{"152":1},"1":{"152":1},"2":{"152":2,"157":1},"4":{"152":1}}],["linux",{"0":{"54":1},"1":{"54":1},"2":{"54":1,"123":1,"129":1,"150":1,"151":1,"155":1,"163":1},"4":{"54":1}}],["language",{"0":{"144":1},"1":{"144":1},"2":{"134":1,"144":1},"4":{"144":1}}],["latex",{"0":{"52":1},"1":{"52":1},"2":{"52":1,"133":1,"137":1,"140":1,"142":1},"4":{"52":1}}],["loop",{"0":{"172":1},"1":{"172":1},"2":{"171":1,"172":1},"4":{"172":1}}],["local",{"2":{"134":1}}],["lovejoys",{"0":{"141":1},"1":{"141":1},"2":{"134":2,"141":2},"4":{"141":1}}],["low",{"0":{"55":1},"1":{"55":1},"2":{"55":1,"129":1},"4":{"55":1}}],["learning",{"0":{"56":1,"142":1},"1":{"56":1,"142":1},"2":{"56":1,"133":1,"134":1,"140":1,"142":1},"4":{"56":1,"142":1}}],["level",{"0":{"53":1,"55":1},"1":{"53":1,"55":1},"2":{"53":1,"55":1,"129":1,"170":1},"4":{"53":1,"55":1}}],["n0rt",{"0":{"170":1},"1":{"170":1},"2":{"170":1,"171":1},"4":{"170":1}}],["nixos",{"0":{"155":1},"1":{"155":1},"2":{"155":2,"157":2},"4":{"155":1}}],["natural",{"0":{"144":1},"1":{"144":1},"2":{"134":1,"144":2},"4":{"144":1}}],["name",{"0":{"28":1},"1":{"28":1},"2":{"28":1,"150":1,"158":1,"162":1,"163":1},"4":{"28":1}}],["numpy",{"0":{"67":1},"1":{"67":1},"2":{"67":1,"133":1,"137":1,"140":1},"4":{"67":1}}],["npm",{"0":{"66":1},"1":{"66":1},"2":{"66":1,"146":1,"147":1,"156":1,"167":1,"168":1},"4":{"66":1}}],["note",{"0":{"159":1},"1":{"159":1},"2":{"157":1,"159":2},"4":{"159":1}}],["notebook",{"0":{"51":1},"1":{"51":1},"2":{"51":1,"133":1,"137":1,"140":1,"142":1,"144":1},"4":{"51":1}}],["novel",{"0":{"113":1},"1":{"113":1},"2":{"113":1,"172":1},"4":{"113":1}}],["nodejs",{"0":{"65":1},"1":{"65":1},"2":{"65":1,"146":1,"147":1,"156":1,"165":1,"168":1},"4":{"65":1}}],["nltk",{"0":{"64":1},"1":{"64":1},"2":{"64":1,"144":1},"4":{"64":1}}],["need",{"2":{"134":1}}],["net",{"0":{"112":1},"1":{"112":1},"2":{"112":1,"127":1},"4":{"112":1}}],["networks",{"0":{"62":1},"1":{"62":1},"2":{"62":1,"133":1},"4":{"62":1}}],["networking",{"0":{"61":1},"1":{"61":1},"2":{"61":1,"127":1,"152":1,"166":1},"4":{"61":1}}],["network",{"0":{"60":1},"1":{"60":1},"2":{"60":1,"166":1},"4":{"60":1}}],["nextjs",{"0":{"63":1},"1":{"63":1},"2":{"63":1,"165":1},"4":{"63":1}}],["neural",{"0":{"62":1},"1":{"62":1},"2":{"62":1,"133":1},"4":{"62":1}}],["jam",{"2":{"172":2}}],["java",{"0":{"49":1},"1":{"49":1},"2":{"49":1,"139":1,"143":1},"4":{"49":1}}],["joy",{"2":{"161":1}}],["jupyter",{"0":{"51":1},"1":{"51":1},"2":{"51":1,"133":1,"137":1,"140":1,"142":1,"144":1},"4":{"51":1}}],["json",{"0":{"204":1}}],["js",{"0":{"50":1,"191":1,"192":1,"193":1,"194":1,"195":1,"196":1,"197":1,"199":1},"1":{"50":1},"2":{"50":1,"126":1,"161":1,"162":1,"166":1,"167":1,"168":1,"169":1},"4":{"50":1}}],["io",{"2":{"170":1,"172":1}}],["i3",{"0":{"151":1},"1":{"151":1},"2":{"151":1,"157":1},"4":{"151":1}}],["into",{"2":{"134":1}}],["intelligence",{"2":{"133":1}}],["individual",{"0":{"140":1},"1":{"140":1},"2":{"134":1,"140":2},"4":{"140":1}}],["itch",{"2":{"170":1,"172":1}}],["it",{"2":{"126":1}}],["ict",{"0":{"126":1},"1":{"126":1},"2":{"125":1,"126":1},"4":{"126":1}}],["irc",{"0":{"48":1,"121":1,"127":1},"1":{"48":1,"121":1,"127":1},"2":{"48":1,"121":3,"122":1,"125":1,"127":3},"4":{"48":1,"121":1,"127":1}}],["image",{"0":{"47":1},"1":{"47":1},"2":{"47":1,"128":1,"130":1,"137":1},"4":{"47":1}}],["hiddennet",{"0":{"162":1},"1":{"162":1},"2":{"162":3,"164":1},"4":{"162":1}}],["hack",{"2":{"161":1}}],["hackiest",{"2":{"161":1}}],["hacksussex",{"0":{"149":1,"161":1},"1":{"149":1,"161":1},"2":{"149":2,"157":1,"161":2,"164":1},"4":{"149":1,"161":1}}],["hackathon",{"0":{"43":1},"1":{"43":1},"2":{"43":1,"149":1,"161":1},"4":{"43":1}}],["heythereapp",{"2":{"167":1}}],["heythere",{"0":{"166":2,"167":2},"1":{"166":1,"167":1},"2":{"166":3,"167":1,"171":2},"4":{"166":1,"167":1}}],["hexbot",{"0":{"130":1},"1":{"130":1},"2":{"130":2,"131":1},"4":{"130":1}}],["heroku",{"0":{"44":1},"1":{"44":1},"2":{"44":1,"141":1,"167":1,"169":1},"4":{"44":1}}],["https",{"2":{"120":1,"121":1,"123":1,"126":1,"127":1,"128":1,"129":1,"130":1,"133":1,"134":6,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":6,"151":1,"152":1,"153":1,"154":1,"155":1,"156":2,"157":2,"158":2,"159":1,"161":2,"162":2,"163":3,"165":2,"166":2,"167":1,"168":1,"169":1,"170":1,"172":1}}],["html",{"0":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":2,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"190":2},"1":{"46":1},"2":{"46":1,"126":1,"141":1,"145":1,"148":1,"153":1,"154":1,"158":1,"161":1,"162":1,"167":1,"168":1,"169":1},"4":{"46":1}}],["hotwired",{"0":{"108":1},"1":{"108":1},"2":{"108":1,"167":1},"4":{"108":1}}],["hosting",{"0":{"45":1,"150":1},"1":{"45":1,"150":1},"2":{"45":1,"123":1,"150":2,"157":1},"4":{"45":1,"150":1}}],["global",{"0":{"202":1},"1":{"202":1}}],["graph",{"0":{"175":1,"192":1,"193":1,"194":1,"199":1},"1":{"175":1,"192":1,"193":1,"194":1,"199":1}}],["grabber",{"0":{"120":1},"1":{"120":1},"2":{"120":1,"122":1},"4":{"120":1}}],["gb",{"2":{"166":1}}],["gay",{"2":{"150":1,"163":3}}],["gamejam",{"0":{"36":1},"1":{"36":1},"2":{"36":1,"170":1,"172":1},"4":{"36":1}}],["game",{"0":{"34":1,"35":1},"1":{"34":1,"35":1},"2":{"34":1,"35":1,"135":1,"143":1,"149":1,"161":1,"168":1,"170":3,"172":2},"4":{"34":1,"35":1}}],["ghost",{"0":{"148":1},"1":{"148":1},"2":{"148":1,"150":1,"157":1},"4":{"148":1}}],["gitea",{"2":{"150":1}}],["git",{"2":{"150":1}}],["gitlab",{"2":{"120":2,"121":2,"129":1}}],["github",{"0":{"39":1,"40":1},"1":{"39":1,"40":1},"2":{"39":1,"40":1,"123":2,"126":2,"127":2,"128":2,"129":1,"130":2,"133":2,"134":7,"135":2,"136":2,"137":2,"138":2,"139":2,"140":2,"141":3,"142":2,"143":2,"144":2,"145":2,"146":2,"147":2,"148":3,"149":2,"151":2,"152":2,"153":3,"154":3,"155":2,"156":2,"157":2,"158":2,"159":2,"161":2,"162":2,"165":5,"166":1,"167":1,"169":1},"4":{"39":1,"40":1}}],["gen",{"0":{"47":1},"1":{"47":1},"2":{"47":1,"128":1,"130":1,"137":1},"4":{"47":1}}],["genetic",{"0":{"38":1},"1":{"38":1},"2":{"38":1,"133":1},"4":{"38":1}}],["google",{"2":{"166":1}}],["godot",{"0":{"42":1},"1":{"42":1},"2":{"42":1,"170":1,"172":1},"4":{"42":1}}],["go",{"0":{"41":1},"1":{"41":1},"2":{"41":1,"134":1,"165":1},"4":{"41":1}}],["gdb",{"0":{"37":1},"1":{"37":1},"2":{"37":1,"129":1},"4":{"37":1}}],["favicon",{"0":{"198":1},"1":{"198":1}}],["factor",{"0":{"109":1},"1":{"109":1},"2":{"109":1,"167":1},"4":{"109":1}}],["fonts",{"0":{"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1}}],["folder",{"2":{"134":1}}],["flip",{"2":{"161":2}}],["flipanalytica",{"0":{"161":1},"1":{"161":1},"2":{"161":1,"164":1},"4":{"161":1}}],["fundamentals",{"2":{"142":1}}],["fullstack",{"0":{"33":1},"1":{"33":1},"2":{"33":1,"141":1,"146":1,"156":1},"4":{"33":1}}],["fyp",{"2":{"134":1}}],["file",{"0":{"190":1},"1":{"190":1}}],["finalist",{"0":{"129":1},"1":{"129":1},"2":{"129":1,"131":1},"4":{"129":1}}],["firefox",{"0":{"31":1},"1":{"31":1},"2":{"31":1,"166":3},"4":{"31":1}}],["frontend",{"0":{"32":1},"1":{"32":1},"2":{"32":1,"126":1,"141":1,"146":1,"150":1,"156":1,"165":1},"4":{"32":1}}],["framework",{"0":{"26":1},"1":{"26":1},"2":{"26":1,"167":1},"4":{"26":1}}],["dracula",{"0":{"148":1,"153":1},"1":{"148":1,"153":1},"2":{"148":2,"153":2,"157":2},"4":{"148":1,"153":1}}],["dumpmon",{"0":{"120":1},"1":{"120":1},"2":{"120":2,"122":1},"4":{"120":1}}],["dsa",{"0":{"29":1,"139":1},"1":{"29":1,"139":1},"2":{"29":1,"134":1,"135":1,"136":1,"139":4,"143":1,"144":1,"169":1},"4":{"29":1,"139":1}}],["downloader",{"0":{"146":1},"1":{"146":1},"2":{"146":2,"157":1},"4":{"146":1}}],["dotfiles",{"2":{"151":1}}],["dot",{"2":{"123":1,"126":1,"127":1,"128":1,"130":1,"133":1,"134":5,"135":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"151":1,"152":1,"153":1,"155":1,"156":1,"157":2,"158":1,"159":1,"162":1,"165":2}}],["domain",{"0":{"28":1},"1":{"28":1},"2":{"28":1,"150":1,"158":1,"162":1,"163":1},"4":{"28":1}}],["docker",{"0":{"27":1},"1":{"27":1},"2":{"27":1,"150":1,"152":1,"156":1},"4":{"27":1}}],["django",{"0":{"25":1,"26":1},"1":{"25":1,"26":1},"2":{"25":1,"26":1,"141":1,"167":2,"169":1},"4":{"25":1,"26":1}}],["discovery",{"0":{"129":1},"1":{"129":1},"2":{"129":2,"131":1},"4":{"129":1}}],["discord",{"0":{"24":1},"1":{"24":1},"2":{"24":1,"128":1},"4":{"24":1}}],["diff",{"0":{"59":1},"1":{"59":1},"2":{"59":1,"169":1},"4":{"59":1}}],["diffing",{"0":{"23":1},"1":{"23":1},"2":{"23":1,"169":1},"4":{"23":1}}],["detail",{"2":{"166":1}}],["dead",{"2":{"150":1}}],["debugging",{"0":{"55":1},"1":{"55":1},"2":{"55":1,"129":1},"4":{"55":1}}],["devpost",{"2":{"161":2}}],["dev",{"0":{"35":1},"1":{"35":1},"2":{"35":1,"135":1,"143":1,"149":1,"161":1,"168":1,"170":1,"172":1},"4":{"35":1}}],["devops",{"0":{"22":1},"1":{"22":1},"2":{"22":1,"141":1,"166":1,"167":1,"169":2},"4":{"22":1}}],["decryption",{"0":{"21":1},"1":{"21":1},"2":{"21":1,"129":1},"4":{"21":1}}],["design",{"0":{"13":1,"34":1,"53":1,"138":1},"1":{"13":1,"34":1,"53":1,"138":1},"2":{"13":1,"34":1,"53":1,"134":1,"138":1,"170":2,"172":2},"4":{"13":1,"34":1,"53":1,"138":1}}],["databases",{"2":{"138":1}}],["database",{"0":{"138":1},"1":{"138":1},"2":{"134":1,"138":1},"4":{"138":1}}],["data",{"0":{"19":1,"20":1,"199":1},"1":{"19":1,"20":1,"199":1},"2":{"19":1,"20":1,"139":2,"140":2,"162":1},"4":{"19":1,"20":1}}],["cbe0ae49c52c920fd563",{"0":{"182":1},"1":{"182":1}}],["cb10ffd7684cd9836a05",{"0":{"180":1},"1":{"180":1}}],["c8ba52b05a9ef10f4758",{"0":{"179":1},"1":{"179":1}}],["cpjbhiflomjghkkhedimgpniomoijpjd",{"2":{"166":1}}],["c3er",{"2":{"154":1}}],["custom",{"2":{"150":1}}],["clicker",{"0":{"147":1},"1":{"147":1},"2":{"147":2,"157":1},"4":{"147":1}}],["cluedo",{"2":{"134":1,"136":1}}],["clue",{"0":{"136":1},"1":{"136":1},"2":{"134":2,"136":2},"4":{"136":1}}],["cls",{"2":{"127":1}}],["cyber",{"0":{"129":1},"1":{"129":1},"2":{"129":2,"131":1},"4":{"129":1}}],["cybersecurity",{"0":{"18":1},"1":{"18":1},"2":{"18":1,"120":1,"123":1,"129":1,"140":1,"141":1,"158":1,"167":1},"4":{"18":1}}],["cals",{"0":{"127":1},"1":{"127":1},"2":{"125":1,"127":1},"4":{"127":1}}],["capture",{"0":{"60":1},"1":{"60":1},"2":{"60":1,"166":1},"4":{"60":1}}],["co",{"2":{"167":1,"169":1}}],["codes",{"0":{"156":1},"1":{"156":1},"2":{"150":5,"156":3,"157":2},"4":{"156":1}}],["college",{"0":{"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":2},"1":{"132":1},"2":{"132":3,"174":1},"4":{"132":1}}],["computer",{"0":{"137":1},"1":{"137":1},"2":{"134":1,"137":2},"4":{"137":1}}],["com",{"2":{"120":1,"121":1,"123":1,"126":1,"127":1,"128":1,"129":1,"130":1,"133":1,"134":6,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":2,"158":1,"159":1,"161":2,"162":1,"165":2,"166":1,"168":1}}],["contributer",{"2":{"157":1}}],["contributor",{"0":{"40":1},"1":{"40":1},"2":{"40":1,"148":1,"154":1},"4":{"40":1}}],["config",{"0":{"151":1,"155":1},"1":{"151":1,"155":1},"2":{"151":1,"155":1,"157":2},"4":{"151":1,"155":1}}],["concatbot",{"0":{"128":1},"1":{"128":1},"2":{"128":2,"131":1},"4":{"128":1}}],["concurrency",{"0":{"16":1},"1":{"16":1},"2":{"16":1,"121":1,"127":1,"128":1},"4":{"16":1}}],["css",{"0":{"17":1,"200":1,"201":1,"202":1,"203":1},"1":{"17":1},"2":{"17":1,"126":1,"141":1,"145":1,"148":1,"153":2,"154":1,"156":1,"158":1,"162":1,"168":1,"169":1},"4":{"17":1}}],["cicd",{"0":{"15":1},"1":{"15":1},"2":{"15":1,"141":1,"165":1,"167":1,"169":1},"4":{"15":1}}],["changewatch",{"0":{"169":1},"1":{"169":1},"2":{"169":2,"171":1},"4":{"169":1}}],["challenge",{"0":{"129":1},"1":{"129":1},"2":{"129":2,"131":1},"4":{"129":1}}],["character",{"0":{"13":1},"1":{"13":1},"2":{"13":1,"172":1},"4":{"13":1}}],["checkers",{"0":{"135":1},"1":{"135":1},"2":{"134":2,"135":2},"4":{"135":1}}],["checker",{"2":{"120":1}}],["chromewebstore",{"2":{"166":1}}],["chrome",{"0":{"14":1},"1":{"14":1},"2":{"14":1,"166":2},"4":{"14":1}}],["en",{"2":{"166":1}}],["engineering",{"0":{"89":1,"97":1,"144":1},"1":{"89":1,"97":1,"144":1},"2":{"89":1,"97":1,"127":1,"129":1,"134":2,"136":2,"138":1,"143":1,"144":1,"146":1,"159":1,"166":2,"167":1,"169":1},"4":{"89":1,"97":1,"144":1}}],["element",{"2":{"150":1}}],["etc",{"2":{"134":1}}],["everything",{"2":{"134":1}}],["evaluation",{"2":{"134":1,"141":1}}],["evaluations",{"0":{"141":1},"1":{"141":1},"2":{"134":1,"141":1},"4":{"141":1}}],["express",{"0":{"30":1},"1":{"30":1},"2":{"30":1,"146":1,"156":1},"4":{"30":1}}],["extensions",{"0":{"166":1},"1":{"166":1},"2":{"166":1,"171":1},"4":{"166":1}}],["extension",{"0":{"12":1,"14":1,"31":1},"1":{"12":1,"14":1,"31":1},"2":{"12":1,"14":1,"31":1,"166":4},"4":{"12":1,"14":1,"31":1}}],["email",{"0":{"5":1},"1":{"5":1},"2":{"5":1,"167":1},"4":{"5":1}}],["b5f0f109bc88052d4000",{"0":{"181":1},"1":{"181":1}}],["bizarrepg",{"0":{"168":1},"1":{"168":1},"2":{"168":1,"171":1},"4":{"168":1}}],["behaviour",{"2":{"133":1}}],["blog",{"2":{"150":1}}],["blaseball",{"0":{"147":1},"1":{"147":1},"2":{"147":2,"157":1},"4":{"147":1}}],["blankface",{"2":{"120":1,"121":1,"129":1}}],["blender",{"0":{"8":1},"1":{"8":1},"2":{"8":1,"145":1},"4":{"8":1}}],["browser",{"0":{"11":1,"12":1},"1":{"11":1,"12":1},"2":{"11":1,"12":1,"147":1,"165":2,"166":1,"169":1},"4":{"11":1,"12":1}}],["bouncetechnologies",{"2":{"170":1}}],["bot",{"0":{"10":1,"96":1,"121":1},"1":{"10":1,"96":1,"121":1},"2":{"10":1,"96":1,"121":3,"122":1,"128":1,"167":2},"4":{"10":1,"96":1,"121":1}}],["bootstrap",{"0":{"9":1},"1":{"9":1},"2":{"9":1,"145":1,"146":1},"4":{"9":1}}],["bandcamp",{"0":{"146":1},"1":{"146":1},"2":{"146":2,"157":1},"4":{"146":1}}],["badge",{"2":{"129":1}}],["bash",{"0":{"7":1},"1":{"7":1},"2":{"7":1,"123":1,"167":1,"168":1},"4":{"7":1}}],["backend",{"0":{"6":1},"1":{"6":1},"2":{"6":1,"141":1,"146":1,"156":1,"165":1},"4":{"6":1}}],["analytica",{"2":{"161":2}}],["antique",{"0":{"141":1},"1":{"141":1},"2":{"134":2,"141":2},"4":{"141":1}}],["assignment",{"2":{"134":1,"139":1,"145":1}}],["assignments",{"0":{"125":2,"126":1,"127":1,"133":1,"134":2,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1},"1":{"125":1,"134":1},"2":{"125":1,"132":2,"134":1,"160":1},"4":{"125":1,"134":1}}],["addon",{"2":{"166":1}}],["addons",{"2":{"166":1}}],["adaptive",{"2":{"133":1}}],["admin",{"0":{"0":1},"1":{"0":1},"2":{"0":1,"150":1,"158":1,"163":1,"167":1,"169":1},"4":{"0":1}}],["acquired",{"2":{"133":2}}],["actions",{"0":{"39":1},"1":{"39":1},"2":{"39":1,"141":1,"165":1,"166":1,"167":1,"169":1},"4":{"39":1}}],["aurora",{"2":{"123":1,"126":1,"127":1,"128":1,"130":1,"133":1,"134":5,"135":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"151":1,"152":1,"153":1,"155":1,"156":1,"157":2,"158":1,"159":1,"162":1,"165":2}}],["auth",{"0":{"109":1},"1":{"109":1},"2":{"109":1,"167":1},"4":{"109":1}}],["automation",{"0":{"11":1},"1":{"11":1},"2":{"11":1,"147":1,"165":1,"169":1},"4":{"11":1}}],["automated",{"0":{"5":1},"1":{"5":1},"2":{"5":1,"167":1},"4":{"5":1}}],["algo",{"0":{"59":1},"1":{"59":1},"2":{"59":1,"169":1},"4":{"59":1}}],["algorithms",{"2":{"139":1}}],["algorithm",{"0":{"38":1},"1":{"38":1},"2":{"38":1,"133":1},"4":{"38":1}}],["art",{"0":{"4":1},"1":{"4":1},"2":{"4":1,"170":1,"172":1},"4":{"4":1}}],["application",{"0":{"3":1},"1":{"3":1},"2":{"3":1,"135":1,"143":1,"149":1},"4":{"3":1}}],["api",{"0":{"2":1},"1":{"2":1},"2":{"2":1,"128":1,"130":1,"140":2,"152":1,"156":1,"165":1,"166":1,"167":1,"169":1},"4":{"2":1}}],["aiab",{"0":{"133":1},"1":{"133":1},"2":{"133":2,"134":1},"4":{"133":1}}],["ai",{"0":{"1":1},"1":{"1":1},"2":{"1":1,"133":1,"135":1,"137":1},"4":{"1":1}}]],"serializationVersion":2}
\ No newline at end of file
diff --git a/obsidian/lib/styles/global-variable-styles.css b/obsidian/lib/styles/global-variable-styles.css
new file mode 100644
index 0000000..c017093
--- /dev/null
+++ b/obsidian/lib/styles/global-variable-styles.css
@@ -0,0 +1 @@
+:root body{--line-width:min(40em, calc(100vw - 2em));--line-width-adaptive:min(40em, calc(100vw - 2em));--file-line-width:min(40em, calc(100vw - 2em));--sidebar-width:min(20em, 80vw)}body{--zoom-factor:1!important;--font-text-size:16px}
\ No newline at end of file
diff --git a/obsidian/lib/styles/main-styles.css b/obsidian/lib/styles/main-styles.css
new file mode 100644
index 0000000..b10711c
--- /dev/null
+++ b/obsidian/lib/styles/main-styles.css
@@ -0,0 +1 @@
+body{--color-fade-speed:0.2s}.tree-container{position:relative;height:100%;width:auto;margin-top:3em;margin-bottom:0}.tree-container .tree-header{display:flex;flex-direction:row;align-items:center;position:absolute;top:-3em}.tree-container .tree-header .sidebar-section-header{margin-block:1em;white-space:nowrap}.tree-container:has(.tree-scroll-area:empty){display:none}body .webpage-container .tree-container .tree-scroll-area{width:100%;height:100%;max-height:100%;overflow-y:auto;border-radius:0;position:absolute;margin:0;background-color:transparent}.tree-container .tree-item{display:flex;flex-direction:column;align-items:flex-start;padding:0;padding-block:1px;overflow:hidden!important;flex:none}.tree-container .tree-item-children{padding:0;margin:0;border-left:none;width:100%}.tree-item-title>*{padding:0;margin:0;overflow:hidden;display:inline;text-overflow:ellipsis}.tree-container .tree-item-icon *{color:var(--text-muted);font-family:emoji}.tree-container .tree-item-icon :is(svg,img){-webkit-mask-image-repeat:no-repeat;-webkit-mask-image-position:center;max-width:1.3em;height:100%}.tree-container .tree-item-icon :has(svg){display:contents!important}.tree-container .tree-item-icon{min-width:1.6em;max-width:1.6em;margin-left:2px;display:flex;align-items:center;justify-content:flex-start}.tree-container .tree-item.mod-active>.tree-link>.tree-item-contents{color:var(--interactive-accent)}.tree-container .tree-link{position:relative;display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;border-radius:var(--radius-s);color:var(--nav-item-color);text-decoration-line:none;width:-webkit-fill-available;width:-moz-available;width:fill-available;margin-left:var(--tree-horizontal-spacing)}.tree-container .tree-link:active{color:var(--nav-item-color-active)}.tree-container .tree-item-contents{width:100%;height:100%;margin:0!important;padding:0!important;font-size:unset!important;padding-left:calc(var(--tree-horizontal-spacing) * 2 + var(--collapse-arrow-size))!important;border-radius:var(--radius-s);display:flex!important;flex-direction:row!important;align-items:center!important;color:var(--nav-item-color);transition:background-color .1s}.tree-container .tree-item-title{overflow:hidden;text-overflow:ellipsis!important;text-wrap:nowrap!important;white-space:nowrap!important;position:relative!important;border:none!important;width:100%;width:-webkit-fill-available;width:-moz-available;width:fill-available;background-color:transparent!important;padding-top:calc(var(--tree-vertical-spacing)/ 2)!important;padding-bottom:calc(var(--tree-vertical-spacing)/ 2)!important;margin:0!important;left:0!important;right:0!important;top:0!important;bottom:0!important}.tree-container .tree-item-title::after{right:0;position:absolute!important;margin-right:.5em!important}.tree-container .mod-tree-folder:not(:has(.mod-tree-folder)) .mod-tree-file>.tree-link>.tree-item-contents{padding-left:calc(var(--tree-horizontal-spacing) * 2)!important}.tree-container .collapse-icon{translate:calc(0px - var(--collapse-arrow-size) - var(--tree-horizontal-spacing) * 2) 0;position:absolute;height:100%;padding:var(--tree-horizontal-spacing)}.tree-container .tree-item.mod-tree-folder>.tree-link>.collapse-icon{width:100%}.collapse-icon:hover{color:var(--nav-item-color-hover)}.tree-container .clickable-icon{width:3.2em;height:2.2em}.tree-container .tree-item.is-collapsed>.tree-link>.tree-item-contents>.collapse-icon>svg{transition:transform .1s ease-in-out;transform:rotate(-90deg)}.tree-container .tree-item-contents:hover{color:var(--nav-item-color-hover)}.filtered-out{display:none!important}.tree-container>.tree-scroll-area>* .tree-item{margin-left:calc(var(--tree-horizontal-spacing) * 2 + var(--collapse-arrow-size)/ 2)}.tree-container>.tree-scroll-area>* .tree-item{border-left:var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color)}.tree-container .tree-scroll-area>*>*>.tree-item{margin-left:calc(var(--tree-horizontal-spacing) + var(--collapse-arrow-size)/ 2)}.tree-container:not(.mod-nav-indicator) .tree-scroll-area .tree-item{border-color:transparent!important}.tree-container .tree-item.mod-active{border-color:var(--interactive-accent)!important;box-shadow:2px 0 0 0 var(--interactive-accent) inset;transition:box-shadow .4s ease-in-out}.tree-container .tree-item:hover:not(.mod-active):not(.mod-collapsible):not(:has(.tree-item:hover)):not(.mod-root > * > *){border-left:var(--nav-indentation-guide-width) solid var(--nav-item-color-hover)}.tree-container .mod-active>.tree-link,.tree-container .tree-link:hover{background-color:var(--nav-item-background-hover);cursor:pointer}.webpage-container .tree-container .tree-item:not(.mod-collapsible)>.tree-item-children>.tree-item>.tree-link,.webpage-container .tree-container>.tree-scroll-area>.tree-item>.tree-link{margin-left:0!important}.tree-container.outline-tree .tree-item[data-depth='1']>.tree-link>.tree-item-contents{font-weight:900;font-size:1.1em;margin-left:0;padding-left:1em}.nav-folder.mod-root .nav-folder>.nav-folder-children{padding:0!important;margin:0!important;border:none!important}.nav-file{border-radius:0!important}.nav-folder.mod-root .nav-folder>.nav-folder-children{border-radius:var(--radius-s)!important}.webpage-container .nav-file-tag{margin-right:1em}.nav-file-title-content,.nav-folder-title-content{margin-bottom:unset!important;display:unset!important;border-radius:unset!important;cursor:unset!important;font-size:unset!important;font-weight:unset!important;line-height:unset!important;padding:unset!important}#webpage-icon :is(svg,img){width:100%;height:100%;box-shadow:none!important;border:none!important;border-radius:0!important;stroke:currentColor}#webpage-icon :has(:is(svg,img)){display:contents!important}#webpage-icon:has(:is(svg,img)){font-size:40px;width:40px;height:40px}#webpage-icon{font-size:40px;margin-bottom:8px;font-family:emoji;width:fit-content}body.show-inline-title .page-title{font-weight:var(--inline-title-weight);font-size:var(--inline-title-size);font-style:var(--inline-title-style);font-variant:var(--inline-title-variant);font-family:var(--inline-title-font);letter-spacing:-.015em;color:var(--inline-title-color)}.heading{position:relative}.heading-wrapper.is-collapsed>.heading::after{content:"..."!important;display:inline-block!important;position:absolute!important;margin:0!important;padding:0!important;margin-left:.3em!important;color:var(--text-muted)}.heading-wrapper{transition:height ease-in-out,margin-bottom ease-in-out;transition-duration:.2s;display:flex;flex-direction:column;position:relative}html>body>.webpage-container>.document-container>.markdown-preview-view>.markdown-preview-sizer>div{margin-inline:0!important;margin:0!important;padding:0!important;width:100%;max-width:100%}.markdown-rendered .heading-wrapper:has(> .heading-children > div:last-child > :is(p,pre,table,ul,ol))+.heading-wrapper>.heading:first-child{margin-top:var(--heading-spacing)}.heading-children{transition:height ease-in-out,margin-bottom ease-in-out;transition-duration:.2s;display:flow;position:relative;contain:inline-size}.heading-children.is-collapsed{padding-top:0}.heading-wrapper.is-animating>.heading-children,.heading-wrapper.is-collapsed>.heading-children{overflow:hidden;overflow:clip}.heading-wrapper>.heading>.heading-after{display:none}.heading-wrapper.is-collapsed>.heading>.heading-after{display:inline-block;margin-left:.3em;opacity:.4;font-size:1em;cursor:auto;user-select:none}.heading-wrapper.is-hidden>*{display:none}.heading-wrapper.is-hidden{visibility:hidden}.collapse-icon:not(.list-collapse-indicator) svg.svg-icon{color:var(--nav-collapse-icon-color);width:var(--collapse-arrow-size);height:var(--collapse-arrow-size);transition:transform .1s ease-in-out 0s;stroke-width:4px;min-width:10px;min-height:10px}div.is-collapsed>*>.heading-collapse-indicator.collapse-icon>svg{transition:transform .1s ease-in-out;transform:rotate(-90deg)}.heading-wrapper .heading-collapse-indicator{opacity:0;transition:opacity .15s ease-in-out;position:absolute;z-index:1;padding:0!important;padding-left:40px!important;padding-right:40px!important;left:-40px!important}.heading-wrapper .heading-collapse-indicator:hover,.heading:hover>.heading-collapse-indicator{opacity:1}.heading-wrapper-span{position:absolute;width:200vw;height:calc(100% + var(--p-spacing) * 2);top:calc(0px - var(--p-spacing));left:-100vw;z-index:-1}.markdown-embed .markdown-embed-content .markdown-preview-view .heading-wrapper-span{width:100%}.theme-toggle-container{--toggle-width:3.5em;--toggle-height:1.75em;--border-radius:calc(var(--toggle-height) / 2);--handle-width:calc(var(--toggle-height) * 0.65);--handle-radius:calc(var(--handle-width) / 2);--handle-margin:calc((var(--toggle-height) / 2.0) - var(--handle-radius));--handle-translation:calc(var(--toggle-width) - var(--handle-width) - (var(--handle-margin) * 2));display:inline-block;cursor:pointer}.clickable-icon,.sidebar-section-header{transition:color var(--color-fade-speed) ease-in-out}@keyframes toggle-slide-right{0%{width:var(--handle-width);transform:translateX(0)}50%{width:calc(var(--toggle-width) * .5)}90%{width:var(--handle-width)}100%{transform:translateX(var(--handle-translation))}}@keyframes toggle-slide-left{0%{width:var(--handle-width);transform:translateX(calc(var(--handle-translation) - ((var(--toggle-width) * .33) - var(--handle-width))))}70%{width:calc(var(--toggle-width) * .5)}100%{width:var(--handle-width);transform:translateX(0)}}@keyframes toggle-expand-right{0%{width:var(--handle-width)}100%{width:calc(var(--toggle-width) * .33)}}@keyframes toggle-expand-left{0%{width:var(--handle-width);transform:translateX(var(--handle-translation))}100%{width:calc(var(--toggle-width) * .33);transform:translateX(calc(var(--handle-translation) - ((var(--toggle-width) * .33) - var(--handle-width))))}}@keyframes toggle-contract{0%{width:calc(var(--toggle-width) * .33)}100%{width:var(--handle-width)}}.theme-toggle-input{display:none;z-index:1000}.toggle-background{position:relative;width:var(--toggle-width);height:var(--toggle-height);border-radius:var(--border-radius);background-color:var(--background-modifier-border);transition:background-color var(--color-fade-speed);z-index:1000;animation-duration:.2s}.toggle-background::before{content:"";position:absolute;left:var(--handle-margin);top:var(--handle-margin);height:var(--handle-width);width:var(--handle-width);border-radius:var(--handle-radius);background-color:var(--text-normal);box-shadow:inset 0 1px 1px rgba(0,0,0,.2);animation:toggle-slide-left ease-in-out normal both;animation-duration:inherit;z-index:1000}.theme-toggle-input:checked~.toggle-background::before{animation:toggle-slide-right ease-in-out normal both;animation-duration:inherit}.theme-toggle-input:active~.toggle-background::before{animation:toggle-expand-right ease-in-out normal both;animation-duration:inherit}.theme-toggle-input:active:checked~.toggle-background::before{animation:toggle-expand-left ease-in-out normal both;animation-duration:inherit}.toggle-background::after{content:"";position:absolute;right:var(--handle-margin);top:calc(var(--handle-margin));height:var(--handle-width);width:var(--handle-width);transition:transform .3s;background:url('data:image/svg+xml,') no-repeat center center;transform:scale(.9)}.theme-toggle-input:checked~.toggle-background::after{transform:translateX(calc(var(--handle-translation) * -1)) scale(.9);background:url('data:image/svg+xml,') no-repeat center center}.graph-view-wrapper{--graph-view-max-height:35vh}#graph-canvas{width:100%;height:100%;aspect-ratio:1;transition:opacity .2s ease-in-out}.graph-view-container.expanded{position:fixed;width:90%;height:90%;max-height:unset;right:5%;top:5%;background-color:var(--background-secondary);z-index:100}body:is(.is-phone,.is-tablet) .graph-view-container.expanded{width:95%;height:95%;right:2.5%;top:2.5%}.graph-view-container{position:relative;width:100%;aspect-ratio:1;max-height:var(--graph-view-max-height);display:flex;transition:background-color var(--color-fade-speed) ease-in-out;touch-action:none;border:1px solid var(--modal-border-color);border-radius:var(--modal-radius);overflow:hidden}.graph-icon{cursor:pointer;color:var(--text-muted)}.graph-view-container .graph-icon>svg{width:24px;height:24px;background-color:var(--color-base-00);outline-width:6px;outline-color:var(--color-base-00);outline-offset:-1px;outline-style:solid;border-radius:100px;margin:10px;transition:outline-color,background-color;transition-timing-function:ease-in-out;transition-duration:var(--color-fade-speed)}.graph-view-placeholder{padding:0;width:100%;aspect-ratio:1;max-height:var(--graph-view-max-height);position:relative;flex:none}.graph-view-placeholder:has(.expanded){border-radius:var(--modal-radius);border:1px solid var(--modal-border-color)}.scale-down{transition:transform .2s ease-in-out;transform:scale(.9)}.scale-up{transition:transform .2s ease-in-out;transform:scale(1)}.graph-expand{position:absolute;top:5px;right:5px}body :is(.canvas-node-container,.canvas-wrapper){cursor:unset!important}.canvas{translate:0 0;scale:1 1;will-change:translate,scale}.canvas-controls{display:none;cursor:default!important}.canvas-card-menu{display:none;cursor:default!important}.canvas-node-content-blocker{pointer-events:none}body.is-phone .sidebar{font-size:1.15em;--tree-vertical-spacing:0.9em;--sidebar-width:85vw!important}body.is-phone{--collapse-arrow-size:13px;--tree-vertical-spacing:0.8em;--tree-horizontal-spacing:0.5em}body.is-phone .heading-wrapper .heading-collapse-indicator{transition:transform .2s ease-in-out .2s}.loading-icon{--width:80px;--height:80px;display:inline-block;position:fixed;left:calc(50% - var(--width)/ 2);top:calc(50% - var(--height)/ 2);width:var(--width);height:var(--height);opacity:0;transition:opacity .5s ease-in-out;pointer-events:none}.loading-icon.show{opacity:1}.loading-icon div{position:absolute;top:33px;width:13px;height:13px;border-radius:50%;background:var(--interactive-accent);animation-timing-function:cubic-bezier(0,1,1,0)}.loading-icon div:first-child{left:8px;animation:lds-ellipsis1 .6s infinite}.loading-icon div:nth-child(2){left:8px;animation:lds-ellipsis2 .6s infinite}.loading-icon div:nth-child(3){left:32px;animation:lds-ellipsis2 .6s infinite}.loading-icon div:nth-child(4){left:56px;animation:lds-ellipsis3 .6s infinite}.loading-icon:not(.show) div{animation-play-state:paused}@keyframes lds-ellipsis1{0%{transform:scale(0)}100%{transform:scale(1)}}@keyframes lds-ellipsis3{0%{transform:scale(1)}100%{transform:scale(0)}}@keyframes lds-ellipsis2{0%{transform:translate(0,0)}100%{transform:translate(24px,0)}}@media print{body .webpage-container .document-container *{overflow:visible!important;overflow-y:visible!important;overflow-x:visible!important}html body.publish :is(.sidebar,script,style,include){display:none!important}:root,html body.publish>:is(.webpage-container,.document-container,.markdown-preview-view):not(script,style,include){display:contents!important}:root,html body.publish .document-container>.markdown-preview-view{background-color:transparent!important}body{display:inline!important;background:var(--background-primary)}.document-container>.markdown-preview-view>.markdown-preview-sizer{padding:0!important;margin:0!important;padding:var(--file-margins)!important;padding-bottom:0!important}html body.publish :is(.document-container,.markdown-preview-view){margin:0!important;padding:0!important}}.tree-hint-label{font-size:var(--font-smallest);color:var(--text-accent);width:100%;width:-webkit-fill-available;width:-moz-available;width:fill-available;white-space:pre-wrap;text-decoration-line:none}.tree-hint-label:hover{text-decoration-line:underline}.tree-hint-container{width:100%;padding-left:calc(var(--tree-horizontal-spacing) * 2 + var(--collapse-arrow-size));padding-bottom:calc(var(--tree-vertical-spacing)/ 2);display:flex;flex-direction:column}.tree-container .mod-tree-folder:not(:has(.mod-tree-folder)) .mod-tree-file>.tree-link>.tree-hint-container{padding-left:calc(var(--tree-horizontal-spacing) * 2)}.tree-item-contents:has(.tree-item-icon)+.tree-hint-container{margin-left:calc(1.6em + 2px)}a.tree-hint-label:hover{text-decoration-line:underline}.search-mark{margin:0!important;padding:0!important;scroll-margin:2em!important}.search-input-container:has(+ #search-results)>input[type=search]{border-bottom-left-radius:0;border-bottom-right-radius:0}input[type=search]{box-shadow:none!important;height:2.5em;font-size:1em;transition:background,background-color,border;transition-duration:var(--color-fade-speed);transition-timing-function:ease-in-out}.search-input-container{width:100%!important}.search-input-container::before{mask-image:url("data:image/svg+xml,");mask-repeat:no-repeat;top:50%;transform:translateY(-50%)}.sidebar .sidebar-handle:hover~.sidebar-content,.sidebar.is-resizing .sidebar-content{box-shadow:0 0 0 var(--divider-width-hover) var(--divider-color-hover)}.sidebar-handle{width:min(max(calc(var(--sidebar-margin)/ 2),3px),12px);height:calc(100vh - 2 * var(--radius-l));margin-top:var(--radius-l);margin-bottom:var(--radius-l);top:0;position:absolute;cursor:ew-resize;z-index:1;transition:background-color .2s ease-in-out}.sidebar-left .sidebar-handle{right:0}.sidebar-right .sidebar-handle{left:0}.nav-folder-children .nav-folder-title-content::before{margin-right:.5em}.tree-item::before{margin-left:calc(var(--tree-horizontal-spacing) - .3em)}.tree-item-contents:has(.tree-item-icon) .tree-item-title::before,.tree-item-contents:has(.tree-item-icon)::before,.tree-item:has(.tree-item-contents > .tree-item-icon)::before{display:none!important}.anp-simple-rainbow-color-toggle.anp-simple-rainbow-indentation-toggle .tree-container.file-tree .tree-item{border-color:rgba(var(--rainbow-folder-color),.5)}.anp-collapse-folders .tree-container .tree-item .collapse-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 24' fill='none' stroke='currentColor' stroke-linejoin='round' stroke-linecap='round' stroke-width='2'%3E%3Cpath d='M6 14l1.45-2.9A2 2 0 0 1 9.24 10H22a2 2 0 0 1 1.94 2.5l-1.55 6a2 2 0 0 1-1.94 1.5H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2h3.93a2 2 0 0 1 1.66.9l.82 1.2a2 2 0 0 0 1.66.9H20a2 2 0 0 1 2 2v2'/%3E%3C/svg%3E%0A");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 24' fill='none' stroke='currentColor' stroke-linejoin='round' stroke-linecap='round' stroke-width='2'%3E%3Cpath d='M6 14l1.45-2.9A2 2 0 0 1 9.24 10H22a2 2 0 0 1 1.94 2.5l-1.55 6a2 2 0 0 1-1.94 1.5H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2h3.93a2 2 0 0 1 1.66.9l.82 1.2a2 2 0 0 0 1.66.9H20a2 2 0 0 1 2 2v2'/%3E%3C/svg%3E%0A");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;background-color:currentColor;display:flex;flex-basis:100%;height:16px;width:17px}.anp-collapse-folders .tree-container .tree-item.is-collapsed .collapse-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 24' fill='none' stroke='currentColor' stroke-linejoin='round' stroke-linecap='round' stroke-width='2'%3E%3Cpath d='M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2z'/%3E%3Cpath d='M2 10h20' /%3E%3C/svg%3E%0A");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 24' fill='none' stroke='currentColor' stroke-linejoin='round' stroke-linecap='round' stroke-width='2'%3E%3Cpath d='M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2z'/%3E%3Cpath d='M2 10h20' /%3E%3C/svg%3E%0A")}.anp-file-icons .nav-file .nav-file-title::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E%0A");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z'/%3E%3Cpath d='M14 2v6h6'/%3E%3C/svg%3E%0A");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;background-color:currentColor;content:"";display:flex;flex-shrink:0;height:var(--size-4-4);margin-left:calc(-1 * var(--size-4-5));opacity:var(--icon-opacity);position:absolute;width:var(--size-4-4)}.anp-collapse-folders .tree-container .tree-item .collapse-icon:hover{color:currentColor}.anp-collapse-folders .tree-container .tree-item .collapse-icon svg{display:none}.document-container .kanban-plugin{position:absolute;padding:0;margin:0;height:100%}.document-container .kanban-plugin{font-family:var(--font-text, var(--default-font));font-size:.875rem;line-height:var(--line-height-tight);width:unset;overflow-y:unset;overflow-wrap:unset;color:unset;user-select:unset;-webkit-user-select:unset}.document-container .kanban-plugin__item-button-wrapper,.kanban-plugin__item-postfix-button.clickable-icon,.kanban-plugin__lane-grip,.kanban-plugin__lane-settings-button.clickable-icon{display:none}.excalidraw-plugin rect,.excalidraw-svg rect{fill:transparent}body.theme-dark .excalidraw-plugin svg.dark,body.theme-dark .excalidraw-svg svg.dark,body.theme-light .excalidraw-plugin svg.light,body.theme-light .excalidraw-svg svg.light{filter:invert(93%) hue-rotate(180deg)}.excalidraw-plugin>svg{width:100%;height:100%}.excalidraw-plugin{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;padding:10px}.columnParent{display:flex;padding:15px 20px;flex-wrap:wrap;gap:20px}.columnParent{white-space:normal}.columnChild{flex-grow:1;flex-basis:0px}.obsidian-banner .lock-button{display:none}.markdown-preview-view:has(.obsidian-banner-wrapper){padding-top:0!important}.view-content:has(.mm-mindmap){overflow-y:none}.view-content .mm-mindmap{transform:scale(1);translate:-4000px -4000px;top:70%;left:50%;position:absolute;overflow:hidden;width:100vw}
\ No newline at end of file
diff --git a/obsidian/lib/styles/obsidian.css b/obsidian/lib/styles/obsidian.css
new file mode 100644
index 0000000..7b973ff
--- /dev/null
+++ b/obsidian/lib/styles/obsidian.css
@@ -0,0 +1 @@
+:root{--highlight-bg-color:rgba(180, 0, 170, 1);--highlight-selected-bg-color:rgba(0, 100, 0, 1)}:root{--annotation-unfocused-field-background:url("data:image/svg+xml; charset=UTF-8,");--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:transparent;--input-disabled-border-color:transparent;--input-hover-border-color:black;--link-outline:none}:root{--xfa-unfocused-field-background:url("data:image/svg+xml; charset=UTF-8,");--xfa-focus-outline:auto}:root{--viewer-container-height:0;--pdfViewer-padding-bottom:0;--page-margin:1px auto -8px;--page-border:9px solid transparent;--spreadHorizontalWrapped-margin-LR:-3.5px;--loading-icon-delay:400ms}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translateX(-100%)}.hiddenCopyElement{position:absolute;top:0;left:0;width:0;height:0;display:none}.spread{margin-left:3.5px;margin-right:3.5px;text-align:center}.spread{white-space:nowrap}.spread .dummyPage,.spread .page{display:inline-block;vertical-align:middle}body{--anim-duration-none:0;--anim-duration-superfast:70ms;--anim-duration-fast:140ms;--anim-duration-moderate:300ms;--anim-duration-slow:560ms;--anim-motion-smooth:cubic-bezier(0.45, 0.05, 0.55, 0.95);--anim-motion-delay:cubic-bezier(0.65, 0.05, 0.36, 1);--anim-motion-jumpy:cubic-bezier(0.68, -0.55, 0.27, 1.55);--anim-motion-swing:cubic-bezier(0, 0.55, 0.45, 1);--blockquote-border-thickness:2px;--blockquote-border-color:var(--interactive-accent);--blockquote-font-style:normal;--blockquote-color:inherit;--blockquote-background-color:transparent;--bold-weight:var(--font-semibold);--bold-color:inherit;--border-width:1px;--button-radius:var(--input-radius);--callout-border-width:0px;--callout-border-opacity:0.25;--callout-padding:var(--size-4-3) var(--size-4-3) var(--size-4-3) var(--size-4-6);--callout-radius:var(--radius-s);--callout-blend-mode:var(--highlight-mix-blend-mode);--callout-title-color:inherit;--callout-title-padding:0;--callout-title-size:inherit;--callout-content-padding:0;--callout-content-background:transparent;--callout-bug:var(--color-red-rgb);--callout-default:var(--color-blue-rgb);--callout-error:var(--color-red-rgb);--callout-example:var(--color-purple-rgb);--callout-fail:var(--color-red-rgb);--callout-important:var(--color-cyan-rgb);--callout-info:var(--color-blue-rgb);--callout-question:var(--color-orange-rgb);--callout-success:var(--color-green-rgb);--callout-summary:var(--color-cyan-rgb);--callout-tip:var(--color-cyan-rgb);--callout-todo:var(--color-blue-rgb);--callout-warning:var(--color-orange-rgb);--callout-quote:158,158,158;--canvas-background:var(--background-primary);--canvas-card-label-color:var(--text-faint);--canvas-color-1:var(--color-red-rgb);--canvas-color-2:var(--color-orange-rgb);--canvas-color-3:var(--color-yellow-rgb);--canvas-color-4:var(--color-green-rgb);--canvas-color-5:var(--color-cyan-rgb);--canvas-color-6:var(--color-purple-rgb);--canvas-dot-pattern:var(--color-base-30);--checkbox-radius:var(--radius-s);--checkbox-size:var(--font-text-size);--checkbox-marker-color:var(--background-primary);--checkbox-color:var(--interactive-accent);--checkbox-color-hover:var(--interactive-accent-hover);--checkbox-border-color:var(--text-faint);--checkbox-border-color-hover:var(--text-muted);--checkbox-margin-inline-start:0.85em;--checklist-done-decoration:line-through;--checklist-done-color:var(--text-muted);--code-white-space:pre-wrap;--code-radius:var(--radius-s);--code-size:var(--font-smaller);--code-background:var(--background-primary-alt);--code-normal:var(--text-muted);--code-comment:var(--text-faint);--code-function:var(--color-yellow);--code-important:var(--color-orange);--code-keyword:var(--color-pink);--code-operator:var(--color-red);--code-property:var(--color-cyan);--code-punctuation:var(--text-muted);--code-string:var(--color-green);--code-tag:var(--color-red);--code-value:var(--color-purple);--collapse-icon-color:var(--text-faint);--collapse-icon-color-collapsed:var(--text-accent);--cursor:default;--cursor-link:pointer;--dialog-width:560px;--dialog-max-width:80vw;--dialog-max-height:85vh;--divider-color:var(--background-modifier-border);--divider-color-hover:var(--interactive-accent);--divider-width:1px;--divider-width-hover:3px;--divider-vertical-height:calc(100% - var(--header-height));--drag-ghost-background:rgba(0, 0, 0, 0.85);--drag-ghost-text-color:#fff;--embed-max-height:4000px;--embed-canvas-max-height:400px;--embed-background:inherit;--embed-border-left:2px solid var(--interactive-accent);--embed-border-right:none;--embed-border-top:none;--embed-border-bottom:none;--embed-padding:0 0 0 var(--size-4-6);--embed-font-style:inherit;--embed-block-shadow-hover:0 0 0 1px var(--background-modifier-border),inset 0 0 0 1px var(--background-modifier-border);--file-line-width:700px;--file-folding-offset:24px;--file-margins:var(--size-4-8);--file-header-font-size:var(--font-ui-small);--file-header-font-weight:400;--file-header-border:var(--border-width) solid transparent;--file-header-justify:center;--font-smallest:0.8em;--font-smaller:0.875em;--font-small:0.933em;--font-ui-smaller:12px;--font-ui-small:13px;--font-ui-medium:15px;--font-ui-large:20px;--font-thin:100;--font-extralight:200;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--footnote-size:var(--font-smaller);--graph-controls-width:240px;--graph-text:var(--text-normal);--graph-line:var(--color-base-35, var(--background-modifier-border-focus));--graph-node:var(--text-muted);--graph-node-unresolved:var(--text-faint);--graph-node-focused:var(--text-accent);--graph-node-tag:var(--color-green);--graph-node-attachment:var(--color-yellow);--heading-formatting:var(--text-faint);--heading-spacing:calc(var(--p-spacing) * 2.5);--h1-color:inherit;--h2-color:inherit;--h3-color:inherit;--h4-color:inherit;--h5-color:inherit;--h6-color:inherit;--h1-font:inherit;--h2-font:inherit;--h3-font:inherit;--h4-font:inherit;--h5-font:inherit;--h6-font:inherit;--h1-line-height:1.2;--h2-line-height:1.2;--h3-line-height:1.3;--h4-line-height:1.4;--h5-line-height:var(--line-height-normal);--h6-line-height:var(--line-height-normal);--h1-size:1.802em;--h2-size:1.602em;--h3-size:1.424em;--h4-size:1.266em;--h5-size:1.125em;--h6-size:1em;--h1-style:normal;--h2-style:normal;--h3-style:normal;--h4-style:normal;--h5-style:normal;--h6-style:normal;--h1-variant:normal;--h2-variant:normal;--h3-variant:normal;--h4-variant:normal;--h5-variant:normal;--h6-variant:normal;--h1-weight:700;--h2-weight:600;--h3-weight:600;--h4-weight:600;--h5-weight:600;--h6-weight:600;--header-height:40px;--hr-color:var(--background-modifier-border);--hr-thickness:2px;--icon-size:var(--icon-m);--icon-stroke:var(--icon-m-stroke-width);--icon-xs:14px;--icon-s:16px;--icon-m:18px;--icon-l:18px;--icon-xl:32px;--icon-xs-stroke-width:2px;--icon-s-stroke-width:2px;--icon-m-stroke-width:1.75px;--icon-l-stroke-width:1.75px;--icon-xl-stroke-width:1.25px;--icon-color:var(--text-muted);--icon-color-hover:var(--text-muted);--icon-color-active:var(--text-accent);--icon-color-focused:var(--text-normal);--icon-opacity:0.85;--icon-opacity-hover:1;--icon-opacity-active:1;--clickable-icon-radius:var(--radius-s);--indentation-guide-width:1px;--indentation-guide-width-active:1px;--indentation-guide-color:rgba(var(--mono-rgb-100), 0.12);--indentation-guide-color-active:rgba(var(--mono-rgb-100), 0.3);--indentation-guide-editing-indent:0.85em;--indentation-guide-reading-indent:-0.85em;--indentation-guide-source-indent:0.25em;--inline-title-color:var(--h1-color);--inline-title-font:var(--h1-font);--inline-title-line-height:var(--h1-line-height);--inline-title-size:var(--h1-size);--inline-title-style:var(--h1-style);--inline-title-variant:var(--h1-variant);--inline-title-weight:var(--h1-weight);--inline-title-margin-bottom:0.5em;--input-height:30px;--input-radius:5px;--input-font-weight:var(--font-normal);--input-border-width:1px;--italic-color:inherit;--italic-weight:inherit;--layer-cover:5;--layer-sidedock:10;--layer-status-bar:15;--layer-popover:30;--layer-slides:45;--layer-modal:50;--layer-notice:60;--layer-menu:65;--layer-tooltip:70;--layer-dragged-item:80;--line-height-normal:1.5;--line-height-tight:1.3;--link-color:var(--text-accent);--link-color-hover:var(--text-accent-hover);--link-decoration:underline;--link-decoration-hover:underline;--link-decoration-thickness:auto;--link-external-color:var(--text-accent);--link-external-color-hover:var(--text-accent-hover);--link-external-decoration:underline;--link-external-decoration-hover:underline;--link-external-filter:none;--link-unresolved-color:var(--text-accent);--link-unresolved-opacity:0.7;--link-unresolved-filter:none;--link-unresolved-decoration-style:solid;--link-unresolved-decoration-color:hsla(var(--interactive-accent-hsl), 0.3);--list-indent:2.25em;--list-indent-editing:0.75em;--list-indent-source:0;--list-spacing:0.075em;--list-marker-color:var(--text-faint);--list-marker-color-hover:var(--text-muted);--list-marker-color-collapsed:var(--text-accent);--list-bullet-border:none;--list-bullet-radius:50%;--list-bullet-size:0.3em;--list-bullet-transform:none;--list-numbered-style:decimal;--nav-item-size:var(--font-ui-small);--nav-item-color:var(--text-muted);--nav-item-color-hover:var(--text-normal);--nav-item-color-active:var(--text-normal);--nav-item-color-selected:var(--text-normal);--nav-item-color-highlighted:var(--text-accent-hover);--nav-item-background-hover:var(--background-modifier-hover);--nav-item-background-active:var(--background-modifier-hover);--nav-item-background-selected:hsla(var(--color-accent-hsl), 0.15);--nav-item-padding:var(--size-4-1) var(--size-4-2) var(--size-4-1) var(--size-4-6);--nav-item-parent-padding:var(--nav-item-padding);--nav-item-children-padding-left:var(--size-2-2);--nav-item-children-margin-left:var(--size-4-3);--nav-item-weight:inherit;--nav-item-weight-hover:inherit;--nav-item-weight-active:inherit;--nav-item-white-space:nowrap;--nav-indentation-guide-width:var(--indentation-guide-width);--nav-indentation-guide-color:var(--indentation-guide-color);--nav-collapse-icon-color:var(--collapse-icon-color);--nav-collapse-icon-color-collapsed:var(--text-faint);--nav-heading-color:var(--text-normal);--nav-heading-color-hover:var(--text-normal);--nav-heading-color-collapsed:var(--text-faint);--nav-heading-color-collapsed-hover:var(--text-muted);--nav-heading-weight:var(--font-medium);--nav-heading-weight-hover:var(--font-medium);--metadata-background:transparent;--metadata-display-reading:block;--metadata-display-editing:block;--metadata-max-width:none;--metadata-padding:var(--size-4-2) 0;--metadata-border-color:var(--background-modifier-border);--metadata-border-radius:0;--metadata-border-width:0;--metadata-divider-color:var(--background-modifier-border);--metadata-divider-color-hover:transparent;--metadata-divider-color-focus:transparent;--metadata-divider-width:0;--metadata-gap:3px;--metadata-property-padding:0;--metadata-property-radius:6px;--metadata-property-background:transparent;--metadata-property-background-hover:transparent;--metadata-property-background-active:var(--background-modifier-hover);--metadata-label-background-hover:transparent;--metadata-label-background-active:var(--background-modifier-hover);--metadata-label-font-size:var(--font-smaller);--metadata-label-font-weight:inherit;--metadata-label-text-color:var(--text-muted);--metadata-label-text-color-hover:var(--text-muted);--metadata-label-width:9em;--metadata-input-height:calc(var(--font-text-size) * 1.75);--metadata-input-text-color:var(--text-normal);--metadata-input-font-size:var(--font-smaller);--metadata-input-background:transparent;--metadata-input-background-hover:transparent;--metadata-input-background-active:var(--background-modifier-hover);--metadata-sidebar-label-font-size:var(--font-ui-small);--metadata-sidebar-input-font-size:var(--font-ui-small);--modal-background:var(--background-primary);--modal-width:90vw;--modal-height:85vh;--modal-max-width:1100px;--modal-max-height:1000px;--modal-max-width-narrow:800px;--modal-border-width:var(--border-width);--modal-border-color:var(--color-base-40, var(--background-modifier-border-focus));--modal-radius:var(--radius-l);--modal-community-sidebar-width:280px;--pill-color:var(--text-muted);--pill-color-hover:var(--text-normal);--pill-color-remove:var(--text-faint);--pill-color-remove-hover:var(--text-accent);--pill-decoration:none;--pill-decoration-hover:none;--pill-background:transparent;--pill-background-hover:transparent;--pill-border-color:var(--background-modifier-border);--pill-border-color-hover:var(--background-modifier-border-hover);--pill-border-width:var(--border-width);--pill-padding-x:0.65em;--pill-padding-y:0.25em;--pill-radius:2em;--pill-weight:inherit;--p-spacing:1rem;--p-spacing-empty:0rem;--pdf-background:var(--background-primary);--pdf-page-background:var(--background-primary);--pdf-shadow:0 0 0 1px rgba(0, 0, 0, 0.05),0 2px 8px rgba(0, 0, 0, 0.1);--pdf-spread-shadow:0 0 0 1px rgba(0, 0, 0, 0.05);--pdf-sidebar-background:var(--background-primary);--pdf-thumbnail-shadow:0 0 0 1px rgba(0, 0, 0, 0.15),0 2px 8px rgba(0, 0, 0, 0.2);--popover-width:450px;--popover-height:400px;--popover-max-height:70vh;--popover-pdf-width:600px;--popover-pdf-height:800px;--popover-font-size:var(--font-text-size);--prompt-input-height:40px;--prompt-width:700px;--prompt-max-width:80vw;--prompt-max-height:70vh;--prompt-border-width:var(--border-width);--prompt-border-color:var(--color-base-40, var(--background-modifier-border-focus));--radius-s:4px;--radius-m:8px;--radius-l:12px;--radius-xl:16px;--ribbon-background:var(--background-secondary);--ribbon-background-collapsed:var(--background-primary);--ribbon-width:44px;--ribbon-padding:var(--size-4-2) var(--size-4-1) var(--size-4-3);--scrollbar-active-thumb-bg:rgba(var(--mono-rgb-100), 0.2);--scrollbar-bg:rgba(var(--mono-rgb-100), 0.05);--scrollbar-thumb-bg:rgba(var(--mono-rgb-100), 0.1);--search-clear-button-color:var(--text-muted);--search-clear-button-size:13px;--search-icon-color:var(--text-muted);--search-icon-size:18px;--search-result-background:var(--background-primary);--size-2-1:2px;--size-2-2:4px;--size-2-3:6px;--size-4-1:4px;--size-4-2:8px;--size-4-3:12px;--size-4-4:16px;--size-4-5:20px;--size-4-6:24px;--size-4-8:32px;--size-4-9:36px;--size-4-10:40px;--size-4-12:48px;--size-4-16:64px;--size-4-18:72px;--sidebar-markdown-font-size:calc(var(--font-text-size) * 0.9);--sidebar-tab-text-display:none;--slider-thumb-border-width:1px;--slider-thumb-border-color:var(--background-modifier-border-hover);--slider-thumb-height:18px;--slider-thumb-width:18px;--slider-thumb-y:-6px;--slider-thumb-radius:50%;--slider-s-thumb-size:15px;--slider-s-thumb-position:-5px;--slider-track-background:var(--background-modifier-border);--slider-track-height:3px;--status-bar-background:var(--background-secondary);--status-bar-border-color:var(--divider-color);--status-bar-border-width:1px 0 0 1px;--status-bar-font-size:var(--font-ui-smaller);--status-bar-text-color:var(--text-muted);--status-bar-position:fixed;--status-bar-radius:var(--radius-m) 0 0 0;--status-bar-scroll-padding:calc(var(--status-bar-font-size) + 18px);--sync-avatar-color-current-user:transparent;--sync-avatar-color-1:var(--color-red);--sync-avatar-color-2:var(--color-orange);--sync-avatar-color-3:var(--color-yellow);--sync-avatar-color-4:var(--color-green);--sync-avatar-color-5:var(--color-cyan);--sync-avatar-color-6:var(--color-blue);--sync-avatar-color-7:var(--color-purple);--sync-avatar-color-8:var(--color-pink);--swatch-radius:14px;--swatch-height:24px;--swatch-width:24px;--swatch-shadow:inset 0 0 0 1px rgba(var(--mono-rgb-100), 0.15);--tab-background-active:var(--background-primary);--tab-text-color:var(--text-faint);--tab-text-color-active:var(--text-muted);--tab-text-color-focused:var(--text-muted);--tab-text-color-focused-active:var(--text-muted);--tab-text-color-focused-highlighted:var(--text-accent);--tab-text-color-focused-active-current:var(--text-normal);--tab-font-size:var(--font-ui-small);--tab-font-weight:inherit;--tab-container-background:var(--background-secondary);--tab-divider-color:var(--background-modifier-border-hover);--tab-outline-color:var(--divider-color);--tab-outline-width:1px;--tab-curve:6px;--tab-radius:var(--radius-s);--tab-radius-active:6px 6px 0 0;--tab-width:200px;--tab-max-width:320px;--tab-stacked-pane-width:700px;--tab-stacked-header-width:var(--header-height);--tab-stacked-font-size:var(--font-ui-small);--tab-stacked-font-weight:400;--tab-stacked-text-align:left;--tab-stacked-text-transform:rotate(0deg);--tab-stacked-text-writing-mode:vertical-lr;--tab-stacked-shadow:-8px 0 8px 0 rgba(0, 0, 0, 0.05);--table-background:transparent;--table-border-width:1px;--table-border-color:var(--background-modifier-border);--table-white-space:break-spaces;--table-header-background:var(--table-background);--table-header-background-hover:inherit;--table-header-border-width:var(--table-border-width);--table-header-border-color:var(--table-border-color);--table-header-font:inherit;--table-header-size:var(--table-text-size);--table-header-weight:var(--bold-weight);--table-header-color:var(--text-normal);--table-line-height:var(--line-height-tight);--table-text-size:var(--font-text-size);--table-text-color:inherit;--table-column-min-width:6ch;--table-column-max-width:none;--table-column-alt-background:var(--table-background);--table-column-first-border-width:var(--table-border-width);--table-column-last-border-width:var(--table-border-width);--table-row-background-hover:var(--table-background);--table-row-alt-background:var(--table-background);--table-row-alt-background-hover:var(--table-background);--table-row-last-border-width:var(--table-border-width);--table-selection:hsla(var(--color-accent-hsl), 0.1);--table-selection-blend-mode:var(--highlight-mix-blend-mode);--table-selection-border-color:var(--interactive-accent);--table-selection-border-width:2px;--table-selection-border-radius:4px;--table-cell-vertical-alignment:top;--table-drag-handle-background:transparent;--table-drag-handle-background-active:var(--table-selection-border-color);--table-drag-handle-color:var(--text-faint);--table-drag-handle-color-active:var(--text-on-accent);--table-add-button-background:transparent;--table-add-button-border-width:var(--table-border-width);--table-add-button-border-color:var(--background-modifier-border);--tag-size:var(--font-smaller);--tag-color:var(--text-accent);--tag-color-hover:var(--text-accent);--tag-decoration:none;--tag-decoration-hover:none;--tag-background:hsla(var(--interactive-accent-hsl), 0.1);--tag-background-hover:hsla(var(--interactive-accent-hsl), 0.2);--tag-border-color:hsla(var(--interactive-accent-hsl), 0.15);--tag-border-color-hover:hsla(var(--interactive-accent-hsl), 0.15);--tag-border-width:0px;--tag-padding-x:0.65em;--tag-padding-y:0.25em;--tag-radius:2em;--tag-weight:inherit;--titlebar-background:var(--background-secondary);--titlebar-background-focused:var(--background-secondary-alt);--titlebar-border-width:0px;--titlebar-border-color:var(--background-modifier-border);--titlebar-text-color:var(--text-muted);--titlebar-text-color-focused:var(--text-normal);--titlebar-text-weight:var(--font-bold);--toggle-border-width:2px;--toggle-width:40px;--toggle-radius:18px;--toggle-thumb-color:white;--toggle-thumb-radius:18px;--toggle-thumb-height:18px;--toggle-thumb-width:18px;--toggle-s-border-width:2px;--toggle-s-width:34px;--toggle-s-thumb-height:15px;--toggle-s-thumb-width:15px;--vault-name-font-size:var(--font-ui-small);--vault-name-font-weight:var(--font-medium);--vault-name-color:var(--text-normal);--workspace-background-translucent:rgba(var(--mono-rgb-0), 0.6);--accent-h:258;--accent-s:88%;--accent-l:66%;--background-primary:var(--color-base-00);--background-primary-alt:var(--color-base-10);--background-secondary:var(--color-base-20);--background-modifier-hover:rgba(var(--mono-rgb-100), 0.075);--background-modifier-active-hover:hsla(var(--interactive-accent-hsl), 0.15);--background-modifier-border:var(--color-base-30);--background-modifier-border-hover:var(--color-base-35);--background-modifier-border-focus:var(--color-base-40);--background-modifier-error-rgb:var(--color-red-rgb);--background-modifier-error:var(--color-red);--background-modifier-error-hover:var(--color-red);--background-modifier-success-rgb:var(--color-green-rgb);--background-modifier-success:var(--color-green);--background-modifier-message:rgba(0, 0, 0, 0.9);--background-modifier-form-field:var(--color-base-00);--text-normal:var(--color-base-100);--text-muted:var(--color-base-70);--text-faint:var(--color-base-50);--text-on-accent:white;--text-on-accent-inverted:black;--text-error:var(--color-red);--text-warning:var(--color-orange);--text-success:var(--color-green);--text-selection:hsla(var(--color-accent-hsl), 0.2);--text-highlight-bg-rgb:255,208,0;--text-highlight-bg:rgba(var(--text-highlight-bg-rgb), 0.4);--text-accent:var(--color-accent);--text-accent-hover:var(--color-accent-2);--interactive-normal:var(--color-base-00);--interactive-hover:var(--color-base-10);--interactive-accent-hsl:var(--color-accent-hsl);--interactive-accent:var(--color-accent-1);--interactive-accent-hover:var(--color-accent-2)}.theme-light{color-scheme:light;--highlight-mix-blend-mode:darken;--mono-rgb-0:255,255,255;--mono-rgb-100:0,0,0;--color-red-rgb:233,49,71;--color-red:#e93147;--color-orange-rgb:236,117,0;--color-orange:#ec7500;--color-yellow-rgb:224,172,0;--color-yellow:#e0ac00;--color-green-rgb:8,185,78;--color-green:#08b94e;--color-cyan-rgb:0,191,188;--color-cyan:#00bfbc;--color-blue-rgb:8,109,221;--color-blue:#086ddd;--color-purple-rgb:120,82,238;--color-purple:#7852ee;--color-pink-rgb:213,57,132;--color-pink:#d53984;--color-base-00:#ffffff;--color-base-05:#fcfcfc;--color-base-10:#fafafa;--color-base-20:#f6f6f6;--color-base-25:#e3e3e3;--color-base-30:#e0e0e0;--color-base-35:#d4d4d4;--color-base-40:#bdbdbd;--color-base-50:#ababab;--color-base-60:#707070;--color-base-70:#5c5c5c;--color-base-100:#222222;--color-accent-hsl:var(--accent-h),var(--accent-s),var(--accent-l);--color-accent:hsl(var(--accent-h), var(--accent-s), var(--accent-l));--color-accent-1:hsl(calc(var(--accent-h) - 1), calc(var(--accent-s) * 1.01), calc(var(--accent-l) * 1.075));--color-accent-2:hsl(calc(var(--accent-h) - 3), calc(var(--accent-s) * 1.02), calc(var(--accent-l) * 1.15));--background-secondary-alt:var(--color-base-05);--background-modifier-box-shadow:rgba(0, 0, 0, 0.1);--background-modifier-cover:rgba(220, 220, 220, 0.4);--input-shadow:inset 0 0 0 1px rgba(0, 0, 0, 0.12),0 2px 3px 0 rgba(0,0,0,.05),0 1px 1.5px 0 rgba(0,0,0,.03),0 1px 2px 0 rgba(0,0,0,.04),0 0 0 0 transparent;--input-shadow-hover:inset 0 0 0 1px rgba(0, 0, 0, 0.17),0 2px 3px 0 rgba(0,0,0,.1),0 1px 1.5px 0 rgba(0,0,0,.03),0 1px 2px 0 rgba(0,0,0,.04),0 0 0 0 transparent;--shadow-s:0px 1px 2px rgba(0, 0, 0, 0.028),0px 3.4px 6.7px rgba(0, 0, 0, .042),0px 15px 30px rgba(0, 0, 0, .07);--shadow-l:0px 1.8px 7.3px rgba(0, 0, 0, 0.071),0px 6.3px 24.7px rgba(0, 0, 0, 0.112),0px 30px 90px rgba(0, 0, 0, 0.2)}.theme-dark{color-scheme:dark;--highlight-mix-blend-mode:lighten;--mono-rgb-0:0,0,0;--mono-rgb-100:255,255,255;--color-red-rgb:251,70,76;--color-red:#fb464c;--color-orange-rgb:233,151,63;--color-orange:#e9973f;--color-yellow-rgb:224,222,113;--color-yellow:#e0de71;--color-green-rgb:68,207,110;--color-green:#44cf6e;--color-cyan-rgb:83,223,221;--color-cyan:#53dfdd;--color-blue-rgb:2,122,255;--color-blue:#027aff;--color-purple-rgb:168,130,255;--color-purple:#a882ff;--color-pink-rgb:250,153,205;--color-pink:#fa99cd;--color-base-00:#1e1e1e;--color-base-05:#212121;--color-base-10:#242424;--color-base-20:#262626;--color-base-25:#2a2a2a;--color-base-30:#363636;--color-base-35:#3f3f3f;--color-base-40:#555555;--color-base-50:#666666;--color-base-60:#999999;--color-base-70:#b3b3b3;--color-base-100:#dadada;--color-accent-hsl:var(--accent-h),var(--accent-s),var(--accent-l);--color-accent:hsl(var(--accent-h), var(--accent-s), var(--accent-l));--color-accent-1:hsl(calc(var(--accent-h) - 3), calc(var(--accent-s) * 1.02), calc(var(--accent-l) * 1.15));--color-accent-2:hsl(calc(var(--accent-h) - 5), calc(var(--accent-s) * 1.05), calc(var(--accent-l) * 1.29));--background-modifier-form-field:var(--color-base-25);--background-secondary-alt:var(--color-base-30);--interactive-normal:var(--color-base-30);--interactive-hover:var(--color-base-35);--text-accent:var(--color-accent-1);--interactive-accent:var(--color-accent);--interactive-accent-hover:var(--color-accent-1);--background-modifier-box-shadow:rgba(0, 0, 0, 0.3);--background-modifier-cover:rgba(10, 10, 10, 0.4);--text-selection:hsla(var(--interactive-accent-hsl), 0.25);--input-shadow:inset 0 0.5px 0.5px 0.5px rgba(255, 255, 255, 0.09),0 2px 4px 0 rgba(0,0,0,.15),0 1px 1.5px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.2),0 0 0 0 transparent;--input-shadow-hover:inset 0 0.5px 1px 0.5px rgba(255, 255, 255, 0.16),0 2px 3px 0 rgba(0,0,0,.3),0 1px 1.5px 0 rgba(0,0,0,.2),0 1px 2px 0 rgba(0,0,0,.4),0 0 0 0 transparent;--shadow-s:0px 1px 2px rgba(0, 0, 0, 0.121),0px 3.4px 6.7px rgba(0, 0, 0, 0.179),0px 15px 30px rgba(0, 0, 0, 0.3);--shadow-l:0px 1.8px 7.3px rgba(0, 0, 0, 0.071),0px 6.3px 24.7px rgba(0, 0, 0, 0.112),0px 30px 90px rgba(0, 0, 0, 0.2);--pdf-shadow:0 0 0 1px var(--background-modifier-border);--pdf-thumbnail-shadow:0 0 0 1px var(--background-modifier-border)}iframe{color-scheme:normal}@font-face{font-family:"Avenir Next";font-weight:400;font-style:normal;font-display:swap;src:url("../../lib/fonts/94f2f163d4b698242fef.otf")}@font-face{font-family:Inter;font-style:normal;font-weight:200;font-display:swap;src:url("../../lib/fonts/72505e6a122c6acd5471.woff2") format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url("../../lib/fonts/2d5198822ab091ce4305.woff2") format("woff2")}@font-face{font-family:Inter;font-weight:400;font-style:normal;font-display:swap;src:url("../../lib/fonts/c8ba52b05a9ef10f4758.woff2")}@font-face{font-family:Inter;font-weight:400;font-style:italic;font-display:swap;src:url("../../lib/fonts/cb10ffd7684cd9836a05.woff2")}@font-face{font-family:Inter;font-weight:600;font-style:normal;font-display:swap;src:url("../../lib/fonts/b5f0f109bc88052d4000.woff2")}@font-face{font-family:Inter;font-weight:800;font-style:normal;font-display:swap;src:url("../../lib/fonts/cbe0ae49c52c920fd563.woff2")}@font-face{font-family:Inter;font-weight:800;font-style:italic;font-display:swap;src:url("../../lib/fonts/535a6cf662596b3bd6a6.woff2")}@font-face{font-family:"Source Code Pro";font-weight:400;font-style:normal;font-display:swap;src:url("../../lib/fonts/70cc7ff27245e82ad414.ttf")}@font-face{font-family:"Source Code Pro";font-weight:400;font-style:italic;font-display:swap;src:url("../../lib/fonts/454577c22304619db035.ttf")}@font-face{font-family:"Source Code Pro";font-weight:700;font-style:normal;font-display:swap;src:url("../../lib/fonts/52ac8f3034507f1d9e53.ttf")}@font-face{font-family:"Source Code Pro";font-weight:700;font-style:italic;font-display:swap;src:url("../../lib/fonts/05b618077343fbbd92b7.ttf")}@font-face{font-family:"Flow Circular";font-display:swap;src:url("../../lib/fonts/4bb6ac751d1c5478ff3a.woff2")}@font-face{font-family:"??";unicode-range:U+0}body{--font-default:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Inter","Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Microsoft YaHei Light",sans-serif;--font-monospace-default:ui-monospace,SFMono-Regular,"Cascadia Code","Roboto Mono","DejaVu Sans Mono","Liberation Mono",Menlo,Monaco,"Consolas","Source Code Pro",monospace;--font-interface-override:'??';--font-interface-theme:'??';--font-interface:var(--font-interface-override),var(--font-interface-theme),var(--default-font, '??'),var(--font-default);--font-text-override:'??';--font-text-theme:'??';--font-text:var(--font-text-override),var(--font-text-theme),var(--font-interface);--font-print-override:'??';--font-print:var(--font-print-override),var(--font-text-override),var(--font-text-theme),'Arial';--font-monospace-override:'??';--font-monospace-theme:'??';--font-monospace:var(--font-monospace-override),var(--font-monospace-theme),var(--font-monospace-default);--font-text-size:16px;--font-mermaid:var(--font-text)}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;width:100%;overflow:hidden}body{text-rendering:optimizelegibility;font-family:var(--font-interface);line-height:var(--line-height-tight);font-size:var(--font-ui-medium);background-color:var(--background-primary);color:var(--text-normal);-webkit-tap-highlight-color:rgba(255,255,255,0)}.node-insert-event{animation-duration:10ms;animation-name:node-inserted}.is-flashing{transition:all .25s ease 0s;color:var(--text-normal);mix-blend-mode:var(--highlight-mix-blend-mode);border-radius:var(--radius-s);background-color:var(--text-highlight-bg)!important}body{user-select:none;overflow:hidden}body [contenteditable=""],body [contenteditable=true]{user-select:text}body.is-grabbing{cursor:grabbing!important}body.is-grabbing iframe:not(.is-controlled),body.is-grabbing webview{pointer-events:none}.app-container{display:flex;height:100%;width:100%;position:relative;flex-direction:column}.app-container.no-transition *{transition:none 0s ease 0s!important}.horizontal-main-container{width:100%;display:flex;overflow:hidden;flex:1 0 0px}:focus{outline:0}.is-text-garbled *{font-family:"Flow Circular",sans-serif!important;line-height:1.45em!important}.markdown-source-view.mod-cm6.is-readable-line-width .cm-line.HyperMD-table-row{max-width:100%}.markdown-source-view.mod-cm6 .cm-content>[contenteditable=false]{contain:paint!important}.markdown-source-view.mod-cm6 .cm-table-widget{white-space:normal;overflow-wrap:normal;word-break:normal}.markdown-source-view.mod-cm6 .cm-table-widget{--table-drag-handle-size:var(--size-4-4);padding:var(--table-drag-handle-size);overflow:auto hidden;margin:0 calc(-1 * var(--size-4-4))!important}.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget{--table-drag-handle-size:var(--size-4-6)}.markdown-source-view.mod-cm6 .cm-table-widget.is-loading{padding:0;margin:0!important}.markdown-source-view.mod-cm6 .cm-table-widget .table-wrapper{position:relative;width:fit-content}.markdown-source-view.mod-cm6 .cm-table-widget tr{height:1px}.markdown-source-view.mod-cm6 .cm-table-widget td,.markdown-source-view.mod-cm6 .cm-table-widget th{height:inherit;min-width:var(--table-column-min-width);cursor:text;overflow:visible;padding:0;position:relative}.markdown-source-view.mod-cm6 .cm-table-widget td.is-selected::after,.markdown-source-view.mod-cm6 .cm-table-widget th.is-selected::after{pointer-events:none;content:"";display:block;position:absolute;top:calc(-1 * var(--table-border-width));right:calc(-1 * var(--table-border-width));bottom:calc(-1 * var(--table-border-width));left:calc(-1 * var(--table-border-width));background-color:var(--table-selection);border:0 solid var(--table-selection-border-color);mix-blend-mode:var(--table-selection-blend-mode);z-index:1}.markdown-source-view.mod-cm6 .cm-table-widget td.top::after,.markdown-source-view.mod-cm6 .cm-table-widget th.top::after{border-top-width:var(--table-selection-border-width);top:calc(-1 * var(--table-selection-border-width))}.markdown-source-view.mod-cm6 .cm-table-widget td.bottom::after,.markdown-source-view.mod-cm6 .cm-table-widget th.bottom::after{border-bottom-width:var(--table-selection-border-width);bottom:calc(-1 * var(--table-selection-border-width))}.markdown-source-view.mod-cm6 .cm-table-widget.has-selection{--text-selection:transparent}.markdown-source-view.mod-cm6 .cm-table-widget.has-selection .cm-content{caret-color:transparent}.markdown-source-view.mod-cm6 .cm-table-widget.has-selection .cm-cursorLayer,.markdown-source-view.mod-cm6 .cm-table-widget.has-selection .cm-selectionLayer{display:none}.markdown-source-view.mod-cm6 .cm-table-widget.is-selected{--text-selection:transparent}.markdown-source-view.mod-cm6 .cm-table-widget.is-selected table{position:relative}.markdown-source-view.mod-cm6 .cm-table-widget.is-selected table::after{pointer-events:none;content:"";display:block;position:absolute;top:calc(-1 * var(--table-border-width));right:calc(-1 * var(--table-border-width));bottom:calc(-1 * var(--table-border-width));left:calc(-1 * var(--table-border-width));background-color:var(--table-selection)}.markdown-source-view.mod-cm6 .cm-table-widget .table-cell-wrapper{height:100%;padding:var(--size-2-2) var(--size-4-2)}.markdown-source-view.mod-cm6 .cm-table-widget .table-col-drag-handle,.markdown-source-view.mod-cm6 .cm-table-widget .table-row-drag-handle{--icon-size:var(--icon-s);--icon-stroke:var(--icon-s-stroke-width);position:absolute;display:flex;align-items:center;justify-content:center;cursor:grab;background-color:var(--table-drag-handle-background);color:var(--table-drag-handle-color);touch-action:none;opacity:0}.markdown-source-view.mod-cm6 .cm-table-widget .table-col-drag-handle:active,.markdown-source-view.mod-cm6 .cm-table-widget .table-col-drag-handle:hover,.markdown-source-view.mod-cm6 .cm-table-widget .table-row-drag-handle:active,.markdown-source-view.mod-cm6 .cm-table-widget .table-row-drag-handle:hover{opacity:1}.markdown-source-view.mod-cm6 .cm-table-widget .table-col-drag-handle:active,.markdown-source-view.mod-cm6 .cm-table-widget .table-row-drag-handle:active{cursor:grabbing;background-color:var(--table-drag-handle-background-active);color:var(--table-drag-handle-color-active);box-shadow:0 0 0 var(--table-selection-border-width) var(--table-selection-border-color)}.markdown-source-view.mod-cm6 .cm-table-widget .table-col-drag-handle *,.markdown-source-view.mod-cm6 .cm-table-widget .table-row-drag-handle *{pointer-events:none}.markdown-source-view.mod-cm6 .cm-table-widget .table-row-drag-handle{top:0;left:-1px;width:calc(var(--table-drag-handle-size) - var(--table-selection-border-width));height:100%;transform:translateX(-100%);border-top-left-radius:var(--radius-s);border-bottom-left-radius:var(--radius-s)}.markdown-source-view.mod-cm6 .cm-table-widget .table-col-drag-handle{top:-1px;left:0;width:100%;height:calc(var(--table-drag-handle-size) - var(--table-selection-border-width));transform:translateY(-100%);border-top-left-radius:var(--radius-s);border-top-right-radius:var(--radius-s)}.markdown-source-view.mod-cm6 .cm-table-widget.is-dragging .table-col-drag-handle,.markdown-source-view.mod-cm6 .cm-table-widget.is-dragging .table-row-drag-handle{display:none}.markdown-source-view.mod-cm6 .cm-table-widget.is-dragging .table-col-drag-handle:active,.markdown-source-view.mod-cm6 .cm-table-widget.is-dragging .table-row-drag-handle:active{display:flex}.markdown-source-view.mod-cm6 .cm-table-widget .table-drag-target{position:absolute;border-radius:2px;background-color:var(--interactive-accent)}.markdown-source-view.mod-cm6 .cm-table-widget .table-drag-target.mod-row{height:3px;transform:translateY(-2px)}.markdown-source-view.mod-cm6 .cm-table-widget .table-drag-target.mod-col{width:3px;transform:translateX(-2px)}.markdown-source-view.mod-cm6 .cm-table-widget .table-col-btn,.markdown-source-view.mod-cm6 .cm-table-widget .table-row-btn{--icon-size:var(--icon-s);--icon-stroke:var(--icon-s-stroke-width);position:absolute;display:flex;align-items:center;justify-content:center;height:var(--table-drag-handle-size);width:var(--table-drag-handle-size);background-color:var(--table-add-button-background);border:var(--table-add-button-border-width) solid var(--table-add-button-border-color);color:var(--text-faint);transition:opacity 0s ease .1s;opacity:0;user-select:none}.markdown-source-view.mod-cm6 .cm-table-widget .table-col-btn:hover,.markdown-source-view.mod-cm6 .cm-table-widget .table-row-btn:hover{opacity:1}.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget .table-col-drag-handle,.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget .table-row-drag-handle{display:none}.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget .mod-active-col-handle>.table-col-drag-handle,.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget .mod-active-row-handle>.table-row-drag-handle{opacity:1;display:flex}.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget:not(.has-focus) .table-col-btn,.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget:not(.has-focus) .table-row-btn{pointer-events:none}.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget.has-focus .table-col-btn,.is-mobile .markdown-source-view.mod-cm6 .cm-table-widget.has-focus .table-row-btn{opacity:1}.markdown-source-view.mod-cm6 .cm-table-widget .table-row-btn{top:100%;left:0;width:100%;border-top:none;cursor:s-resize}.markdown-source-view.mod-cm6 .cm-table-widget .table-col-btn{top:0;height:100%}.markdown-source-view.mod-cm6 .cm-table-widget .cm-editor{flex-basis:content}.markdown-source-view.mod-cm6 .cm-table-widget .cm-content,.markdown-source-view.mod-cm6 .cm-table-widget .cm-line{max-width:none}.markdown-source-view.mod-cm6 .cm-table-widget .cm-content{width:auto}.markdown-source-view.mod-cm6 .cm-table-widget .cm-content.cm-lineWrapping{overflow-wrap:normal;white-space:var(--table-white-space);word-break:normal}.markdown-source-view.mod-cm6 .cm-table-widget .cm-scroller{overflow-y:hidden;scrollbar-gutter:auto;line-height:var(--table-line-height)}.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget .table-col-btn{left:100%;border-left:none;cursor:e-resize}.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget td.is-selected.start::after,.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget th.is-selected.start::after{border-left-width:var(--table-selection-border-width);left:calc(-1 * var(--table-selection-border-width))}.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget td.is-selected.end::after,.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget th.is-selected.end::after{border-right-width:var(--table-selection-border-width);right:calc(-1 * var(--table-selection-border-width))}.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget td.is-selected.top.end::after,.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget th.is-selected.top.end::after{border-top-right-radius:var(--table-selection-border-radius)}.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget td.is-selected.bottom.end::after,.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget th.is-selected.bottom.end::after{border-bottom-right-radius:var(--table-selection-border-radius)}.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget td.is-selected.top.start::after,.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget th.is-selected.top.start::after{border-top-left-radius:var(--table-selection-border-radius)}.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget td.is-selected.bottom.start::after,.markdown-source-view.mod-cm6:not(.is-rtl) .cm-table-widget th.is-selected.bottom.start::after{border-bottom-left-radius:var(--table-selection-border-radius)}.markdown-source-view.mod-cm6.is-rtl .cm-table-widget .table-col-btn{right:100%;border-right:none;cursor:w-resize}.markdown-source-view.mod-cm6.is-rtl .cm-table-widget td.is-selected.start::after,.markdown-source-view.mod-cm6.is-rtl .cm-table-widget th.is-selected.start::after{border-right-width:var(--table-selection-border-width);right:calc(-1 * var(--table-selection-border-width))}.markdown-source-view.mod-cm6.is-rtl .cm-table-widget td.is-selected.end::after,.markdown-source-view.mod-cm6.is-rtl .cm-table-widget th.is-selected.end::after{border-left-width:var(--table-selection-border-width);left:calc(-1 * var(--table-selection-border-width))}.markdown-source-view.mod-cm6.is-rtl .cm-table-widget td.is-selected.top.end::after,.markdown-source-view.mod-cm6.is-rtl .cm-table-widget th.is-selected.top.end::after{border-top-left-radius:var(--table-selection-border-radius)}.markdown-source-view.mod-cm6.is-rtl .cm-table-widget td.is-selected.bottom.end::after,.markdown-source-view.mod-cm6.is-rtl .cm-table-widget th.is-selected.bottom.end::after{border-bottom-left-radius:var(--table-selection-border-radius)}.markdown-source-view.mod-cm6.is-rtl .cm-table-widget td.is-selected.top.start::after,.markdown-source-view.mod-cm6.is-rtl .cm-table-widget th.is-selected.top.start::after{border-top-right-radius:var(--table-selection-border-radius)}.markdown-source-view.mod-cm6.is-rtl .cm-table-widget td.is-selected.bottom.start::after,.markdown-source-view.mod-cm6.is-rtl .cm-table-widget th.is-selected.bottom.start::after{border-bottom-right-radius:var(--table-selection-border-radius)}.empty-state{position:absolute;height:100%;width:100%;top:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.empty-state-container{max-width:480px;max-height:280px;margin:20px;text-align:center}.empty-state-title{margin:20px 0;font-weight:var(--h2-weight);font-size:var(--h2-size);line-height:var(--line-height-tight);position:relative}.empty-state-action-list{font-size:var(--font-text-size);line-height:var(--line-height-tight);color:var(--text-muted);margin-top:20px}.empty-state-action{cursor:var(--cursor);line-height:36px;color:var(--text-accent)}.empty-state-close-button{display:none}body{--zoom-factor:1;--titlebar-height:30px}.pane-empty{color:var(--text-faint);font-size:var(--font-ui-small);margin:var(--size-4-2) auto;text-align:center}.view-header-title::-webkit-scrollbar{display:none}.view-content{width:100%;height:calc(100% - var(--header-height))}.inline-title{font-weight:var(--inline-title-weight);font-size:var(--inline-title-size);line-height:var(--inline-title-line-height);font-style:var(--inline-title-style);font-variant:var(--inline-title-variant);font-family:var(--inline-title-font);margin-bottom:var(--inline-title-margin-bottom);letter-spacing:-.015em;color:var(--inline-title-color)}.inline-embed .inline-title{display:none}body:not(.show-inline-title) .inline-title:not([data-level]){display:none}::selection{background-color:var(--text-selection)}.markdown-reading-view{display:flex;flex-direction:column}.markdown-preview-view{font-size:var(--font-text-size);font-family:var(--font-text);line-height:var(--line-height-normal);width:100%;height:100%;padding:var(--file-margins);position:relative;overflow-y:auto;overflow-wrap:break-word;color:var(--text-normal);user-select:text;scrollbar-gutter:stable}.markdown-preview-view.is-readable-line-width .markdown-preview-sizer{max-width:var(--file-line-width);margin-left:auto;margin-right:auto}.markdown-rendered.rtl{direction:rtl}.side-dock-actions{flex-direction:column}.side-dock-actions .side-dock-ribbon-action{margin:0 auto}.release-notes-view{padding:var(--file-margins)}.release-notes-view .markdown-preview-view{overflow:visible}.release-notes-view .is-readable-line-width{max-width:var(--file-line-width);margin-left:auto;margin-right:auto}.modal.mod-trust-folder{max-width:700px}.modal.mod-plugin-options .modal-content{margin:var(--size-4-6) 0}.hotkey-list-container{overflow:auto}.search-input-container.mod-hotkey .clickable-icon{padding:var(--size-2-1)}.modal.mod-image-lightbox{max-width:90vw;max-height:90vh;padding:0}.modal.mod-image-lightbox .modal-content{padding:var(--size-4-12) var(--size-4-3) var(--size-4-2) var(--size-4-3);text-align:center}.login-field{max-width:500px;margin:1em auto}.modal.mod-restricted-mode .card{flex:1 0 0px}.search-input-container input:placeholder-shown~.search-input-clear-button{display:none}.installed-plugins-container{padding-top:var(--size-4-4);border-top:1px solid var(--background-modifier-border)}.workspace-tab-header-container-inner::-webkit-scrollbar,.workspace-tab-header-container-inner::-webkit-scrollbar-thumb{display:none}.mod-root .mod-pinned{--icon-size:var(--icon-s);--icon-stroke:var(--icon-s-stroke-width)}.mod-left-split .markdown-preview-view,.mod-right-split .markdown-preview-view{--file-margins:var(--size-4-5)}.mod-left-split .markdown-preview-view,.mod-right-split .markdown-preview-view{font-size:var(--sidebar-markdown-font-size)}.button-container{margin-top:20px}button{app-region:no-drag;display:inline-flex;align-items:center;justify-content:center;color:var(--text-normal);font-size:var(--font-ui-small);border-radius:var(--button-radius);border:0;padding:var(--size-4-1) var(--size-4-3);height:var(--input-height);font-weight:var(--input-font-weight);cursor:var(--cursor);font-family:inherit;outline:0;user-select:none;white-space:nowrap}button:not(.clickable-icon){background-color:var(--interactive-normal);box-shadow:var(--input-shadow)}button:focus-visible{box-shadow:0 0 0 3px var(--background-modifier-border-focus)}button[disabled=true],button[disabled]{cursor:not-allowed;opacity:.7}button.mod-cta{background-color:var(--interactive-accent);color:var(--text-on-accent)}button.mod-cta:focus-visible{box-shadow:0 0 0 3px var(--background-modifier-border-focus)}button.mod-muted{background-color:var(--background-secondary);color:var(--text-muted)}button.mod-warning{background-color:var(--background-modifier-error);color:var(--text-on-accent)}button.mod-destructive{color:var(--text-error)}.card-container{display:flex}.card-container.mod-horizontal{flex-direction:column}.card{background-color:var(--background-secondary-alt);border-radius:4px;border:1px solid var(--background-modifier-border);margin:0 10px;padding:15px 30px;display:flex;flex-direction:column;flex-grow:1}.card ul{padding:0}.card .button-container{margin:10px 0}.card-container.mod-horizontal .card{margin:10px 0}.card-container.mod-horizontal .card ul{padding-left:24px}.card li{margin:5px 0}.card.u-clickable{cursor:var(--cursor)}.card.is-selected{border:1px solid var(--interactive-accent);background-color:hsla(var(--interactive-accent-hsl),.2)}.card-title{text-align:center;font-size:20px;line-height:30px;color:var(--text-muted);margin-bottom:8px}.card-description{color:var(--text-muted);font-size:var(--font-ui-small);line-height:20px;flex-grow:1}.changelog-item{margin:var(--size-4-2) 0;font-size:var(--font-ui-medium);line-height:var(--line-height)}.changelog-item::before{content:attr(data-label);width:50px;border-radius:var(--radius-m);font-size:var(--font-ui-small);display:inline-block;text-align:center;margin-right:14px;text-transform:uppercase;letter-spacing:1px;line-height:22px}.changelog-item.mod-success::before{background-color:var(--background-modifier-success)}.changelog-item.mod-highlighted::before{background-color:var(--interactive-accent)}[contenteditable]{outline:0}.list-container{display:flex;flex-direction:column;gap:var(--size-4-2)}.list-item{display:flex;padding:0;margin:8px 0;gap:var(--size-4-2);align-items:center}.list-item-actions{display:flex;gap:var(--size-4-2)}.list-item-part.mod-extended{flex-grow:1;overflow-wrap:anywhere}.list-item-part.clickable-icon{display:flex;align-items:center;justify-content:center;padding:var(--size-2-2);cursor:var(--cursor);border-radius:var(--radius-s);color:var(--icon-color)}.list-item-part.clickable-icon:active,.list-item-part.clickable-icon:hover{color:var(--icon-color-hover);background-color:var(--background-modifier-hover)}.list-item-desc{width:100%}.list-item-desc .list-item-part{color:var(--text-muted);font-size:var(--font-ui-small)}.u-center-text{text-align:center}.u-faded-text{color:var(--text-muted)}.u-pop{color:var(--text-accent);font-weight:var(--font-semibold)}.u-muted{color:var(--text-muted)}.u-small{font-size:.8em}.u-clickable{cursor:var(--cursor)}.diff-view{user-select:text}.diff-line{padding:0 var(--size-4-2)}.diff-line.mod-left{background-color:rgba(var(--background-modifier-error-rgb),.2)}.diff-line.mod-left .diff-changed{background-color:rgba(var(--background-modifier-error-rgb),.4)}.diff-line.mod-right{background-color:rgba(var(--background-modifier-success-rgb),.2)}.diff-line.mod-right .diff-changed{background-color:rgba(var(--background-modifier-success-rgb),.4)}.diff-collapsed{text-align:center;color:var(--text-muted);cursor:pointer;font-size:var(--font-ui-small);margin:var(--size-4-2) 0}.diff-collapsed:hover{color:var(--text-accent)}.markdown-reading-view.is-searching{flex-direction:column-reverse}.mod-active .document-search-container{background-color:var(--background-primary)}.document-search-container{display:flex;flex-direction:column;padding:var(--size-4-2) 0;margin:0 var(--size-4-4);gap:var(--size-4-2);z-index:var(--layer-popover)}.document-replace,.document-search{width:100%;max-width:var(--file-line-width);margin:0 auto;display:flex;padding:0 var(--size-4-2);gap:var(--size-4-2)}.document-replace{display:none}.document-search-container.mod-replace-mode .document-replace{display:flex}input.document-replace-input,input.document-search-input{flex-grow:1}input.document-replace-input.mod-no-match,input.document-search-input.mod-no-match{background-color:rgba(var(--background-modifier-error-rgb),.2)}.document-replace-buttons,.document-search-buttons{display:flex;gap:var(--size-4-2);align-items:center}.document-search-button{font-size:var(--font-ui-small);padding:0 var(--size-4-2);color:var(--text-muted)}.document-search-close-button{cursor:var(--cursor);position:relative;top:2px;font-size:24px;line-height:20px;height:24px;width:24px;padding:0 var(--size-2-2);border-radius:var(--radius-s);color:var(--text-muted)}.document-search-close-button::before{font-family:Inter,sans-serif;content:"×";font-weight:300}.markdown-rendered .search-highlight>div{position:absolute;pointer-events:none;box-shadow:0 0 0 2px var(--text-normal);opacity:.3;mix-blend-mode:var(--highlight-mix-blend-mode);border-radius:2px}.markdown-rendered .search-highlight>div.is-active{box-shadow:0 0 0 3px var(--text-accent);opacity:1}select{app-region:no-drag;height:var(--input-height);font-size:var(--font-ui-small);font-family:inherit;font-weight:var(--input-font-weight);color:var(--text-normal);line-height:var(--line-height-tight);padding:0 1.9em 0 .8em;max-width:100%;box-sizing:border-box;margin:0;border:0;box-shadow:var(--input-shadow);border-radius:var(--input-radius);appearance:none;background-color:var(--interactive-normal);background-repeat:no-repeat,repeat;background-position:right .7em top 50%,0 0;background-size:.65em,100%}select:focus{box-shadow:0 0 0 3px var(--background-modifier-border-focus);outline:0}.flair{background-color:var(--interactive-normal);border-radius:var(--radius-s);color:var(--text-normal);font-size:10px;letter-spacing:.05em;margin-left:var(--size-4-2);padding:var(--size-2-1) var(--size-2-2);position:relative;text-transform:uppercase;white-space:nowrap;vertical-align:middle}.flair.mod-flat{vertical-align:top}.flair.mod-pop{background-color:var(--interactive-accent);color:var(--text-on-accent)}.markdown-preview-view:not(.allow-fold-headings) .heading-collapse-indicator,.markdown-preview-view:not(.allow-fold-lists) .list-collapse-indicator{display:none}.collapse-indicator,.fold-gutter{opacity:0}.collapse-indicator:hover,.fold-gutter.is-collapsed,.fold-gutter:hover,.is-collapsed .collapse-indicator,.metadata-properties-heading:hover .collapse-indicator,h1:hover .collapse-indicator,h2:hover .collapse-indicator,h3:hover .collapse-indicator,h4:hover .collapse-indicator,h5:hover .collapse-indicator,h6:hover .collapse-indicator{opacity:1}.collapse-icon{display:flex;align-items:center}.collapse-icon::before{content:""}.collapse-icon svg.svg-icon{color:var(--nav-collapse-icon-color);stroke-width:4px;width:10px;height:10px;transition:transform .1s ease-in-out 0s}.collapse-icon.is-collapsed svg.svg-icon{transform:rotate(-90deg)}.rtl .collapse-icon.is-collapsed svg.svg-icon{transform:rotate(90deg)}.view-content .collapse-indicator svg.svg-icon,.view-content .list-collapse-indicator svg.svg-icon{color:var(--collapse-icon-color)}.view-content .is-collapsed .collapse-indicator svg.svg-icon,.view-content .is-collapsed .list-collapse-indicator svg.svg-icon{color:var(--collapse-icon-color-collapsed)}.markdown-preview-view .collapse-indicator{position:absolute;cursor:var(--cursor)}.markdown-preview-view .collapse-indicator .svg-icon{vertical-align:middle}.markdown-preview-view li.is-collapsed>ol,.markdown-preview-view li.is-collapsed>ul{display:none}.markdown-preview-view .heading-collapse-indicator{margin-left:-22px;padding:0 6px}svg.svg-icon{height:var(--icon-size);width:var(--icon-size);stroke-width:var(--icon-stroke)}.nav-buttons-container,.side-dock-actions,.view-actions{display:flex;justify-content:center}.side-dock-actions{gap:var(--size-2-3)}.view-actions{gap:0;align-items:center;--icon-size:var(--icon-s)}.nav-file-icon .svg-icon{--icon-size:var(--icon-s);--icon-stroke:var(--icon-s-stroke-width)}.clickable-icon.side-dock-ribbon-action .svg-icon{--icon-size:var(--icon-l);--icon-stroke:var(--icon-l-stroke-width)}.clickable-icon.side-dock-ribbon-action:active{color:var(--icon-color-focused)}.is-ios .lucide-more-vertical{transform:rotate(90deg)}.clickable-icon{app-region:no-drag;background-color:transparent;display:flex;align-items:center;justify-content:center;padding:var(--size-2-2) var(--size-2-3);cursor:var(--cursor);border-radius:var(--clickable-icon-radius);color:var(--icon-color);opacity:var(--icon-opacity);transition:opacity .15s ease-in-out 0s;height:auto}.clickable-icon.is-active{opacity:var(--icon-opacity-hover);color:var(--icon-color-active);background-color:var(--background-modifier-active-hover)}.clickable-icon.mod-warning{color:var(--text-error)}.clickable-icon.mod-filled svg{fill:var(--icon-color)}.text-icon-button{app-region:no-drag;display:inline-flex;align-items:center;color:var(--text-muted);font-size:var(--font-ui-small);border-radius:var(--button-radius);padding:var(--size-2-1) var(--size-4-3) var(--size-2-1) var(--size-4-2);height:var(--input-height);font-weight:var(--input-font-weight);cursor:var(--cursor);font-family:inherit;gap:var(--size-2-2);user-select:none;white-space:nowrap}.text-icon-button .text-button-icon{display:flex;align-items:center;justify-content:center}.text-icon-button .text-button-icon svg.svg-icon{height:var(--icon-size);width:var(--icon-size);stroke-width:var(--icon-stroke)}.text-icon-button:focus{box-shadow:0 0 0 2px var(--background-modifier-border-focus);outline:0}.markdown-rendered.show-indentation-guide li>ol,.markdown-rendered.show-indentation-guide li>ul{position:relative}.markdown-rendered.show-indentation-guide li>ol::before,.markdown-rendered.show-indentation-guide li>ul::before{content:"";position:absolute;display:block;left:var(--indentation-guide-reading-indent);top:0;bottom:0;border-right:var(--indentation-guide-width) solid var(--indentation-guide-color)}.input-label{display:inline-block;width:150px;text-align:right;margin-right:var(--size-4-2)}.input-button{padding:6px 14px;margin-left:14px;color:var(--text-muted);font-size:var(--font-ui-medium);position:relative;top:-1px}input.metadata-input-text,input[type=date],input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=search],input[type=text],textarea{app-region:no-drag;background:var(--background-modifier-form-field);border:var(--input-border-width) solid var(--background-modifier-border);color:var(--text-normal);font-family:inherit;padding:var(--size-4-1) var(--size-4-2);font-size:var(--font-ui-small);border-radius:var(--input-radius);outline:0}input.metadata-input-text:active,input.metadata-input-text:focus,input[type=date]:active,input[type=date]:focus,input[type=datetime-local]:active,input[type=datetime-local]:focus,input[type=email]:active,input[type=email]:focus,input[type=number]:active,input[type=number]:focus,input[type=password]:active,input[type=password]:focus,input[type=search]:active,input[type=search]:focus,input[type=text]:active,input[type=text]:focus,textarea:active,textarea:focus{border-color:var(--background-modifier-border-focus);transition:box-shadow .15s ease-in-out 0s,border .15s ease-in-out 0s}input.metadata-input-text:active,input.metadata-input-text:focus,input.metadata-input-text:focus-visible,input[type=date]:active,input[type=date]:focus,input[type=date]:focus-visible,input[type=datetime-local]:active,input[type=datetime-local]:focus,input[type=datetime-local]:focus-visible,input[type=email]:active,input[type=email]:focus,input[type=email]:focus-visible,input[type=number]:active,input[type=number]:focus,input[type=number]:focus-visible,input[type=password]:active,input[type=password]:focus,input[type=password]:focus-visible,input[type=search]:active,input[type=search]:focus,input[type=search]:focus-visible,input[type=text]:active,input[type=text]:focus,input[type=text]:focus-visible,textarea:active,textarea:focus,textarea:focus-visible{box-shadow:0 0 0 2px var(--background-modifier-border-focus)}input.metadata-input-text::placeholder,input[type=date]::placeholder,input[type=datetime-local]::placeholder,input[type=email]::placeholder,input[type=number]::placeholder,input[type=password]::placeholder,input[type=search]::placeholder,input[type=text]::placeholder,textarea::placeholder{color:var(--text-faint)}input[type=email],input[type=number],input[type=password],input[type=search],input[type=text]{height:var(--input-height)}textarea{line-height:var(--line-height-tight)}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{display:none;pointer-events:none}input[type=number]::-webkit-inner-spin-button{appearance:none}input[type=date],input[type=datetime-local]{font-variant-numeric:tabular-nums;position:relative}input[type=date]::-webkit-datetime-edit-text,input[type=datetime-local]::-webkit-datetime-edit-text{color:var(--text-faint)}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator{position:absolute;left:var(--size-4-1);opacity:.5}input[type=date]::-webkit-datetime-edit-day-field:active,input[type=date]::-webkit-datetime-edit-day-field:focus,input[type=date]::-webkit-datetime-edit-month-field:active,input[type=date]::-webkit-datetime-edit-month-field:focus,input[type=date]::-webkit-datetime-edit-year-field:active,input[type=date]::-webkit-datetime-edit-year-field:focus,input[type=datetime-local]::-webkit-datetime-edit-day-field:active,input[type=datetime-local]::-webkit-datetime-edit-day-field:focus,input[type=datetime-local]::-webkit-datetime-edit-month-field:active,input[type=datetime-local]::-webkit-datetime-edit-month-field:focus,input[type=datetime-local]::-webkit-datetime-edit-year-field:active,input[type=datetime-local]::-webkit-datetime-edit-year-field:focus{background-color:var(--text-selection);color:var(--text-normal);cursor:text}body:not(.is-ios):not(.is-android) input[type=date],body:not(.is-ios):not(.is-android) input[type=datetime-local]{padding-left:var(--size-4-6)}input[type=range]{width:100px;appearance:none;background-color:var(--slider-track-background);border-radius:var(--slider-track-height);height:var(--slider-track-height);padding:0;outline:0}input[type=range]::-webkit-slider-runnable-track{height:6px;appearance:none}input[type=range]::-webkit-slider-thumb{appearance:none;height:var(--slider-thumb-height);width:var(--slider-thumb-width);border-radius:var(--slider-thumb-radius);cursor:default;background:#fff;border:var(--slider-thumb-border-width) solid var(--slider-thumb-border-color);position:relative;top:var(--slider-thumb-y);transition:all .1s linear 0s;box-shadow:rgba(0,0,0,.05) 0 1px 1px 0,rgba(0,0,0,.1) 0 2px 2px 0}input[type=range]::-webkit-slider-thumb:active,input[type=range]::-webkit-slider-thumb:hover{background:#fff;border-color:var(--background-modifier-border-focus);box-shadow:rgba(0,0,0,.1) 0 1px 2px 0,rgba(0,0,0,.2) 0 2px 3px 0;transition:all .1s linear 0s}body:not(.is-mobile) input[type=range]:focus{box-shadow:none}body:not(.is-mobile) input[type=range]:focus::-webkit-slider-thumb{box-shadow:rgba(0,0,0,.05) 0 1px 2px 0,rgba(0,0,0,.2) 0 2px 3px 0}body:not(.is-mobile) input[type=range]:focus-visible::-webkit-slider-thumb{border-color:var(--background-modifier-border-focus);box-shadow:0 1px 2px 0 rgba(0,0,0,.05),0 2px 3px 0 rgba(0,0,0,.2),0 0 0 2px var(--background-modifier-border-focus)}input[type=color]{appearance:none;width:calc(var(--swatch-width) + 4px);background-color:transparent;border:none;cursor:var(--cursor);padding:0}input[type=color]::-webkit-color-swatch-wrapper{padding:2px}input[type=color]::-webkit-color-swatch{border:0;box-shadow:var(--swatch-shadow);border-radius:var(--swatch-radius);height:var(--swatch-height);width:var(--swatch-width);align-self:center}input[type=color]:focus-visible::-webkit-color-swatch,input[type=color]:focus::-webkit-color-swatch{box-shadow:var(--swatch-shadow),0 0 0 3px var(--background-modifier-border-focus)}select.mod-hidden{display:none}.notice-container{z-index:var(--layer-notice);position:fixed;top:22px;right:0;padding:10px;overflow:hidden}.notice{background-color:var(--background-modifier-message);border-radius:var(--radius-m);box-shadow:0 2px 8px var(--background-modifier-box-shadow);color:#fafafa;font-size:var(--font-ui-small);line-height:var(--line-height-tight);padding:.75em 1em;max-width:300px;margin-bottom:14px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;cursor:var(--cursor)}.debug-textarea{width:100%;height:50vh;max-height:80vh;font-family:var(--font-monospace);tab-size:4;resize:none}.modal-container{display:flex;align-items:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;z-index:var(--layer-modal)}.modal-container.mod-dim .modal{box-shadow:var(--shadow-l)}.modal-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--background-modifier-cover)}.modal{--checkbox-size:var(--font-ui-medium);background-color:var(--modal-background);border-radius:var(--modal-radius);border:var(--modal-border-width) solid var(--modal-border-color);padding:var(--size-4-4);position:relative;min-height:100px;width:var(--dialog-width);max-width:var(--dialog-max-width);max-height:var(--dialog-max-height);display:flex;flex-direction:column;overflow:auto}.modal.mod-scrollable-content{padding:0;overflow:hidden}.modal.mod-scrollable-content .modal-title{padding:var(--size-4-4) var(--size-4-4) 0 var(--size-4-4)}.modal.mod-scrollable-content .modal-content{padding:0 var(--size-4-4) var(--size-4-4) var(--size-4-4);overflow:auto}body:not(.native-scrollbars) .modal-close-button{right:12px}.modal-close-button{cursor:var(--cursor);position:absolute;top:var(--size-2-3);right:var(--size-2-3);font-size:24px;line-height:20px;height:24px;width:24px;padding:0 var(--size-2-2);border-radius:var(--radius-s);color:var(--text-muted)}.modal-close-button::before{font-family:Inter,sans-serif;content:"×";font-weight:300}.modal-title{font-size:var(--font-ui-large);margin-bottom:.75em;font-weight:var(--font-semibold);text-align:left;line-height:var(--line-height-tight)}.modal-title:empty{display:none}.modal-content{flex:1 1 auto;font-size:var(--font-ui-medium)}.modal-button-container{margin-top:1.5em;display:flex;justify-content:flex-end;gap:var(--size-4-2);flex-wrap:wrap;font-size:var(--font-ui-medium)}.modal-button-container .mod-checkbox{flex-grow:1;display:flex;align-items:center;gap:var(--size-4-1)}.modal-button-container .mod-secondary{margin-right:auto}.modal.mod-scrollable-content>.modal-button-container{margin-top:0;border-top:1px solid var(--background-modifier-border);padding:var(--size-4-4)}.modal-checkbox-label{cursor:var(--cursor);margin-left:10px;user-select:none}.mod-warning{color:var(--text-error)}.mod-success{color:var(--text-success)}.modal .modal-nav-action{background-color:unset;margin-top:var(--size-4-1);position:absolute;top:0;width:unset}.modal .modal-nav-action.mod-secondary{left:0}.modal .modal-nav-action.mod-cta{color:var(--color-accent);font-weight:var(--font-semibold);right:0}.nav-buttons-container{flex-wrap:wrap;gap:var(--size-2-1)}.nav-buttons-container.has-separator{border-bottom:1px solid var(--background-modifier-border);padding-bottom:var(--size-2-3);margin-bottom:var(--size-4-2)}body{--pill-focus-width:calc(100% + 6px);--pill-focus-left-adjust:-4px}.multi-select-container{cursor:text;display:inline-flex;vertical-align:top;flex-wrap:wrap;min-height:var(--input-height);width:100%;background:var(--background-modifier-form-field);border:var(--input-border-width) solid var(--background-modifier-border);color:var(--text-normal);font-size:var(--font-ui-small);border-radius:var(--input-radius);outline:0;padding:var(--size-4-1);gap:var(--size-4-1)}.multi-select-pill{--icon-size:var(--icon-xs);--icon-stroke:var(--icon-xs-stroke-width);display:flex;align-items:center;background-color:var(--pill-background);border:var(--pill-border-width) solid var(--pill-border-color);border-radius:var(--pill-radius);color:var(--pill-color);cursor:var(--cursor);font-weight:var(--pill-weight);padding:var(--pill-padding-y) 0;line-height:1;max-width:100%;gap:var(--size-2-1);position:relative}.multi-select-pill:focus::after{content:"";display:block;position:absolute;pointer-events:none;border-radius:var(--pill-radius);left:var(--pill-focus-left-adjust);width:var(--pill-focus-width);height:100%;box-shadow:0 0 0 1px var(--background-modifier-border-focus),inset 0 0 0 1px var(--background-modifier-border-focus)}.multi-select-pill-content{margin-left:var(--pill-padding-x)}.multi-select-pill-remove-button{margin-right:min(var(--size-2-3),var(--pill-padding-x));cursor:var(--cursor);color:var(--pill-color-remove);border-radius:var(--radius-s);display:flex;align-items:center;--icon-size:var(--icon-xs);--icon-stroke:var(--icon-xs-stroke-width)}.multi-select-pill-remove-button:hover{color:var(--pill-color-remove-hover)}.multi-select-input{cursor:text;font-family:var(--font-interface);min-width:1ch;max-width:max-content;color:var(--text-normal);background-color:inherit;border:none;overflow-x:auto;white-space:nowrap}.multi-select-input::-webkit-scrollbar{display:none}.multi-select-input::before{content:""}.multi-select-input:empty::before{content:attr(placeholder);color:var(--text-faint);pointer-events:none}.multi-select-duplicate{animation:2s ease-in 0s 1 normal none running multi-select-highlight}.markdown-rendered progress{-webkit-writing-mode:horizontal-tb;writing-mode:horizontal-tb;appearance:none;box-sizing:border-box;display:inline-block;height:6px;margin-bottom:4px;max-width:100%;overflow:hidden;border-radius:0;border:0;vertical-align:-.2rem}.markdown-rendered progress[value]::-webkit-progress-bar{background-color:var(--background-secondary);box-shadow:inset 0 0 0 1px var(--background-modifier-border);border-radius:6px;overflow:hidden}.markdown-rendered progress[value]::-webkit-progress-value{background-color:var(--interactive-accent);overflow:hidden}body:not(.native-scrollbars) ::-webkit-scrollbar{width:12px;height:12px;border-radius:var(--radius-l);background-color:transparent}body:not(.native-scrollbars) ::-webkit-scrollbar-track{background-color:transparent}body:not(.native-scrollbars) ::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-bg);border-radius:var(--radius-l);background-clip:padding-box;border-style:solid;border-color:transparent;border-image:initial;border-width:3px 3px 3px 2px;min-height:45px}body:not(.native-scrollbars) ::-webkit-scrollbar-thumb:active{border-radius:var(--radius-l)}body:not(.native-scrollbars) ::-webkit-scrollbar-thumb:active,body:not(.native-scrollbars) ::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-active-thumb-bg)}body:not(.native-scrollbars) ::-webkit-scrollbar-corner{background:0 0}.checkbox-container{app-region:no-drag;cursor:var(--cursor);background-color:var(--background-modifier-border-hover);border-radius:var(--toggle-radius);display:inline-block;flex-shrink:0;height:calc(var(--toggle-thumb-height) + var(--toggle-border-width) * 2);position:relative;user-select:none;width:var(--toggle-width);box-shadow:rgba(0,0,0,.07) 0 4px 10px inset,rgba(0,0,0,.21) 0 0 1px inset;transition:box-shadow .15s ease-in-out 0s,outline .15s ease-in-out 0s,border .15s ease-in-out 0s,opacity .15s ease-in-out 0s;outline:0 solid var(--background-modifier-border-focus)}.checkbox-container input[type=checkbox]{position:absolute;opacity:0;left:0}.checkbox-container:focus-within{outline:var(--toggle-border-width) solid var(--background-modifier-border-focus)}.checkbox-container.is-enabled{background-color:var(--interactive-accent)}.checkbox-container.is-enabled::after{transform:translate3d(calc(var(--toggle-width) - var(--toggle-thumb-width) - var(--toggle-border-width)),0,0)}.checkbox-container.is-enabled:active::after{left:-4px}.checkbox-container::before{content:"";display:block;position:absolute;inset:0px;opacity:0}.checkbox-container::after{pointer-events:none;content:"";display:block;position:absolute;background-color:var(--toggle-thumb-color);width:var(--toggle-thumb-width);height:var(--toggle-thumb-height);margin:var(--toggle-border-width) 0 0 0;border-radius:var(--toggle-thumb-radius);transition:transform .15s ease-in-out 0s,width .1s ease-in-out 0s,left .1s ease-in-out 0s;left:0;transform:translate3d(var(--toggle-border-width),0,0);box-shadow:rgba(0,0,0,.15) 0 1px 2px}.checkbox-container:active::after{width:calc(var(--toggle-thumb-width) + var(--toggle-border-width))}.checkbox-container.mod-small{width:var(--toggle-s-width);height:calc(var(--toggle-s-thumb-height) + var(--toggle-s-border-width) * 2)}.checkbox-container.mod-small:focus-within{outline:var(--toggle-s-border-width) solid var(--background-modifier-border-focus)}.checkbox-container.mod-small::after{width:var(--toggle-s-thumb-width);height:var(--toggle-s-thumb-height);margin:var(--toggle-s-border-width) 0 0 0;transform:translate3d(var(--toggle-s-border-width),0,0)}.checkbox-container.mod-small.is-enabled::after{transform:translate3d(calc(var(--toggle-s-width) - var(--toggle-s-thumb-width) - var(--toggle-s-border-width)),0,0)}.checkbox-container.mod-small:active::after{width:calc(var(--toggle-s-thumb-width) + var(--toggle-s-border-width))}.tree-item-self{align-items:baseline;display:flex;border-radius:var(--radius-s);color:var(--nav-item-color);font-size:var(--nav-item-size);line-height:var(--line-height-tight);font-weight:var(--nav-item-weight);margin-bottom:var(--size-2-1);padding:var(--nav-item-padding);position:relative}.tree-item-self::before{content:""}.tree-item-self.mod-collapsible{padding:var(--nav-item-parent-padding)}.tree-item-self.is-being-dragged-over{border-radius:var(--radius-s);color:var(--nav-item-color-highlighted);background:hsla(var(--interactive-accent-hsl),.1)}.tree-item-self.is-being-dragged-over .collapse-icon{color:var(--nav-item-color-highlighted)}.tree-item-self.is-being-renamed .tree-item-inner{cursor:text}.tree-item-self.is-clickable{cursor:var(--cursor)}.tree-item-self.is-active,body:not(.is-grabbing) .tree-item-self.is-active:hover{color:var(--nav-item-color-active);background-color:var(--nav-item-background-active);font-weight:var(--nav-item-weight-active)}.tree-item-self.is-selected,body:not(.is-grabbing) .tree-item-self.is-selected:hover{color:var(--nav-item-color-selected);background-color:var(--nav-item-background-selected)}.tree-item-self.is-being-dragged,body:not(.is-grabbing) .tree-item-self.is-being-dragged:hover{color:var(--text-on-accent);background-color:var(--interactive-accent)}.tree-item-self.is-being-dragged .tree-item-icon,body:not(.is-grabbing) .tree-item-self.is-being-dragged:hover .tree-item-icon{color:var(--text-on-accent)}body:not(.is-phone) .workspace-leaf.mod-active .tree-item-self.has-focus{border-radius:var(--radius-s);box-shadow:0 0 0 2px var(--background-modifier-border-focus)}body:not(.is-phone) .workspace-leaf.mod-active .tree-item-self.has-focus:focus-within{box-shadow:0 0 0 2px var(--interactive-accent)}.tree-item-self .tree-item-icon{position:absolute;margin-left:calc(-1 * var(--size-4-5));width:var(--size-4-4);display:flex;align-items:center;justify-content:center;opacity:var(--icon-opacity);color:var(--icon-color);flex:0 0 auto}.tree-item-self .tree-item-icon::before{content:""}.tree-item-self .tree-item-icon .svg-icon:not(.right-triangle){--icon-size:var(--icon-xs);--icon-stroke:var(--icon-s-stroke-width)}.tree-item-flair-outer{padding-left:var(--size-4-1);margin-left:auto;display:flex;flex-shrink:0;align-items:center}.tree-item-flair{font-size:var(--font-ui-smaller);color:var(--text-faint);line-height:1;border-radius:var(--radius-s)}.tree-item-inner{overflow:hidden}.tree-item-inner-text{overflow:hidden;text-overflow:ellipsis}.tree-item-inner-subtext{color:var(--text-faint);font-size:85%}.tree-item-children{padding-left:var(--nav-item-children-padding-left);margin-left:var(--nav-item-children-margin-left);margin-bottom:1px;border-left:var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color)}audio{outline:0}.markdown-rendered audio{max-width:100%;outline:0}audio{width:100%;height:42px}audio::-webkit-media-controls-enclosure{border-radius:calc(var(--radius-m) - 1px);border:1px solid var(--background-modifier-border);background-color:var(--background-primary-alt)}audio::-webkit-media-controls-current-time-display,audio::-webkit-media-controls-time-remaining-display{font-family:var(--font-interface)}iframe{border:0}kbd{color:var(--code-normal);font-family:var(--font-monospace);background-color:var(--code-background);border-radius:var(--radius-s);font-size:var(--code-size);padding:.1em .25em}.pdf-outline-view .tree-item-self:not(.mod-collapsible){padding-left:calc(10px + var(--size-4-2) + var(--size-2-3))}.pdf-outline-view .tree-item-self.mod-active{color:var(--nav-item-color-active);background-color:var(--nav-item-background-active);font-weight:var(--nav-item-weight-active)}.pdf-outline-view .tree-item-flair{white-space:nowrap}.pdf-findbar input[type=checkbox]{display:none;pointer-events:none}.scrollWrapped) .page,.spread .page{border:var(--size-4-1) solid transparent}.popupWrapper{--pdf-popup-width:280px;font-size:var(--font-ui-medium);pointer-events:none;position:absolute;transform:translate(-50%,0);z-index:10000}.popupWrapper>div{margin:var(--size-4-3);background-color:var(--background-primary);border-radius:var(--radius-s);filter:drop-shadow(rgba(0, 0, 0, .2) 0px 0px 1px) drop-shadow(rgba(0, 0, 0, .3) 0px 1px 2px) drop-shadow(rgba(0, 0, 0, .3) 0px 4px 6px)}.popupWrapper>div::after{background:var(--background-primary);border-top-left-radius:2px;content:"";height:var(--size-4-3);left:calc(50% - 2px);position:absolute;top:-5px;transform:rotate(45deg);width:var(--size-4-3);z-index:-1}.popup{cursor:initial;display:flex;flex-direction:column;pointer-events:auto;user-select:text;white-space:normal;width:var(--pdf-popup-width);overflow-wrap:break-word}.popupContent{font-size:var(--font-ui-small);line-height:var(--line-height-tight);max-height:200px;overflow:auto;padding:var(--size-4-4)}.popupContent:empty{display:none}.popupMeta{--icon-size:var(--font-ui-small);--icon-stroke:2.5px;align-items:center;background-color:var(--background-secondary);border-top:1px solid var(--background-modifier-border);color:var(--text-muted);display:flex;font-size:var(--font-ui-smaller);gap:var(--size-4-1);justify-content:space-between;padding:var(--size-4-1) var(--size-4-2);border-bottom-left-radius:var(--radius-s);border-bottom-right-radius:var(--radius-s)}.popupContent:empty+.popupMeta{border-top:none;background-color:var(--background-primary);border-top-left-radius:var(--radius-s);border-top-right-radius:var(--radius-s)}.popupMeta .clickable-icon{margin-right:calc(var(--size-4-1) * -1);margin-left:calc(var(--size-2-1) * -1)}.popupDate{white-space:nowrap}.markdown-rendered video{max-width:100%;outline:0}.markdown-rendered blockquote{color:var(--blockquote-color);font-style:var(--blockquote-font-style);background-color:var(--blockquote-background-color);border-left:var(--blockquote-border-thickness) solid var(--blockquote-border-color);padding:0 0 0 var(--size-4-6);margin-inline:0px}.markdown-rendered blockquote>:first-child{margin-top:0}.markdown-rendered blockquote>:last-child{margin-bottom:0}.callout{--callout-color:var(--callout-default);--callout-icon:lucide-pencil}.callout[data-callout=abstract],.callout[data-callout=summary],.callout[data-callout=tldr]{--callout-color:var(--callout-summary);--callout-icon:lucide-clipboard-list}.callout[data-callout=info]{--callout-color:var(--callout-info);--callout-icon:lucide-info}.callout[data-callout=todo]{--callout-color:var(--callout-todo);--callout-icon:lucide-check-circle-2}.callout[data-callout=important]{--callout-color:var(--callout-important);--callout-icon:lucide-flame}.callout[data-callout=hint],.callout[data-callout=tip]{--callout-color:var(--callout-tip);--callout-icon:lucide-flame}.callout[data-callout=check],.callout[data-callout=done],.callout[data-callout=success]{--callout-color:var(--callout-success);--callout-icon:lucide-check}.callout[data-callout=faq],.callout[data-callout=help],.callout[data-callout=question]{--callout-color:var(--callout-question);--callout-icon:help-circle}.callout[data-callout=attention],.callout[data-callout=caution],.callout[data-callout=warning]{--callout-color:var(--callout-warning);--callout-icon:lucide-alert-triangle}.callout[data-callout=fail],.callout[data-callout=failure],.callout[data-callout=missing]{--callout-color:var(--callout-fail);--callout-icon:lucide-x}.callout[data-callout=danger],.callout[data-callout=error]{--callout-color:var(--callout-error);--callout-icon:lucide-zap}.callout[data-callout=bug]{--callout-color:var(--callout-bug);--callout-icon:lucide-bug}.callout[data-callout=example]{--callout-color:var(--callout-example);--callout-icon:lucide-list}.callout[data-callout=cite],.callout[data-callout=quote]{--callout-color:var(--callout-quote);--callout-icon:quote-glyph}.callout{overflow:hidden;border-style:solid;border-color:rgba(var(--callout-color),var(--callout-border-opacity));border-width:var(--callout-border-width);border-radius:var(--callout-radius);margin:1em 0;mix-blend-mode:var(--callout-blend-mode);background-color:rgba(var(--callout-color),.1);padding:var(--callout-padding)}.callout.is-collapsible .callout-title{cursor:var(--cursor)}.callout-title{padding:var(--callout-title-padding);display:flex;gap:var(--size-4-1);font-size:var(--callout-title-size);color:rgb(var(--callout-color));line-height:var(--line-height-tight);align-items:flex-start}.callout-content{overflow-x:auto;padding:var(--callout-content-padding);background-color:var(--callout-content-background)}.callout-icon{flex:0 0 auto;display:flex;align-items:center}.callout-icon .svg-icon{color:rgb(var(--callout-color))}.callout-icon::after{content:""}.callout-title-inner{font-weight:var(--bold-weight);color:var(--callout-title-color)}.callout-fold{display:flex;align-items:center;padding-right:var(--size-4-2)}.callout-fold::after{content:""}.callout-fold .svg-icon{transition:transform .1s ease-in-out 0s}.callout-fold.is-collapsed .svg-icon{transform:rotate(-90deg)}.markdown-rendered code{color:var(--code-normal);font-family:var(--font-monospace);background-color:var(--code-background);border-radius:var(--code-radius);font-size:var(--code-size);padding:.1em .25em;-webkit-box-decoration-break:clone}.cm-s-obsidian span.cm-inline-code span.cm-inline-code.hmd-hidden-token{font-size:0px}.markdown-rendered pre{position:relative;padding:var(--size-4-3) var(--size-4-4);min-height:38px;background-color:var(--code-background);border-radius:var(--code-radius);white-space:var(--code-white-space);overflow-x:auto}.markdown-rendered pre code{border:none;padding:0;background-color:transparent}.markdown-rendered pre:not(:hover)>button.copy-code-button{display:none}.markdown-rendered button.copy-code-button{margin:6px;padding:6px 8px;height:auto;background-color:transparent;box-shadow:none;color:var(--text-muted);font-size:var(--font-ui-smaller);font-family:var(--font-interface);position:absolute;top:0;right:0}code[class*=language-],pre[class*=language-]{color:var(--code-normal);background:0 0;overflow-wrap:break-word;white-space:pre-wrap;word-break:normal;font-family:var(--font-monospace);text-align:left;word-spacing:normal;line-height:var(--line-height-normal);hyphens:none}:not(pre)>code[class*=language-],pre[class*=language-]{background:var(--code-background)}pre[class*=language-]{overflow:hidden}code[class*=language-]{display:block;padding:1em;overflow:auto}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:var(--code-comment)}.token.namespace{opacity:.7}.token.constant,.token.deleted,.token.symbol,.token.tag{color:var(--code-tag)}.token.punctuation{color:var(--code-punctuation)}.token.boolean,.token.number{color:var(--code-value)}.token.attr-name,.token.char,.token.inserted,.token.selector,.token.string{color:var(--code-string)}.token.operator{color:var(--code-operator)}.language-css .token.string,.style .token.string,.token.entity,.token.parameter,.token.property,.token.url,.token.variable{color:var(--code-property)}.token.atrule,.token.attr-value,.token.builtin,.token.class-name,.token.function,.token.property-access{color:var(--code-function)}.token.keyword{color:var(--code-keyword)}.token.important,.token.regex{color:var(--code-important)}.markdown-preview-view .markdown-embed .markdown-preview-view{--file-folding-offset:0px;height:100%;padding:0}.markdown-preview-view .markdown-embed .markdown-preview-view .markdown-preview-pusher h1,.markdown-preview-view .markdown-embed .markdown-preview-view .markdown-preview-pusher h2,.markdown-preview-view .markdown-embed .markdown-preview-view .markdown-preview-pusher h3,.markdown-preview-view .markdown-embed .markdown-preview-view .markdown-preview-pusher h4,.markdown-preview-view .markdown-embed .markdown-preview-view .markdown-preview-pusher h5,.markdown-preview-view .markdown-embed .markdown-preview-view .markdown-preview-pusher h6{margin-top:0}.file-embed,.markdown-embed{position:relative}.file-embed-link,.markdown-embed-link{position:absolute;top:4px;right:4px;color:var(--icon-color);opacity:var(--icon-opacity);cursor:var(--cursor-link);padding:var(--size-2-2);border-radius:var(--radius-s);display:flex;align-items:center;--icon-size:var(--icon-s);--icon-stroke:var(--icon-s-stroke-width)}.file-embed-title{display:flex;align-items:center;justify-content:center;gap:var(--size-4-2)}.file-embed-icon{color:var(--text-muted);display:flex}.file-embed{display:flex;justify-content:center;border-radius:var(--radius-m);background-color:var(--background-primary-alt)}.file-embed.mod-empty,.file-embed.mod-generic{cursor:var(--cursor-link);padding:var(--size-4-2);color:var(--text-muted);text-align:center;font-size:var(--font-smaller)}.file-embed.mod-empty-attachment{padding:var(--size-4-2);color:var(--text-muted);text-align:center;font-size:var(--font-smaller)}.markdown-embed-content{height:100%}.embed-title{align-items:center;display:flex;gap:var(--size-4-1);font-size:var(--font-text-size);font-weight:var(--bold-weight);text-align:left;text-overflow:ellipsis;white-space:nowrap;padding:0 0 var(--size-4-2) 0}.markdown-embed{font-style:var(--embed-font-style);background-color:var(--embed-background);border-top:var(--embed-border-top);border-right:var(--embed-border-right);border-bottom:var(--embed-border-bottom);border-left:var(--embed-border-left);margin:0;padding:var(--embed-padding)}.markdown-embed .markdown-preview-view{padding:0}.internal-embed:not(.image-embed){display:block}.internal-embed audio,.internal-embed img:not([width]),.internal-embed video{max-width:100%}.inline-embed .markdown-embed-content{height:fit-content;max-height:var(--embed-max-height);overflow:auto}.inline-embed .markdown-embed-content p:first-child{margin-top:0}.inline-embed .markdown-source-view.mod-cm6 .cm-editor{min-height:unset}.embed-iframe{width:100%;height:100%}iframe.external-embed{width:600px;max-width:100%;height:350px}.footnote-link{text-decoration:none}.footnotes{font-size:var(--footnote-size)}.footnote-ref{vertical-align:super}.footnote-backref{color:var(--text-faint);text-decoration:none}.markdown-rendered .frontmatter.mod-failed{position:relative}.markdown-rendered .frontmatter.mod-failed .mod-error{color:var(--text-error);font-size:var(--font-smaller)}.markdown-rendered .frontmatter.mod-failed::after{content:"";position:absolute;top:0;right:0;width:100%;height:100%;background-color:var(--background-modifier-error);opacity:.3;mix-blend-mode:var(--highlight-mix-blend-mode)}.metadata-container{--input-height:var(--metadata-input-height);border-radius:var(--metadata-border-radius);background-color:var(--metadata-background);border-color:var(--metadata-border-color);border-style:solid;border-width:var(--metadata-border-width);padding:var(--metadata-padding);color:var(--text-muted);position:relative;max-width:var(--metadata-max-width);margin-block-end:var(--p-spacing);transform:translateX(calc(var(--size-4-1) * -1))}.metadata-container .metadata-add-button{padding-left:var(--size-2-3);margin-top:.5em;font-size:var(--metadata-label-font-size)}.markdown-embed-content .metadata-container{display:none}.metadata-container.is-collapsed .metadata-property{display:none}.metadata-container:focus-within .metadata-property.is-selected{color:var(--nav-item-color-selected);background-color:var(--nav-item-background-selected)}.metadata-properties{display:flex;flex-direction:column;gap:var(--metadata-gap)}.metadata-properties-heading{display:inline-block;padding:var(--size-4-1);margin-bottom:var(--size-4-2);position:relative;line-height:1.2}.metadata-properties-heading::before{content:"";border-radius:var(--metadata-property-radius);position:absolute;display:inline-block;inset:0px}.metadata-properties-heading:focus::before{box-shadow:0 0 0 2px var(--background-modifier-border-focus)}.metadata-properties-heading .collapse-indicator{position:absolute;left:-22px;padding:0 6px}.metadata-properties-title{user-select:none;font-size:max(var(--font-ui-small), 1em);color:var(--text-normal);font-weight:var(--font-medium)}.metadata-input-text{background-color:transparent;width:100%;min-height:var(--input-height);border-width:0;resize:none;overflow-y:hidden}.metadata-input-text::-webkit-date-and-time-value{text-align:left}.metadata-property{position:relative;display:flex;align-items:start;padding:var(--metadata-property-padding);border-radius:var(--metadata-property-radius);overflow:hidden;background-color:var(--metadata-property-background)}.metadata-property:focus-within{background-color:var(--metadata-property-background-hover);--metadata-divider-color:var(--metadata-divider-color-focus);box-shadow:0 0 0 2px var(--background-modifier-border-focus)}.metadata-property-icon{cursor:var(--cursor);color:var(--icon-color);display:flex;align-items:center;padding:var(--size-4-1) 0;height:var(--input-height);user-select:none}.metadata-property-icon::before{content:"";width:var(--size-4-1)}.metadata-input-number{background-color:transparent;width:100%;border-width:0}input[type=checkbox].metadata-input-checkbox{margin-left:var(--size-4-2)}.metadata-property-key{display:flex;align-self:stretch;align-items:flex-start;flex-direction:row;flex-shrink:0;border-bottom:var(--metadata-divider-width) solid var(--metadata-divider-color);background-color:var(--metadata-label-background);width:var(--metadata-label-width);min-width:var(--metadata-label-width)}.metadata-property-key:focus-within{background-color:var(--metadata-label-background-active)}input.metadata-property-key-input{border:none;flex-grow:1;color:var(--metadata-label-text-color);font-size:var(--metadata-label-font-size);font-weight:var(--metadata-label-font-weight);height:var(--input-height);background-color:transparent;display:flex;align-items:center;text-overflow:ellipsis;overflow:hidden}input.metadata-property-key-input:active,input.metadata-property-key-input:focus{background-color:transparent}.metadata-property button{margin-top:var(--size-4-2)}.metadata-property .multi-select-container,.metadata-property input[type=date],.metadata-property input[type=datetime-local],.metadata-property input[type=number],.metadata-property input[type=text]{border-radius:0;border:none}.metadata-property .multi-select-container:active,.metadata-property .multi-select-container:focus,.metadata-property .multi-select-container:hover,.metadata-property input[type=date]:active,.metadata-property input[type=date]:focus,.metadata-property input[type=date]:hover,.metadata-property input[type=datetime-local]:active,.metadata-property input[type=datetime-local]:focus,.metadata-property input[type=datetime-local]:hover,.metadata-property input[type=number]:active,.metadata-property input[type=number]:focus,.metadata-property input[type=number]:hover,.metadata-property input[type=text]:active,.metadata-property input[type=text]:focus,.metadata-property input[type=text]:hover{box-shadow:none;border:none}.metadata-property .metadata-input-number,.metadata-property .metadata-input-text,.metadata-property .multi-select-container{background-color:transparent}.metadata-property .metadata-input-number:hover,.metadata-property .metadata-input-text:hover,.metadata-property .multi-select-container:hover{background-color:transparent}.metadata-property .metadata-input-number:active,.metadata-property .metadata-input-number:focus,.metadata-property .metadata-input-number:focus-within,.metadata-property .metadata-input-text:active,.metadata-property .metadata-input-text:focus,.metadata-property .metadata-input-text:focus-within,.metadata-property .multi-select-container:active,.metadata-property .multi-select-container:focus,.metadata-property .multi-select-container:focus-within{background-color:transparent}.metadata-property .metadata-input-text{text-overflow:ellipsis;overflow:hidden}.metadata-property .multi-select-container input{background-color:transparent}.metadata-property .multi-select-container{padding:var(--size-4-1) var(--size-4-2)}.metadata-property[data-property-key=tags]{--pill-color:var(--tag-color);--pill-color-hover:var(--tag-color-hover);--pill-color-remove:var(--tag-color);--pill-color-remove-hover:var(--tag-color-hover);--pill-decoration:var(--tag-decoration);--pill-decoration-hover:var(--tag-decoration-hover);--pill-background:var(--tag-background);--pill-background-hover:var(--tag-background-hover);--pill-border-color:var(--tag-border-color);--pill-border-color-hover:var(--tag-border-color-hover);--pill-border-width:var(--tag-border-width);--pill-padding-x:var(--tag-padding-x);--pill-padding-y:var(--tag-padding-y);--pill-radius:var(--tag-radius);--pill-weight:var(--tag-weight);--pill-focus-width:100%;--pill-focus-left-adjust:0}.metadata-property[data-property-key=tags] .multi-select-pill{cursor:var(--cursor-link)}.metadata-property:not([data-property-key=tags]){--pill-border-width:0;--pill-padding-x:0;--pill-padding-y:0;--pill-color:var(--metadata-input-text-color)}.metadata-property:not([data-property-key=tags]) .multi-select-pill{line-height:var(--line-height-tight)}.metadata-property-warning-icon{--icon-size:var(--icon-s);position:absolute;right:var(--size-2-1);top:var(--size-2-1);bottom:var(--size-2-1);align-items:center;display:flex;color:var(--text-warning)}.metadata-property-value{display:flex;flex:1 1 auto;gap:var(--size-2-2);align-items:center;align-self:stretch;min-height:var(--input-height);background-color:var(--metadata-input-background);border-bottom:var(--metadata-divider-width) solid var(--metadata-divider-color);overflow:hidden}.metadata-property-value.mod-external-link:not(:placeholder-shown){text-decoration-line:var(--link-decoration);text-decoration-thickness:var(--link-decoration-thickness);text-decoration-color:var(--text-faint)}.metadata-property-value .mod-unknown{color:var(--text-warning);padding:var(--size-4-1) var(--size-4-2);font-size:var(--metadata-input-font-size);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.metadata-property-value .multi-select-input{font-size:inherit}.metadata-property-value .metadata-link-inner,.metadata-property-value .multi-select-container,.metadata-property-value input{font-size:var(--metadata-input-font-size)}.metadata-property-value .multi-select-container{--background-modifier-form-field:transparent;--background-modifier-border:transparent;align-items:center}.metadata-property-value .multi-select-container .multi-select-pill.is-invalid{--pill-background:transparent;--pill-color:var(--text-error);--pill-color-remove:var(--text-error)}.metadata-property-value .external-link.multi-select-pill-content,.metadata-property-value .internal-link .multi-select-pill-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metadata-property-value .clickable-icon{--icon-size:var(--icon-xs);--icon-stroke:var(--icon-xs-stroke-width);margin-right:2px;margin-left:-4px;padding:4px}.metadata-property-value .clickable-icon:hover{background:0 0;color:var(--text-normal);cursor:var(--cursor-link)}.metadata-property-value:focus-within{background-color:var(--metadata-input-background-active)}.metadata-input-longtext{cursor:text;white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:3;color:var(--metadata-input-text-color);font-size:var(--metadata-input-font-size);max-height:300px;overflow-y:auto;padding:var(--size-4-1) var(--size-4-2);width:100%}.metadata-input-longtext:focus{-webkit-line-clamp:unset}.metadata-input-longtext:not(:empty){display:-webkit-box}.metadata-input-longtext:empty::before{content:attr(placeholder);color:var(--text-faint)}.metadata-link{cursor:text;align-items:center;padding:var(--size-4-1) var(--size-4-2);display:flex;gap:var(--size-4-2);width:100%}.metadata-link-inner{cursor:var(--cursor-link);color:var(--link-color);text-decoration-line:var(--link-decoration);text-decoration-thickness:var(--link-decoration-thickness);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.metadata-link-flair{--icon-size:var(--icon-xs);background-color:transparent;cursor:text;margin-left:auto;display:flex;align-items:center;justify-content:center;padding:var(--size-2-1);border-radius:var(--clickable-icon-radius);color:var(--icon-color);opacity:0;transition:opacity .15s ease-in-out 0s;height:auto}.markdown-preview-view .metadata-container{display:none}.markdown-preview-view.show-properties .metadata-container{display:var(--metadata-display-reading)}.markdown-preview-view.show-properties .metadata-container[data-property-count="0"]{display:none}.markdown-rendered li h1,.markdown-rendered li h2,.markdown-rendered li h3,.markdown-rendered li h4,.markdown-rendered li h5{margin-top:0;margin-bottom:0}.markdown-rendered div:has(> :is(p,pre,table,ul,ol))+div>:is(h1,h2,h3,h4,h5,h6){margin-top:var(--heading-spacing)}.markdown-rendered h1,h1{font-variant:var(--h1-variant);letter-spacing:-.015em;line-height:var(--h1-line-height);font-size:var(--h1-size);color:var(--h1-color);font-weight:var(--h1-weight);font-style:var(--h1-style);font-family:var(--h1-font);margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered h1 a,h1 a{font-weight:inherit}.markdown-rendered h2,h2{font-variant:var(--h2-variant);letter-spacing:-.015em;line-height:var(--h2-line-height);font-size:var(--h2-size);color:var(--h2-color);font-weight:var(--h2-weight);font-style:var(--h2-style);font-family:var(--h2-font);margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered h2 a,h2 a{font-weight:inherit}.markdown-rendered h3,h3{font-variant:var(--h3-variant);letter-spacing:-.015em;line-height:var(--h3-line-height);font-size:var(--h3-size);color:var(--h3-color);font-weight:var(--h3-weight);font-style:var(--h3-style);font-family:var(--h3-font);margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered h3 a,h3 a{font-weight:inherit}.markdown-rendered h4,h4{font-variant:var(--h4-variant);letter-spacing:.015em;line-height:var(--h4-line-height);font-size:var(--h4-size);color:var(--h4-color);font-weight:var(--h4-weight);font-style:var(--h4-style);font-family:var(--h4-font);margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered h4 a,h4 a{font-weight:inherit}.markdown-rendered h5,h5{font-variant:var(--h5-variant);letter-spacing:.015em;font-size:var(--h5-size);line-height:var(--h5-line-height);color:var(--h5-color);font-weight:var(--h5-weight);font-style:var(--h5-style);font-family:var(--h5-font);margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered h5 a,h5 a{font-weight:inherit}.markdown-rendered h6,h6{font-variant:var(--h6-variant);letter-spacing:.015em;font-size:var(--h6-size);line-height:var(--h6-line-height);color:var(--h6-color);font-weight:var(--h6-weight);font-style:var(--h6-style);font-family:var(--h6-font);margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered h6 a,h6 a{font-weight:inherit}.inline-title[data-level="1"]{font-variant:var(--h1-variant);letter-spacing:-.015em;line-height:var(--h1-line-height);font-size:var(--h1-size);color:var(--h1-color);font-weight:var(--h1-weight);font-style:var(--h1-style);font-family:var(--h1-font)}.inline-title[data-level="1"] a{font-weight:inherit}.inline-title[data-level="2"]{font-variant:var(--h2-variant);letter-spacing:-.015em;line-height:var(--h2-line-height);font-size:var(--h2-size);color:var(--h2-color);font-weight:var(--h2-weight);font-style:var(--h2-style);font-family:var(--h2-font)}.inline-title[data-level="2"] a{font-weight:inherit}.inline-title[data-level="3"]{font-variant:var(--h3-variant);letter-spacing:-.015em;line-height:var(--h3-line-height);font-size:var(--h3-size);color:var(--h3-color);font-weight:var(--h3-weight);font-style:var(--h3-style);font-family:var(--h3-font)}.inline-title[data-level="3"] a{font-weight:inherit}.inline-title[data-level="4"]{font-variant:var(--h4-variant);letter-spacing:.015em;line-height:var(--h4-line-height);font-size:var(--h4-size);color:var(--h4-color);font-weight:var(--h4-weight);font-style:var(--h4-style);font-family:var(--h4-font)}.inline-title[data-level="4"] a{font-weight:inherit}.inline-title[data-level="5"]{font-variant:var(--h5-variant);letter-spacing:.015em;font-size:var(--h5-size);line-height:var(--h5-line-height);color:var(--h5-color);font-weight:var(--h5-weight);font-style:var(--h5-style);font-family:var(--h5-font)}.inline-title[data-level="5"] a{font-weight:inherit}.inline-title[data-level="6"]{font-variant:var(--h6-variant);letter-spacing:.015em;font-size:var(--h6-size);line-height:var(--h6-line-height);color:var(--h6-color);font-weight:var(--h6-weight);font-style:var(--h6-style);font-family:var(--h6-font)}.inline-title[data-level="6"] a{font-weight:inherit}hr{border-right-width:initial;border-bottom-width:initial;border-left-width:initial;border-right-style:none;border-bottom-style:none;border-left-style:none;border-image:initial;border-color:var(--hr-color);margin:2rem 0}.markdown-rendered hr{border-right-width:initial;border-bottom-width:initial;border-left-width:initial;border-right-style:none;border-bottom-style:none;border-left-style:none;border-image:initial;border-color:var(--hr-color)}.cm-s-obsidian .hmd-fold-html-stub.omittable,.cm-s-obsidian .omittable.hmd-fold-code-stub{display:none}.cm-s-obsidian .hmd-fold-html:hover .hmd-fold-html-stub.omittable,.cm-s-obsidian .hmd-fold-html:hover .omittable.hmd-fold-code-stub{display:block;right:0;bottom:100%;margin:0;position:absolute;z-index:100}.markdown-preview-view img,.markdown-rendered img{image-rendering:-webkit-optimize-contrast}.markdown-preview-view img:not([width]),.markdown-rendered img:not([width]){max-width:100%;outline:0}.internal-query{margin:0;border-top:1px solid var(--background-modifier-border)}.internal-query .search-result-container{padding:var(--size-4-2);max-height:800px;overflow:auto;border:1px solid var(--background-modifier-border);background-color:var(--background-secondary);border-radius:var(--radius-m)}ol ol ul,ol ul,ol ul ul,ul ol ul,ul ul,ul ul ul{list-style-type:disc}ol{list-style-type:var(--list-numbered-style)}ol>li::marker,ul>li::marker{color:var(--list-marker-color)}ol>li.is-collapsed::marker,ul>li.is-collapsed::marker{color:var(--list-marker-color-collapsed)}.markdown-rendered ol,.markdown-rendered ul{padding-inline-start:var(--list-indent);margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered ol ol,.markdown-rendered ol ul,.markdown-rendered ul ol,.markdown-rendered ul ul{margin-block:0px}.markdown-rendered ol li p:first-of-type,.markdown-rendered ul li p:first-of-type{margin-block-start:0px}.markdown-rendered ol li p:last-of-type,.markdown-rendered ul li p:last-of-type{margin-block-end:0px}.markdown-rendered ol>li,.markdown-rendered ul>li{padding-top:var(--list-spacing);padding-bottom:var(--list-spacing);position:relative}.markdown-preview-view ol>li,.markdown-preview-view ul>li{padding-top:var(--list-spacing);padding-bottom:var(--list-spacing)}.markdown-rendered .list-collapse-indicator{margin-inline-start:-2.65em;padding-inline-end:2em}.markdown-rendered .list-bullet{float:left;margin-inline-start:-.8em}.markdown-rendered .task-list-item>.list-bullet{display:none}.markdown-rendered ul.has-list-bullet{list-style-type:""}.markdown-rendered ul.has-list-bullet>li::marker{color:transparent}.list-bullet{color:transparent;position:relative;display:inline-flex;justify-content:center;align-items:center;will-change:transform}.list-bullet::before{content:""}.list-bullet::after{position:absolute;content:"";pointer-events:none;color:var(--list-marker-color);border-radius:var(--list-bullet-radius);width:var(--list-bullet-size);height:var(--list-bullet-size);border:var(--list-bullet-border);transform:var(--list-bullet-transform);background-color:var(--list-marker-color);transition:transform .15s ease 0s,box-shadow .15s ease 0s;will-change:transform}.list-bullet::selection{background-color:transparent!important}li.is-collapsed .list-bullet::after{background-color:var(--list-marker-color-collapsed);box-shadow:0 0 0 4px var(--background-modifier-active-hover)}a{color:var(--link-color);outline:0;text-decoration-line:var(--link-decoration);text-decoration-thickness:var(--link-decoration-thickness);cursor:var(--cursor-link)}.external-link{color:var(--link-external-color);text-decoration-line:var(--link-external-decoration);background-position:right 4px;background-repeat:no-repeat;background-image:linear-gradient(transparent,transparent),url("../../lib/media/874d8b8e340f75575caa.svg");background-size:13px;padding-right:16px;cursor:var(--cursor-link);filter:var(--link-external-filter)}.markdown-rendered .internal-link,.metadata-container .internal-link{cursor:var(--cursor-link);text-decoration-line:var(--link-decoration);color:var(--link-color)}.markdown-rendered .internal-link.is-unresolved,.metadata-container .internal-link.is-unresolved{color:var(--link-unresolved-color);opacity:var(--link-unresolved-opacity);filter:var(--link-unresolved-filter);text-decoration-style:var(--link-unresolved-decoration-style);text-decoration-color:var(--link-unresolved-decoration-color)}.inline-block{display:inline-block;vertical-align:middle}.hidden-token{display:inline;letter-spacing:-1ch;font-family:monospace;color:transparent;font-size:1px!important}.cm-s-obsidian span.hmd-hidden-token.cm-formatting-code,.cm-s-obsidian span.hmd-hidden-token.cm-formatting-em,.cm-s-obsidian span.hmd-hidden-token.cm-formatting-link,.cm-s-obsidian span.hmd-hidden-token.cm-formatting-strikethrough,.cm-s-obsidian span.hmd-hidden-token.cm-formatting-strong{display:inline;letter-spacing:-1ch;font-family:monospace;color:transparent;font-size:1px!important}.cm-s-obsidian .cm-s-obsidian span.hmd-hidden-token.cm-formatting-task{color:transparent!important}mjx-container{outline:0}.markdown-reading-view table{margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered table{border-collapse:collapse;line-height:var(--table-line-height)}.markdown-rendered td,.markdown-rendered th{padding:var(--size-2-2) var(--size-4-2);border:var(--table-border-width) solid var(--table-border-color);max-width:var(--table-column-max-width);min-width:var(--table-column-min-width);vertical-align:var(--table-cell-vertical-alignment)}.markdown-rendered td{font-size:var(--table-text-size);color:var(--table-text-color)}.markdown-rendered th{font-size:var(--table-header-size);font-weight:var(--table-header-weight);color:var(--table-header-color);font-family:var(--table-header-font);line-height:var(--line-height-tight)}.markdown-rendered td,.markdown-rendered th{text-align:start}.markdown-rendered td[align=left],.markdown-rendered th[align=left]{text-align:start}.markdown-rendered td[align=center],.markdown-rendered th[align=center]{text-align:center}.markdown-rendered td[align=right],.markdown-rendered th[align=right]{text-align:end}.markdown-rendered tbody>tr>td,.markdown-rendered thead>tr>th{white-space:var(--table-white-space);text-overflow:ellipsis;overflow:hidden}.markdown-rendered tbody tr{background-color:var(--table-background)}.markdown-rendered tbody tr:nth-child(odd){background-color:var(--table-row-alt-background)}.markdown-rendered tbody tr>td:nth-child(2n+2){background-color:var(--table-column-alt-background)}.markdown-rendered tbody tr:last-child>td{border-bottom-width:var(--table-row-last-border-width)}.markdown-rendered tbody tr>td:first-child{border-left-width:var(--table-column-first-border-width)}.markdown-rendered tbody tr>td:last-child{border-right-width:var(--table-column-last-border-width)}.markdown-rendered thead tr{background-color:var(--table-header-background)}.markdown-rendered thead tr>th{border-top-width:var(--table-header-border-width);border-color:var(--table-header-border-color)}.markdown-rendered thead tr>th:nth-child(2n+2){background-color:var(--table-column-alt-background)}.markdown-rendered thead tr>th:first-child{border-left-width:var(--table-column-first-border-width)}.markdown-rendered thead tr>th:last-child{border-right-width:var(--table-column-last-border-width)}.cm-s-obsidian .HyperMD-table-row{white-space:pre;word-break:normal;overflow-wrap:normal;font-size:.95em;font-family:var(--font-monospace)}.cm-s-obsidian .hmd-table-column,.cm-s-obsidian .hmd-table-column-content{display:inline-block}.cm-s-obsidian .hmd-table-column-left{text-align:left}.cm-s-obsidian .hmd-table-column-center{text-align:center}.cm-s-obsidian .hmd-table-column-right{text-align:right}.cm-s-obsidian .HyperMD-table-row span.cm-hmd-table-sep,.cm-s-obsidian .HyperMD-table-row-1{color:var(--text-faint)}.cm-s-obsidian .HyperMD-table-row-0{color:var(--table-header-color)}.cm-s-obsidian .hmd-fold-html table{border-collapse:collapse}.cm-s-obsidian .hmd-fold-html table td,.cm-s-obsidian .hmd-fold-html table th{padding:10px;border:1px solid #ccc}.cm-s-obsidian .hmd-inactive-line.HyperMD-table-row-1{color:transparent;text-shadow:none}.cm-s-obsidian .hmd-inactive-line.HyperMD-table-row-1>span{background:url("data:image/png; base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAQAAAAziH6sAAAADklEQVR42mOc+Z9x5n8ACTkDM4ikM1IAAAAASUVORK5CYII=") 0 center repeat-x}.cm-s-obsidian .hmd-inactive-line.HyperMD-table-row span.cm-hmd-table-sep{color:transparent}.markdown-source-view.mod-cm6 .cm-line.HyperMD-table-row{min-width:max-content}.markdown-source-view.mod-cm6 .cm-table-widget table{margin-bottom:0}a.tag{background-color:var(--tag-background);border:var(--tag-border-width) solid var(--tag-border-color);border-radius:var(--tag-radius);color:var(--tag-color);font-size:var(--tag-size);font-weight:var(--tag-weight);text-decoration:var(--tag-decoration);padding:var(--tag-padding-y) var(--tag-padding-x);line-height:1}a.tag{background-color:var(--tag-background);border:var(--tag-border-width) solid var(--tag-border-color);border-radius:var(--tag-radius);color:var(--tag-color);font-size:var(--tag-size);font-weight:var(--tag-weight);text-decoration:var(--tag-decoration);padding:var(--tag-padding-y) var(--tag-padding-x);line-height:1}input[type=checkbox]{appearance:none;border-radius:var(--checkbox-radius);border:1px solid var(--checkbox-border-color);flex-shrink:0;padding:0;margin:0;margin-inline-end:6px;width:var(--checkbox-size);height:var(--checkbox-size);position:relative;transition:box-shadow .15s ease-in-out 0s}input[type=checkbox]:active,input[type=checkbox]:focus,input[type=checkbox]:hover{outline:0;border-color:var(--checkbox-border-color-hover)}input[type=checkbox]:focus-visible{box-shadow:0 0 0 2px var(--background-modifier-border-focus)}input[type=checkbox]:checked::after{content:"";top:-1px;left:-1px;position:absolute;width:var(--checkbox-size);height:var(--checkbox-size);display:block;background-color:var(--checkbox-marker-color);mask-position:52% 52%;mask-size:65%;mask-repeat:no-repeat;mask-image:url("data:image/svg+xml; utf8, ")}input[type=checkbox]:checked{background-color:var(--checkbox-color);border-color:var(--checkbox-color)}input[type=checkbox][data-indeterminate=true]:not(:checked)::after{content:"";position:absolute;top:calc(var(--checkbox-size)/ 2 - 2px);width:calc(var(--checkbox-size) - 6px);left:0;right:0;margin:0 auto;height:2px;display:block;border-radius:2px;background-color:var(--text-normal)}.task-list-item-checkbox{width:var(--checkbox-size);height:var(--checkbox-size)}.markdown-preview-view .task-list-item-checkbox{position:relative;top:.2em;margin-inline-end:.6em}ul>li.task-list-item{list-style:none}ul>li.task-list-item .task-list-item-checkbox{margin-inline-start:calc(var(--checkbox-size) * -1.5)}ul>li.task-list-item[data-task="X"],ul>li.task-list-item[data-task="x"]{text-decoration:var(--checklist-done-decoration);color:var(--checklist-done-color)}.cm-s-obsidian span.hmd-hidden-token.cm-formatting-task{color:transparent!important}b,strong{font-weight:var(--bold-weight);color:var(--bold-color)}em,i{font-style:italic;color:var(--italic-color)}.markdown-rendered p{margin-block-start:var(--p-spacing);margin-block-end:var(--p-spacing)}.markdown-rendered mark{background-color:var(--text-highlight-bg);color:var(--text-normal)}.markdown-rendered mark .internal-link{color:var(--text-normal)}.embedded-backlinks .backlink-pane .tree-item-self{font-size:max(var(--font-ui-small),var(--font-smaller));align-items:center}.embedded-backlinks .backlink-pane>.tree-item-self{font-size:max(var(--font-ui-small),1em);width:fit-content}.embedded-backlinks .backlink-pane>.tree-item-self .tree-item-inner{margin-inline-end:var(--size-2-3)}.embedded-backlinks .backlink-pane .tree-item-flair{font-size:max(var(--font-ui-small),var(--font-smallest))}.view-action.mod-bookmarked{--icon-color:var(--icon-color-active);--icon-color-hover:var(--icon-color-active)}.nav-buttons-container.has-separator{border-bottom:1px solid var(--background-modifier-border);padding-bottom:var(--size-2-3);margin-bottom:var(--size-4-2)}.nav-files-container{flex-grow:1;overflow:hidden auto;padding:0 var(--size-4-3) var(--size-4-6) var(--size-4-3);scroll-padding-block:var(--size-4-2)}.nav-folder.mod-root>.nav-folder-title{font-size:var(--vault-name-font-size);color:var(--vault-name-color);font-weight:var(--vault-name-font-weight);cursor:default}.nav-folder.mod-root>.nav-folder-children{border-left:none;margin-left:0;padding-left:0}.nav-file-tag{background-color:var(--background-modifier-hover);border-radius:var(--radius-s);font-size:9px;font-weight:var(--font-semibold);letter-spacing:.05em;line-height:var(--line-height-normal);margin-left:var(--size-2-3);padding:0 var(--size-4-1);text-transform:uppercase;align-self:center}.nav-file-icon{display:inline-flex;align-items:center;margin-right:var(--size-2-3);position:relative;color:var(--icon-color);opacity:var(--icon-opacity)}.nav-files-container:not(.show-unsupported) .is-unsupported{display:none}.nav-file-title-content,.nav-folder-title-content{display:inline-block;overflow-wrap:anywhere;overflow:hidden;white-space:var(--nav-item-white-space);text-overflow:ellipsis}.nav-folder.is-being-dragged-over{border-radius:var(--radius-s);background:hsla(var(--interactive-accent-hsl),.1)}.nav-folder.is-being-dragged-over>.nav-folder-title{color:var(--nav-item-color-highlighted)}.nav-folder.is-being-dragged-over>.nav-folder-title .collapse-icon{color:var(--nav-item-color-highlighted)}.nav-folder.mod-root>.nav-folder-title{font-size:var(--vault-name-font-size);color:var(--vault-name-color);font-weight:var(--vault-name-font-weight);cursor:default}.nav-folder.mod-root .nav-folder>.nav-folder-children{padding-left:var(--nav-item-children-padding-left);margin:0 0 0 var(--nav-item-children-margin-left);border-left:var(--nav-indentation-guide-width) solid var(--nav-indentation-guide-color)}.nav-file{border-radius:var(--radius-s)}.nav-folder-title{padding:var(--nav-item-parent-padding)}.nav-file-title{padding:var(--nav-item-padding)}.nav-file-title,.nav-folder-title{margin-bottom:var(--size-2-1);display:flex;border-radius:var(--radius-s);cursor:var(--cursor);color:var(--nav-item-color);font-size:var(--nav-item-size);font-weight:var(--nav-item-weight);line-height:var(--line-height-tight)}.nav-file-title.is-active,.nav-folder-title.is-active,body:not(.is-grabbing) .nav-file-title.is-active:hover,body:not(.is-grabbing) .nav-folder-title.is-active:hover{color:var(--nav-item-color-active);background-color:var(--nav-item-background-active);font-weight:var(--nav-item-weight-active)}.nav-file-title.is-selected,.nav-folder-title.is-selected,body:not(.is-grabbing) .nav-file-title.is-selected:hover,body:not(.is-grabbing) .nav-folder-title.is-selected:hover{color:var(--nav-item-color-selected);background-color:var(--nav-item-background-selected)}.nav-file-title.is-being-dragged,.nav-folder-title.is-being-dragged,body:not(.is-grabbing) .nav-file-title.is-being-dragged,body:not(.is-grabbing) .nav-folder-title.is-being-dragged{background-color:var(--interactive-accent);color:var(--text-on-accent)}.nav-file-title.is-being-dragged .nav-folder-collapse-indicator,.nav-folder-title.is-being-dragged .nav-folder-collapse-indicator,body:not(.is-grabbing) .nav-file-title.is-being-dragged .nav-folder-collapse-indicator,body:not(.is-grabbing) .nav-folder-title.is-being-dragged .nav-folder-collapse-indicator{color:var(--text-on-accent)}.nav-file-title.is-being-dragged .nav-file-tag,.nav-folder-title.is-being-dragged .nav-file-tag,body:not(.is-grabbing) .nav-file-title.is-being-dragged .nav-file-tag,body:not(.is-grabbing) .nav-folder-title.is-being-dragged .nav-file-tag{color:var(--text-normal)}.file-tree-item-checkbox,.file-tree-item-icon{flex-shrink:0}.file-tree-item-title{flex-grow:1;word-break:break-word}.file-tree-item-icon{--icon-size:var(--icon-s);--icon-stroke:var(--icon-s-stroke-width);margin-right:var(--size-4-1);color:var(--icon-color);position:relative;top:var(--size-2-1)}.file-tree .tree-item-inner{display:flex;align-items:center;position:relative;width:100%}.file-tree .tree-item-flair{line-height:1;padding:var(--size-2-1) var(--size-2-3);color:var(--text-on-accent)}.file-tree .is-selected{color:var(--text-normal)}.file-tree .mod-changed.is-selected{background-color:hsla(var(--interactive-accent-hsl),.2)}.file-tree .mod-changed .tree-item-flair{color:var(--text-accent-hover)}.file-tree .mod-new.is-selected{background-color:rgba(var(--background-modifier-success-rgb),.2)}.file-tree .mod-new .tree-item-flair{color:var(--text-success)}.file-tree .mod-deleted.is-selected,.file-tree .mod-to-delete.is-selected{background-color:rgba(var(--background-modifier-error-rgb),.2)}.file-tree .mod-deleted .tree-item-flair,.file-tree .mod-to-delete .tree-item-flair{color:var(--text-error)}.file-tree .mod-to-delete .tree-item-flair{display:none}.file-tree .mod-to-delete.is-selected .tree-item-flair{display:block}.file-tree .clickable-icon{display:flex;--icon-size:var(--icon-s);--icon-stroke:var(--icon-s-stroke-width)}.file-recovery-list-item-container{overflow:auto;flex:1 1 0px}.file-recovery-list{overflow:auto;padding:var(--size-4-3) var(--size-4-2);flex-grow:1;display:flex;flex-direction:column}.file-recovery-list .search-input-container{width:100%}.file-recovery-list-container{display:flex;flex-direction:column;flex-basis:250px;flex-shrink:0;border-right:1px solid var(--background-modifier-border)}.graph-view.color-fill{color:var(--graph-node)}.graph-view.color-fill-focused{color:var(--graph-node-focused)}.graph-view.color-fill-tag{color:var(--graph-node-tag)}.graph-view.color-fill-attachment{color:var(--graph-node-attachment)}.graph-view.color-fill-unresolved{color:var(--graph-node-unresolved);opacity:.5}.graph-view.color-fill-1{color:var(--text-muted)}.graph-view.color-fill-2{color:var(--text-muted)}.graph-view.color-fill-3{color:var(--text-muted)}.graph-view.color-fill-4{color:var(--text-muted)}.graph-view.color-fill-5{color:var(--text-muted)}.graph-view.color-fill-6{color:var(--text-muted)}.graph-view.color-arrow{color:var(--text-normal);opacity:.5}.graph-view.color-circle{color:var(--graph-node-focused)}.graph-view.color-line{color:var(--graph-line)}.graph-view.color-text{color:var(--graph-text)}.graph-view.color-fill-highlight{color:var(--interactive-accent)}.graph-view.color-line-highlight{color:var(--interactive-accent)}.graph-controls{border-radius:var(--radius-m);position:absolute;right:var(--size-4-3);top:var(--size-4-3);padding:0;background-color:var(--background-primary);width:var(--graph-controls-width);overflow:auto}.graph-controls:not(.is-close){max-height:calc(100% - var(--size-4-4));border:1px solid var(--background-modifier-border);box-shadow:var(--shadow-s)}.graph-controls.is-close{min-width:inherit;width:auto;background-color:var(--background-primary);border:1px solid transparent;padding:var(--size-2-3)}.graph-controls.is-close>.graph-control-section{display:none}.graph-controls input[type=range],.graph-controls input[type=text]{width:100%;font-size:var(--font-ui-small)}.graph-controls .mod-cta{margin-top:var(--size-2-3);width:100%}.graph-controls::-webkit-scrollbar,.graph-controls::-webkit-scrollbar-thumb{display:none}.graph-color-group{--swatch-height:18px;--swatch-width:18px;position:relative;display:flex;align-items:center;padding:0 0 6px;transition:top .2s ease-in-out 0s}.graph-color-group input[type=color]{margin:0 2px 0 6px}.graph-color-group .clickable-icon{padding:var(--size-2-2)}.graph-color-button-container{text-align:center;margin-bottom:10px}.graph-color-button-container button{margin:0;width:100%}.graph-color-group.drag-ghost input[type=text]{width:100%}.graph-color-group.drag-ghost input[type=color]{margin-left:6px}.graph-control-section.mod-color-groups .tree-item-children.is-grabbing .graph-color-groups-container{padding-bottom:40px}.graph-controls-button{display:none;z-index:1}.graph-controls-button.mod-close,.graph-controls-button.mod-reset{position:absolute;top:var(--size-4-2);right:var(--size-4-2);padding:var(--size-2-2)}.graph-controls:not(.is-close) .graph-controls-button.mod-close,.graph-controls:not(.is-close) .graph-controls-button.mod-reset{display:flex}.graph-controls-button.mod-reset{right:36px}.graph-controls.is-close .graph-controls-button.mod-open{display:flex}.graph-controls-button.mod-animate{margin-top:var(--size-4-2)}.graph-controls.is-close .graph-controls-button.mod-animate{display:flex}.graph-control-section{padding:var(--size-2-3) var(--size-4-3);border-bottom:1px solid var(--background-modifier-border)}.graph-control-section:last-child{border-bottom:none}.graph-control-section:last-child .tree-item-children{padding-bottom:var(--size-4-4)}.graph-control-section>.tree-item-self{padding-left:var(--size-4-4)}.graph-control-section .tree-item-children{margin:0;padding:var(--size-4-1) 0;border-left:none}.metadata-container{container:metadata/inline-size}.site-list-container{border-top:1px solid var(--background-modifier-border);margin-bottom:var(--size-4-4)}.site-list-container .list-item:last-child{padding-top:var(--size-4-4)}.site-list-item-name{flex-grow:1}.slug-input{text-transform:lowercase}.passwords-container{margin-bottom:var(--size-4-4)}.password-item{border-radius:var(--radius-s);padding:var(--size-4-2) var(--size-4-4);margin:var(--size-4-1) 0}.tree-item.mod-custom-nav.hidden .tree-item-self{color:var(--text-faint)}.tree-item.mod-custom-nav .tree-item-inner{display:flex;align-items:center;position:relative}.tree-list{padding:var(--size-4-4) 0}.tree-list-header{border-bottom:1px solid var(--background-modifier-border);padding:var(--size-4-2) 0;line-height:1.1;display:flex;align-items:center;justify-content:space-between}.tree-list-title{font-size:var(--font-ui-medium);font-weight:var(--font-semibold)}.tree-list-action{align-items:center;display:flex;color:var(--text-muted);font-size:var(--font-ui-small)}.search-input-container{position:relative}.search-input-container::before{top:calc((var(--input-height) - var(--search-icon-size))/ 2);left:var(--size-4-2);position:absolute;content:"";height:var(--search-icon-size);width:var(--search-icon-size);display:block;background-color:var(--search-icon-color);mask-image:url("data:image/svg+xml,");mask-repeat:no-repeat}.is-rtl .search-input-container::before{left:auto;right:var(--size-4-2)}.search-input-container input{display:block;width:100%;padding-right:28px;padding-left:36px}.global-search-input-container.search-input-container input{padding-right:56px}.search-input-clear-button{position:absolute;background:0 0;border-radius:50%;color:var(--search-clear-button-color);cursor:var(--cursor);top:0;right:2px;bottom:0;line-height:0;height:var(--input-height);width:28px;margin:auto;padding:0;text-align:center;display:flex;justify-content:center;align-items:center;transition:color .15s ease-in-out 0s}.search-input-clear-button::after{content:"";height:var(--search-clear-button-size);width:var(--search-clear-button-size);display:block;background-color:currentcolor;mask-image:url("data:image/svg+xml,