1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[815],{95:(e,t,r)=>{"use strict";r.d(t,{SocialShare:()=>g});var s,n=r(5155),a=r(5136),i=r(7163),o=r(5859),l=r(5374),c=r(8904),d=r(8038),m=r(2115),h=r(1381),u=r(8075);function p(){return(p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var s in r)({}).hasOwnProperty.call(r,s)&&(e[s]=r[s])}return e}).apply(null,arguments)}let v=function(e){return m.createElement("svg",p({width:1200,height:1227,fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),s||(s=m.createElement("path",{d:"M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z",fill:"currentColor"})))};function g(e){let{postUrl:t,filePath:r,title:s,className:p}=e,[g,b]=(0,m.useState)(!1);return(0,n.jsxs)(a.W1,{as:"div",className:"relative inline-block text-left ",children:[(0,n.jsxs)(a.IU,{"aria-label":"More links",className:(0,o.$)("flex items-center gap-1 px-3 py-1 font-medium text-gray-500 dark:text-gray-400",p),"data-umami-event":"social-share",children:[(0,n.jsx)("span",{className:"font-bold",children:"Share"}),(0,n.jsx)(l.A,{strokeWidth:1.5,size:16})]}),(0,n.jsx)(i.e,{as:m.Fragment,enter:"transition ease-out duration-100",enterFrom:"transform opacity-0 scale-95",enterTo:"transform opacity-100 scale-100",leave:"transition ease-in duration-75",leaveFrom:"transform opacity-100 scale-100",leaveTo:"transform opacity-0 scale-95",children:(0,n.jsxs)(a.c,{className:(0,o.$)(["mt-2 w-56","absolute right-0 z-50 rounded-xl","origin-top-right","ring-1 ring-black ring-opacity-5 focus:outline-hidden dark:ring-gray-700","bg-white shadow-lg dark:bg-stone-950","divide-y divide-gray-200 dark:divide-gray-700"]),children:[(0,n.jsx)("div",{className:"px-4 py-2",children:(0,n.jsxs)("button",{onClick:function(){navigator.clipboard.writeText(t),b(!0),setTimeout(()=>{b(!1)},2e3)},className:"flex items-center gap-2.5 text-primary-600 hover:text-primary-800 dark:text-primary-400 dark:hover:text-primary-200",children:[(0,n.jsx)(c.A,{strokeWidth:1.5,size:18}),(0,n.jsx)("span",{children:g?"Copied":"Copy link"})]})}),(0,n.jsxs)("div",{className:"space-y-3 px-4 py-3",children:[(0,n.jsxs)(h.wk,{url:t,title:s,className:"flex items-center gap-2.5 text-gray-600! hover:text-primary-700! dark:text-gray-400! dark:hover:text-primary-300!",children:[(0,n.jsx)(d.H1h,{size:18}),(0,n.jsx)("span",{className:"",children:"Share on LinkedIn"})]}),(0,n.jsxs)(h.r6,{url:t,title:s,via:u.O.x,className:"flex items-center gap-2.5 text-gray-600! hover:text-gray-900! dark:text-gray-400! dark:hover:text-gray-100!",children:[(0,n.jsx)(v,{className:"h-4 w-4",fill:"#fff",viewBox:"0 0 1200 1227"}),(0,n.jsx)("span",{className:"",children:"Share on X (Twitter)"})]})]})]})})]})}},730:(e,t,r)=>{"use strict";let s;r.d(t,{CopyCodeButton:()=>c});var n=r(5155),a=r(5859),i=r(6350),o=r(7783),l=r(2115);function c(e){let{className:t,parent:r}=e,[c,d]=(0,l.useState)(!1);return(0,n.jsx)("button",{"aria-label":"Copy code",className:(0,a.$)(["copy-code","bg-solarized-light p-2 dark:bg-github-dark-dimmed",t]),onClick:function(e){let t=e.currentTarget,n=null;if("code-block"===r)n=t.nextElementSibling;else if("code-title"===r){var a;let e=null==(a=t.parentElement)?void 0:a.nextElementSibling;n=null==e?void 0:e.querySelector("pre")}n&&(navigator.clipboard.writeText(n.textContent),d(!0),clearTimeout(s),s=setTimeout(()=>d(!1),2e3))},children:c?(0,n.jsx)(i.A,{className:"h-4.5 w-4.5"}):(0,n.jsx)(o.A,{className:"h-4.5 w-4.5"})})}},1097:(e,t,r)=>{"use strict";r.d(t,{TocCollapsed:()=>m,TocSidebar:()=>d});var s=r(5155),n=r(5859),a=r(6674),i=r(2115),o=r(8959);function l(e){let[t,r]=(0,i.useState)("");return(0,i.useEffect)(()=>{let t=document.querySelector("article");if(!t||0===e.length)return;let s=Array.from(t.querySelectorAll("h2[id], h3[id]"));if(0===s.length)return;let n=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&r(t.target.id)},{rootMargin:"-80px 0px -70% 0px"});for(let e of s)n.observe(e);return()=>n.disconnect()},[e]),t}function c(e){let{toc:t,activeId:r}=e;return(0,s.jsx)("ul",{className:"flex flex-col gap-0.5",children:t.map(e=>{let{value:t,depth:a,url:i}=e,l=r&&i==="#".concat(r);return(0,s.jsx)("li",{style:{paddingLeft:Math.max(0,(a-2)*14)}
1,children:(0,s.jsx)(o.N,{href:i,"aria-current":l?"true":void 0,className:(0,n.$)("block border-l-2 py-1 pl-3 text-sm transition-colors",l?"border-primary-500 font-medium text-primary-600 dark:text-primary-400":"border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-100"),children:t})},i)})})}function d(e){let{toc:t,className:r}=e,a=l(t);return t&&0!==t.length?(0,s.jsxs)("nav",{"aria-label":"Table of contents",className:(0,n.$)("space-y-3",r),children:[(0,s.jsx)("p",{className:"font-mono text-xs uppercase tracking-widest text-muted",children:"On this page"}),(0,s.jsx)(c,{toc:t,activeId:a})]}):null}function m(e){let{toc:t,className:r}=e,i=l(t);return t&&0!==t.length?(0,s.jsxs)("details",{className:(0,n.$)("group rounded-xl border border-border-token bg-surface/60 px-4 py-3",r),children:[(0,s.jsxs)("summary",{className:"flex cursor-pointer list-none items-center gap-1.5 marker:content-none",children:[(0,s.jsx)(a.A,{strokeWidth:1.5,size:18,className:"transition-transform group-open:rotate-90"}),(0,s.jsx)("span",{className:"font-mono text-xs uppercase tracking-widest text-muted",children:"On this page"})]}),(0,s.jsx)("div",{className:"pt-3",children:(0,s.jsx)(c,{toc:t,activeId:i})})]}):null}},1295:(e,t,r)=>{"use strict";r.d(t,{Comments:()=>o});var s=r(5155),n=r(9284),a=r(3581),i=r(8075);function o(e){let{configs:t,className:r}=e,{themeURL:o,theme:l,darkTheme:c,repo:d,repositoryId:m,category:h,categoryId:u,reactions:p,metadata:v,inputPosition:g,lang:b,mapping:x}={...i.O.comments.giscusConfigs,...t},{theme:f,resolvedTheme:y}=(0,a.D)();return(0,s.jsx)("div",{id:"comment",className:r,children:(0,s.jsx)(n.A,{id:"comments-container",repo:d,repoId:m,category:h,categoryId:u,mapping:x,reactionsEnabled:p,emitMetadata:v,inputPosition:g,theme:""===o?"dark"===f||"dark"===y?c:l:o,lang:b,loading:"lazy"})})}},4161:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Image:()=>d,Zoom:()=>m});var s=r(5155),n=r(5859),a=r(5239),i=r(63),o=r(2115),l=r(899);let c=[];function d(e){let{alt:t,src:r,loading:l="lazy",style:d,className:m,...h}=e,[u,p]=function(e){let t=(0,i.usePathname)()+"__"+e,[r,s]=(0,o.useState)(()=>c.includes(t));return[r,()=>{r||(c.push(t),s(!0))}]}(r);return(0,s.jsx)("div",{className:(0,n.$)("image-container relative overflow-hidden",!u&&"animate-pulse [animation-duration:4s]",m),children:(0,s.jsx)(a.default,{className:(0,n.$)("transition-all duration-500 ease-in-out","h-full max-h-full w-full object-center",u?"blur-0":"blur-xl"),src:r,alt:t,style:{objectFit:"cover",...d},loading:l,priority:"eager"===l,quality:100,onLoad:p,...h})})}function m(e){let{children:t,classDialog:r,...a}=e;return(0,s.jsx)(l.i,{zoomMargin:20,classDialog:(0,n.$)(["**:data-rmiz-modal-img:rounded-lg","**:data-rmiz-btn-unzoom:hidden",'**:data-[rmiz-modal-overlay="visible"]:bg-black/80',r]),...a,children:t})}},4699:(e,t,r)=>{"use strict";r.d(t,{Reactions:()=>c});var s=r(5155),n=r(5859),a=r(2115),i=r(6374),o=r(6810);let l=[{emoji:"sparkling-heart",key:"loves"},{emoji:"clapping-hands",key:"applauses"},{emoji:"bullseye",key:"bullseyes"},{emoji:"light-bulb",key:"ideas"}];function c(e){let{type:t,slug:r,className:i}=e,[c,m]=(0,o.H)(t,r),h=(0,o.S)(),[u,p]=(0,a.useState)({}),[v,g]=(0,a.useState)({});return(0,a.useEffect)(()=>{try{let e=JSON.parse(localStorage.getItem("".concat(t,"/").concat(r))||"{}");e.loves=e.loves||0,e.applauses=e.applauses||0,e.ideas=e.ideas||0,e.bullseyes=e.bullseyes||0,p(Object.assign({},e)),g(Object.assign({},e))}catch(e){}},[]),(0,s.jsx)("div",{className:(0,n.$)("flex items-center gap-6",i),children:l.map(e=>{let{key:n,emoji:a}=e;return(0,s.jsx)(d,{emoji:a,value:m?"--":c[n]+v[n]-u[n],reactions:v[n],onReact:e=>g(t=>({...t,[n]:e})),onSave:()=>{h({type:t,slug:r,[n]:c[n]+v[n]-u[n]}),localStorage.setItem("".concat(t,"/").concat(r),JSON.stringify(v))}},n)})})}function d(e){let t,{emoji:r,value:o,reactions:l,onReact:c,onSave:d}=e,[m,h]=(0,a.useState)(!1),u=(0,a.useRef)(null);return(0,s.jsxs)("button",{onClick:function(){"number"==typeof o&&(t&&clearTimeout(t),h(!0),c(l>=10?10:l+1),u.current&&l>=10&&(u.current.classList.add("animate-scale-up"),setTimeout(()=>{u.current&&u.current.classList.remove("animate-scale-up")},150)))},onMouseLeave:function(){"number"==typeof o&&m&&(t=setTimeout(()=>{h(!1),d()},1e3))},className:"relative flex flex-col items-center justify-center gap-1.5","data-umami-event":"post-reaction",children:[(0,s.jsx)(i.A,{emoji:r,size:"lg"}),(0,s.jsxs)("span",{className:"relative h-6 w-8 overflow-hidden",children:[(0,s.jsx)("span",{className:(0,n.$)("absolute inset-0","font-semibold text-gray-600 dark:text-gray-300","transition-all",m?"-translate-y-6 opacity-0":"translate-y-0 opacity-100"),children:"string"==typeof o?"--":o}),(0,s.jsxs)("span",{ref:u,className:(0,n.$)("absolute inset-0","text-gray-500 dark:text-gray-400","transition-all",m?"translate-y-0 opacity-100":"translate-y-6 opacity-0"),children:["+",l]})]})]})}},4815:(e,t,r)=>{Promise.resolve().then(r.bind(r,1295)),Promise.resolve().then(r.bind(r,4699)),Promise.resolve().then(r.bind(r,5
1537)),Promise.resolve().then(r.bind(r,7070)),Promise.resolve().then(r.bind(r,95)),Promise.resolve().then(r.bind(r,1097)),Promise.resolve().then(r.bind(r,6990)),Promise.resolve().then(r.bind(r,730)),Promise.resolve().then(r.bind(r,5381)),Promise.resolve().then(r.bind(r,4161)),Promise.resolve().then(r.bind(r,4879)),Promise.resolve().then(r.bind(r,530)),Promise.resolve().then(r.bind(r,9721)),Promise.resolve().then(r.bind(r,6870)),Promise.resolve().then(r.bind(r,7669)),Promise.resolve().then(r.bind(r,6696)),Promise.resolve().then(r.bind(r,2576)),Promise.resolve().then(r.bind(r,9255)),Promise.resolve().then(r.bind(r,4590)),Promise.resolve().then(r.bind(r,9209)),Promise.resolve().then(r.bind(r,3284)),Promise.resolve().then(r.bind(r,4774)),Promise.resolve().then(r.bind(r,2294)),Promise.resolve().then(r.bind(r,534)),Promise.resolve().then(r.bind(r,8151)),Promise.resolve().then(r.bind(r,7874)),Promise.resolve().then(r.bind(r,9591)),Promise.resolve().then(r.bind(r,3998)),Promise.resolve().then(r.bind(r,9141)),Promise.resolve().then(r.bind(r,3026)),Promise.resolve().then(r.bind(r,7214)),Promise.resolve().then(r.bind(r,1988)),Promise.resolve().then(r.bind(r,3087)),Promise.resolve().then(r.bind(r,1071)),Promise.resolve().then(r.bind(r,6824)),Promise.resolve().then(r.bind(r,5219)),Promise.resolve().then(r.bind(r,5821)),Promise.resolve().then(r.bind(r,6671)),Promise.resolve().then(r.bind(r,8714)),Promise.resolve().then(r.bind(r,6665)),Promise.resolve().then(r.bind(r,1724)),Promise.resolve().then(r.bind(r,497)),Promise.resolve().then(r.bind(r,6533)),Promise.resolve().then(r.bind(r,9931)),Promise.resolve().then(r.bind(r,3408)),Promise.resolve().then(r.bind(r,6084)),Promise.resolve().then(r.bind(r,9874)),Promise.resolve().then(r.bind(r,8446)),Promise.resolve().then(r.bind(r,9094)),Promise.resolve().then(r.bind(r,3904)),Promise.resolve().then(r.bind(r,4551)),Promise.resolve().then(r.bind(r,7978)),Promise.resolve().then(r.bind(r,4023)),Promise.resolve().then(r.bind(r,9872)),Promise.resolve().then(r.bind(r,6373)),Promise.resolve().then(r.bind(r,6672)),Promise.resolve().then(r.t.bind(r,2619,23))},5381:(e,t,r)=>{"use strict";r.d(t,{Pre:()=>a});var s=r(5155),n=r(730);function a(e){let{children:t}=e;return(0,s.jsxs)("div",{className:"group relative overflow-hidden rounded-xl border border-gray-700/60 dark:border-gray-700/40",children:[(0,s.jsx)(n.CopyCodeButton,{parent:"code-block",className:"absolute right-2 top-2 z-10 opacity-0 transition-opacity group-hover:opacity-100"}),(0,s.jsx)("pre",{className:"overflow-x-auto bg-github-dark-dimmed text-gray-100",children:t})]})}},5537:(e,t,r)=>{"use strict";r.d(t,{ReadingProgress:()=>a});var s=r(5155),n=r(2115);function a(){let[e,t]=(0,n.useState)(0);return(0,n.useEffect)(()=>{let e=()=>{let e=document.querySelector("article");if(!e)return void t(0);let r=e.getBoundingClientRect(),s=window.scrollY+r.top,n=Math.max(1,e.scrollHeight-window.innerHeight);t(Math.max(0,Math.min(100,(window.scrollY-s)/n*100)))};return e(),window.addEventListener("scroll",e,{passive:!0}),window.addEventListener("resize",e),()=>{window.removeEventListener("scroll",e),window.removeEventListener("resize",e)}},[]),(0,s.jsx)("div",{className:"pointer-events-none fixed inset-x-0 top-0 z-[60] h-0.5 bg-transparent",children:(0,s.jsx)("div",{className:"h-full bg-primary-500/80 transition-[width] duration-150",style:{width:"".concat(e,"%")}})})}},6374:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var s=r(5155),n=r(4895),a=r(5859);let i=(0,n.F)("twa inline-block",{variants:{size:{base:"",lg:"twa-lg","2x":"twa-2x","3x":"twa-3x","4x":"twa-4x","5x":"twa-5x"}},defaultVariants:{size:"lg"}});function o(e){let{emoji:t,size:r,className:n}=e;return(0,s.jsx)("i",{className:(0,a.A)(i({size:r}),"twa-".concat(t),n)})}},6810:(e,t,r)=>{"use strict";r.d(t,{H:()=>i,S:()=>o});var s=r(9263),n=r(7079),a=r(7701);function i(e,t){let{data:r,isLoading:n}=(0,s.u)("/api/stats?slug=".concat(t,"&type=").concat(e),a.GO,{revalidateIfStale:!1,revalidateOnFocus:!1,revalidateOnReconnect:!1}),{views:i,loves:o,applauses:l,ideas:c,bullseyes:d}=r||{};return[{type:e,slug:t,views:i||0,loves:o||0,applauses:l||0,ideas:c||0,bullseyes:d||0},n]}function o(){let{trigger:e}=(0,n.A)("/api/stats",async(e,t)=>{let{arg:r}=t;return fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)}).catch(console.error)});return e}},6990:(e,t,r)=>{"use strict";r.d(t,{ViewsCounter:()=>i});var s=r(5155),n=r(2115),a=r(6810);function i(e){let{type:t,slug:r,className:i}=e,[o,l]=(0,a.H)(t,r),c=(0,a.S)(),d="viewed-".concat(t,"-").concat(r);return(0,n.useEffect)(()=>{l||!o||sessionStorage.getItem(d)||(c({type:t,slug:r,increment:"views"}),sessionStorage.setItem(d,"true"))},[d,r,o,l,t,c]),(0,s.jsx)("span",{className:i,children:l?"---":(o.views||0)+" views"})}},7070:(e,t,r)=>{"use strict";r.d(t,{ScrollButtons:()=>l});var s=r(5155),n=r(5859),a=r(8031),i=r(3536),o=r(2115);function l(){let[e,t]=(0,o.useState)(!1);return(0,o.useEffect)(()=>{function e(){t(window.scrollY>200)}return window.addEventListener("scroll",e,{passive:!0}),()=>window.removeEventListener("scroll",e)},[]),(0,s.jsxs)("div",{className:(0,n.$)("fixed bottom-6 right-4 z-40 flex flex-col gap-2 transition-all duration-300 md:bottom-8 md:right-8",e?"translate-y-0 opacity-100":"translate-y-4 opacity-0 pointer-events-none"),children:[(0,s.jsx)(c,{ariaLabel:"Scroll To Comments",onClick:()=>{var e;
1return null==(e=document.getElementById("comment"))?void 0:e.scrollIntoView({behavior:"smooth"})},icon:a.A}),(0,s.jsx)(c,{ariaLabel:"Scroll To Top",onClick:()=>window.scrollTo({top:0,behavior:"smooth"}),icon:i.A})]})}function c(e){let{onClick:t,ariaLabel:r,icon:a}=e;return(0,s.jsx)("button",{"aria-label":r,onClick:t,className:(0,n.$)(["rounded-full p-2.5 transition-all duration-200","bg-white/90 backdrop-blur-sm shadow-card hover:shadow-card-hover","dark:bg-gray-800/90 dark:hover:bg-gray-700/90","ring-1 ring-gray-200/60 dark:ring-gray-700/60","active:scale-95"]),children:(0,s.jsx)(a,{className:"h-4 w-4"})})}},7701:(e,t,r)=>{"use strict";function s(e){return new Date(e).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"2-digit"})}async function n(e){return fetch(e).then(e=>e.json())}r.d(t,{GO:()=>n,Yq:()=>s})},8075:(e,t,r)=>{"use strict";r.d(t,{O:()=>n});var s=r(5704);let n={title:"Product, Engineering & AI Notes, experience, stories | SHK Corp",author:"Hameed Syed K",headerTitle:"Hameed's dev blog",description:"Practical notes on product management, distributed systems, and AIâwritten from real engineering and product experience.",language:"en-us",theme:"system",siteUrl:"https://www.shkcorp.com",siteRepo:"https://github.com/hameedshk/my-notes",siteLogo:"".concat(s.env.BASE_PATH||"","/static/images/logo.jpeg"),socialBanner:"".concat(s.env.BASE_PATH||"","/static/images/twitter-card.jpeg"),email:"[email protected]",github:"https://github.com/hameedshk",stackoverflowflair:"https://stackoverflow.com/users/6086968/hameed-syed/",stackoverflowflairpng:"https://stackoverflow.com/users/flair/6086968.png",stackoverflow:"https://stackexchange.com/users/7612122",stackoverflowpng:"https://stackexchange.com/users/flair/7612122.png",x:"https://x.com/invariantdev",facebook:"https://facebook.com/hameed",youtube:"https://www.youtube.com/hameed",linkedin:"https://linkedin.com/in/hameedshk",threads:"https://www.threads.net/syedhameedk",instagram:"https://www.instagram.com/hmd.exe",pmp:"PMP",pmpcredly:"https://www.credly.com/badges/341502a0-434f-4b01-bf72-3a1265b51ced",pspo:"PSPO-1",pspocredly:"https://www.credly.com/badges/57b50dba-2679-4c5d-bb84-6a7ae18d8e16",locale:"en-US",stickyNav:!0,goodreadsBookshelfUrl:"https://www.goodreads.com/",goodreadsFeedUrl:"https://www.goodreads.com/",imdbRatingsList:"https://www.imdb.com/",analytics:{umamiAnalytics:{websiteId:"06d9c288-f476-4cba-8d5d-bd0a82442824",shareUrl:"https://cloud.umami.is/share/CbrjfAyRsBGs7GY4/shkcorp.com"}},newsletter:{provider:"buttondown"},comments:{giscusConfigs:{repo:"hameedshk/my-notes",repositoryId:"R_kgDONK4GnA",category:"General",categoryId:"DIC_kwDONK4GnM4CkNFQ",mapping:"title",reactions:"1",metadata:"0",theme:"light",darkTheme:"transparent_dark",themeURL:"",lang:"en"}},support:{buyMeACoffee:"https://www.buymeacoffee.com/",paypal:"https://paypal.me/",kofi:"https://ko-fi.com/"}}},8959:(e,t,r)=>{"use strict";r.d(t,{N:()=>i});var s=r(5155),n=r(2619),a=r.n(n);function i(e){let{href:t,...r}=e,n=t&&t.startsWith("/"),i=t&&t.startsWith("#");return n?(0,s.jsx)(a(),{className:"wrap-break-word",href:t,...r}):i?(0,s.jsx)("a",{className:"wrap-break-word",href:t,...r}):(0,s.jsx)("a",{className:"wrap-break-word",target:"_blank",rel:"noopener noreferrer",href:t,...r})}}}]);
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.