{"product_id":"buffalo-ghee-भैंस-का-घी","title":"Buffalo Ghee \/ भैंस का घी","description":"\u003cbody\u003e\n\u003c!-- frame-runtime --\u003e\u003cscript\u003ewindow.__FRAME_PREAMBLE={\"v\":1,\"cred\":\"cookie\",\"capabilities\":{\"artifact\":\"artifact.Kiow93e4.js\",\"assets\":\"assets.DOAjpBS9.js\",\"comments\":\"comments.DrhK3r8W.js\",\"db\":\"db.zFlAA4qL.js\",\"downloads\":\"downloads.axDW2QAi.js\",\"embed\":\"embed.DcZf-TSv.js\",\"endpoints\":\"endpoints.BPfoKaE1.js\",\"files\":\"files.IkpCjcgM.js\",\"mcp\":\"mcp.C8qKIFvQ.js\",\"network\":\"network.B5UA9Su4.js\",\"permissions\":\"permissions.DWFFeHI0.js\",\"room\":\"room.DRL7voHn.js\",\"sample\":\"sample.C7KQQdQj.js\",\"self\":\"artifact.Kiow93e4.js\",\"user\":\"user.CB0zJsP2.js\"},\"transforms\":\"_transforms.CkRgqq9F.js\",\"comments\":\"_comments.DUaNQZcg.js\",\"translate\":\"_translate.DqxC5ek1.js\",\"ldx\":\"_ldx.CqNtBrkk.js\"}                                                                                                                                                                                                                                                                                                                                                                                                                                                                             \u003c\/script\u003e\u003cscript\u003e(function(){\"use strict\";function sr(t){return t===\"cookie\"||t===\"query\"?t:void 0}var Kn=3e5;function ir(t,e){try{const r=t(\"navigation\")[0],n=[r.responseStart,r.redirectEnd-r.redirectStart,r.domContentLoadedEventStart,e(),r.connectEnd-r.domainLookupStart,r.responseStart-r.requestStart];r.requestStart\u003e0||(n.length=4);for(let a=0;a\u003cn.length;a++)if(n[a]\u003e=0\u0026\u0026n[a]\u003c=3e5)n[a]=n[a]|0;else{if(a\u003c4)return;n.length=4}return n}catch{return}}var lr=[\"light\",\"dark\",\"system\"],cr=\/^[A-Za-z0-9_-]{1,64}$\/,St=\/^[a-zA-Z_:][a-zA-Z0-9_:.-]{0,127}$\/,ur=new Set([\"class\",\"hidden\",\"value\",\"checked\",\"style\",\"title\",\"alt\",\"placeholder\",\"lang\",\"dir\",\"role\",\"tabindex\",\"disabled\",\"readonly\",\"contenteditable\",\"open\",\"colspan\",\"rowspan\"]);function fr(t){const e=t.toLowerCase();return e.startsWith(\"data-\")||e.startsWith(\"aria-\")||ur.has(e)}var At=\"data-ldx-props\";function dr(t,e){if(e.toLowerCase()===At)return!0;const r=t.getAttribute(At);if(r===null)return!1;try{const n=JSON.parse(r);if(n===null||typeof n!=\"object\"||Array.isArray(n))return!0;const a=e.toLowerCase();return Object.keys(n).some(s=\u003es.toLowerCase()===a)}catch{return!0}}var Gn=\"http:\/\/www.w3.org\/1999\/xhtml\",hr=\"http:\/\/www.w3.org\/2000\/svg\",pr=new Set([\"script\",\"style\",\"iframe\",\"noscript\",\"noframes\",\"noembed\",\"xmp\",\"plaintext\",\"template\",\"title\",\"textarea\",\"object\",\"embed\"]),mr=new Set([\"script\",\"style\"]);function vr(t){const e=t.localName.toLowerCase();return t.namespaceURI===\"http:\/\/www.w3.org\/1999\/xhtml\"?!pr.has(e):t.namespaceURI===hr?!mr.has(e):!1}function Ve(t,e){return t===e||(t===160||t===32)\u0026\u0026(e===160||e===32)}function _r(t,e){const r=t.length,n=e.length;let a=0;for(;a\u003cr\u0026\u0026a\u003cn\u0026\u0026Ve(t.charCodeAt(a),e.charCodeAt(a));)a++;let s=0;for(;s\u003cr-a\u0026\u0026s\u003cn-a\u0026\u0026Ve(t.charCodeAt(r-1-s),e.charCodeAt(n-1-s));)s++;return{p:a,s}}function yr(t,e){const r=t.firstChild;if(t.childNodes.length!==1||r===null||r.nodeType!==Node.TEXT_NODE){t.textContent=e;return}const n=r.data,a=n.length,s=e.length,{p:c,s:d}=_r(n,e);c===a\u0026\u0026d===0\u0026\u0026a===s||r.replaceData(c,a-c-d,e.slice(c,s-d));const O=r.data,w=t.ownerDocument.getSelection?.()??null,b=w!==null\u0026\u0026w.rangeCount\u003e0\u0026\u0026(w.anchorNode===r||w.focusNode===r)?{anchor:w.anchorNode,anchorOffset:w.anchorOffset,focus:w.focusNode,focusOffset:w.focusOffset}:null;let m=-1,R=-1;for(let h=0;h\u003cO.length\u0026\u0026h\u003ce.length;h++){const p=O.charCodeAt(h),D=e.charCodeAt(h);p!==D\u0026\u0026Ve(p,D)\u0026\u0026(m\u003c0\u0026\u0026(m=h),R=h)}const M=m\u003e=0;if(M\u0026\u0026r.replaceData(m,R-m+1,e.slice(m,R+1)),M\u0026\u0026b!==null\u0026\u0026b.anchor!==null\u0026\u0026b.focus!==null)try{w.setBaseAndExtent(b.anchor,b.anchorOffset,b.focus,b.focusOffset)}catch{}}var gr=new Set([\"html\",\"head\",\"body\",\"frameset\"]);function wr(t){return t.namespaceURI===\"http:\/\/www.w3.org\/1999\/xhtml\"\u0026\u0026gr.has(t.localName)}function br(t){if(t===null||typeof t!=\"object\")return!1;const e=t;if(typeof e.target!=\"string\"||!cr.test(e.target)||e.text!==void 0\u0026\u0026typeof e.text!=\"string\")return!1;if(e.attrsSet!==void 0){if(e.attrsSet===null||typeof e.attrsSet!=\"object\")return!1;for(const[r,n]of Object.entries(e.attrsSet))if(!St.test(r)||typeof n!=\"string\")return!1}if(e.attrsRemoved!==void 0){if(!Array.isArray(e.attrsRemoved))return!1;for(const r of e.attrsRemoved)if(typeof r!=\"string\"||!St.test(r))return!1}return!0}function Er(t,e){if(t===null||typeof t!=\"object\")return!1;const{seq:r,elements:n}=t;if(typeof r!=\"number\"||!Number.isSafeInteger(r)||!Array.isArray(n)||n.length===0||n.length\u003e64)return!1;for(let a=0;a\u003cn.length;a++)if(!e(n[a]))return!1;return!0}function Sr(t){return t===null||typeof t!=\"object\"?!1:Er(t.__frame_patch,br)}function Ar(t){if(t===null||typeof t!=\"object\")return!1;const e=t.__frame_init;return e!==null\u0026\u0026typeof e==\"object\"}function kr(t){return t!==null\u0026\u0026typeof t==\"object\"\u0026\u0026t.__frame_size_poke===!0}function Rr(t){if(t===null||typeof t!=\"object\")return!1;const e=t.__frame_host_visible;return e!==null\u0026\u0026typeof e==\"object\"\u0026\u0026typeof e.visible==\"boolean\"}function Tr(t){if(t===null||typeof t!=\"object\")return!1;const e=t.__frame_theme;if(e===null||typeof e!=\"object\")return!1;const r=e.theme;return typeof r==\"string\"\u0026\u0026lr.includes(r)}var Lr=[\"ok\",\"empty\",\"snapshot_error\",\"snapshot_timeout\",\"unclonable\",\"oversize\",\"unavailable\",\"restore_error\",\"withheld\"],Or=[\"TypeError\",\"RangeError\",\"ReferenceError\",\"SyntaxError\",\"DataCloneError\",\"QuotaExceededError\",\"AbortError\",\"TimeoutError\",\"SecurityError\",\"Error\",\"other\"];function Mr(t){return typeof t==\"string\"\u0026\u0026Or.includes(t)?t:\"other\"}var Pr=Object.freeze({until:null,now:!1}),Nr=\"__claude_hot\",Cr=\"__claude_hot_in\",jr=\/^__claude_hot(?:_in)?(?::|$)\/,kt=\/^[0-9a-z]{1,32}$\/,Xe=t=\u003et===void 0?Nr:\"__claude_hot:\"+t,be=t=\u003et===void 0?Cr:\"__claude_hot_in:\"+t;function Fr(t,e){const r=[];for(let n=0;n\u003ct.length;n++){const a=t.key(n);a!==null\u0026\u0026a!==e\u0026\u0026jr.test(a)\u0026\u0026r.push(a)}for(const n of r)t.removeItem(n)}function Ir(t){let e=null;try{e=q(JSON.parse(t)?.hot)}catch{return null}return e===null||typeof e.k!=\"string\"||!kt.test(e.k)?null:le(e.g)?{k:e.k,g:e.g}:{k:e.k}}var zn=262144,Dr=3e3,xr=5e3,Rt=\/^[a-z0-9._:-]{1,64}$\/,Hr=[\"none\",\"hot-restart\",\"hard-reload\"],qr=[\"asset\",\"doc\",\"added\",\"removed\"],Br=1500,Ur=\/^[0-9a-f]{64}$\/;function q(t){return t!==null\u0026\u0026typeof t==\"object\"?t:null}function le(t){return typeof t==\"number\"\u0026\u0026Number.isInteger(t)\u0026\u0026t\u003e=0\u0026\u0026t\u003c2**31}function Tt(t){return t===void 0||typeof t==\"number\"\u0026\u0026Number.isFinite(t)}function Kr(t){return t===void 0||typeof t==\"string\"\u0026\u0026Rt.test(t)}function Lt(t){const e=q(t);return e!==null\u0026\u0026(e.until===null||typeof e.until==\"number\"\u0026\u0026Number.isFinite(e.until))\u0026\u0026typeof e.now==\"boolean\"}function Ye(t){const e=q(t);return e!==null\u0026\u0026typeof e.ver==\"string\"\u0026\u0026e.ver.length\u003c=128\u0026\u0026Tt(e.seq)\u0026\u0026typeof e.handoff==\"string\"\u0026\u0026Lr.includes(e.handoff)\u0026\u0026Kr(e.note)}function Gr(t){const e=q(t);return e!==null\u0026\u0026le(e.gen)\u0026\u0026(e.phase===\"final\"||e.phase===\"pending\")\u0026\u0026(e.from===null||Ye(e.from))}function zr(t){const e=q(t);return e!==null\u0026\u0026e.kv===1\u0026\u0026le(e.gen)\u0026\u0026Ye(e.from)\u0026\u0026Object.hasOwn(e,\"data\")}function $r(t){const e=q(t);return e!==null\u0026\u0026e.__frame_hot_snapshot===!0\u0026\u0026le(e.gen)\u0026\u0026typeof e.timeoutMs==\"number\"\u0026\u0026e.timeoutMs\u003e=0\u0026\u0026e.timeoutMs\u003c=6e4\u0026\u0026(e.handoff===void 0||typeof e.handoff==\"boolean\")\u0026\u0026(e.deadline===void 0||Lt(e.deadline))\u0026\u0026Tt(e.seq)\u0026\u0026(e.note===void 0||typeof e.note==\"string\")\u0026\u0026(e.key===void 0||typeof e.key==\"string\")}function Wr(t){const e=q(t);return e!==null\u0026\u0026e.__frame_hot_start===!0\u0026\u0026le(e.gen)\u0026\u0026Ye(e.from)}function Vr(t){return typeof t==\"string\"\u0026\u0026t.length\u003e=1\u0026\u0026t.length\u003c=128}function Ot(t){return q(t)!==null\u0026\u0026!Array.isArray(t)}function Xr(t){const e=q(t);return e!==null\u0026\u0026e.__frame_cap_grant===!0\u0026\u0026typeof e.cap==\"string\"\u0026\u0026Vr(e.ver)\u0026\u0026(e.grant===void 0||Ot(e.grant))\u0026\u0026(e.budgets===void 0||Ot(e.budgets)\u0026\u0026Object.values(e.budgets).every(Number.isFinite))\u0026\u0026(e.brokerGen===void 0||le(e.brokerGen))}function Yr(t){const e=q(t);return e!==null\u0026\u0026e.__frame_cap_rewired===!0\u0026\u0026(e.caps===void 0||Array.isArray(e.caps)\u0026\u0026e.caps.every(r=\u003etypeof r==\"string\"))\u0026\u0026(e.brokerGen===void 0||le(e.brokerGen))}function Mt(t){const e=q(t);return e!==null\u0026\u0026typeof e.ver==\"string\"\u0026\u0026e.ver.length\u003c=128\u0026\u0026Number.isFinite(e.seq)}function Pt(t){if(t==null||typeof t==\"string\")return!0;const e=q(t);return e!==null\u0026\u0026typeof e.doc==\"string\"\u0026\u0026typeof e.profile==\"string\"}function Jr(t){const e=q(t);return e!==null\u0026\u0026typeof e.path==\"string\"\u0026\u0026qr.includes(e.kind)\u0026\u0026Pt(e.from)\u0026\u0026Pt(e.to)}function Zr(t){return t===null?null:Object.freeze(t.filter(Jr))}function Qr(t){const e=q(t);return e!==null\u0026\u0026e.__frame_hot_update===!0\u0026\u0026Number.isFinite(e.id)\u0026\u0026Mt(e.from)\u0026\u0026Mt(e.to)\u0026\u0026(e.changed===null||Array.isArray(e.changed))\u0026\u0026Hr.includes(e.required)\u0026\u0026Lt(e.deadline)\u0026\u0026typeof e.verdictTimeoutMs==\"number\"\u0026\u0026e.verdictTimeoutMs\u003e=0\u0026\u0026e.verdictTimeoutMs\u003c=6e4\u0026\u0026(e.preflight===void 0||typeof e.preflight==\"string\"\u0026\u0026Ur.test(e.preflight))}var ce=\/^[\\w.-]+\\.js$\/;function en(t,e,r){return r?\"inert\":typeof e==\"string\"\u0026\u0026ce.test(e)?t?[e]:\"inert\":t?\"inert\":\"framed\"}var Nt=Object.freeze({[Symbol(\"claude.hot.restart\")]:!0});function Ct(t,e){let r;try{r=t??sessionStorage}catch{return null}const n=Xe(e?.k),a=be(e?.k);let s=null;try{s=r.getItem(n)}catch{}try{r.removeItem(n)}catch{}try{Fr(r,a)}catch{}let c=null;if(s!==null\u0026\u0026!(e!==null\u0026\u0026e.g===void 0))try{const d=JSON.parse(s);zr(d)\u0026\u0026(e===null||d.gen===e.g)\u0026\u0026(c=d)}catch{}if(c===null)try{r.removeItem(a)}catch{}return c}function jt(){const t=\/^\\\/_f\\\/([^\/]{1,128})\\\/\/.exec(location.pathname);return t?t[1]:\"\"}var tn=\/^[^\/\\\\?#]{1,128}$\/,Ft=t=\u003etn.test(t)\u0026\u0026t!==\".\"\u0026\u0026t!==\"..\";function It(t,e,r){const n=new URL(t),a=\"\/_f\/\"+e+\"\/\";if(!e||!n.pathname.startsWith(a)||!Ft(r))return null;const s=n.search.slice(1).split(\"\u0026\").filter(c=\u003e!\/^__frame_t(?:=|$)\/.test(c)).join(\"\u0026\");return n.origin+\"\/_f\/\"+r+\"\/\"+n.pathname.slice(a.length)+(s?\"?\"+s:\"\")+n.hash}var Fe=\"{}\";function Ee(t){if(!t)return null;const e={ver:t.ver,handoff:t.handoff};return t.seq!==void 0\u0026\u0026(e.seq=t.seq),t.note!==void 0\u0026\u0026(e.note=t.note),e}function Dt(t,e){return t!==null\u0026\u0026t.note===void 0\u0026\u0026e?.note!==void 0?{...t,note:e.note}:t}function xt(t){const e=t?.k;return e!==null\u0026\u0026typeof e==\"object\"?e:void 0}function rn(t,e,r,n=null){const a=setTimeout,s=clearTimeout,c=queueMicrotask,d=performance.now.bind(performance),O=new TextEncoder;let w=null,b=null;try{w=history,b=w.replaceState.bind(w)}catch{}const m=(...o)=\u003e{try{console.warn(...o)}catch{}};let R=jt(),M=null;try{M=sessionStorage}catch{}const h={storage:M,fetch:typeof fetch==\"function\"?fetch.bind(globalThis):null,entry:location.origin+location.pathname+location.search,ver:R,key:n?.k};let p=n?.k;const D=typeof requestAnimationFrame==\"function\"?requestAnimationFrame:o=\u003ea(()=\u003eo(d()),16);let _=e?.data??{},C=Ee(e?.from),P=e?.gen??0,x=e!==null,W=!1,J=!1,X=null,Te=!1;const Le=new AbortController;let Oe=null,H=null,me=null,qe=!1,oe=()=\u003e{};const l=new Promise(o=\u003e{oe=o});let v=!1,E=!1,I=!1,j,L=null,K=!1,Me=!1,Z=!1,Be=!1,ae=!1,de=!1;const Pe=o=\u003e{for(const u of[Xe(o),be(o)])try{M?.removeItem(u)}catch{}},V=(o,u)=\u003e{try{u!==null\u0026\u0026r.post(o,u)}catch{}},se=()=\u003eae||=Z\u0026\u0026(H===null||Be),B=()=\u003e{const o={__frame_hot:!0,ready:H!==null,accept:me!==null,demand:!0};de=!ae,de\u0026\u0026(o.booting=!0),v\u0026\u0026(o.readData=!0),I\u0026\u0026(o.threw=!0),L?.assess\u0026\u0026(o.preflight=!0),V(o,X)};let ve=!1,Ne=!1,ie=!1,Ce=!1;const i=()=\u003e{ve||!Te||ie||(ve=!0,V({__frame_reveal_hold:!0},\"*\"))},g=()=\u003enew Promise(o=\u003e{let u,f=0;const S=F=\u003e{if(u===void 0)u=F;else if(F!==u||++f\u003e=8){o();return}try{D(S)}catch{o()}};try{D(S)}catch{o()}}),y=()=\u003e{ie=!0,V({__frame_reveal_ready:!0},\"*\")},k=o=\u003e{Ne||(Ne=!0,o.then(u=\u003e{if(u===!1)return;let f=null;try{f=L?.settle?.()??null}catch{}return(f===null?g():new Promise(S=\u003e{a(S,50),Promise.resolve(f).then(S,S)}).then(g)).then(y)}))},Q=()=\u003e{if(Ce||!ie)return;Ce=!0;const o=()=\u003e{try{L?.afterReveal?.()}catch{}};o(),g().then(()=\u003e{o(),y()})},G=(o=!1)=\u003e{if(qe||H===null||!x||!J)return;qe=!0;const u=H,f=_;c(()=\u003e{let S;try{S=u(f)}catch(U){throw oe(!1),U}let F=!1;try{F=typeof S?.then==\"function\"}catch{}if(!F){oe(!0);return}Promise.resolve(S).then(()=\u003eoe(!0),U=\u003e{oe(!1),c(()=\u003e{throw U})})}),k(o?l:r.dcl.then(()=\u003el))},ee=o=\u003etypeof o==\"string\"\u0026\u0026Rt.test(o)?o:void 0,dt=o=\u003e{const u={__frame_hot_restart:!0},f=ee(o?.note);f!==void 0\u0026\u0026(u.note=f),o?.required===\"hard-reload\"\u0026\u0026(u.required=\"hard-reload\"),V(u,X)},Zt=Object.freeze({get data(){return J||(E=!0),!x\u0026\u0026!v\u0026\u0026(v=!0,J\u0026\u0026B()),_},get from(){return C},get gen(){return P},signal:Le.signal,snapshot(o){typeof o==\"function\"\u0026\u0026(Oe=o)},ready(o){typeof o!=\"function\"||H!==null||(H=o,i(),B(),W\u0026\u0026V({__frame_hot_ready:!0,gen:P},X),G())},accept(o){typeof o==\"function\"\u0026\u0026(me=o,B())},restart(o){const u={note:o?.note,required:o?.required};if(J){dt(u);return}const f=j;j={note:ee(f?.note)??u.note,required:f?.required===\"hard-reload\"||u.required===\"hard-reload\"?\"hard-reload\":void 0}}});let Ue=null,Qt=()=\u003e{};const Fn=new Promise(o=\u003e{Qt=o});let In=null;const er=()=\u003eIn??=r.dcl.then(()=\u003e{let o=!1;try{o=Ue!==null\u0026\u0026Ue.expect()}catch{}if(!o)return;const u=Ue.maxMs;return new Promise(f=\u003e{Fn.then(f),a(f,u)})}),tr=()=\u003e{if(!K||Me||L===null)return;Me=!0;const o=L;er().then(()=\u003e{try{ie||o.afterStart(xt(e),!1)}catch{}})},rr=o=\u003e{e!==null\u0026\u0026E\u0026\u0026(v=!0),_={},C=null,P=0;try{M?.removeItem(be(n?.k))}catch{}e!==null\u0026\u0026!o\u0026\u0026k(r.dcl.then(()=\u003eH!==null?l:void 0))},Dn=()=\u003e{K=!0,k(er().then(()=\u003eH!==null?l:void 0)),tr()};try{addEventListener(\"error\",()=\u003e{I||H!==null||(I=!0,B())})}catch{}const nr=()=\u003e{a(()=\u003e{!ae\u0026\u0026se()\u0026\u0026de\u0026\u0026B()},0)};try{Z=document.readyState===\"complete\",Z||addEventListener(\"load\",()=\u003e{Z=!0,nr()},{once:!0})}catch{Z=!0}se(),l.then(()=\u003e{Be=!0,nr()});let he=-1,ht,pt,je=!0,mt=!1,vt,Ke=null;const _t=o=\u003e{const u=Ke===null;Ke=je\u0026\u0026o[0]!==\"withheld\"?o:[\"withheld\",o[1],Fe];let f=o[0];if(je\u0026\u0026f!==\"withheld\"){const F={ver:R,handoff:f};ht!==void 0\u0026\u0026(F.seq=ht),pt!==void 0\u0026\u0026(F.note=pt);try{if(M===null)throw new Error(\"no storage\");M.setItem(Xe(p),'{\"kv\":1,\"gen\":'+he+',\"from\":'+JSON.stringify(F)+(vt!==void 0?',\"k\":'+JSON.stringify(vt):\"\")+',\"data\":'+(f===\"ok\"?o[2]:Fe)+\"}\")}catch{f=\"unavailable\"}}else{f=\"withheld\",Pe(p);try{L?.release?.()}catch{}}const S={__frame_hot_snapshotted:!0,gen:he,handoff:f,bytes:o[1]};o[3]!==void 0\u0026\u0026(S.errName=o[3]),V(S,X),u\u0026\u0026(f===\"snapshot_error\"||f===\"unclonable\"||f===\"oversize\")\u0026\u0026m(\"claude.hot: snapshot\",f,o[3])},_e=o=\u003e{try{return Mr(o?.name)}catch{return\"other\"}},ye=(o,u,f=0)=\u003e_t(u===void 0?[o,f,Fe]:[o,f,Fe,_e(u)]),xn=o=\u003e{if(o.gen\u003c=he)return;const u=he\u003e=0;if(he=o.gen,ht=o.seq,pt=ee(o.note),typeof o.key==\"string\"\u0026\u0026kt.test(o.key)\u0026\u0026o.key!==p\u0026\u0026(Pe(p),p=o.key),je\u0026\u0026=o.handoff!==!1,u){Ke!==null?_t(Ke):mt\u0026\u0026V({__frame_hot_held:!0,gen:he},X);return}Le.abort();const f=Object.freeze({handoff:je,timeoutMs:o.timeoutMs,deadline:o.deadline??Pr}),S=Oe,F=()=\u003e{if(je)try{vt=L?.capture()}catch{}if(S===null){ye(\"empty\");return}let T=!1;const z=a(()=\u003e{T||(T=!0,ye(\"snapshot_timeout\"))},Math.max(0,f.timeoutMs));Promise.resolve().then(()=\u003eS(f)).then(ge=\u003e{if(T)return;T=!0,s(z);let re;try{re=JSON.stringify(ge)}catch(yt){ye(\"unclonable\",yt);return}if(typeof re!=\"string\"){ye(\"unclonable\");return}let ne=re.length;try{ne=O.encode(re).length}catch{}if(ne\u003e262144){ye(\"oversize\",void 0,ne);return}_t([\"ok\",ne,re])},ge=\u003e{T||(T=!0,s(z),ye(\"snapshot_error\",ge))})};let U=null;try{U=L?.holdForIme()??null}catch{}if(U===null)F();else{mt=!0,V({__frame_hot_held:!0,gen:he},X);const T=()=\u003e{mt=!1,F()};U.then(T,T)}},Hn=o=\u003e{if(!W||x||H===null||o.gen!==P)return;let u=null;try{u=Ct(M,n\u0026\u0026{k:n.k,g:o.gen})}catch{}if(u!==null\u0026\u0026u.gen!==o.gen){u=null;try{M?.removeItem(be(n?.k))}catch{}}_=u?.data??{},C=Dt(Ee(u?.from??o.from),Ee(o.from)),u!==null\u0026\u0026(P=u.gen),x=!0,W=!1;const f=xt(u);l.then(S=\u003e{try{S\u0026\u0026L?.afterStart(f,!0)}catch{}}),G(!0)};let Ge=0;const qn=o=\u003e{const u=me;if(u===null||o.id\u003c=Ge)return;Ge=o.id;const f=L?.assess;if(o.preflight===void 0||f===void 0){or(o,u);return}let S=!1;const F=z=\u003e{S||(S=!0,s(T),o.id===Ge\u0026\u0026or(o,u,z))},U=()=\u003eF(f.timeout(o)),T=a(U,Br+100);f.run(o,window).then(F,U)},or=(o,u,f)=\u003e{let S,F=!1,U=!1,T,z,ge=null;const re=A=\u003e{if(U)return!1;if(T!==void 0\u0026\u0026T!==A)return m(`claude.hot: u.${A}() ignored - u.${T}() was called first`),!1;const te=T===void 0;return T=A,te},ne=A=\u003e{T=\"restart\",m(`claude.hot: ${A} - restarting`)},yt=()=\u003e{if(!re(\"adopt\")||o.id!==Ge)return;const A=o.to.ver;if(ze.required!==\"none\"){ne(`u.adopt() needs required 'none', it is '${ze.required}'`);return}if(!Ft(A)){ne(\"u.adopt() cannot address this version\");return}if(!R||A===R)return;const te=R,Y=h.entry;let $e=\"\",wt,we=null,We;try{$e=location.href,wt=w.state,we=It($e,te,A),we!==null\u0026\u0026(b(wt,\"\",we),location.pathname.startsWith(\"\/_f\/\"+A+\"\/\")?we=location.href:We=\"navigate event canceled\")}catch(Et){We=_e(Et)}if(We!==void 0){z=\"adopt_failed\",ne(`adopt_failed ${We}; URL not changed`);return}we===null?(z=\"adopt_skipped\",m(`claude.hot: adopt_skipped - page already left \/_f\/${te}\/; URL not changed, update still applied`)):z=\"adopted\",R=h.ver=A;try{h.entry=It(Y,te,A)??Y}catch{}const bt=we;ge=()=\u003e{if(R===A){if(bt!==null)try{if(location.href!==bt)m(\"claude.hot: adopt_revert_skipped - update not applied; URL left where the page navigated\");else{if(b(wt,\"\",$e),location.href!==$e){m(\"claude.hot: adopt_revert_failed navigate event canceled - URL still at the new version\");return}z=\"adopt_reverted\",m(\"claude.hot: adopt_reverted - adopt() was called but the handler threw; URL restored\")}}catch(Et){m(`claude.hot: adopt_revert_failed ${_e(Et)} - URL still at the new version`);return}R=h.ver=te,h.entry=Y,bt===null\u0026\u0026(z=void 0)}}},ze=Object.freeze({from:{ver:o.from.ver,seq:o.from.seq},to:{ver:o.to.ver,seq:o.to.seq},changed:Zr(o.changed),required:o.required,deadline:o.deadline,adopt:yt,defer(){return re(\"defer\")\u0026\u0026ze.deadline.now\u0026\u0026ne(\"u.defer() past the deadline\"),Nt},restart(A){return re(\"restart\"),T===\"restart\"\u0026\u0026!U\u0026\u0026(S??=ee(A?.note),F||=A?.required===\"hard-reload\"),Nt},...f?.update}),Bn=(A,te)=\u003e{U=!0,A===\"threw\"?(ge?.(),S??=_e(te).toLowerCase()):T===void 0\u0026\u0026m(A===\"timeout\"?\"claude.hot: accept handler did not answer in time - restarting\":\"claude.hot: accept handler settled without defer\/restart\/adopt - restarting\");const Y={__frame_hot_verdict:!0,id:o.id};Y.verdict=A===\"threw\"||T===void 0||T===\"restart\"?\"restart\":T===\"adopt\"?\"applied\":\"deferred\",Y.verdict===\"restart\"\u0026\u0026(F\u0026\u0026(Y.required=\"hard-reload\"),S!==void 0\u0026\u0026(Y.note=S)),z!==void 0\u0026\u0026(Y.verdict===\"applied\"||z!==\"adopted\")\u0026\u0026(Y.adopt=z),V(Object.assign(Y,f?.verdict),X)};let ar=!1;const gt=(A,te)=\u003ear?!1:(ar=!0,s(Un),Bn(A,te),!0),Un=a(()=\u003egt(\"timeout\"),o.verdictTimeoutMs);Promise.resolve().then(()=\u003eu(ze)).then(()=\u003egt(\"settled\"),A=\u003e{!gt(\"threw\",A)\u0026\u0026T===\"adopt\"\u0026\u0026dt({note:_e(A).toLowerCase()}),m(\"claude.hot: accept\",_e(A))})};try{t.hot===void 0\u0026\u0026Object.defineProperty(t,\"hot\",{value:Zt,writable:!1,configurable:!1,enumerable:!1})}catch{}return{hot:Zt,boot:h,afterConnect(){Te=!0,(e!==null||H!==null)\u0026\u0026i()},onInit(o,u){X=u,J=!0;const f=Gr(o)?o:null;f?.phase===\"final\"\u0026\u0026e!==null\u0026\u0026e.gen===f.gen?(x=!0,C=Dt(C,Ee(f.from)),Dn()):(W=f?.phase===\"pending\",rr(W),x=!W,P=f?.gen??0,C=Ee(f?.from)),B(),de\u0026\u0026a(()=\u003e{ae||(ae=!0,B())},xr),W\u0026\u0026H!==null\u0026\u0026V({__frame_hot_ready:!0,gen:P},u),j!==void 0\u0026\u0026(dt(j),j=void 0),G()},onNoInit(){J=!0,rr(!1),x=!0,G()},onShell(o){return o?.__frame_revealed===!0?(Q(),!1):$r(o)?(xn(o),!0):Wr(o)?(Hn(o),!0):Qr(o)?(qn(o),!0):!1},attachExtras(o){L=o,tr(),o.assess\u0026\u0026B()},inSlot:()=\u003ebe(p),hydration(o,u){Ue??={expect:o,maxMs:u}},hydrated(){Qt()},carried(){return x?_:{}},presented:()=\u003eie}}var $n=\"frame_ldx_runtime\",nn=\"frame_ldx_build\",Wn=\"script#an-form\",on=256;function Ht(t,e,r){for(const n of t)r(n)\u0026\u0026t.delete(n);t.size\u003e=on\u0026\u0026!t.has(e)\u0026\u0026t.delete(t.values().next().value),t.add(e)}function Je(t,e,r){try{const n=t[e];if(typeof n!=\"function\")return;t[e]=function(...a){const s=n.apply(this,a);try{r(this)}catch{}return s}}catch{}}var Ze;function an(){if(Ze)return Ze;const t={media:new Set,contexts:new Set,onStart:null,onPause:null};Ze=t;const e=window.HTMLMediaElement?.prototype;e\u0026\u0026(Je(e,\"play\",a=\u003e{Ht(t.media,a,s=\u003es.paused),t.onStart?.(a)}),Je(e,\"pause\",a=\u003et.onPause?.(a)));const r=window.AudioContext,n=window.AudioNode?.prototype;return r\u0026\u0026n\u0026\u0026Je(n,\"connect\",a=\u003e{const s=a.context;s instanceof r\u0026\u0026(Ht(t.contexts,s,c=\u003ec.state===\"closed\"),t.onStart?.(s))}),t}function sn(t){let e=window;for(let r=0;e.parent\u0026\u0026e.parent!==e\u0026\u0026r\u003c8;r++)if(e=e.parent,t(e))return!0;return!1}function ln(){let t=null;const e=()=\u003et??parent,r=n=\u003et?n===t:sn(a=\u003ea===n);return{post(n,a){if(t){e().postMessage(n,a);return}let s=parent;for(let c=0;c\u003c8\u0026\u0026(s.postMessage(n,a),!(!s.parent||s.parent===s));c++)s=s.parent},on(n){const a=s=\u003e{const c=s.source;r(c)\u0026\u0026n(s.data,s.origin,s.isTrusted,()=\u003e{t??=c})};return addEventListener(\"message\",a),()=\u003eremoveEventListener(\"message\",a)},port:n=\u003e({post(a,s){if(s?.activation){e().postMessage(a,{targetOrigin:n,includeUserActivation:!0});return}if(s?.transfer){e().postMessage(a,n,s.transfer);return}e().postMessage(a,n)},on(a,s){const c=d=\u003e{r(d.source)\u0026\u0026d.origin===n\u0026\u0026a(d.data,d)};return addEventListener(\"message\",c,s),()=\u003eremoveEventListener(\"message\",c,s)}})}}function cn(){const t={post:()=\u003e{},on:()=\u003e()=\u003e{}};return{...t,port:()=\u003et}}var un=500,fn=2e4,dn=\"data-token-reads\",hn=\"data-frame-refused-watch\",pn=\"data-frame-unsupported\",mn=\/(?:^|\\s)stylesheet(?:\\s|$)\/i;function vn(t,e){let r=\"\";if(t instanceof HTMLScriptElement?r=t.src:t instanceof HTMLLinkElement\u0026\u0026mn.test(t.rel)\u0026\u0026(r=t.href),!r)return null;try{const n=new URL(r);return n.origin===location.origin\u0026\u0026n.pathname.startsWith(e)?n.origin+n.pathname:null}catch{return null}}function _n(t,e,r){if(!t||e!==\"query\")return;const n=\"\/_f\/\"+t+\"\/\";document.documentElement.setAttribute(hn,\"\");const a=location.href,s=fetch,c=setTimeout,d={method:\"HEAD\",cache:\"no-store\",credentials:\"same-origin\"},O=h=\u003eh.ok||h.status===304;let w=!1,b=!1;const m=()=\u003eremoveEventListener(\"error\",M,!0),R=async h=\u003e{const p=await s(h,d);if(O(p))b=!0;else if(p.status===403){const D=await s(a,d);if(O(D)){const _=(await s(h,d)).status;_===403?(b=!0,document.documentElement.setAttribute(pn,\"\"),r()):_\u003c500\u0026\u0026(b=!0)}else D.status\u003e=400\u0026\u0026D.status\u003c500\u0026\u0026(b=!0)}},M=h=\u003e{if(b||w)return;if(document.documentElement.hasAttribute(dn)){b=!0,m();return}const p=vn(h.target,n);p\u0026\u0026(w=!0,c(()=\u003e{R(p).catch(()=\u003e{}).finally(()=\u003e{w=!1,b\u0026\u0026m()})},un))};addEventListener(\"error\",M,!0),addEventListener(\"load\",m,{once:!0}),c(m,fn)}var Qe=\"__frame_scroll\",yn=150,gn=310,wn=160,bn=3e4;function En(){let t=0,e=!1,r=!1,n=!1,a=0,s=null;const c=_=\u003e{try{sessionStorage.setItem(Qe,JSON.stringify({y:_}))}catch{}},d=()=\u003e{if(clearTimeout(t),s===null)return;const _=s;s=null,c(_)},O=()=\u003e{if(e){e=!1;return}r=!0,s=scrollY,clearTimeout(t),t=setTimeout(d,yn)};try{addEventListener(\"scroll\",O,{passive:!0}),addEventListener(\"pagehide\",d)}catch{}const w=()=\u003e{let _;try{_=sessionStorage.getItem(Qe)}catch{return null}if(_===null)return null;let C;try{C=JSON.parse(_)}catch{C=null}const P=C?.y;if(!(typeof P==\"number\"\u0026\u0026Number.isFinite(P)\u0026\u0026P\u003e=0)){try{sessionStorage.removeItem(Qe)}catch{}return null}return P};let b=!1;const m=_=\u003e{try{const C=scrollY;scrollTo({top:_,left:0,behavior:\"instant\"}),a=_,n=!0,clearTimeout(t),s=null,c(_);const P=scrollY;P!==C\u0026\u0026(e=!0),P!==_\u0026\u0026!b\u0026\u0026(b=!0,addEventListener(\"load\",()=\u003e{try{if(scrollY===P){const x=w();m(x!==null?x:a)}}catch{}},{once:!0}))}catch{}},R=()=\u003e{try{return!!location.hash}catch{return!0}};let M=!1;const h=()=\u003e{try{if(M||innerWidth\u003egn||innerHeight\u003ewn)return;M=!0;const _=Date.now(),C=()=\u003e{try{removeEventListener(\"resize\",C)}catch{}if(Date.now()-_\u003ebn||r||R())return;const P=w();m(P!==null?P:a)};addEventListener(\"resize\",C)}catch{}};let p=!1,D=!1;return{restore(){if(p||(p=!0,R()))return;const _=w();_!==null\u0026\u0026(m(_),h())},promoted(){if(D||(D=!0,R()))return;const _=w();_!==null?(m(_),h()):n\u0026\u0026m(a)}}}function Sn(t,e,r,n){let a=null;try{a=window.trustedTypes?.createPolicy(\"frame-runtime\",{createScriptURL:O=\u003eO})??null}catch{}const s=window.Worker,c=s?.prototype,d=Object.freeze({Worker:s,workerOn:c?.addEventListener,workerPost:c?.postMessage,workerTerminate:c?.terminate,fetch:window.fetch.bind(window),preventDefault:Event.prototype.preventDefault,now:Date.now,policy:a,origins:e});r(t).then(O=\u003eO?.bootTopLevel?O.bootTopLevel(d,n):n.settle()).catch(()=\u003en.settle())}var Vn=\"modulepreload\",Xn=function(t){return\"\/\"+t},Yn={},An=function(e,r,n){let a=Promise.resolve();function s(c){const d=new Event(\"vite:preloadError\",{cancelable:!0});if(d.payload=c,window.dispatchEvent(d),!d.defaultPrevented)throw c}return a.then(c=\u003e{for(const d of c||[])d.status===\"rejected\"\u0026\u0026s(d.reason);return e().catch(s)})},kn=window===top,qt=Object.getOwnPropertyDescriptor(window,\"claude\"),Ie=en(kn,window.__FRAME_PREAMBLE?.topLevel,qt?.writable===!1),et=typeof Ie==\"object\"\u0026\u0026Ie[0],N=et?cn():ln();(function(){const t=Object.defineProperty,e=globalThis,r=[\"RTCPeerConnection\",\"webkitRTCPeerConnection\",\"RTCDataChannel\",\"RTCIceCandidate\",\"RTCSessionDescription\",\"RTCRtpSender\",\"RTCRtpReceiver\"];let n=0;for(let a=0;a\u003cr.length;a++){const s=r[a];try{t(e,s,{value:void 0,writable:!1,configurable:!1})}catch{try{delete e[s]}catch{}try{t(e,s,{value:void 0,writable:!1,configurable:!0})}catch{}}typeof e[s]==\"function\"\u0026\u0026n++}if(n\u0026\u0026Ie===\"framed\")try{N.post({__frame_rtc_lockdown_failed:n},\"*\")}catch{}})();var Bt=1e4,Rn=2e3,tt=2e3,rt=Object.freeze([...window.__FRAME_PREAMBLE?.origins??[\"https:\/\/claude.ai\",\"https:\/\/preview.claude.ai\"]]);function Ut(t){for(const e of rt)if(e.endsWith(\":*\"))try{const r=new URL(t);if(`${r.protocol}\/\/${r.hostname}:*`===e)return!0}catch{}else if(t===e)return!0;return!1}var Se=Object.freeze({...window.__FRAME_PREAMBLE?.capabilities}),Ae=window.__FRAME_PREAMBLE?.transforms,nt=window.__FRAME_PREAMBLE?.comments,ot=window.__FRAME_PREAMBLE?.translate,ke=window.__FRAME_PREAMBLE?.ldx,at=sr(window.__FRAME_PREAMBLE?.cred);function Kt(t){return An(()=\u003eimport(\"\/_runtime\/\"+t),void 0)}var Re=new Set,Gt=setTimeout,Tn=fetch,Ln=AbortController,On=800+800*Math.random(),Mn=3e3,De=null,zt=new Map;function Pn(t,e){let r=zt.get(t);return r||zt.set(t,r=Nn(t,e)),r}function Nn(t,e){if(De?.has(t))return Promise.resolve(\"csp\");if(navigator.onLine===!1)return Promise.resolve(\"offline\");const r=new Ln;let n=!1;return Gt(()=\u003e{n=!0,r.abort()},Mn),Tn(\"\/_runtime\/\"+t,{signal:r.signal}).then(a=\u003e(r.abort(),a.ok?\/javascript\/i.test(a.headers.get(\"content-type\")??\"\")?e instanceof Error\u0026\u0026\/:\\d+:\\d+\\)?$\/m.test(e.stack??\"\")?\"eval\":\"served\":\"mime\":\"http\"),()=\u003en?\"timeout\":De?.has(t)?\"csp\":\"net\")}function ue(t){if(!De){const e=De=new Set;try{document.addEventListener(\"securitypolicyviolation\",r=\u003e{const n=\/\\\/_runtime\\\/([^\/?#]+)\/.exec(r.blockedURI);n\u0026\u0026r.disposition!==\"report\"\u0026\u0026e.add(n[1])})}catch{}}return Kt(t).catch(()=\u003enew Promise(e=\u003eGt(e,On)).then(()=\u003eKt(t+\"?r=1\")).then(e=\u003e(e!==void 0\u0026\u0026Re.add(t),e)))}function $t(t,e,r){return{contract:t.contract,changes:new Set(t.changes??[]),flags:new Set(t.flags??[]),capabilities:t.capabilities??{},capBudgets:t.capBudgets??{},brokerGen:t.brokerGen,transforms:new Map,shellOrigin:e,shell:r,mount:ft,hooks:xe,pipe:()=\u003e({wrap:(n,a)=\u003e(...s)=\u003e{try{return a(...s)}catch(c){return Promise.reject(c)}}})}}var pe=null,$=null;function Wt(t,e,r){try{Object.defineProperty(t,e,{value:r,writable:!1,configurable:!1,enumerable:!0})}catch{try{Object.defineProperty(t,e,{value:r,writable:!1,configurable:!0,enumerable:!0})}catch{}}}var st=!1,xe={editBefore:null,edit:null};function Cn(t,e,r=!1){const n=[];let a;if(r)try{xe.editBefore?.(t)}catch{}for(const s of t.elements){const c=document.querySelector(`[data-id=\"${s.target}\"]`);if(!c){a=s.target;break}if([...Object.keys(s.attrsSet??{}),...s.attrsRemoved??[]].some(d=\u003e!fr(d)||dr(c,d))){a=s.target;break}if(s.text!==void 0\u0026\u0026(!vr(c)||wr(c))){a=s.target;break}for(const[d,O]of Object.entries(s.attrsSet??{}))if(!Xt(c,d)){try{c.setAttribute(d,O)}catch{}Vt(c,d,O)}for(const d of s.attrsRemoved??[])Xt(c,d)||(c.removeAttribute(d),Vt(c,d,null));typeof s.text==\"string\"\u0026\u0026yr(c,s.text),n.push(s.target)}if(r)try{xe.edit?.(t.seq,n,a)}catch{}if(a!==void 0){N.post({__frame_patch_miss:{seq:t.seq}},e);return}try{document.dispatchEvent(new CustomEvent(\"claude:edit\",{detail:{seq:t.seq,targets:n}}))}catch{}}function Vt(t,e,r){if(!(t instanceof HTMLInputElement))return;const n=e.toLowerCase();n===\"checked\"?t.checked=r!==null:n===\"value\"\u0026\u0026t.type!==\"file\"\u0026\u0026(t.value=r??\"\")}function Xt(t,e){const r=e.toLowerCase(),n=t;return r===\"data-id\"||(r===\"value\"||r===\"checked\")\u0026\u0026(n.__artifactSecret===!0||\/^(password|hidden|file)$\/.test(n.type??\"\")||\/(^|\\s)(cc-|one-time-code|current-password|new-password)\/i.test(`${t.getAttribute(\"autocomplete\")??\"\"} ${n.autocomplete??\"\"}`))}function Yt(t){const e=document.documentElement;t===\"light\"||t===\"dark\"?(e.dataset.theme=t,e.style.colorScheme=t,st=!0):st\u0026\u0026(delete e.dataset.theme,e.style.colorScheme=\"\",st=!1)}var fe=new Map,it=null;function lt(){let t;const e={u:new Promise(r=\u003e{t=r}),r:r=\u003e{e.done=!0,t(r)},done:!1,nulled:!1};return e}function He(t,e){t.nulled=!0,t.ver=e,t.r(null)}function ct(t,e){for(const[r,n]of fe)n.done||(e\u0026\u0026n.asked?e(r,n):He(n,t))}var jn=Object.freeze(Object.assign(Object.create(null),{call:Function.prototype.call,apply:Function.prototype.apply,bind:Function.prototype.bind})),ut=!1,ft=(t,e)=\u003e{let r=fe.get(t);if(r?.nulled\u0026\u0026ut)r=lt(),fe.set(t,r);else if(!r||r.done){r?.nulled\u0026\u0026$\u0026\u0026N.post({__frame_cap_telemetry:{kind:\"cap-load-error\",cap:t,phase:\"install\"}},$);return}const n=typeof e==\"function\"?Object.setPrototypeOf(e,jn):Object.assign(Object.create(null),e);typeof n.then==\"function\"\u0026\u0026delete n.then,r.want=void 0,r.r(Object.freeze(n))};function Jt(){const t=qt?.value??{};Wt(window,\"claude\",t);for(const e of Object.keys(Se)){if(t[e]!==void 0){Wt(t,e,t[e]);continue}fe.set(e,lt())}if(t.use===void 0){const e=r=\u003e{if(typeof r!=\"string\"||!Object.hasOwn(Se,r))return Promise.resolve(null);let n=fe.get(r);return n?(it\u0026\u0026(n.nulled||n.want!==void 0)\u0026\u0026(n=it(r,n)),n.asked=!0,n.u):Promise.resolve(t[r]??null)};try{Object.defineProperty(t,\"use\",{value:e,writable:!0,configurable:!0,enumerable:!1})}catch{}}return t}if(Ie===\"framed\"){let t;const e=Ae\u0026\u0026ce.test(Ae)?ue(Ae).catch(l=\u003e{t={f:Ae,e:l}}):Promise.resolve(void 0),r=l=\u003e{if(l.type===\"auxclick\"\u0026\u0026l.button!==1)return;const v=l.target,E=v\u0026\u0026v.closest?v.closest(\"a[href],area[href]\"):null;if(!E)return;const I=E.getAttribute(\"href\");if(!I)return;let j;try{j=new URL(I,document.baseURI)}catch{return}if((j.protocol===\"http:\"||j.protocol===\"https:\")\u0026\u0026j.origin!==location.origin){l.preventDefault();const L=(E.getAttribute(\"target\")??\"\").toLowerCase(),K=l.type===\"auxclick\"||l.metaKey||l.ctrlKey||l.shiftKey||l.altKey||![\"\",\"_self\",\"_top\",\"_parent\"].includes(L);N.post({__frame_nav:!0,url:j.href,newTab:K},\"*\")}};addEventListener(\"click\",r,!0),addEventListener(\"auxclick\",r,!0);const n={},a=l=\u003e{l.isTrusted\u0026\u0026(n.pointer=!0)},s=l=\u003e{l.isTrusted\u0026\u0026(n.click=!0)};addEventListener(\"pointermove\",a,{capture:!0,passive:!0}),addEventListener(\"click\",s,{capture:!0,passive:!0});const c={cb:null};addEventListener(\"keydown\",l=\u003ec.cb?.(l),!0);const d={cb:null};addEventListener(\"keydown\",l=\u003ed.cb?.(l));const O=an();e.then(l=\u003el?.installEscapeForward?.(c,v=\u003e{$\u0026\u0026N.post(v,$)})),e.then(l=\u003e{try{l?.installFocusKeep?.()}catch{}}),e.then(l=\u003e{if(!l?.wireNav)return;const v=N.port(\"*\");l.wireNav(v),removeEventListener(\"click\",r,!0),removeEventListener(\"auxclick\",r,!0),removeEventListener(\"pointermove\",a,!0),removeEventListener(\"click\",s,!0),l.wireEngagement?.(n,v,O)});let w=null;try{w=En()}catch{}const b=document.readyState===\"loading\"?new Promise(l=\u003edocument.addEventListener(\"DOMContentLoaded\",()=\u003el(),{once:!0})):Promise.resolve();let m=null,R=null;try{R=Ir(window.name),m=Ct(null,R)}catch{}const M=Jt();let h=null;try{h=rn(M,m,{post:(l,v)=\u003eN.post(l,v),dcl:b},R)}catch{}e.then(l=\u003e{try{h\u0026\u0026l?.installHotExtras?.(h)}catch{}});let p=null;const D=()=\u003eArray.isArray(p?.flags)\u0026\u0026p.flags.includes(\"frame_ldx_runtime\")\u0026\u0026!!ke\u0026\u0026ce.test(ke)\u0026\u0026document.querySelector(\"script#an-form\")!==null;try{h?.hydration(D,Dr)}catch{}let _=null,C=0;const P=N.on((l,v,E,I)=\u003e{Ut(v)\u0026\u0026Ar(l)\u0026\u0026(I(),p=l.__frame_init,$=v,P(),clearTimeout(C),_?.())});if(at)for(const l of rt)try{l.endsWith(\":*\")||N.post({__frame_cred:at},l)}catch{}N.post({__frame_connect:!0},\"*\");try{h?.afterConnect()}catch{}const x=setTimeout,W=clearTimeout;let J=()=\u003eNaN,X=()=\u003e[];try{J=performance.now.bind(performance),X=performance.getEntriesByType.bind(performance)}catch{}let Te=0;const Le=()=\u003e{try{N.post({__frame_alive:!0},\"*\")}catch{}Te=x(Le,Rn)},Oe=()=\u003eW(Te);Le(),addEventListener(\"load\",Oe,{once:!0});const H=new Promise(l=\u003e{_=l,C=setTimeout(()=\u003e{P(),l()},Bt)}),me=new WeakSet;addEventListener(\"error\",l=\u003e{l.target\u0026\u0026me.add(l.target)},!0);try{_n(jt(),at,()=\u003e{e.then(l=\u003e{try{l?.drawRefusedNotice?.()}catch{}})})}catch{}const qe=()=\u003e{let l=[];try{l=[...document.querySelectorAll(\"link[rel~=stylesheet]:not([rel~=alternate])\")].filter(E=\u003e!E.sheet\u0026\u0026!E.disabled\u0026\u0026!me.has(E)\u0026\u0026E.getAttribute(\"href\")\u0026\u0026URL.canParse(E.href)\u0026\u0026(!E.media||matchMedia(E.media).matches))}catch{}let v=l.length;return v===0?Promise.resolve():new Promise(E=\u003e{try{const I=tt-J(),j=x(E,I\u003e0?I\u003ctt?I:tt:0),L=()=\u003e{--v===0\u0026\u0026(W(j),E())};for(const K of l)K.addEventListener(\"load\",L,{once:!0}),K.addEventListener(\"error\",L,{once:!0})}catch{E()}})};b.then(()=\u003e{try{w?.restore()}catch{}}),Promise.all([H,b,e]).then(([,,l])=\u003e{if(p?.hostOverlays!==!0||!$)return;let v=!1;try{v=l?.declaresCover?.()===!0}catch{}N.post({__frame_layout:{cover:v}},$)});const oe={cb:null};N.on((l,v)=\u003e{if(Ut(v)\u0026\u0026kr(l)){try{w?.promoted()}catch{}oe.cb?.()}}),H.then(async()=\u003e{if(!p||!$){ct();try{h?.onNoInit()}catch{}return}if(Yt(p.theme),p.hostVisible===!1\u0026\u0026e.then(i=\u003ei?.applyHostVisible?.(!1,O)),p.hostKeys!==void 0){const i=$,g=p.hostKeys;e.then(y=\u003ey?.installHostKeyForward?.(d,g,k=\u003eN.post(k,i)))}try{h?.onInit(p.hot,$)}catch{}const l=$,v=N.port(l),E=(i,g)=\u003eN.post({__frame_cap_telemetry:{kind:\"cap-load-error\",cap:i,phase:g}},l),I=(i,g,y)=\u003e{new Promise(k=\u003ek(Pn(g,y))).then(k=\u003eE(i,k),()=\u003eE(i))},j=i=\u003eN.post({__frame_cap_recovered:{cap:i}},l);let L=p.brokerGen;const K=()=\u003eh?.boot.ver??\"\",Me=K(),Z=(i,g)=\u003e{const y=K();W(g.t),g.want=y,g.t=x(()=\u003e{g.done||He(g,y)},Bt),N.post({__frame_cap_want:!0,cap:i,ver:y},l)},Be=(i,g)=\u003e{const y=fe.get(i.cap),k=Se[i.cap];if(!g||!y||y.done||y.want!==i.ver||!ce.test(k))return;if(W(y.t),y.want=void 0,L=i.brokerGen??L,i.ver!==K()){Z(i.cap,y);return}if(!i.grant||i.cap===\"network\"){He(y,i.ver);return}const Q=pe,G=pe={...Q,capabilities:{...Q.capabilities,[i.cap]:i.grant},capBudgets:{...Q.capBudgets,[i.cap]:{...Q.capBudgets[i.cap],...i.budgets}}};ue(k).then(ee=\u003e{Re.has(k)\u0026\u0026j(i.cap),G.brokerGen=L,ut=!0;try{ee?.install?.(G)}catch{E(i.cap,\"install\")}finally{ut=!1}},ee=\u003eI(i.cap,k,ee)).then(()=\u003e{y.done||He(y,i.ver)})};let ae=!1,de=!1;N.on((i,g,y)=\u003e{if(g!==l)return;try{if(h?.onShell(i))return}catch{}if(Tr(i)\u0026\u0026Yt(i.__frame_theme.theme),Xr(i)\u0026\u0026Be(i,y),y\u0026\u0026Yr(i)\u0026\u0026(L=i.brokerGen??L),Rr(i)){const G=i.__frame_host_visible.visible;e.then(ee=\u003eee?.applyHostVisible?.(G,O))}Sr(i)\u0026\u0026Cn(i.__frame_patch,l,y);const k=i?.__fc_mode;k\u0026\u0026typeof k==\"object\"\u0026\u0026!ae\u0026\u0026nt\u0026\u0026ce.test(nt)\u0026\u0026(ae=!0,ue(nt).then(G=\u003eG.install?.(l,k.on===!0,v)).catch(()=\u003e{}));const Q=i?.__ft_cmd;Q\u0026\u0026typeof Q==\"object\"\u0026\u0026!de\u0026\u0026ot\u0026\u0026ce.test(ot)\u0026\u0026(de=!0,ue(ot).then(G=\u003eG.install?.(l,Q,v)).catch(()=\u003e{}))});const Pe=Object.keys(p.capabilities??{}).filter(i=\u003eObject.hasOwn(Se,i)).map(i=\u003e[i,Se[i]]).filter(i=\u003etypeof i[1]==\"string\"\u0026\u0026ce.test(i[1])),V=await Promise.allSettled(Pe.map(([,i])=\u003eue(i))),se=await e,B=l;if(se?.buildBoot||(t?I(\"_transforms\",t.f,t.e):E(\"_transforms\")),se?.buildBoot)try{pe=se.buildBoot(p,se.TRANSFORMS??{},{shellOrigin:B,mount:ft,hooks:xe,shell:v},i=\u003eN.post({__frame_cap_telemetry:i},B))}catch{E(\"_transforms\",\"install\"),pe=$t(p,B,v)}else pe=$t(p,B,v);se?.buildBoot\u0026\u0026Re.has(Ae??\"\")\u0026\u0026j(\"_transforms\");const ve=pe;ve.brokerGen=L,V.forEach((i,g)=\u003e{const[y,k]=Pe[g];if(i.status!==\"fulfilled\"){I(y,k,i.reason);return}Re.has(k)\u0026\u0026j(y);try{i.value?.install?.(ve)}catch{E(y,\"install\")}});const Ne=p.capWants===!0;Ne\u0026\u0026(it=(i,g)=\u003e{const y=K();if(!y)return g;if(!g.nulled)return g.want!==y\u0026\u0026Z(i,g),g;if(y===g.ver)return g;const k=lt();return fe.set(i,k),Z(i,k),k}),ct(Me,Ne\u0026\u0026K()!==Me?Z:void 0),await b,await qe(),Oe();const ie=ir(X,J);N.post(ie?{__frame_ready:!0,nav:ie}:{__frame_ready:!0},$),e.then(i=\u003e{i?.installSizeReporter?.(B,oe,v),i?.installPaintReporter?.(v)});let Ce=!1;try{Ce=D()}catch{}ke\u0026\u0026Ce?ue(ke).then(i=\u003ei?.boot?.({shellOrigin:l,build:ve.flags.has(nn),hot:h?.hot??null,carried:h?.carried(),presented:()=\u003eh?.presented()??!0})).catch(()=\u003e!1).then(i=\u003e{h?.hydrated(),i!==!0?E(\"_ldx\"):Re.has(ke)\u0026\u0026j(\"_ldx\")}):h?.hydrated()})}else et\u0026\u0026(Jt(),Sn(et,rt,ue,{settle:ct,mount:ft}))})();\u003c\/script\u003e\u003c!-- \/frame-runtime --\u003e\n\u003cmeta charset=\"UTF-8\"\u003e\n\u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1, viewport-fit=cover\"\u003e\n\u003ctitle\u003eHarisanjeevan® Shudh Desi Ghee\u003c\/title\u003e\n\u003cstyle\u003e\n  :root {\n    --bg: #ffffff;\n    --ink: #14301b;\n    --ink-soft: #3f5443;\n    --green: #1b5e20;\n    --green-tint: #eef6ee;\n    --gold: #b8791f;\n    --gold-tint: #fbf1de;\n    --rule: #dfe9de;\n    padding-top: env(safe-area-inset-top, 0px);\n    padding-bottom: env(safe-area-inset-bottom, 0px);\n  }\n  * { box-sizing: border-box; }\n  body {\n    margin: 0;\n    background: var(--bg);\n    color: var(--ink-soft);\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n    line-height: 1.65;\n  }\n  h1, h2, h3 {\n    font-family: Georgia, \"Iowan Old Style\", \"Palatino Linotype\", serif;\n    color: var(--ink);\n    margin: 0;\n  }\n  .wrap { max-width: 760px; margin: 0 auto; padding: 0 24px; }\n  .wide { max-width: 920px; margin: 0 auto; padding: 0 24px; }\n\n  \/* HERO *\/\n  .hero {\n    padding: 72px 24px 40px;\n    text-align: center;\n    opacity: 0;\n    animation: riseIn 0.8s ease forwards;\n  }\n  @keyframes riseIn { from { opacity: 0; transform: translateY(14px);} to { opacity: 1; transform: translateY(0);} }\n  .hero .mark { font-size: 0.82rem; letter-spacing: 0.4px; color: var(--green); font-weight: 600; margin-bottom: 14px; }\n  .hero h1 { font-size: clamp(2rem, 5vw, 2.85rem); font-weight: 700; line-height: 1.2; }\n  .hero p.sub { max-width: 560px; margin: 16px auto 0; color: var(--ink-soft); font-size: 1.05rem; }\n  .hero-rule { width: 64px; height: 3px; background: var(--gold); margin: 26px auto 0; border-radius: 2px; }\n\n  section { padding: 40px 0; }\n  p { font-size: 1rem; margin: 0 0 16px; }\n  p:last-child { margin-bottom: 0; }\n\n  .lede { font-size: 1.12rem; color: var(--ink); }\n\n  .focus-line {\n    border-left: 3px solid var(--gold);\n    padding: 4px 0 4px 20px;\n    font-size: 1.05rem;\n    color: var(--ink);\n    font-style: italic;\n    margin: 28px 0;\n  }\n\n  h2.section-title { font-size: 1.55rem; margin-bottom: 18px; }\n  h2.section-title .emoji { font-size: 1.2rem; margin-right: 8px; }\n\n  \/* GHEE CARDS *\/\n  .ghee-grid {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 20px;\n    margin-top: 8px;\n  }\n  .ghee-card {\n    background: var(--green-tint);\n    border-radius: 14px;\n    padding: 26px 24px;\n  }\n  .ghee-card .icon { font-size: 1.7rem; }\n  .ghee-card h3 { font-size: 1.15rem; margin: 10px 0 8px; }\n  .ghee-card p { font-size: 0.94rem; color: var(--ink-soft); margin: 0; }\n\n  \/* WHY CHOOSE LIST *\/\n  .why-list {\n    list-style: none;\n    margin: 0;\n    padding: 0;\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 12px 24px;\n  }\n  .why-list li {\n    display: flex;\n    align-items: flex-start;\n    gap: 10px;\n    font-size: 0.96rem;\n    color: var(--ink);\n  }\n  .why-list li::before {\n    content: \"✓\";\n    color: var(--green);\n    font-weight: 700;\n    flex-shrink: 0;\n    margin-top: 1px;\n  }\n  .maker-line {\n    margin-top: 22px;\n    padding-top: 18px;\n    border-top: 1px solid var(--rule);\n    font-size: 0.9rem;\n    color: var(--ink-soft);\n  }\n\n  \/* PROMISE *\/\n  .promise {\n    background: var(--gold-tint);\n    border-radius: 18px;\n    padding: 40px 32px;\n    text-align: center;\n    margin: 8px 0 0;\n  }\n  .promise h2 { font-size: 1.4rem; margin-bottom: 14px; }\n  .promise p { color: var(--ink); }\n  .tagline {\n    margin-top: 20px;\n    font-family: Georgia, \"Iowan Old Style\", serif;\n    font-size: 1.2rem;\n    color: var(--green);\n  }\n  .closing {\n    margin-top: 28px;\n    font-weight: 700;\n    color: var(--ink);\n    font-size: 1.05rem;\n  }\n\n  footer { text-align: center; padding: 36px 24px 56px; color: #94a396; font-size: 0.8rem; }\n\n  @media (max-width: 640px) {\n    .ghee-grid, .why-list { grid-template-columns: 1fr; }\n    .hero { padding: 52px 20px 32px; }\n    section { padding: 30px 0; }\n  }\n\n  @media (prefers-reduced-motion: reduce) {\n    .hero { animation: none; opacity: 1; }\n  }\n\u003c\/style\u003e\n\u003cstyle\u003e* { cursor: crosshair !important; }\u003c\/style\u003e\n\u003cstyle\u003eiframe, object, embed { pointer-events: none !important; }\u003c\/style\u003e\n\n\n  \u003cdiv class=\"hero\"\u003e\n    \u003cdiv class=\"mark\"\u003eHarisanjeevan®\u003c\/div\u003e\n    \u003ch1\u003eShudh Desi Ghee\u003c\/h1\u003e\n    \u003cp class=\"sub\"\u003eFrom village-nurtured cows \u0026amp; buffaloes to your family\u003c\/p\u003e\n    \u003cdiv class=\"hero-rule\"\u003e\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"wrap\"\u003e\n    \u003csection\u003e\n      \u003cp class=\"lede\"\u003eHarisanjeevan® Shudh Desi Ghee is made from milk sourced from desi cows and buffaloes raised in village environments, where the animals are naturally cared for and fed a traditional grass-based diet.\u003c\/p\u003e\n      \u003cdiv class=\"focus-line\"\u003eGood animals, wholesome feed, careful milk collection, and traditional ghee-making practices.\u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection\u003e\n      \u003ch2 class=\"section-title\"\u003e\n\u003cspan class=\"emoji\"\u003e🌿\u003c\/span\u003eWhat makes Harisanjeevan different?\u003c\/h2\u003e\n      \u003cp\u003eOur selected cows and buffaloes are raised in village surroundings and, as part of their natural feeding routine, are given fresh green grass, naturally growing grasses, and locally available herbs and jadi-butiyan that grow alongside it. We do not promote a feed-heavy approach for these animals — our sourcing focuses on animals maintained with a predominantly natural, grass-based diet.\u003c\/p\u003e\n      \u003cp\u003eThis traditional village environment is at the heart of our sourcing philosophy.\u003c\/p\u003e\n    \u003c\/section\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"wide\"\u003e\n    \u003csection\u003e\n      \u003cdiv class=\"ghee-grid\"\u003e\n        \u003cdiv class=\"ghee-card\"\u003e\n          \u003cdiv class=\"icon\"\u003e🐄\u003c\/div\u003e\n          \u003ch3\u003eDesi Cow Ghee\u003c\/h3\u003e\n          \u003cp\u003eMade from milk sourced from indigenous desi cows, our cow ghee has a naturally rich aroma, golden appearance, and smooth texture — suitable for everyday cooking, rotis, parathas, dal, sweets, and traditional Indian recipes.\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"ghee-card\"\u003e\n          \u003cdiv class=\"icon\"\u003e🐃\u003c\/div\u003e\n          \u003ch3\u003eBuffalo Ghee\u003c\/h3\u003e\n          \u003cp\u003eMade from buffalo milk, our buffalo ghee offers a richer, creamier texture and robust taste — suitable for cooking, traditional sweets, churi, and other Indian preparations.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"wrap\"\u003e\n    \u003csection\u003e\n      \u003ch2 class=\"section-title\"\u003e\n\u003cspan class=\"emoji\"\u003e🥄\u003c\/span\u003eWhy choose Harisanjeevan?\u003c\/h2\u003e\n      \u003cul class=\"why-list\"\u003e\n        \u003cli\u003eVillage-sourced milk\u003c\/li\u003e\n        \u003cli\u003eGrass-based animal feeding approach\u003c\/li\u003e\n        \u003cli\u003eAnimals raised in natural village surroundings\u003c\/li\u003e\n        \u003cli\u003eFresh green grass and naturally available herbs in their feeding environment\u003c\/li\u003e\n        \u003cli\u003eTraditional approach to milk sourcing\u003c\/li\u003e\n        \u003cli\u003eRich, natural ghee aroma and taste\u003c\/li\u003e\n        \u003cli\u003eSuitable for everyday cooking and traditional recipes\u003c\/li\u003e\n        \u003cli\u003eCarefully packed to maintain freshness\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cdiv class=\"maker-line\"\u003eProduct of Harix Agro and Dairy Pvt. Ltd.\u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection\u003e\n      \u003cdiv class=\"promise\"\u003e\n        \u003ch2\u003eOur promise\u003c\/h2\u003e\n        \u003cp\u003eAt Harisanjeevan®, we believe that the journey of good ghee begins before the milk reaches the dairy — with the care of the animals, their surroundings, and what they are fed.\u003c\/p\u003e\n        \u003cp class=\"tagline\"\u003eFrom village fields and grass-fed animals to your kitchen.\u003c\/p\u003e\n        \u003cdiv class=\"closing\"\u003eHarisanjeevan® — Pure Tradition. From Our Villages to Your Home.\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n  \u003c\/div\u003e\n\n  \u003cfooter\u003eHarisanjeevan® · Harix Agro and Dairy Pvt. Ltd.\u003c\/footer\u003e\n\n\n\n\u003c\/body\u003e","brand":"Harixkart","offers":[{"title":"1Ltr","offer_id":40930360656001,"sku":null,"price":2050.0,"currency_code":"INR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0610\/1113\/2545\/files\/BaffaloGhee.png?v=1790166630","url":"https:\/\/harixkart.com\/products\/buffalo-ghee-%e0%a4%ad%e0%a5%88%e0%a4%82%e0%a4%b8-%e0%a4%95%e0%a4%be-%e0%a4%98%e0%a5%80","provider":"Harixkart","version":"1.0","type":"link"}