1<!doctype html> 2<html lang="en" class="dark"> 3 <head> 4 <meta charset="utf-8" /> 5 <link rel="icon" href="./favicon.ico" sizes="32x32" /> 6 <link rel="icon" href="./favicon.svg" type="image/svg+xml" /> 7 <link rel="apple-touch-icon" href="./apple-touch-icon.png" /> 8 <meta name="viewport" content="width=device-width, initial-scale=1" /> 9 <link rel="preconnect" href="https://fonts.googleapis.com" /> 10 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> 11 <link 12 href="https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,500;0,8..60,600;1,8..60,400&display=swap" 13 rel="stylesheet" 14 /> 15
15<script> 16 // inline so the theme applies before first paint 17 (function () { 18 try { 19 var saved = localStorage.getItem('theme'); 20 var theme = saved || (matchMedia('(prefers-color-scheme: light)').matches ? 'light' : 'dark'); 21 document.documentElement.dataset.theme = theme; 22 document.documentElement.classList.toggle('dark', theme === 'dark'); 23 } catch (e) { 24 document.documentElement.dataset.theme = 'dark'; 25 } 26 })(); 27 </script>
27 28 <link href="./_app/immutable/entry/start.DMb1-wHh.js" rel="modulepreload"> 29 <link href="./_app/immutable/chunks/C4NV8EQ-.js" rel="modulepreload"> 30 <link href="./_app/immutable/chunks/CHntW0vd.js" rel="modulepreload"> 31 <link href="./_app/immutable/chunks/OA8UcISh.js" rel="modulepreload"> 32 <link href="./_app/immutable/chunks/B7MqYra8.js" rel="modulepreload"> 33 <link href="./_app/immutable/entry/app.B9PwKQEh.js" rel="modulepreload"> 34 <link href="./_app/immutable/chunks/Dp1pzeXC.js" rel="modulepreload"> 35 <link href="./_app/immutable/chunks/BShXEuLO.js" rel="modulepreload"> 36 <link href="./_app/immutable/chunks/CSnmqu4z.js" rel="modulepreload"> 37 <link href="./_app/immutable/chunks/V6QxrxsH.js" rel="modulepreload"> 38 <link href="./_app/immutable/nodes/0.Q_77-UjI.js" rel="modulepreload"> 39 <link href="./_app/immutable/chunks/CU7i4iyn.js" rel="modulepreload"> 40 <link href="./_app/immutable/chunks/2eZ4NenT.js" rel="modulepreload"> 41 <link href="./_app/immutable/chunks/6am3cyDp.js" rel="modulepreload"> 42 <link href="./_app/immutable/chunks/D9jiHaXJ.js" rel="modulepreload"> 43 <link href="./_app/immutable/chunks/DB-DdSbh.js" rel="modulepreload"> 44 <link href="./_app/immutable/chunks/D-MhQset.js" rel="modulepreload"> 45 <link href="./_app/immutable/nodes/4.Bnqd9JJX.js" rel="modulepreload"> 46 <link href="./_app/immutable/chunks/B8dtcdp3.js" rel="modulepreload"> 47 <link href="./_app/immutable/chunks/DA5QTDc0.js" rel="modulepreload"> 48 <!--12qhfyh--><link rel="site.standard.publication" href="at://did:plc:gnzbim6ejshy66kvxhvrpgps/site.standard.publication/3mv7b3zoc2222"/><!----><!--cwls5q--><!----><!--k3tbry--><!--[0--><meta name="description" content="just a penguin with a dream"/> <meta property="og:description" content="just a penguin with a dream"/><!--]--> <meta property="og:type" content="website"/> <meta property="og:site_name" content="pngwn"/> <meta property="og:title" content="about"/> <meta property="og:url" content="https://pngwn.at/about"/> <meta property="og:image" content="https://pngwn.at/icon-512.png"/> <meta property="og:image:width" content="512"/> <meta property="og:image:height" content="512"/> <meta property="og:image:alt" content="a penguin"/> <meta name="twitter:card" content="summary"/><!----><title>about â pngwn</title> 49 <link href="./_app/immutable/assets/Sidenote.BGXRx_Gr.css" rel="stylesheet"> 50 <link href="./_app/immutable/assets/0.B3vZgOTs.css" rel="stylesheet"> 51 <link href="./_app/immutable/assets/4.DNhhGwrw.css" rel="stylesheet"> 52 </head> 53 <body data-sveltekit-preload-data="hover"> 54 <div style="display: contents"><!--[--><!--[0--><!--[--><div class="scan svelte-1emxbc6" aria-hidden="true"></div> <div class="grain svelte-1emxbc6" aria-hidden="true"></div> <div class="vignette svelte-1emxbc6" aria-hidden="true"></div><!----> <header class="chrome svelte-14v55c2"><div class="brand svelte-14v55c2"><a class="home svelte-14v55c2" href="/"><pngwn-penguin class="svelte-14v55c2"></pngwn-penguin> <b class="svelte-14v55c2">pngwn</b></a> <span class="sep svelte-14v55c2">/</span> <!--[0--><a class="section svelte-14v55c2" href="/about">about</a><!--]--></div> <nav class="svelte-14v55c2"><a href="/writing" class="svelte-14v55c2">writing</a> <a href="/about" class="svelte-14v55c2 active">about</a> <button type="button" class="theme-toggle svelte-14v55c2" aria-label="Switch to light theme" title="Switch to light theme">â</button></nav></header><!----> <!--[--><!----> <main class="page svelte-cwls5q"><p class="dek svelte-cwls5q">just a penguin with a dream</p> <ul class="links svelte-cwls5q"><!--[--><li><a href="https://bsky.app/profile/pngwn.at" rel="me noopener" class="svelte-cwls5q"><svg viewBox="0 0 24 24" aria-hidden="true" class="svelte-cwls5q"><path d="M5.202 2.857C7.954 4.922 10.913 9.11 12 11.358c1.087-2.247 4.046-6.436 6.798-8.501C20.783 1.366 24 .213 24 3.883c0 .732-.42 6.156-.667 7.037-.856 3.061-3.978 3.842-6.755 3.37 4.854.826 6.089 3.562 3.422 6.299-5.065 5.196-7.28-1.304-7.847-2.97-.104-.305-.152-.448-.153-.327 0-.121-.05.022-.153.327-.568 1.666-2.782 8.166-7.847 2.97-2.667-2.737-1.432-5.473 3.422-6.3-2.777.473-5.899-.308-6.755-3.369C.42 10.04 0 4.615 0 3.883c0-3.67 3.217-2.517 5.202-1.026"></path></svg> <span>bluesky</span></a></li><li><a href="https://github.com/pngwn" rel="me noopener" class="svelte-cwls5q"><svg viewBox="0 0 24 24" aria-hidden="true" class="svelte-cwls5q"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg> <span>github</span></a></li><li><a href="https://huggingface.co/pngwn" rel="me noopener" class="svelte-cwls5q"><svg viewBox="0 0 24 24" aria-hidden="true" class="svelte-cwls5q"><path d="M12.025 1.13c-5.77 0-10.449 4.647-10.449 10.378 0 1.112.178 2.181.503 3.185.064-.222.203-.444.416-.577a.96.96 0 0 1 .524-.15c.293 0 .584.124.84.284.278.173.48.408.71.694.226.282.458.611.
54684.951v-.014c.017-.324.106-.622.264-.874s.403-.487.762-.543c.3-.047.596.06.787.203s.31.313.4.467c.15.257.212.468.233.542.01.026.653 1.552 1.657 2.54.616.605 1.01 1.223 1.082 1.912.055.537-.096 1.059-.38 1.572.637.121 1.294.187 1.967.187.657 0 1.298-.063 1.921-.178-.287-.517-.44-1.041-.384-1.581.07-.69.465-1.307 1.081-1.913 1.004-.987 1.647-2.513 1.657-2.539.021-.074.083-.285.233-.542.09-.154.208-.323.4-.467a1.08 1.08 0 0 1 .787-.203c.359.056.604.29.762.543s.247.55.265.874v.015c.225-.34.457-.67.683-.952.23-.286.432-.52.71-.694.257-.16.547-.284.84-.285a.97.97 0 0 1 .524.151c.228.143.373.388.43.625l.006.04a10.3 10.3 0 0 0 .534-3.273c0-5.731-4.678-10.378-10.449-10.378M8.327 6.583a1.5 1.5 0 0 1 .713.174 1.487 1.487 0 0 1 .617 2.013c-.183.343-.762-.214-1.102-.094-.38.134-.532.914-.917.71a1.487 1.487 0 0 1 .69-2.803m7.486 0a1.487 1.487 0 0 1 .689 2.803c-.385.204-.536-.576-.916-.71-.34-.12-.92.437-1.103.094a1.487 1.487 0 0 1 .617-2.013 1.5 1.5 0 0 1 .713-.174m-10.68 1.55a.96.96 0 1 1 0 1.921.96.96 0 0 1 0-1.92m13.838 0a.96.96 0 1 1 0 1.92.96.96 0 0 1 0-1.92M8.489 11.458c.588.01 1.965 1.157 3.572 1.164 1.607-.007 2.984-1.155 3.572-1.164.196-.003.305.12.305.454 0 .886-.424 2.328-1.563 3.202-.22-.756-1.396-1.366-1.63-1.32q-.011.001-.02.006l-.044.026-.01.008-.03.024q-.018.017-.035.036l-.032.04a1 1 0 0 0-.058.09l-.014.025q-.049.088-.11.19a1 1 0 0 1-.083.116 1.2 1.2 0 0 1-.173.18q-.035.029-.075.058a1.3 1.3 0 0 1-.251-.243 1 1 0 0 1-.076-.107c-.124-.193-.177-.363-.337-.444-.034-.016-.104-.008-.2.022q-.094.03-.216.087-.06.028-.125.063l-.13.074q-.067.04-.136.086a3 3 0 0 0-.135.096 3 3 0 0 0-.26.219 2 2 0 0 0-.12.121 2 2 0 0 0-.106.128l-.002.002a2 2 0 0 0-.09.132l-.001.001a1.2 1.2 0 0 0-.105.212q-.013.036-.024.073c-1.139-.875-1.563-2.317-1.563-3.203 0-.334.109-.457.305-.454m.836 10.354c.824-1.19.766-2.082-.365-3.194-1.13-1.112-1.789-2.738-1.789-2.738s-.246-.945-.806-.858-.97 1.499.202 2.362c1.173.864-.233 1.45-.685.64-.45-.812-1.683-2.896-2.322-3.295s-1.089-.175-.938.647 2.822 2.813 2.562 3.244-1.176-.506-1.176-.506-2.866-2.567-3.49-1.898.473 1.23 2.037 2.16c1.564.932 1.686 1.178 1.464 1.53s-3.675-2.511-4-1.297c-.323 1.214 3.524 1.567 3.287 2.405-.238.839-2.71-1.587-3.216-.642-.506.946 3.49 2.056 3.522 2.064 1.29.33 4.568 1.028 5.713-.624m5.349 0c-.824-1.19-.766-2.082.365-3.194 1.13-1.112 1.789-2.738 1.789-2.738s.246-.945.806-.858.97 1.499-.202 2.362c-1.173.864.233 1.45.685.64.451-.812 1.683-2.896 2.322-3.295s1.089-.175.938.647-2.822 2.813-2.562 3.244 1.176-.506 1.176-.506 2.866-2.567 3.49-1.898-.473 1.23-2.037 2.16c-1.564.932-1.686 1.178-1.464 1.53s3.675-2.511 4-1.297c.323 1.214-3.524 1.567-3.287 2.405.238.839 2.71-1.587 3.216-.642.506.946-3.49 2.056-3.522 2.064-1.29.33-4.568 1.028-5.713-.624"></path></svg> <span>hf</span></a></li><!--]--></ul></main><!--]--><!----><!--]--><!--]--> <!--[-1--><!--]--><!--]--> 55 56
56<script> 57 { 58 __sveltekit_13tnoya = { 59 base: new URL(".", location).pathname.slice(0, -1) 60 }; 61 62 const element = document.currentScript.parentElement; 63 64 Promise.all([ 65 import("./_app/immutable/entry/start.DMb1-wHh.js"), 66 import("./_app/immutable/entry/app.B9PwKQEh.js") 67 ]).then(([kit, app]) => { 68 kit.start(app, element, { 69 node_ids: [0, 4], 70 data: [null,null], 71 form: null, 72 error: null 73 }); 74 }); 75 } 76 </script>
76 77 </div> 78 </body> 79</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.