vendor: 5,266 bytes, lines 1-9
1(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))i(r);new MutationObserver(r=>{for(const a of r)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&i(l)}).observe(document,{childList:!0,subtree:!0});function n(r){const a={};return r.integrity&&(a.integrity=r.integrity),r.referrerPolicy&&(a.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?a.credentials="include":r.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function i(r){if(r.ep)return;r.ep=!0;const a=n(r);fetch(r.href,a)}})();function mu(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Zo={exports:{}},ir={},Jo={exports:{}},N={};/** 2 * @license React 3 * react.production.min.js 4 * 5 * Copyright (c) Facebook, Inc. and its affiliates. 6 * 7 * This source code is licensed under the MIT license found in the 8 * LICENSE file in the root directory of this source tree. 9 */var Yn=Symbol.for("react.element"),fu=Symbol.for("react.portal"),yu=Symbol.for("react.fragment"),hu=Symbol.for("react.strict_mode"),ku=Symbol.for("react.profiler"),Su=Symbol.for("react.provider"),vu=Symbol.for("react.context"),Pu=Symbol.for("react.forward_ref"),xu=Symbol.for("react.suspense"),Uu=Symbol.for("react.memo"),wu=Symbol.for("react.lazy"),Fl=Symbol.iterator;function bu(e){return e===null||typeof e!="object"?null:(e=Fl&&e[Fl]||e["@@iterator"],typeof e=="function"?e:null)}var es={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},ts=Object.assign,ns={};function on(e,t,n){this.props=e,this.context=t,this.refs=ns,this.updater=n||es}on.prototype.isReactComponent={};on.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};on.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function is(){}is.prototype=on.prototype;function Ba(e,t,n){this.props=e,this.context=t,this.refs=ns,this.updater=n||es}var Aa=Ba.prototype=new is;Aa.constructor=Ba;ts(Aa,on.prototype);Aa.isPureReactComponent=!0;var _l=Array.isArray,rs=Object.prototype.hasOwnProperty,Ha={current:null},as={key:!0,ref:!0,__self:!0,__source:!0};function ls(e,t,n){var i,r={},a=null,l=null;if(t!=null)for(i in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(a=""+t.key),t)rs.call(t,i)&&!as.hasOwnProperty(i)&&(r[i]=t[i]);var s=arguments.length-2;if(s===1)r.children=n;else if(1<s){for(var c=Array(s),u=0;u<s;u++)c[u]=arguments[u+2];r.children=c}if(e&&e.defaultProps)for(i in s=e.defaultProps,s)r[i]===void 0&&(r[i]=s[i]);return{$$typeof:Yn,type:e,key:a,ref:l,props:r,_owner:Ha.current}}function qu(e,t){return{$$typeof:Yn,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function $a(e){return typeof e=="object"&&e!==null&&e.$$typeof===Yn}function Tu(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var Gl=/\/+/g;function xr(e,t){return typeof e=="object"&&e!==null&&e.key!=null?Tu(""+e.key):t.toString(36)}function Pi(e,t,n,i,r){var a=typeof e;(a==="undefined"||a==="boolean")&&(e=null);var l=!1;if(e===null)l=!0;else switch(a){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case Yn:case fu:l=!0}}if(l)return l=e,r=r(l),e=i===""?"."+xr(l,0):i,_l(r)?(n="",e!=null&&(n=e.replace(Gl,"$&/")+"/"),Pi(r,t,n,"",function(u){return u})):r!=null&&($a(r)&&(r=qu(r,n+(!r.key||l&&l.key===r.key?"":(""+r.key).replace(Gl,"$&/")+"/")+e)),t.push(r)),1;if(l=0,i=i===""?".":i+":",_l(e))for(var s=0;s<e.length;s++){a=e[s];var c=i+xr(a,s);l+=Pi(a,t,n,c,r)}else if(c=bu(e),typeof c=="function")for(e=c.call(e),s=0;!(a=e.next()).done;)a=a.value,c=i+xr(a,s++),l+=Pi(a,t,n,c,r);else if(a==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return l}function ii(e,t,n){if(e==null)return e;var i=[],r=0;return Pi(e,i,"","",function(a){return t.call(n,a,r++)}),i}function zu(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var se={current:null},xi={transition:null},Iu={ReactCurrentDispatcher:se,ReactCurrentBatchConfig:xi,ReactCurrentOwner:Ha};function os(){throw Error("act(...) is not supported in production builds of React.")}N.Children={map:ii,forEach:function(e,t,n){ii(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ii(e,function(){t++}),t},toArray:function(e){return ii(e,function(t){return t})||[]},only:function(e){if(!$a(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};N.Component=on;N.Fragment=yu;N.Profiler=ku;
vendor: 9,036 bytes, lines 9-33
9N.PureComponent=Ba;N.StrictMode=hu;N.Suspense=xu;N.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Iu;N.act=os;N.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var i=ts({},e.props),r=e.key,a=e.ref,l=e._owner;if(t!=null){if(t.ref!==void 0&&(a=t.ref,l=Ha.current),t.key!==void 0&&(r=""+t.key),e.type&&e.type.defaultProps)var s=e.type.defaultProps;for(c in t)rs.call(t,c)&&!as.hasOwnProperty(c)&&(i[c]=t[c]===void 0&&s!==void 0?s[c]:t[c])}var c=arguments.length-2;if(c===1)i.children=n;else if(1<c){s=Array(c);for(var u=0;u<c;u++)s[u]=arguments[u+2];i.children=s}return{$$typeof:Yn,type:e.type,key:r,ref:a,props:i,_owner:l}};N.createContext=function(e){return e={$$typeof:vu,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:Su,_context:e},e.Consumer=e};N.createElement=ls;N.createFactory=function(e){var t=ls.bind(null,e);return t.type=e,t};N.createRef=function(){return{current:null}};N.forwardRef=function(e){return{$$typeof:Pu,render:e}};N.isValidElement=$a;N.lazy=function(e){return{$$typeof:wu,_payload:{_status:-1,_result:e},_init:zu}};N.memo=function(e,t){return{$$typeof:Uu,type:e,compare:t===void 0?null:t}};N.startTransition=function(e){var t=xi.transition;xi.transition={};try{e()}finally{xi.transition=t}};N.unstable_act=os;N.useCallback=function(e,t){return se.current.useCallback(e,t)};N.useContext=function(e){return se.current.useContext(e)};N.useDebugValue=function(){};N.useDeferredValue=function(e){return se.current.useDeferredValue(e)};N.useEffect=function(e,t){return se.current.useEffect(e,t)};N.useId=function(){return se.current.useId()};N.useImperativeHandle=function(e,t,n){return se.current.useImperativeHandle(e,t,n)};N.useInsertionEffect=function(e,t){return se.current.useInsertionEffect(e,t)};N.useLayoutEffect=function(e,t){return se.current.useLayoutEffect(e,t)};N.useMemo=function(e,t){return se.current.useMemo(e,t)};N.useReducer=function(e,t,n){return se.current.useReducer(e,t,n)};N.useRef=function(e){return se.current.useRef(e)};N.useState=function(e){return se.current.useState(e)};N.useSyncExternalStore=function(e,t,n){return se.current.useSyncExternalStore(e,t,n)};N.useTransition=function(){return se.current.useTransition()};N.version="18.3.1";Jo.exports=N;var R=Jo.exports;const Cu=mu(R);/** 10 * @license React 11 * react-jsx-runtime.production.min.js 12 * 13 * Copyright (c) Facebook, Inc. and its affiliates. 14 * 15 * This source code is licensed under the MIT license found in the 16 * LICENSE file in the root directory of this source tree. 17 */var ju=R,Nu=Symbol.for("react.element"),Ru=Symbol.for("react.fragment"),Du=Object.prototype.hasOwnProperty,Eu=ju.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Lu={key:!0,ref:!0,__self:!0,__source:!0};function ss(e,t,n){var i,r={},a=null,l=null;n!==void 0&&(a=""+n),t.key!==void 0&&(a=""+t.key),t.ref!==void 0&&(l=t.ref);for(i in t)Du.call(t,i)&&!Lu.hasOwnProperty(i)&&(r[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps,t)r[i]===void 0&&(r[i]=t[i]);return{$$typeof:Nu,type:e,key:a,ref:l,props:r,_owner:Eu.current}}ir.Fragment=Ru;ir.jsx=ss;ir.jsxs=ss;Zo.exports=ir;var o=Zo.exports,Kr={},cs={exports:{}},Se={},us={exports:{}},ps={};/** 18 * @license React 19 * scheduler.production.min.js 20 * 21 * Copyright (c) Facebook, Inc. and its affiliates. 22 * 23 * This source code is licensed under the MIT license found in the 24 * LICENSE file in the root directory of this source tree. 25 */(function(e){function t(b,z){var j=b.length;b.push(z);e:for(;0<j;){var $=j-1>>>1,Y=b[$];if(0<r(Y,z))b[$]=z,b[j]=Y,j=$;else break e}}function n(b){return b.length===0?null:b[0]}function i(b){if(b.length===0)return null;var z=b[0],j=b.pop();if(j!==z){b[0]=j;e:for(var $=0,Y=b.length,ti=Y>>>1;$<ti;){var yt=2*($+1)-1,Pr=b[yt],ht=yt+1,ni=b[ht];if(0>r(Pr,j))ht<Y&&0>r(ni,Pr)?(b[$]=ni,b[ht]=j,$=ht):(b[$]=Pr,b[yt]=j,$=yt);else if(ht<Y&&0>r(ni,j))b[$]=ni,b[ht]=j,$=ht;else break e}}return z}function r(b,z){var j=b.sortIndex-z.sortIndex;return j!==0?j:b.id-z.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var l=Date,s=l.now();e.unstable_now=function(){return l.now()-s}}var c=[],u=[],y=1,f=null,m=3,S=!1,h=!1,P=!1,I=typeof setTimeout=="function"?setTimeout:null,d=typeof clearTimeout=="function"?clearTimeout:null,p=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function g(b){for(var z=n(u);z!==null;){if(z.callback===null)i(u);else if(z.startTime<=b)i(u),z.sortIndex=z.expirationTime,t(c,z);else break;z=n(u)}}function k(b){if(P=!1,g(b),!h)if(n(c)!==null)h=!0,Sr(U);else{var z=n(u);z!==null&&vr(k,z.startTime-b)}}function U(b,z){h=!1,P&&(P=!1,d(q),q=-1),S=!0;var j=m;try{for(g(z),f=n(c);f!==null&&(!(f.expirationTime>z)||b&&!Te());){var $=f.callback;if(typeof $=="function"){f.callback=null,m=f.priorityLevel;var Y=$(f.expirationTime<=z);z=e.unstable_now(),typeof Y=="function"?f.callback=Y:f===n(c)&&i(c),g(z)}else i(c);f=n(c)}if(f!==null)var ti=!0;else{var yt=n(u);yt!==null&&vr(k,yt.startTime-z),ti=!1}return ti}finally{f=null,m=j,S=!1}}var x=!1,T=null,q=-1,L=5,C=-1;function Te(){return!(e.unstable_now()-C<L)}function un(){if(T!==null){var b=e.unstable_now();C=b;var z=!0;try{z=T(!0,b)}finally{z?pn():(x=!1,T=null)}}else x=!1}var pn;if(typeof p=="function")pn=function(){p(un)};else if(typeof MessageChannel<"u"){var Ml=new MessageChannel,gu=Ml.port2;Ml.port1.onmessage=un,pn=function(){gu.postMessage(null)}}else pn=function(){I(un,0)};function Sr(b){T=b,x||(x=!0,pn())}function vr(b,z){q=I(function(){b(e.unstable_now())},z)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(b){b.callback=null},e.unstable_continueExecution=function(){h||S||(h=!0,Sr(U))},e.unstable_forceFrameRate=function(b){0>b||125<b?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):L=0<b?Math.floor(1e3/b):5},e.unstable_getCurrentPriorityLevel=function(){return m},e.unstable_getFirstCallbackNode=function(){return n(c)},e.unstable_next=function(b){switch(m){case 1:case 2:case 3:var z=3;break;default:z=m}var j=m;m=z;try{return b()}finally{m=j}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(b,z){switch(b){case 1:case 2:case 3:case 4:case 5:break;default:b=3}var j=m;m=b;try{return z()}finally{m=j}},e.unstable_scheduleCallback=function(b,z,j){var $=e.unstable_now();switch(typeof j=="object"&&j!==null?(j=j.delay,j=typeof j=="number"&&0<j?$+j:$):j=$,b){case 1:var Y=-1;break;case 2:Y=250;break;case 5:Y=1073741823;break;case 4:Y=1e4;break;default:Y=5e3}return Y=j+Y,b={id:y++,callback:z,priorityLevel:b,startTime:j,expirationTime:Y,sortIndex:-1},j>$?(b.sortIndex=j,t(u,b),n(c)===null&&b===n(u)&&(P?(d(q),q=-1):P=!0,vr(k,j-$))):(b.sortIndex=Y,t(c,b),h||S||(h=!0,Sr(U))),b},e.unstable_shouldYield=Te,e.unstable_wrapCallback=function(b){var z=m;return function(){var j=m;m=z;try{return b.apply(this,arguments)}finally{m=j}}}})(ps);us.exports=ps;var Mu=us.exports;/** 26 * @license React 27 * react-dom.production.min.js 28 * 29 * Copyright (c) Facebook, Inc. and its affiliates. 30 * 31 * This source code is licensed under the MIT license found in the 32 * LICENSE file in the root directory of this source tree. 33 */var Fu=R,ke=Mu;function v(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var ds=new Set,Rn={};function Ct(e,t){Jt(e,t),Jt(e+"Capture",t)}function Jt(e,t){for(Rn[e]=t,e=0;e<t.length;e++)ds.add(t[e])}var $e=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Qr=Object.prototype.hasOwnProperty,_u=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Ol={},Bl={};function Gu(e){return Qr.call(Bl,e)?!0:Qr.call(Ol,e)?!1:_u.test(e)?Bl[e]=!0:(Ol[e]=!0,!1)}function Ou(e,t,n,i){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return i?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Bu(e,t,n,i){if(t===null||typeof t>"u"||Ou(e,t,n,i))return!0;
vendor: 5,199 bytes, lines 33-34
33if(i)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function ce(e,t,n,i,r,a,l){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=i,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=l}var te={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){te[e]=new ce(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];te[t]=new ce(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){te[e]=new ce(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){te[e]=new ce(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){te[e]=new ce(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){te[e]=new ce(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){te[e]=new ce(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){te[e]=new ce(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){te[e]=new ce(e,5,!1,e.toLowerCase(),null,!1,!1)});var Wa=/[\-:]([a-z])/g;function Va(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Wa,Va);te[t]=new ce(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Wa,Va);te[t]=new ce(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Wa,Va);te[t]=new ce(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){te[e]=new ce(e,1,!1,e.toLowerCase(),null,!1,!1)});te.xlinkHref=new ce("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){te[e]=new ce(e,1,!1,e.toLowerCase(),null,!0,!0)});function Ka(e,t,n,i){var r=te.hasOwnProperty(t)?te[t]:null;(r!==null?r.type!==0:i||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(Bu(t,n,r,i)&&(n=null),i||r===null?Gu(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):r.mustUseProperty?e[r.propertyName]=n===null?r.type===3?!1:"":n:(t=r.attributeName,i=r.attributeNamespace,n===null?e.removeAttribute(t):(r=r.type,n=r===3||r===4&&n===!0?"":""+n,i?e.setAttributeNS(i,t,n):e.setAttribute(t,n))))}var Qe=Fu.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,ri=Symbol.for("react.element"),Et=Symbol.for("react.portal"),Lt=Symbol.for("react.fragment"),Qa=Symbol.for("react.strict_mode"),Yr=Symbol.for("react.profiler"),gs=Symbol.for("react.provider"),ms=Symbol.for("react.context"),Ya=Symbol.for("react.forward_ref"),Xr=Symbol.for("react.suspense"),Zr=Symbol.for("react.suspense_list"),Xa=Symbol.for("react.memo"),Xe=Symbol.for("react.lazy"),fs=Symbol.for("react.offscreen"),Al=Symbol.iterator;function dn(e){return e===null||typeof e!="object"?null:(e=Al&&e[Al]||e["@@iterator"],typeof e=="function"?e:null)}var A=Object.assign,Ur;function vn(e){if(Ur===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Ur=t&&t[1]||""}return` 34`+Ur+e}var wr=!1;function br(e,t){if(!e||wr)return"";wr=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(u){var i=u}Reflect.construct(e,[],t)}else{try{t.call()}catch(u){i=u}e.call(t.prototype)}else{try{throw Error()}catch(u){i=u}e()}}
vendor: 18,166 bytes, lines 34-37
34catch(u){if(u&&i&&typeof u.stack=="string"){for(var r=u.stack.split(` 35`),a=i.stack.split(` 36`),l=r.length-1,s=a.length-1;1<=l&&0<=s&&r[l]!==a[s];)s--;for(;1<=l&&0<=s;l--,s--)if(r[l]!==a[s]){if(l!==1||s!==1)do if(l--,s--,0>s||r[l]!==a[s]){var c=` 37`+r[l].replace(" at new "," at ");return e.displayName&&c.includes("<anonymous>")&&(c=c.replace("<anonymous>",e.displayName)),c}while(1<=l&&0<=s);break}}}finally{wr=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?vn(e):""}function Au(e){switch(e.tag){case 5:return vn(e.type);case 16:return vn("Lazy");case 13:return vn("Suspense");case 19:return vn("SuspenseList");case 0:case 2:case 15:return e=br(e.type,!1),e;case 11:return e=br(e.type.render,!1),e;case 1:return e=br(e.type,!0),e;default:return""}}function Jr(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Lt:return"Fragment";case Et:return"Portal";case Yr:return"Profiler";case Qa:return"StrictMode";case Xr:return"Suspense";case Zr:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case ms:return(e.displayName||"Context")+".Consumer";case gs:return(e._context.displayName||"Context")+".Provider";case Ya:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Xa:return t=e.displayName||null,t!==null?t:Jr(e.type)||"Memo";case Xe:t=e._payload,e=e._init;try{return Jr(e(t))}catch{}}return null}function Hu(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Jr(t);case 8:return t===Qa?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function pt(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function ys(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function $u(e){var t=ys(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),i=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var r=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return r.call(this)},set:function(l){i=""+l,a.call(this,l)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return i},setValue:function(l){i=""+l},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function ai(e){e._valueTracker||(e._valueTracker=$u(e))}function hs(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),i="";return e&&(i=ys(e)?e.checked?"true":"false":e.value),e=i,e!==n?(t.setValue(e),!0):!1}function Ri(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function ea(e,t){var n=t.checked;return A({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Hl(e,t){var n=t.defaultValue==null?"":t.defaultValue,i=t.checked!=null?t.checked:t.defaultChecked;n=pt(t.value!=null?t.value:n),e._wrapperState={initialChecked:i,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function ks(e,t){t=t.checked,t!=null&&Ka(e,"checked",t,!1)}function ta(e,t){ks(e,t);var n=pt(t.value),i=t.type;if(n!=null)i==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(i==="submit"||i==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?na(e,t.type,n):t.hasOwnProperty("defaultValue")&&na(e,t.type,pt(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function $l(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var i=t.type;if(!(i!=="submit"&&i!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function na(e,t,n){(t!=="number"||Ri(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Pn=Array.isArray;function Vt(e,t,n,i){if(e=e.options,t){t={};for(var r=0;r<n.length;r++)t["$"+n[r]]=!0;for(n=0;n<e.length;n++)r=t.hasOwnProperty("$"+e[n].value),e[n].selected!==r&&(e[n].selected=r),r&&i&&(e[n].defaultSelected=!0)}else{for(n=""+pt(n),t=null,r=0;r<e.length;r++){if(e[r].value===n){e[r].selected=!0,i&&(e[r].defaultSelected=!0);return}t!==null||e[r].disabled||(t=e[r])}t!==null&&(t.selected=!0)}}function ia(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(v(91));return A({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Wl(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(v(92));if(Pn(n)){if(1<n.length)throw Error(v(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:pt(n)}}function Ss(e,t){var n=pt(t.value),i=pt(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),i!=null&&(e.defaultValue=""+i)}function Vl(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function vs(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function ra(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?vs(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var li,Ps=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,i,r){MSApp.execUnsafeLocalFunction(function(){return e(t,n,i,r)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(li=li||document.createElement("div"),li.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=li.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Dn(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var wn={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Wu=["Webkit","ms","Moz","O"];Object.keys(wn).forEach(function(e){Wu.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),wn[t]=wn[e]})});function xs(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||wn.hasOwnProperty(e)&&wn[e]?(""+t).trim():t+"px"}function Us(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var i=n.indexOf("--")===0,r=xs(n,t[n],i);n==="float"&&(n="cssFloat"),i?e.setProperty(n,r):e[n]=r}}var Vu=A({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function aa(e,t){if(t){if(Vu[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(v(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(v(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(v(61))}if(t.style!=null&&typeof t.style!="object")throw Error(v(62))}}function la(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var oa=null;function Za(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var sa=null,Kt=null,Qt=null;function Kl(e){if(e=Jn(e)){if(typeof sa!="function")throw Error(v(280));var t=e.stateNode;t&&(t=sr(t),sa(e.stateNode,e.type,t))}}function ws(e){Kt?Qt?Qt.push(e):Qt=[e]:Kt=e}function bs(){if(Kt){var e=Kt,t=Qt;if(Qt=Kt=null,Kl(e),t)for(e=0;e<t.length;e++)Kl(t[e])}}function qs(e,t){return e(t)}function Ts(){}var qr=!1;function zs(e,t,n){if(qr)return e(t,n);qr=!0;try{return qs(e,t,n)}finally{qr=!1,(Kt!==null||Qt!==null)&&(Ts(),bs())}}function En(e,t){var n=e.stateNode;if(n===null)return null;var i=sr(n);if(i===null)return null;n=i[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(i=!i.disabled)||(e=e.type,i=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!i;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(v(231,t,typeof n));return n}var ca=!1;if($e)try{var gn={};Object.defineProperty(gn,"passive",{get:function(){ca=!0}}),window.addEventListener("test",gn,gn),window.removeEventListener("test",gn,gn)}catch{ca=!1}function Ku(e,t,n,i,r,a,l,s,c){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(y){this.onError(y)}}var bn=!1,Di=null,Ei=!1,ua=null,Qu={onError:function(e){bn=!0,Di=e}};function Yu(e,t,n,i,r,a,l,s,c){bn=!1,Di=null,Ku.apply(Qu,arguments)}function Xu(e,t,n,i,r,a,l,s,c){if(Yu.apply(this,arguments),bn){if(bn){var u=Di;bn=!1,Di=null}else throw Error(v(198));Ei||(Ei=!0,ua=u)}}function jt(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function Is(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function Ql(e){if(jt(e)!==e)throw Error(v(188))}function Zu(e){var t=e.alternate;if(!t){if(t=jt(e),t===null)throw Error(v(188));return t!==e?null:e}for(var n=e,i=t;;){var r=n.return;if(r===null)break;var a=r.alternate;if(a===null){if(i=r.return,i!==null){n=i;continue}break}if(r.child===a.child){for(a=r.child;a;){if(a===n)return Ql(r),e;if(a===i)return Ql(r),t;a=a.sibling}throw Error(v(188))}if(n.return!==i.return)n=r,i=a;else{for(var l=!1,s=r.child;s;){if(s===n){l=!0,n=r,i=a;break}if(s===i){l=!0,i=r,n=a;break}s=s.sibling}if(!l){for(s=a.child;s;){if(s===n){l=!0,n=a,i=r;break}if(s===i){l=!0,i=a,n=r;break}s=s.sibling}if(!l)throw Error(v(189))}}if(n.alternate!==i)throw Error(v(190))}if(n.tag!==3)throw Error(v(188));return n.stateNode.current===n?e:t}function Cs(e){return e=Zu(e),e!==null?js(e):null}function js(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=js(e);if(t!==null)return t;e=e.sibling}return null}var Ns=ke.unstable_scheduleCallback,Yl=ke.unstable_cancelCallback,Ju=ke.unstable_shouldYield,ep=ke.unstable_requestPaint,W=ke.unstable_now,tp=ke.unstable_getCurrentPriorityLevel,Ja=ke.unstable_ImmediatePriority,Rs=ke.unstable_UserBlockingPriority,Li=ke.unstable_NormalPriority,np=ke.unstable_LowPriority,Ds=ke.unstable_IdlePriority,rr=null,Fe=null;function ip(e){if(Fe&&typeof Fe.onCommitFiberRoot=="function")try{Fe.onCommitFiberRoot(rr,e,void 0,(e.current.flags&128)===128)}catch{}}var Ne=Math.clz32?Math.clz32:lp,rp=Math.log,ap=Math.LN2;function lp(e){return e>>>=0,e===0?32:31-(rp(e)/ap|0)|0}var oi=64,si=4194304;function xn(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Mi(e,t){var n=e.pendingLanes;if(n===0)return 0;var i=0,r=e.suspendedLanes,a=e.pingedLanes,l=n&268435455;if(l!==0){var s=l&~r;s!==0?i=xn(s):(a&=l,a!==0&&(i=xn(a)))}else l=n&~r,l!==0?i=xn(l):a!==0&&(i=xn(a));if(i===0)return 0;if(t!==0&&t!==i&&!(t&r)&&(r=i&-i,a=t&-t,r>=a||r===16&&(a&4194240)!==0))return t;if(i&4&&(i|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=i;0<t;)n=31-Ne(t),r=1<<n,i|=e[n],t&=~r;return i}function op(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function sp(e,t){for(var n=e.suspendedLanes,i=e.pingedLanes,r=e.expirationTimes,a=e.pendingLanes;0<a;){var l=31-Ne(a),s=1<<l,c=r[l];c===-1?(!(s&n)||s&i)&&(r[l]=op(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}}function pa(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Es(){var e=oi;return oi<<=1,!(oi&4194240)&&(oi=64),e}function Tr(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Xn(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ne(t),e[t]=n}function cp(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var i=e.eventTimes;for(e=e.expirationTimes;0<n;){var r=31-Ne(n),a=1<<r;t[r]=0,i[r]=-1,e[r]=-1,n&=~a}}function el(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var i=31-Ne(n),r=1<<i;r&t|e[i]&t&&(e[i]|=t),n&=~r}}var E=0;function Ls(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var Ms,tl,Fs,_s,Gs,da=!1,ci=[],it=null,rt=null,at=null,Ln=new Map,Mn=new Map,Je=[],up="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Xl(e,t){switch(e){case"focusin":case"focusout":it=null;break;case"dragenter":case"dragleave":rt=null;break;case"mouseover":case"mouseout":at=null;break;case"pointerover":case"pointerout":Ln.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Mn.delete(t.pointerId)}}function mn(e,t,n,i,r,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:i,nativeEvent:a,targetContainers:[r]},t!==null&&(t=Jn(t),t!==null&&tl(t)),e):(e.eventSystemFlags|=i,t=e.targetContainers,r!==null&&t.indexOf(r)===-1&&t.push(r),e)}function pp(e,t,n,i,r){switch(t){case"focusin":return it=mn(it,e,t,n,i,r),!0;case"dragenter":return rt=mn(rt,e,t,n,i,r),!0;case"mouseover":return at=mn(at,e,t,n,i,r),!0;case"pointerover":var a=r.pointerId;return Ln.set(a,mn(Ln.get(a)||null,e,t,n,i,r)),!0;case"gotpointercapture":return a=r.pointerId,Mn.set(a,mn(Mn.get(a)||null,e,t,n,i,r)),!0}return!1}function Os(e){var t=vt(e.target);if(t!==null){var n=jt(t);if(n!==null){if(t=n.tag,t===13){if(t=Is(n),t!==null){e.blockedOn=t,Gs(e.priority,function(){Fs(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ui(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=ga(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var i=new n.constructor(n.type,n);oa=i,n.target.dispatchEvent(i),oa=null}else return t=Jn(n),t!==null&&tl(t),e.blockedOn=n,!1;t.shift()}return!0}function Zl(e,t,n){Ui(e)&&n.delete(t)}function dp(){da=!1,it!==null&&Ui(it)&&(it=null),rt!==null&&Ui(rt)&&(rt=null),at!==null&&Ui(at)&&(at=null),Ln.forEach(Zl),Mn.forEach(Zl)}function fn(e,t){e.blockedOn===t&&(e.blockedOn=null,da||(da=!0,ke.unstable_scheduleCallback(ke.unstable_NormalPriority,dp)))}function Fn(e){function t(r){return fn(r,e)}if(0<ci.length){fn(ci[0],e);for(var n=1;n<ci.length;n++){var i=ci[n];i.blockedOn===e&&(i.blockedOn=null)}}for(it!==null&&fn(it,e),rt!==null&&fn(rt,e),at!==null&&fn(at,e),Ln.forEach(t),Mn.forEach(t),n=0;n<Je.length;n++)i=Je[n],i.blockedOn===e&&(i.blockedOn=null);for(;0<Je.length&&(n=Je[0],n.blockedOn===null);)Os(n),n.blockedOn===null&&Je.shift()}var Yt=Qe.ReactCurrentBatchConfig,Fi=!0;function gp(e,t,n,i){var r=E,a=Yt.transition;Yt.transition=null;try{E=1,nl(e,t,n,i)}finally{E=r,Yt.transition=a}}function mp(e,t,n,i){var r=E,a=Yt.transition;Yt.transition=null;try{E=4,nl(e,t,n,i)}finally{E=r,Yt.transition=a}}function nl(e,t,n,i){if(Fi){var r=ga(e,t,n,i);if(r===null)Mr(e,t,i,_i,n),Xl(e,i);else if(pp(r,e,t,n,i))i.stopPropagation();else if(Xl(e,i),t&4&&-1<up.indexOf(e)){for(;r!==null;){var a=Jn(r);if(a!==null&&Ms(a),a=ga(e,t,n,i),a===null&&Mr(e,t,i,_i,n),a===r)break;r=a}r!==null&&i.stopPropagation()}else Mr(e,t,i,null,n)}}var _i=null;function ga(e,t,n,i){if(_i=null,e=Za(i),e=vt(e),e!==null)if(t=jt(e),t===null)e=null;else if(n=t.tag,n===13){if(e=Is(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return _i=e,null}
vendor: 10,015 bytes, line 37
37function Bs(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(tp()){case Ja:return 1;case Rs:return 4;case Li:case np:return 16;case Ds:return 536870912;default:return 16}default:return 16}}var tt=null,il=null,wi=null;function As(){if(wi)return wi;var e,t=il,n=t.length,i,r="value"in tt?tt.value:tt.textContent,a=r.length;for(e=0;e<n&&t[e]===r[e];e++);var l=n-e;for(i=1;i<=l&&t[n-i]===r[a-i];i++);return wi=r.slice(e,1<i?1-i:void 0)}function bi(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function ui(){return!0}function Jl(){return!1}function ve(e){function t(n,i,r,a,l){this._reactName=n,this._targetInst=r,this.type=i,this.nativeEvent=a,this.target=l,this.currentTarget=null;for(var s in e)e.hasOwnProperty(s)&&(n=e[s],this[s]=n?n(a):a[s]);return this.isDefaultPrevented=(a.defaultPrevented!=null?a.defaultPrevented:a.returnValue===!1)?ui:Jl,this.isPropagationStopped=Jl,this}return A(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=ui)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=ui)},persist:function(){},isPersistent:ui}),t}var sn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},rl=ve(sn),Zn=A({},sn,{view:0,detail:0}),fp=ve(Zn),zr,Ir,yn,ar=A({},Zn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:al,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==yn&&(yn&&e.type==="mousemove"?(zr=e.screenX-yn.screenX,Ir=e.screenY-yn.screenY):Ir=zr=0,yn=e),zr)},movementY:function(e){return"movementY"in e?e.movementY:Ir}}),eo=ve(ar),yp=A({},ar,{dataTransfer:0}),hp=ve(yp),kp=A({},Zn,{relatedTarget:0}),Cr=ve(kp),Sp=A({},sn,{animationName:0,elapsedTime:0,pseudoElement:0}),vp=ve(Sp),Pp=A({},sn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),xp=ve(Pp),Up=A({},sn,{data:0}),to=ve(Up),wp={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},bp={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},qp={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Tp(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=qp[e])?!!t[e]:!1}function al(){return Tp}var zp=A({},Zn,{key:function(e){if(e.key){var t=wp[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=bi(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?bp[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:al,charCode:function(e){return e.type==="keypress"?bi(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?bi(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Ip=ve(zp),Cp=A({},ar,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),no=ve(Cp),jp=A({},Zn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:al}),Np=ve(jp),Rp=A({},sn,{propertyName:0,elapsedTime:0,pseudoElement:0}),Dp=ve(Rp),Ep=A({},ar,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),Lp=ve(Ep),Mp=[9,13,27,32],ll=$e&&"CompositionEvent"in window,qn=null;$e&&"documentMode"in document&&(qn=document.documentMode);var Fp=$e&&"TextEvent"in window&&!qn,Hs=$e&&(!ll||qn&&8<qn&&11>=qn),io=" ",ro=!1;function $s(e,t){switch(e){case"keyup":return Mp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ws(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Mt=!1;function _p(e,t){switch(e){case"compositionend":return Ws(t);case"keypress":return t.which!==32?null:(ro=!0,io);case"textInput":return e=t.data,e===io&&ro?null:e;default:return null}}function Gp(e,t){if(Mt)return e==="compositionend"||!ll&&$s(e,t)?(e=As(),wi=il=tt=null,Mt=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Hs&&t.locale!=="ko"?null:t.data;default:return null}}var Op={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function ao(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!Op[e.type]:t==="textarea"}function Vs(e,t,n,i){ws(i),t=Gi(t,"onChange"),0<t.length&&(n=new rl("onChange","change",null,n,i),e.push({event:n,listeners:t}))}var Tn=null,_n=null;function Bp(e){rc(e,0)}function lr(e){var t=Gt(e);if(hs(t))return e}function Ap(e,t){if(e==="change")return t}var Ks=!1;if($e){var jr;if($e){var Nr="oninput"in document;if(!Nr){var lo=document.createElement("div");lo.setAttribute("oninput","return;"),Nr=typeof lo.oninput=="function"}jr=Nr}else jr=!1;Ks=jr&&(!document.documentMode||9<document.documentMode)}function oo(){Tn&&(Tn.detachEvent("onpropertychange",Qs),_n=Tn=null)}function Qs(e){if(e.propertyName==="value"&&lr(_n)){var t=[];Vs(t,_n,e,Za(e)),zs(Bp,t)}}function Hp(e,t,n){e==="focusin"?(oo(),Tn=t,_n=n,Tn.attachEvent("onpropertychange",Qs)):e==="focusout"&&oo()}function $p(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return lr(_n)}function Wp(e,t){if(e==="click")return lr(t)}function Vp(e,t){if(e==="input"||e==="change")return lr(t)}function Kp(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var De=typeof Object.is=="function"?Object.is:Kp;function Gn(e,t){if(De(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(i=0;i<n.length;i++){var r=n[i];if(!Qr.call(t,r)||!De(e[r],t[r]))return!1}return!0}function so(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function co(e,t){var n=so(e);e=0;for(var i;n;){if(n.nodeType===3){if(i=e+n.textContent.length,e<=t&&i>=t)return{node:n,offset:t-e};e=i}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=so(n)}}function Ys(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Ys(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Xs(){for(var e=window,t=Ri();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ri(e.document)}return t}function ol(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function Qp(e){var t=Xs(),n=e.focusedElem,i=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Ys(n.ownerDocument.documentElement,n)){if(i!==null&&ol(n)){if(t=i.start,e=i.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var r=n.textContent.length,a=Math.min(i.start,r);i=i.end===void 0?a:Math.min(i.end,r),!e.extend&&a>i&&(r=i,i=a,a=r),r=co(n,a);var l=co(n,i);r&&l&&(e.rangeCount!==1||e.anchorNode!==r.node||e.anchorOffset!==r.offset||e.focusNode!==l.node||e.focusOffset!==l.offset)&&(t=t.createRange(),t.setStart(r.node,r.offset),e.removeAllRanges(),a>i?(e.addRange(t),e.extend(l.node,l.offset)):(t.setEnd(l.node,l.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var Yp=$e&&"documentMode"in document&&11>
vendor: 4,873 bytes, line 37
37=document.documentMode,Ft=null,ma=null,zn=null,fa=!1;function uo(e,t,n){var i=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;fa||Ft==null||Ft!==Ri(i)||(i=Ft,"selectionStart"in i&&ol(i)?i={start:i.selectionStart,end:i.selectionEnd}:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection(),i={anchorNode:i.anchorNode,anchorOffset:i.anchorOffset,focusNode:i.focusNode,focusOffset:i.focusOffset}),zn&&Gn(zn,i)||(zn=i,i=Gi(ma,"onSelect"),0<i.length&&(t=new rl("onSelect","select",null,t,n),e.push({event:t,listeners:i}),t.target=Ft)))}function pi(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var _t={animationend:pi("Animation","AnimationEnd"),animationiteration:pi("Animation","AnimationIteration"),animationstart:pi("Animation","AnimationStart"),transitionend:pi("Transition","TransitionEnd")},Rr={},Zs={};$e&&(Zs=document.createElement("div").style,"AnimationEvent"in window||(delete _t.animationend.animation,delete _t.animationiteration.animation,delete _t.animationstart.animation),"TransitionEvent"in window||delete _t.transitionend.transition);function or(e){if(Rr[e])return Rr[e];if(!_t[e])return e;var t=_t[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Zs)return Rr[e]=t[n];return e}var Js=or("animationend"),ec=or("animationiteration"),tc=or("animationstart"),nc=or("transitionend"),ic=new Map,po="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function gt(e,t){ic.set(e,t),Ct(t,[e])}for(var Dr=0;Dr<po.length;Dr++){var Er=po[Dr],Xp=Er.toLowerCase(),Zp=Er[0].toUpperCase()+Er.slice(1);gt(Xp,"on"+Zp)}gt(Js,"onAnimationEnd");gt(ec,"onAnimationIteration");gt(tc,"onAnimationStart");gt("dblclick","onDoubleClick");gt("focusin","onFocus");gt("focusout","onBlur");gt(nc,"onTransitionEnd");Jt("onMouseEnter",["mouseout","mouseover"]);Jt("onMouseLeave",["mouseout","mouseover"]);Jt("onPointerEnter",["pointerout","pointerover"]);Jt("onPointerLeave",["pointerout","pointerover"]);Ct("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Ct("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Ct("onBeforeInput",["compositionend","keypress","textInput","paste"]);Ct("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Ct("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Ct("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Un="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Jp=new Set("cancel close invalid load scroll toggle".split(" ").concat(Un));function go(e,t,n){var i=e.type||"unknown-event";e.currentTarget=n,Xu(i,t,void 0,e),e.currentTarget=null}function rc(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var i=e[n],r=i.event;i=i.listeners;e:{var a=void 0;if(t)for(var l=i.length-1;0<=l;l--){var s=i[l],c=s.instance,u=s.currentTarget;if(s=s.listener,c!==a&&r.isPropagationStopped())break e;go(r,s,u),a=c}else for(l=0;l<i.length;l++){if(s=i[l],c=s.instance,u=s.currentTarget,s=s.listener,c!==a&&r.isPropagationStopped())break e;go(r,s,u),a=c}}}if(Ei)throw e=ua,Ei=!1,ua=null,e}function F(e,t){var n=t[va];n===void 0&&(n=t[va]=new Set);var i=e+"__bubble";n.has(i)||(ac(t,e,2,!1),n.add(i))}function Lr(e,t,n){var i=0;t&&(i|=4),ac(n,e,i,t)}var di="_reactListening"+Math.random().toString(36).slice(2);function On(e){if(!e[di]){e[di]=!0,ds.forEach(function(n){n!=="selectionchange"&&(Jp.has(n)||Lr(n,!1,e),Lr(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[di]||(t[di]=!0,Lr("selectionchange",!1,t))}}function ac(e,t,n,i){switch(Bs(t)){case 1:var r=gp;break;case 4:r=mp;break;default:r=nl}n=r.bind(null,t,n,e),r=void 0,!ca||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(r=!0),i?r!==void 0?e.addEventListener(t,n,{capture:!0,passive:r}):e.addEventListener(t,n,!0):r!==void 0?e.addEventListener(t,n,{passive:r}):e.addEventListener(t,n,!1)}function Mr(e,t,n,i,r){var a=i;if(!(t&1)&&!(t&2)&&i!==null)e:for(;;){if(i===null)return;var l=i.tag;if(l===3||l===4){var s=i.stateNode.containerInfo;
vendor: 2,527 bytes, line 37
37if(s===r||s.nodeType===8&&s.parentNode===r)break;if(l===4)for(l=i.return;l!==null;){var c=l.tag;if((c===3||c===4)&&(c=l.stateNode.containerInfo,c===r||c.nodeType===8&&c.parentNode===r))return;l=l.return}for(;s!==null;){if(l=vt(s),l===null)return;if(c=l.tag,c===5||c===6){i=a=l;continue e}s=s.parentNode}}i=i.return}zs(function(){var u=a,y=Za(n),f=[];e:{var m=ic.get(e);if(m!==void 0){var S=rl,h=e;switch(e){case"keypress":if(bi(n)===0)break e;case"keydown":case"keyup":S=Ip;break;case"focusin":h="focus",S=Cr;break;case"focusout":h="blur",S=Cr;break;case"beforeblur":case"afterblur":S=Cr;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":S=eo;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":S=hp;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":S=Np;break;case Js:case ec:case tc:S=vp;break;case nc:S=Dp;break;case"scroll":S=fp;break;case"wheel":S=Lp;break;case"copy":case"cut":case"paste":S=xp;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":S=no}var P=(t&4)!==0,I=!P&&e==="scroll",d=P?m!==null?m+"Capture":null:m;P=[];for(var p=u,g;p!==null;){g=p;var k=g.stateNode;if(g.tag===5&&k!==null&&(g=k,d!==null&&(k=En(p,d),k!=null&&P.push(Bn(p,k,g)))),I)break;p=p.return}0<P.length&&(m=new S(m,h,null,n,y),f.push({event:m,listeners:P}))}}if(!(t&7)){e:{if(m=e==="mouseover"||e==="pointerover",S=e==="mouseout"||e==="pointerout",m&&n!==oa&&(h=n.relatedTarget||n.fromElement)&&(vt(h)||h[We]))break e;if((S||m)&&(m=y.window===y?y:(m=y.ownerDocument)?m.defaultView||m.parentWindow:window,S?(h=n.relatedTarget||n.toElement,S=u,h=h?vt(h):null,h!==null&&(I=jt(h),h!==I||h.tag!==5&&h.tag!==6)&&(h=null)):(S=null,h=u),S!==h)){if(P=eo,k="onMouseLeave",d="onMouseEnter",p="mouse",(e==="pointerout"||e==="pointerover")&&(P=no,k="onPointerLeave",d="onPointerEnter",p="pointer"),I=S==null?m:Gt(S),g=h==null?m:Gt(h),m=new P(k,p+"leave",S,n,y),m.target=I,m.relatedTarget=g,k=null,vt(y)===u&&(P=new P(d,p+"enter",h,n,y),P.target=g,P.relatedTarget=I,k=P),I=k,S&&h)t:{for(P=S,d=h,p=0,g=P;g;g=Nt(g))p++;for(g=0,k=d;k;k=Nt(k))g++;for(;0<p-g;)P=Nt(P),p--;for(;0<g-p;)d=Nt(d),g--;for(;p--;){if(P===d||d!==null&&P===d.alternate)break t;P=Nt(P),d=Nt(d)}P=null}else P=null;S!==null&&mo(f,m,S,P,!1),h!==null&&I!==null&&mo(f,I,h,P,!0)}}
vendor: 6,354 bytes, lines 37-38
37e:{if(m=u?Gt(u):window,S=m.nodeName&&m.nodeName.toLowerCase(),S==="select"||S==="input"&&m.type==="file")var U=Ap;else if(ao(m))if(Ks)U=Vp;else{U=$p;var x=Hp}else(S=m.nodeName)&&S.toLowerCase()==="input"&&(m.type==="checkbox"||m.type==="radio")&&(U=Wp);if(U&&(U=U(e,u))){Vs(f,U,n,y);break e}x&&x(e,m,u),e==="focusout"&&(x=m._wrapperState)&&x.controlled&&m.type==="number"&&na(m,"number",m.value)}switch(x=u?Gt(u):window,e){case"focusin":(ao(x)||x.contentEditable==="true")&&(Ft=x,ma=u,zn=null);break;case"focusout":zn=ma=Ft=null;break;case"mousedown":fa=!0;break;case"contextmenu":case"mouseup":case"dragend":fa=!1,uo(f,n,y);break;case"selectionchange":if(Yp)break;case"keydown":case"keyup":uo(f,n,y)}var T;if(ll)e:{switch(e){case"compositionstart":var q="onCompositionStart";break e;case"compositionend":q="onCompositionEnd";break e;case"compositionupdate":q="onCompositionUpdate";break e}q=void 0}else Mt?$s(e,n)&&(q="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(q="onCompositionStart");q&&(Hs&&n.locale!=="ko"&&(Mt||q!=="onCompositionStart"?q==="onCompositionEnd"&&Mt&&(T=As()):(tt=y,il="value"in tt?tt.value:tt.textContent,Mt=!0)),x=Gi(u,q),0<x.length&&(q=new to(q,e,null,n,y),f.push({event:q,listeners:x}),T?q.data=T:(T=Ws(n),T!==null&&(q.data=T)))),(T=Fp?_p(e,n):Gp(e,n))&&(u=Gi(u,"onBeforeInput"),0<u.length&&(y=new to("onBeforeInput","beforeinput",null,n,y),f.push({event:y,listeners:u}),y.data=T))}rc(f,t)})}function Bn(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Gi(e,t){for(var n=t+"Capture",i=[];e!==null;){var r=e,a=r.stateNode;r.tag===5&&a!==null&&(r=a,a=En(e,n),a!=null&&i.unshift(Bn(e,a,r)),a=En(e,t),a!=null&&i.push(Bn(e,a,r))),e=e.return}return i}function Nt(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function mo(e,t,n,i,r){for(var a=t._reactName,l=[];n!==null&&n!==i;){var s=n,c=s.alternate,u=s.stateNode;if(c!==null&&c===i)break;s.tag===5&&u!==null&&(s=u,r?(c=En(n,a),c!=null&&l.unshift(Bn(n,c,s))):r||(c=En(n,a),c!=null&&l.push(Bn(n,c,s)))),n=n.return}l.length!==0&&e.push({event:t,listeners:l})}var ed=/\r\n?/g,td=/\u0000|\uFFFD/g;function fo(e){return(typeof e=="string"?e:""+e).replace(ed,` 38`).replace(td,"")}function gi(e,t,n){if(t=fo(t),fo(e)!==t&&n)throw Error(v(425))}function Oi(){}var ya=null,ha=null;function ka(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Sa=typeof setTimeout=="function"?setTimeout:void 0,nd=typeof clearTimeout=="function"?clearTimeout:void 0,yo=typeof Promise=="function"?Promise:void 0,id=typeof queueMicrotask=="function"?queueMicrotask:typeof yo<"u"?function(e){return yo.resolve(null).then(e).catch(rd)}:Sa;function rd(e){setTimeout(function(){throw e})}function Fr(e,t){var n=t,i=0;do{var r=n.nextSibling;if(e.removeChild(n),r&&r.nodeType===8)if(n=r.data,n==="/$"){if(i===0){e.removeChild(r),Fn(t);return}i--}else n!=="$"&&n!=="$?"&&n!=="$!"||i++;n=r}while(n);Fn(t)}function lt(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function ho(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var cn=Math.random().toString(36).slice(2),Me="__reactFiber$"+cn,An="__reactProps$"+cn,We="__reactContainer$"+cn,va="__reactEvents$"+cn,ad="__reactListeners$"+cn,ld="__reactHandles$"+cn;function vt(e){var t=e[Me];if(t)return t;for(var n=e.parentNode;n;){if(t=n[We]||n[Me]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=ho(e);e!==null;){if(n=e[Me])return n;e=ho(e)}return t}e=n,n=e.parentNode}return null}function Jn(e){return e=e[Me]||e[We],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Gt(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(v(33))}function sr(e){return e[An]||null}var Pa=[],Ot=-1;function mt(e){return{current:e}}function _(e){0>Ot||(e.current=Pa[Ot],Pa[Ot]=null,Ot--)}function M(e,t){Ot++,Pa[Ot]=e.current,e.current=t}var dt={},ae=mt(dt),de=mt(!1),bt=dt;function en(e,t){var n=e.type.contextTypes;if(!n)return dt;var i=e.stateNode;if(i&&i.__reactInternalMemoizedUnmaskedChildContext===t)return i.__reactInternalMemoizedMaskedChildContext;var r={},a;for(a in n)r[a]=t[a];return i&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=r),r}function ge(e){return e=e.childContextTypes,e!=null}function Bi(){_(de),_(ae)}function ko(e,t,n){if(ae.current!==dt)throw Error(v(168));M(ae,t),M(de,n)}function lc(e,t,n){var i=e.stateNode;if(t=t.childContextTypes,typeof i.getChildContext!="function")return n;i=i.getChildContext();for(var r in i)if(!(r in t))throw Error(v(108,Hu(e)||"Unknown",r));return A({},n,i)}function Ai(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||dt,bt=ae.current,M(ae,e),M(de,de.current),!0}function So(e,t,n){var i=e.stateNode;if(!i)throw Error(v(169));n?(e=lc(e,t,bt),i.__reactInternalMemoizedMergedChildContext=e,_(de),_(ae),M(ae,e)):_(de),M(de,n)}var Oe=null,cr=!1,_r=!1;function oc(e){Oe===null?Oe=[e]:Oe.push(e)}function od(e){cr=!0,oc(e)}function ft(){if(!_r&&Oe!==null){_r=!0;var e=0,t=E;try{var n=Oe;for(E=1;e<n.length;e++){var i=n[e];do i=i(!0);while(i!==null)}Oe=null,cr=!1}catch(r){throw Oe!==null&&(Oe=Oe.slice(e+1)),Ns(Ja,ft),r}finally{E=t,_r=!1}}return null}var Bt=[],At=0,Hi=null,$i=0,Pe=[],xe=0,qt=null,Be=1,Ae="";function kt(e,t){Bt[At++]=$i,Bt[At++]=Hi,Hi=e,$i=t}function sc(e,t,n){Pe[xe++]=Be,Pe[xe++]=Ae,Pe[xe++]=qt,qt=e;var i=Be;e=Ae;var r=32-Ne(i)-1;i&=~(1<<r),n+=1;var a=32-Ne(t)+r;if(30<a){var l=r-r%5;a=(i&(1<<l)-1).toString(32),i>>=l,r-=l,Be=1<<32-Ne(t)+r|n<<r|i,Ae=a+e}else Be=1<<a|n<<r|i,Ae=e}function sl(e){e.return!==null&&(kt(e,1),sc(e,1,0))}function cl(e){for(;e===Hi;)Hi=Bt[--At],Bt[At]=null,$i=Bt[--At],Bt[At]=null;for(;e===qt;)qt=Pe[--xe],Pe[xe]=null,Ae=Pe[--xe],Pe[xe]=null,Be=Pe[--xe],Pe[xe]=null}var he=null,ye=null,G=!1,je=null;function cc(e,t){var n=Ue(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function vo(e,t){switch(e.tag){case 5:var n=e.type;
vendor: 13,366 bytes, line 38
38return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,he=e,ye=lt(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,he=e,ye=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=qt!==null?{id:Be,overflow:Ae}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Ue(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,he=e,ye=null,!0):!1;default:return!1}}function xa(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Ua(e){if(G){var t=ye;if(t){var n=t;if(!vo(e,t)){if(xa(e))throw Error(v(418));t=lt(n.nextSibling);var i=he;t&&vo(e,t)?cc(i,n):(e.flags=e.flags&-4097|2,G=!1,he=e)}}else{if(xa(e))throw Error(v(418));e.flags=e.flags&-4097|2,G=!1,he=e}}}function Po(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;he=e}function mi(e){if(e!==he)return!1;if(!G)return Po(e),G=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!ka(e.type,e.memoizedProps)),t&&(t=ye)){if(xa(e))throw uc(),Error(v(418));for(;t;)cc(e,t),t=lt(t.nextSibling)}if(Po(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(v(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){ye=lt(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}ye=null}}else ye=he?lt(e.stateNode.nextSibling):null;return!0}function uc(){for(var e=ye;e;)e=lt(e.nextSibling)}function tn(){ye=he=null,G=!1}function ul(e){je===null?je=[e]:je.push(e)}var sd=Qe.ReactCurrentBatchConfig;function hn(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(v(309));var i=n.stateNode}if(!i)throw Error(v(147,e));var r=i,a=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===a?t.ref:(t=function(l){var s=r.refs;l===null?delete s[a]:s[a]=l},t._stringRef=a,t)}if(typeof e!="string")throw Error(v(284));if(!n._owner)throw Error(v(290,e))}return e}function fi(e,t){throw e=Object.prototype.toString.call(t),Error(v(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function xo(e){var t=e._init;return t(e._payload)}function pc(e){function t(d,p){if(e){var g=d.deletions;g===null?(d.deletions=[p],d.flags|=16):g.push(p)}}function n(d,p){if(!e)return null;for(;p!==null;)t(d,p),p=p.sibling;return null}function i(d,p){for(d=new Map;p!==null;)p.key!==null?d.set(p.key,p):d.set(p.index,p),p=p.sibling;return d}function r(d,p){return d=ut(d,p),d.index=0,d.sibling=null,d}function a(d,p,g){return d.index=g,e?(g=d.alternate,g!==null?(g=g.index,g<p?(d.flags|=2,p):g):(d.flags|=2,p)):(d.flags|=1048576,p)}function l(d){return e&&d.alternate===null&&(d.flags|=2),d}function s(d,p,g,k){return p===null||p.tag!==6?(p=Wr(g,d.mode,k),p.return=d,p):(p=r(p,g),p.return=d,p)}function c(d,p,g,k){var U=g.type;return U===Lt?y(d,p,g.props.children,k,g.key):p!==null&&(p.elementType===U||typeof U=="object"&&U!==null&&U.$$typeof===Xe&&xo(U)===p.type)?(k=r(p,g.props),k.ref=hn(d,p,g),k.return=d,k):(k=Ni(g.type,g.key,g.props,null,d.mode,k),k.ref=hn(d,p,g),k.return=d,k)}function u(d,p,g,k){return p===null||p.tag!==4||p.stateNode.containerInfo!==g.containerInfo||p.stateNode.implementation!==g.implementation?(p=Vr(g,d.mode,k),p.return=d,p):(p=r(p,g.children||[]),p.return=d,p)}function y(d,p,g,k,U){return p===null||p.tag!==7?(p=wt(g,d.mode,k,U),p.return=d,p):(p=r(p,g),p.return=d,p)}function f(d,p,g){if(typeof p=="string"&&p!==""||typeof p=="number")return p=Wr(""+p,d.mode,g),p.return=d,p;if(typeof p=="object"&&p!==null){switch(p.$$typeof){case ri:return g=Ni(p.type,p.key,p.props,null,d.mode,g),g.ref=hn(d,null,p),g.return=d,g;case Et:return p=Vr(p,d.mode,g),p.return=d,p;case Xe:var k=p._init;return f(d,k(p._payload),g)}if(Pn(p)||dn(p))return p=wt(p,d.mode,g,null),p.return=d,p;fi(d,p)}return null}function m(d,p,g,k){var U=p!==null?p.key:null;if(typeof g=="string"&&g!==""||typeof g=="number")return U!==null?null:s(d,p,""+g,k);if(typeof g=="object"&&g!==null){switch(g.$$typeof){case ri:return g.key===U?c(d,p,g,k):null;case Et:return g.key===U?u(d,p,g,k):null;case Xe:return U=g._init,m(d,p,U(g._payload),k)}if(Pn(g)||dn(g))return U!==null?null:y(d,p,g,k,null);fi(d,g)}return null}function S(d,p,g,k,U){if(typeof k=="string"&&k!==""||typeof k=="number")return d=d.get(g)||null,s(p,d,""+k,U);if(typeof k=="object"&&k!==null){switch(k.$$typeof){case ri:return d=d.get(k.key===null?g:k.key)||null,c(p,d,k,U);case Et:return d=d.get(k.key===null?g:k.key)||null,u(p,d,k,U);case Xe:var x=k._init;return S(d,p,g,x(k._payload),U)}if(Pn(k)||dn(k))return d=d.get(g)||null,y(p,d,k,U,null);fi(p,k)}return null}function h(d,p,g,k){for(var U=null,x=null,T=p,q=p=0,L=null;T!==null&&q<g.length;q++){T.index>q?(L=T,T=null):L=T.sibling;var C=m(d,T,g[q],k);if(C===null){T===null&&(T=L);break}e&&T&&C.alternate===null&&t(d,T),p=a(C,p,q),x===null?U=C:x.sibling=C,x=C,T=L}if(q===g.length)return n(d,T),G&&kt(d,q),U;if(T===null){for(;q<g.length;q++)T=f(d,g[q],k),T!==null&&(p=a(T,p,q),x===null?U=T:x.sibling=T,x=T);return G&&kt(d,q),U}for(T=i(d,T);q<g.length;q++)L=S(T,d,q,g[q],k),L!==null&&(e&&L.alternate!==null&&T.delete(L.key===null?q:L.key),p=a(L,p,q),x===null?U=L:x.sibling=L,x=L);return e&&T.forEach(function(Te){return t(d,Te)}),G&&kt(d,q),U}function P(d,p,g,k){var U=dn(g);if(typeof U!="function")throw Error(v(150));if(g=U.call(g),g==null)throw Error(v(151));for(var x=U=null,T=p,q=p=0,L=null,C=g.next();T!==null&&!C.done;q++,C=g.next()){T.index>q?(L=T,T=null):L=T.sibling;var Te=m(d,T,C.value,k);if(Te===null){T===null&&(T=L);break}e&&T&&Te.alternate===null&&t(d,T),p=a(Te,p,q),x===null?U=Te:x.sibling=Te,x=Te,T=L}if(C.done)return n(d,T),G&&kt(d,q),U;if(T===null){for(;!C.done;q++,C=g.next())C=f(d,C.value,k),C!==null&&(p=a(C,p,q),x===null?U=C:x.sibling=C,x=C);return G&&kt(d,q),U}for(T=i(d,T);!C.done;q++,C=g.next())C=S(T,d,q,C.value,k),C!==null&&(e&&C.alternate!==null&&T.delete(C.key===null?q:C.key),p=a(C,p,q),x===null?U=C:x.sibling=C,x=C);return e&&T.forEach(function(un){return t(d,un)}),G&&kt(d,q),U}function I(d,p,g,k){if(typeof g=="object"&&g!==null&&g.type===Lt&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case ri:e:{for(var U=g.key,x=p;x!==null;){if(x.key===U){if(U=g.type,U===Lt){if(x.tag===7){n(d,x.sibling),p=r(x,g.props.children),p.return=d,d=p;break e}}else if(x.elementType===U||typeof U=="object"&&U!==null&&U.$$typeof===Xe&&xo(U)===x.type){n(d,x.sibling),p=r(x,g.props),p.ref=hn(d,x,g),p.return=d,d=p;break e}n(d,x);break}else t(d,x);x=x.sibling}g.type===Lt?(p=wt(g.props.children,d.mode,k,g.key),p.return=d,d=p):(k=Ni(g.type,g.key,g.props,null,d.mode,k),k.ref=hn(d,p,g),k.return=d,d=k)}return l(d);case Et:e:{for(x=g.key;p!==null;){if(p.key===x)if(p.tag===4&&p.stateNode.containerInfo===g.containerInfo&&p.stateNode.implementation===g.implementation){n(d,p.sibling),p=r(p,g.children||[]),p.return=d,d=p;break e}else{n(d,p);break}else t(d,p);p=p.sibling}p=Vr(g,d.mode,k),p.return=d,d=p}return l(d);case Xe:return x=g._init,I(d,p,x(g._payload),k)}if(Pn(g))return h(d,p,g,k);if(dn(g))return P(d,p,g,k);fi(d,g)}return typeof g=="string"&&g!==""||typeof g=="number"?(g=""+g,p!==null&&p.tag===6?(n(d,p.sibling),p=r(p,g),p.return=d,d=p):(n(d,p),p=Wr(g,d.mode,k),p.return=d,d=p),l(d)):n(d,p)}return I}var nn=pc(!0),dc=pc(!1),Wi=mt(null),Vi=null,Ht=null,pl=null;function dl(){pl=Ht=Vi=null}function gl(e){var t=Wi.current;_(Wi),e._currentValue=t}function wa(e,t,n){for(;e!==null;){var i=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,i!==null&&(i.childLanes|=t)):i!==null&&(i.childLanes&t)!==t&&(i.childLanes|=t),e===n)break;e=e.return}}function Xt(e,t){Vi=e,pl=Ht=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(pe=!0),e.firstContext=null)}function be(e){var t=e._currentValue;if(pl!==e)if(e={context:e,memoizedValue:t,next:null},Ht===null){if(Vi===null)throw Error(v(308));Ht=e,Vi.dependencies={lanes:0,firstContext:e}}else Ht=Ht.next=e;return t}var Pt=null;function ml(e){Pt===null?Pt=[e]:Pt.push(e)}function gc(e,t,n,i){var r=t.interleaved;return r===null?(n.next=n,ml(t)):(n.next=r.next,r.next=n),t.interleaved=n,Ve(e,i)}function Ve(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Ze=!1;function fl(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function mc(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function He(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function ot(e,t,n){var i=e.updateQueue;if(i===null)return null;if(i=i.shared,D&2){var r=i.pending;return r===null?t.next=t:(t.next=r.next,r.next=t),i.pending=t,Ve(e,n)}return r=i.interleaved,r===null?(t.next=t,ml(i)):(t.next=r.next,r.next=t),i.interleaved=t,Ve(e,n)}function qi(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var i=t.lanes;i&=e.pendingLanes,n|=i,t.lanes=n,el(e,n)}}function Uo(e,t){var n=e.updateQueue,i=e.alternate;if(i!==null&&(i=i.updateQueue,n===i)){var r=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var l={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};a===null?r=a=l:a=a.next=l,n=n.next}while(n!==null);a===null?r=a=t:a=a.next=t}else r=a=t;n={baseState:i.baseState,firstBaseUpdate:r,lastBaseUpdate:a,shared:i.shared,effects:i.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Ki(e,t,n,i){var r=e.updateQueue;Ze=!1;var a=r.firstBaseUpdate,l=r.lastBaseUpdate,s=r.shared.pending;if(s!==null){r.shared.pending=null;var c=s,u=c.next;c.next=null,l===null?a=u:l.next=u,l=c;var y=e.alternate;y!==null&&(y=y.updateQueue,s=y.lastBaseUpdate,s!==l&&(s===null?y.firstBaseUpdate=u:s.next=u,y.lastBaseUpdate=c))}if(a!==null){var f=r.baseState;l=0,y=u=c=null,s=a;do{var m=s.lane,S=s.eventTime;if((i&m)===m){y!==null&&(y=y.next={eventTime:S,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var h=e,P=s;switch(m=t,S=n,P.tag){case 1:if(h=P.payload,typeof h=="function"){f=h.call(S,f,m);break e}f=h;break e;case 3:h.flags=h.flags&-65537|128;case 0:if(h=P.payload,m=typeof h=="function"?h.call(S,f,m):h,m==null)break e;f=A({},f,m);break e;case 2:Ze=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,m=r.effects,m===null?r.effects=[s]:m.push(s))}else S={eventTime:S,lane:m,tag:s.tag,payload:s.payload,callback:s.callback,next:null},y===null?(u=y=S,c=f):y=y.next=S,l|=m;if(s=s.next,s===null){if(s=r.shared.pending,s===null)break;m=s,s=m.next,m.next=null,r.lastBaseUpdate=m,r.shared.pending=null}}while(!0);if(y===null&&(c=f),r.baseState=c,r.firstBaseUpdate=u,r.lastBaseUpdate=y,t=r.shared.interleaved,t!==null){r=t;do l|=r.lane,r=r.next;while(r!==t)}else a===null&&(r.shared.lanes=0);zt|=l,e.lanes=l,e.memoizedState=f}}function wo(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var i=e[t],r=i.callback;if(r!==null){if(i.callback=null,i=n,typeof r!="function")throw Error(v(191,r));r.call(i)}}}var ei={},_e=mt(ei),Hn=mt(ei),$n=mt(ei);function xt(e){if(e===ei)throw Error(v(174));return e}function yl(e,t){switch(M($n,t),M(Hn,e),M(_e,ei),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:ra(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=ra(t,e)}_(_e),M(_e,t)}function rn(){_(_e),_(Hn),_($n)}function fc(e){xt($n.current);var t=xt(_e.current),n=ra(t,e.type);t!==n&&(M(Hn,e),M(_e,n))}function hl(e){Hn.current===e&&(_(_e),_(Hn))}var O=mt(0);function Qi(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Gr=[];function kl(){for(var e=0;e<Gr.length;e++)Gr[e]._workInProgressVersionPrimary=null;Gr.length=0}var Ti=Qe.ReactCurrentDispatcher,Or=Qe.ReactCurrentBatchConfig,Tt=0,B=null,K=null,X=null,Yi=!1,In=!1,Wn=0,cd=0;function ne(){throw Error(v(321))}function Sl(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!De(e[n],t[n]))return!1;return!0}function vl(e,t,n,i,r,a){if(Tt=a,B=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Ti.current=e===null||e.memoizedState===null?gd:md,e=n(i,r),In){a=0;do{if(In=!1,Wn=0,25<=a)throw Error(v(301));a+=1,X=K=null,t.updateQueue=null,Ti.current=fd,e=n(i,r)}while(In)}if(Ti.current=Xi,t=K!==null&&K.next!==null,Tt=0,X=K=B=null,Yi=!1,t)throw Error(v(300));return e}function Pl(){var e=Wn!==0;return Wn=0,e}function Le(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return X===null?B.memoizedState=X=e:X=X.next=e,X}function qe(){if(K===null){var e=B.alternate;e=e!==null?e.memoizedState:null}else e=K.next;var t=X===null?B.memoizedState:X.next;if(t!==null)X=t,K=e;else{if(e===null)throw Error(v(310));
vendor: 4,080 bytes, line 38
38K=e,e={memoizedState:K.memoizedState,baseState:K.baseState,baseQueue:K.baseQueue,queue:K.queue,next:null},X===null?B.memoizedState=X=e:X=X.next=e}return X}function Vn(e,t){return typeof t=="function"?t(e):t}function Br(e){var t=qe(),n=t.queue;if(n===null)throw Error(v(311));n.lastRenderedReducer=e;var i=K,r=i.baseQueue,a=n.pending;if(a!==null){if(r!==null){var l=r.next;r.next=a.next,a.next=l}i.baseQueue=r=a,n.pending=null}if(r!==null){a=r.next,i=i.baseState;var s=l=null,c=null,u=a;do{var y=u.lane;if((Tt&y)===y)c!==null&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),i=u.hasEagerState?u.eagerState:e(i,u.action);else{var f={lane:y,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};c===null?(s=c=f,l=i):c=c.next=f,B.lanes|=y,zt|=y}u=u.next}while(u!==null&&u!==a);c===null?l=i:c.next=s,De(i,t.memoizedState)||(pe=!0),t.memoizedState=i,t.baseState=l,t.baseQueue=c,n.lastRenderedState=i}if(e=n.interleaved,e!==null){r=e;do a=r.lane,B.lanes|=a,zt|=a,r=r.next;while(r!==e)}else r===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Ar(e){var t=qe(),n=t.queue;if(n===null)throw Error(v(311));n.lastRenderedReducer=e;var i=n.dispatch,r=n.pending,a=t.memoizedState;if(r!==null){n.pending=null;var l=r=r.next;do a=e(a,l.action),l=l.next;while(l!==r);De(a,t.memoizedState)||(pe=!0),t.memoizedState=a,t.baseQueue===null&&(t.baseState=a),n.lastRenderedState=a}return[a,i]}function yc(){}function hc(e,t){var n=B,i=qe(),r=t(),a=!De(i.memoizedState,r);if(a&&(i.memoizedState=r,pe=!0),i=i.queue,xl(vc.bind(null,n,i,e),[e]),i.getSnapshot!==t||a||X!==null&&X.memoizedState.tag&1){if(n.flags|=2048,Kn(9,Sc.bind(null,n,i,r,t),void 0,null),Z===null)throw Error(v(349));Tt&30||kc(n,t,r)}return r}function kc(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=B.updateQueue,t===null?(t={lastEffect:null,stores:null},B.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Sc(e,t,n,i){t.value=n,t.getSnapshot=i,Pc(t)&&xc(e)}function vc(e,t,n){return n(function(){Pc(t)&&xc(e)})}function Pc(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!De(e,n)}catch{return!0}}function xc(e){var t=Ve(e,1);t!==null&&Re(t,e,1,-1)}function bo(e){var t=Le();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Vn,lastRenderedState:e},t.queue=e,e=e.dispatch=dd.bind(null,B,e),[t.memoizedState,e]}function Kn(e,t,n,i){return e={tag:e,create:t,destroy:n,deps:i,next:null},t=B.updateQueue,t===null?(t={lastEffect:null,stores:null},B.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(i=n.next,n.next=e,e.next=i,t.lastEffect=e)),e}function Uc(){return qe().memoizedState}function zi(e,t,n,i){var r=Le();B.flags|=e,r.memoizedState=Kn(1|t,n,void 0,i===void 0?null:i)}function ur(e,t,n,i){var r=qe();i=i===void 0?null:i;var a=void 0;if(K!==null){var l=K.memoizedState;if(a=l.destroy,i!==null&&Sl(i,l.deps)){r.memoizedState=Kn(t,n,a,i);return}}B.flags|=e,r.memoizedState=Kn(1|t,n,a,i)}function qo(e,t){return zi(8390656,8,e,t)}function xl(e,t){return ur(2048,8,e,t)}function wc(e,t){return ur(4,2,e,t)}function bc(e,t){return ur(4,4,e,t)}function qc(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Tc(e,t,n){return n=n!=null?n.concat([e]):null,ur(4,4,qc.bind(null,t,e),n)}function Ul(){}function zc(e,t){var n=qe();t=t===void 0?null:t;var i=n.memoizedState;return i!==null&&t!==null&&Sl(t,i[1])?i[0]:(n.memoizedState=[e,t],e)}function Ic(e,t){var n=qe();t=t===void 0?null:t;var i=n.memoizedState;return i!==null&&t!==null&&Sl(t,i[1])?i[0]:(e=e(),n.memoizedState=[e,t],e)}function Cc(e,t,n){return Tt&21?(De(n,t)||(n=Es(),B.lanes|=n,zt|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,pe=!0),e.memoizedState=n)}function ud(e,t){var n=E;E=n!==0&&4>n?n:4,e(!0);var i=Or.transition;Or.transition={};try{e(!1),t()}finally{E=n,Or.transition=i}}function jc(){return qe().memoizedState}
vendor: 9,300 bytes, lines 38-40
38function pd(e,t,n){var i=ct(e);if(n={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null},Nc(e))Rc(t,n);else if(n=gc(e,t,n,i),n!==null){var r=oe();Re(n,e,i,r),Dc(n,t,i)}}function dd(e,t,n){var i=ct(e),r={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null};if(Nc(e))Rc(t,r);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var l=t.lastRenderedState,s=a(l,n);if(r.hasEagerState=!0,r.eagerState=s,De(s,l)){var c=t.interleaved;c===null?(r.next=r,ml(t)):(r.next=c.next,c.next=r),t.interleaved=r;return}}catch{}finally{}n=gc(e,t,r,i),n!==null&&(r=oe(),Re(n,e,i,r),Dc(n,t,i))}}function Nc(e){var t=e.alternate;return e===B||t!==null&&t===B}function Rc(e,t){In=Yi=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Dc(e,t,n){if(n&4194240){var i=t.lanes;i&=e.pendingLanes,n|=i,t.lanes=n,el(e,n)}}var Xi={readContext:be,useCallback:ne,useContext:ne,useEffect:ne,useImperativeHandle:ne,useInsertionEffect:ne,useLayoutEffect:ne,useMemo:ne,useReducer:ne,useRef:ne,useState:ne,useDebugValue:ne,useDeferredValue:ne,useTransition:ne,useMutableSource:ne,useSyncExternalStore:ne,useId:ne,unstable_isNewReconciler:!1},gd={readContext:be,useCallback:function(e,t){return Le().memoizedState=[e,t===void 0?null:t],e},useContext:be,useEffect:qo,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,zi(4194308,4,qc.bind(null,t,e),n)},useLayoutEffect:function(e,t){return zi(4194308,4,e,t)},useInsertionEffect:function(e,t){return zi(4,2,e,t)},useMemo:function(e,t){var n=Le();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var i=Le();return t=n!==void 0?n(t):t,i.memoizedState=i.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},i.queue=e,e=e.dispatch=pd.bind(null,B,e),[i.memoizedState,e]},useRef:function(e){var t=Le();return e={current:e},t.memoizedState=e},useState:bo,useDebugValue:Ul,useDeferredValue:function(e){return Le().memoizedState=e},useTransition:function(){var e=bo(!1),t=e[0];return e=ud.bind(null,e[1]),Le().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var i=B,r=Le();if(G){if(n===void 0)throw Error(v(407));n=n()}else{if(n=t(),Z===null)throw Error(v(349));Tt&30||kc(i,t,n)}r.memoizedState=n;var a={value:n,getSnapshot:t};return r.queue=a,qo(vc.bind(null,i,a,e),[e]),i.flags|=2048,Kn(9,Sc.bind(null,i,a,n,t),void 0,null),n},useId:function(){var e=Le(),t=Z.identifierPrefix;if(G){var n=Ae,i=Be;n=(i&~(1<<32-Ne(i)-1)).toString(32)+n,t=":"+t+"R"+n,n=Wn++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=cd++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},md={readContext:be,useCallback:zc,useContext:be,useEffect:xl,useImperativeHandle:Tc,useInsertionEffect:wc,useLayoutEffect:bc,useMemo:Ic,useReducer:Br,useRef:Uc,useState:function(){return Br(Vn)},useDebugValue:Ul,useDeferredValue:function(e){var t=qe();return Cc(t,K.memoizedState,e)},useTransition:function(){var e=Br(Vn)[0],t=qe().memoizedState;return[e,t]},useMutableSource:yc,useSyncExternalStore:hc,useId:jc,unstable_isNewReconciler:!1},fd={readContext:be,useCallback:zc,useContext:be,useEffect:xl,useImperativeHandle:Tc,useInsertionEffect:wc,useLayoutEffect:bc,useMemo:Ic,useReducer:Ar,useRef:Uc,useState:function(){return Ar(Vn)},useDebugValue:Ul,useDeferredValue:function(e){var t=qe();return K===null?t.memoizedState=e:Cc(t,K.memoizedState,e)},useTransition:function(){var e=Ar(Vn)[0],t=qe().memoizedState;return[e,t]},useMutableSource:yc,useSyncExternalStore:hc,useId:jc,unstable_isNewReconciler:!1};function Ie(e,t){if(e&&e.defaultProps){t=A({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function ba(e,t,n,i){t=e.memoizedState,n=n(i,t),n=n==null?t:A({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var pr={isMounted:function(e){return(e=e._reactInternals)?jt(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var i=oe(),r=ct(e),a=He(i,r);a.payload=t,n!=null&&(a.callback=n),t=ot(e,a,r),t!==null&&(Re(t,e,r,i),qi(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var i=oe(),r=ct(e),a=He(i,r);a.tag=1,a.payload=t,n!=null&&(a.callback=n),t=ot(e,a,r),t!==null&&(Re(t,e,r,i),qi(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=oe(),i=ct(e),r=He(n,i);r.tag=2,t!=null&&(r.callback=t),t=ot(e,r,i),t!==null&&(Re(t,e,i,n),qi(t,e,i))}};function To(e,t,n,i,r,a,l){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(i,a,l):t.prototype&&t.prototype.isPureReactComponent?!Gn(n,i)||!Gn(r,a):!0}function Ec(e,t,n){var i=!1,r=dt,a=t.contextType;return typeof a=="object"&&a!==null?a=be(a):(r=ge(t)?bt:ae.current,i=t.contextTypes,a=(i=i!=null)?en(e,r):dt),t=new t(n,a),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=pr,e.stateNode=t,t._reactInternals=e,i&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=r,e.__reactInternalMemoizedMaskedChildContext=a),t}function zo(e,t,n,i){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,i),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,i),t.state!==e&&pr.enqueueReplaceState(t,t.state,null)}function qa(e,t,n,i){var r=e.stateNode;r.props=n,r.state=e.memoizedState,r.refs={},fl(e);var a=t.contextType;typeof a=="object"&&a!==null?r.context=be(a):(a=ge(t)?bt:ae.current,r.context=en(e,a)),r.state=e.memoizedState,a=t.getDerivedStateFromProps,typeof a=="function"&&(ba(e,t,a,n),r.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof r.getSnapshotBeforeUpdate=="function"||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(t=r.state,typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount(),t!==r.state&&pr.enqueueReplaceState(r,r.state,null),Ki(e,n,r,i),r.state=e.memoizedState),typeof r.componentDidMount=="function"&&(e.flags|=4194308)}function an(e,t){try{var n="",i=t;do n+=Au(i),i=i.return;while(i);var r=n}catch(a){r=` 39Error generating stack: `+a.message+` 40`+a.stack}return{value:e,source:t,stack:r,digest:null}}function Hr(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Ta(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var yd=typeof WeakMap=="function"?WeakMap:Map;function Lc(e,t,n){n=He(-1,n),n.tag=3,n.payload={element:null};var i=t.value;return n.callback=function(){Ji||(Ji=!0,Ma=i),Ta(e,t)},n}function Mc(e,t,n){n=He(-1,n),n.tag=3;var i=e.type.getDerivedStateFromError;if(typeof i=="function"){var r=t.value;n.payload=function(){return i(r)},n.callback=function(){Ta(e,t)}}var a=e.stateNode;return a!==null&&typeof a.componentDidCatch=="function"&&(n.callback=function(){Ta(e,t),typeof i!="function"&&(st===null?st=new Set([this]):st.add(this));var l=t.stack;this.componentDidCatch(t.value,{componentStack:l!==null?l:""})}),n}function Io(e,t,n){var i=e.pingCache;if(i===null){i=e.pingCache=new yd;var r=new Set;i.set(t,r)}else r=i.get(t),r===void 0&&(r=new Set,i.set(t,r));r.has(n)||(r.add(n),e=Cd.bind(null,e,t,n),t.then(e,e))}function Co(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function jo(e,t,n,i,r){return e.mode&1?(e.flags|=65536,e.lanes=r,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=He(-1,1),t.tag=2,ot(n,t,1))),n.lanes|=1),e)}var hd=Qe.ReactCurrentOwner,pe=!1;function le(e,t,n,i){t.child=e===null?dc(t,null,n,i):nn(t,e.child,n,i)}function No(e,t,n,i,r){n=n.render;var a=t.ref;return Xt(t,r),i=vl(e,t,n,i,a,r),n=Pl(),e!==null&&!pe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~r,Ke(e,t,r)):(G&&n&&sl(t),t.flags|=1,le(e,t,i,r),t.child)}function Ro(e,t,n,i,r){if(e===null){var a=n.type;return typeof a=="function"&&!jl(a)&&a.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=a,Fc(e,t,a,i,r)):(e=Ni(n.type,null,i,t,t.mode,r),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!(e.lanes&r)){var l=a.memoizedProps;if(n=n.compare,n=n!==null?n:Gn,n(l,i)&&e.ref===t.ref)return Ke(e,t,r)}return t.flags|=1,e=ut(a,i),e.ref=t.ref,e.return=t,t.child=e}function Fc(e,t,n,i,r){if(e!==null){var a=e.memoizedProps;if(Gn(a,i)&&e.ref===t.ref)if(pe=!1,t.pendingProps=i=a,(e.lanes&r)!==0)e.flags&131072&&(pe=!0);else return t.lanes=e.lanes,Ke(e,t,r)}return za(e,t,n,i,r)}function _c(e,t,n){var i=t.pendingProps,r=i.children,a=e!==null?e.memoizedState:null;if(i.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},M(Wt,fe),fe|=n;else{if(!(n&1073741824))return e=a!==null?a.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,M(Wt,fe),fe|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},i=a!==null?a.baseLanes:n,M(Wt,fe),fe|=i}else a!==null?(i=a.baseLanes|n,t.memoizedState=null):i=n,M(Wt,fe),fe|=i;return le(e,t,r,n),t.child}function Gc(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}
vendor: 4,579 bytes, line 40
40function za(e,t,n,i,r){var a=ge(n)?bt:ae.current;return a=en(t,a),Xt(t,r),n=vl(e,t,n,i,a,r),i=Pl(),e!==null&&!pe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~r,Ke(e,t,r)):(G&&i&&sl(t),t.flags|=1,le(e,t,n,r),t.child)}function Do(e,t,n,i,r){if(ge(n)){var a=!0;Ai(t)}else a=!1;if(Xt(t,r),t.stateNode===null)Ii(e,t),Ec(t,n,i),qa(t,n,i,r),i=!0;else if(e===null){var l=t.stateNode,s=t.memoizedProps;l.props=s;var c=l.context,u=n.contextType;typeof u=="object"&&u!==null?u=be(u):(u=ge(n)?bt:ae.current,u=en(t,u));var y=n.getDerivedStateFromProps,f=typeof y=="function"||typeof l.getSnapshotBeforeUpdate=="function";f||typeof l.UNSAFE_componentWillReceiveProps!="function"&&typeof l.componentWillReceiveProps!="function"||(s!==i||c!==u)&&zo(t,l,i,u),Ze=!1;var m=t.memoizedState;l.state=m,Ki(t,i,l,r),c=t.memoizedState,s!==i||m!==c||de.current||Ze?(typeof y=="function"&&(ba(t,n,y,i),c=t.memoizedState),(s=Ze||To(t,n,s,i,m,c,u))?(f||typeof l.UNSAFE_componentWillMount!="function"&&typeof l.componentWillMount!="function"||(typeof l.componentWillMount=="function"&&l.componentWillMount(),typeof l.UNSAFE_componentWillMount=="function"&&l.UNSAFE_componentWillMount()),typeof l.componentDidMount=="function"&&(t.flags|=4194308)):(typeof l.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=i,t.memoizedState=c),l.props=i,l.state=c,l.context=u,i=s):(typeof l.componentDidMount=="function"&&(t.flags|=4194308),i=!1)}else{l=t.stateNode,mc(e,t),s=t.memoizedProps,u=t.type===t.elementType?s:Ie(t.type,s),l.props=u,f=t.pendingProps,m=l.context,c=n.contextType,typeof c=="object"&&c!==null?c=be(c):(c=ge(n)?bt:ae.current,c=en(t,c));var S=n.getDerivedStateFromProps;(y=typeof S=="function"||typeof l.getSnapshotBeforeUpdate=="function")||typeof l.UNSAFE_componentWillReceiveProps!="function"&&typeof l.componentWillReceiveProps!="function"||(s!==f||m!==c)&&zo(t,l,i,c),Ze=!1,m=t.memoizedState,l.state=m,Ki(t,i,l,r);var h=t.memoizedState;s!==f||m!==h||de.current||Ze?(typeof S=="function"&&(ba(t,n,S,i),h=t.memoizedState),(u=Ze||To(t,n,u,i,m,h,c)||!1)?(y||typeof l.UNSAFE_componentWillUpdate!="function"&&typeof l.componentWillUpdate!="function"||(typeof l.componentWillUpdate=="function"&&l.componentWillUpdate(i,h,c),typeof l.UNSAFE_componentWillUpdate=="function"&&l.UNSAFE_componentWillUpdate(i,h,c)),typeof l.componentDidUpdate=="function"&&(t.flags|=4),typeof l.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof l.componentDidUpdate!="function"||s===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof l.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=i,t.memoizedState=h),l.props=i,l.state=h,l.context=c,i=u):(typeof l.componentDidUpdate!="function"||s===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof l.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),i=!1)}return Ia(e,t,n,i,a,r)}function Ia(e,t,n,i,r,a){Gc(e,t);var l=(t.flags&128)!==0;if(!i&&!l)return r&&So(t,n,!1),Ke(e,t,a);i=t.stateNode,hd.current=t;var s=l&&typeof n.getDerivedStateFromError!="function"?null:i.render();return t.flags|=1,e!==null&&l?(t.child=nn(t,e.child,null,a),t.child=nn(t,null,s,a)):le(e,t,s,a),t.memoizedState=i.state,r&&So(t,n,!0),t.child}function Oc(e){var t=e.stateNode;t.pendingContext?ko(e,t.pendingContext,t.pendingContext!==t.context):t.context&&ko(e,t.context,!1),yl(e,t.containerInfo)}function Eo(e,t,n,i,r){return tn(),ul(r),t.flags|=256,le(e,t,n,i),t.child}var Ca={dehydrated:null,treeContext:null,retryLane:0};function ja(e){return{baseLanes:e,cachePool:null,transitions:null}}function Bc(e,t,n){var i=t.pendingProps,r=O.current,a=!1,l=(t.flags&128)!==0,s;if((s=l)||(s=e!==null&&e.memoizedState===null?!1:(r&2)!==0),s?(a=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(r|=1),M(O,r&1),e===null)return Ua(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(l=i.children,e=i.fallback,a?(i=t.mode,a=t.child,l={mode:"hidden",children:l},!(i&1)&&a!==null?(a.childLanes=0,a.pendingProps=l):a=mr(l,i,0,null),e=wt(e,i,n,null),a.return=t,e.return=t,a.sibling=e,t.child=a,t.child.memoizedState=ja(n),t.memoizedState=Ca,e):wl(t,l));if(r=e.memoizedState,r!==null&&(s=r.dehydrated,s!==null))return kd(e,t,l,i,s,r,n);if(a){a=i.fallback,l=t.mode,r=e.child,s=r.sibling;var c={mode:"hidden",children:i.children};return!(l&1)&&t.child!==r?(i=t.child,i.childLanes=0,i.pendingProps=c,t.deletions=null):(i=ut(r,c),i.subtreeFlags=r.subtreeFlags&14680064),s!==null?a=ut(s,a):(a=wt(
vendor: 9,010 bytes, line 40
40a,l,n,null),a.flags|=2),a.return=t,i.return=t,i.sibling=a,t.child=i,i=a,a=t.child,l=e.child.memoizedState,l=l===null?ja(n):{baseLanes:l.baseLanes|n,cachePool:null,transitions:l.transitions},a.memoizedState=l,a.childLanes=e.childLanes&~n,t.memoizedState=Ca,i}return a=e.child,e=a.sibling,i=ut(a,{mode:"visible",children:i.children}),!(t.mode&1)&&(i.lanes=n),i.return=t,i.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=i,t.memoizedState=null,i}function wl(e,t){return t=mr({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function yi(e,t,n,i){return i!==null&&ul(i),nn(t,e.child,null,n),e=wl(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function kd(e,t,n,i,r,a,l){if(n)return t.flags&256?(t.flags&=-257,i=Hr(Error(v(422))),yi(e,t,l,i)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(a=i.fallback,r=t.mode,i=mr({mode:"visible",children:i.children},r,0,null),a=wt(a,r,l,null),a.flags|=2,i.return=t,a.return=t,i.sibling=a,t.child=i,t.mode&1&&nn(t,e.child,null,l),t.child.memoizedState=ja(l),t.memoizedState=Ca,a);if(!(t.mode&1))return yi(e,t,l,null);if(r.data==="$!"){if(i=r.nextSibling&&r.nextSibling.dataset,i)var s=i.dgst;return i=s,a=Error(v(419)),i=Hr(a,i,void 0),yi(e,t,l,i)}if(s=(l&e.childLanes)!==0,pe||s){if(i=Z,i!==null){switch(l&-l){case 4:r=2;break;case 16:r=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:r=32;break;case 536870912:r=268435456;break;default:r=0}r=r&(i.suspendedLanes|l)?0:r,r!==0&&r!==a.retryLane&&(a.retryLane=r,Ve(e,r),Re(i,e,r,-1))}return Cl(),i=Hr(Error(v(421))),yi(e,t,l,i)}return r.data==="$?"?(t.flags|=128,t.child=e.child,t=jd.bind(null,e),r._reactRetry=t,null):(e=a.treeContext,ye=lt(r.nextSibling),he=t,G=!0,je=null,e!==null&&(Pe[xe++]=Be,Pe[xe++]=Ae,Pe[xe++]=qt,Be=e.id,Ae=e.overflow,qt=t),t=wl(t,i.children),t.flags|=4096,t)}function Lo(e,t,n){e.lanes|=t;var i=e.alternate;i!==null&&(i.lanes|=t),wa(e.return,t,n)}function $r(e,t,n,i,r){var a=e.memoizedState;a===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:i,tail:n,tailMode:r}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=i,a.tail=n,a.tailMode=r)}function Ac(e,t,n){var i=t.pendingProps,r=i.revealOrder,a=i.tail;if(le(e,t,i.children,n),i=O.current,i&2)i=i&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Lo(e,n,t);else if(e.tag===19)Lo(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}i&=1}if(M(O,i),!(t.mode&1))t.memoizedState=null;else switch(r){case"forwards":for(n=t.child,r=null;n!==null;)e=n.alternate,e!==null&&Qi(e)===null&&(r=n),n=n.sibling;n=r,n===null?(r=t.child,t.child=null):(r=n.sibling,n.sibling=null),$r(t,!1,r,n,a);break;case"backwards":for(n=null,r=t.child,t.child=null;r!==null;){if(e=r.alternate,e!==null&&Qi(e)===null){t.child=r;break}e=r.sibling,r.sibling=n,n=r,r=e}$r(t,!0,n,null,a);break;case"together":$r(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Ii(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ke(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),zt|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(v(153));if(t.child!==null){for(e=t.child,n=ut(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=ut(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Sd(e,t,n){switch(t.tag){case 3:Oc(t),tn();break;case 5:fc(t);break;case 1:ge(t.type)&&Ai(t);break;case 4:yl(t,t.stateNode.containerInfo);break;case 10:var i=t.type._context,r=t.memoizedProps.value;M(Wi,i._currentValue),i._currentValue=r;break;case 13:if(i=t.memoizedState,i!==null)return i.dehydrated!==null?(M(O,O.current&1),t.flags|=128,null):n&t.child.childLanes?Bc(e,t,n):(M(O,O.current&1),e=Ke(e,t,n),e!==null?e.sibling:null);M(O,O.current&1);break;case 19:if(i=(n&t.childLanes)!==0,e.flags&128){if(i)return Ac(e,t,n);t.flags|=128}if(r=t.memoizedState,r!==null&&(r.rendering=null,r.tail=null,r.lastEffect=null),M(O,O.current),i)break;return null;case 22:case 23:return t.lanes=0,_c(e,t,n)}return Ke(e,t,n)}var Hc,Na,$c,Wc;Hc=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Na=function(){};$c=function(e,t,n,i){var r=e.memoizedProps;if(r!==i){e=t.stateNode,xt(_e.current);var a=null;switch(n){case"input":r=ea(e,r),i=ea(e,i),a=[];break;case"select":r=A({},r,{value:void 0}),i=A({},i,{value:void 0}),a=[];break;case"textarea":r=ia(e,r),i=ia(e,i),a=[];break;default:typeof r.onClick!="function"&&typeof i.onClick=="function"&&(e.onclick=Oi)}aa(n,i);var l;n=null;for(u in r)if(!i.hasOwnProperty(u)&&r.hasOwnProperty(u)&&r[u]!=null)if(u==="style"){var s=r[u];for(l in s)s.hasOwnProperty(l)&&(n||(n={}),n[l]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(Rn.hasOwnProperty(u)?a||(a=[]):(a=a||[]).push(u,null));for(u in i){var c=i[u];if(s=r!=null?r[u]:void 0,i.hasOwnProperty(u)&&c!==s&&(c!=null||s!=null))if(u==="style")if(s){for(l in s)!s.hasOwnProperty(l)||c&&c.hasOwnProperty(l)||(n||(n={}),n[l]="");for(l in c)c.hasOwnProperty(l)&&s[l]!==c[l]&&(n||(n={}),n[l]=c[l])}else n||(a||(a=[]),a.push(u,n)),n=c;else u==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,s=s?s.__html:void 0,c!=null&&s!==c&&(a=a||[]).push(u,c)):u==="children"?typeof c!="string"&&typeof c!="number"||(a=a||[]).push(u,""+c):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(Rn.hasOwnProperty(u)?(c!=null&&u==="onScroll"&&F("scroll",e),a||s===c||(a=[])):(a=a||[]).push(u,c))}n&&(a=a||[]).push("style",n);var u=a;(t.updateQueue=u)&&(t.flags|=4)}};Wc=function(e,t,n,i){n!==i&&(t.flags|=4)};function kn(e,t){if(!G)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:i.sibling=null}}function ie(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,i=0;if(t)for(var r=e.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags&14680064,i|=r.flags&14680064,r.return=e,r=r.sibling;else for(r=e.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags,i|=r.flags,r.return=e,r=r.sibling;return e.subtreeFlags|=i,e.childLanes=n,t}function vd(e,t,n){var i=t.pendingProps;switch(cl(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return ie(t),null;case 1:return ge(t.type)&&Bi(),ie(t),null;case 3:return i=t.stateNode,rn(),_(de),_(ae),kl(),i.pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(e===null||e.child===null)&&(mi(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,je!==null&&(Ga(je),je=null))),Na(e,t),ie(t),null;case 5:hl(t);var r=xt($n.current);if(n=t.type,e!==null&&t.stateNode!=null)$c(e,t,n,i,r),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!i){if(t.stateNode===null)throw Error(v(166));return ie(t),null}if(e=xt(_e.current),mi(t)){i=t.stateNode,n=t.type;var a=t.memoizedProps;switch(i[Me]=t,i[An]=a,e=(t.mode&1)!==0,n){case"dialog":F("cancel",i),F("close",i);break;case"iframe":case"object":case"embed":F("load",i);break;case"video":case"audio":for(r=0;r<Un.length;r++)F(Un[r],i);break;case"source":F("error",i);break;case"img":case"image":case"link":F("error",i),F("load",i);break;case"details":F("toggle",i);break;case"input":Hl(i,a),F("invalid",i);break;case"select":i._wrapperState={wasMultiple:!!a.multiple},F("invalid",i);break;case"textarea":Wl(i,a),F("invalid",i)}aa(n,a),r=null;for(var l in a)if(a.hasOwnProperty(l)){var s=a[l];l==="children"?typeof s=="string"?i.textContent!==s&&(a.suppressHydrationWarning!==!0&&gi(i.textContent,s,e),r=["children",s]):typeof s=="number"&&i.textContent!==""+s&&(a.suppressHydrationWarning!==!0&&gi(i.textContent,s,e),r=["children",""+s]):Rn.hasOwnProperty(l)&&s!=null&&l==="onScroll"&&F("scroll",i)}switch(n){case"input":ai(i),$l(i,a,!0);break;case"textarea":ai(i),Vl(i);break;case"select":case"option":break;default:typeof a.onClick=="function"&&(i.onclick=Oi)}i=r,t.updateQueue=i,i!==null&&(t.flags|=4)}else{l=r.nodeType===9?r:r.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=vs(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=l.createElement("div"),e.innerHTML="<script><\/script>
40",e=e.removeChild(e.firstChild)):typeof i.is=="string"?e=l.createElement(n,{is:i.is}):(e=l.createElement(n),n==="select"&&(l=e,i.multiple?l.multiple=!0:i.size&&(l.size=i.size))):e=l.createElementNS(e,n),e[Me]=t,e[An]=i,Hc(e,t,!1,!1),t.stateNode=e;e:{switch(l=la(n,i),n){case"dialog":F("cancel",e),F("close",e),r=i;break;case"iframe":case"object":case"embed":F("load",e),r=i;break;case"video":case"audio":for(r=0;r<Un.length;r++)F(Un[r],e);r=i;break;case"source":F("error",e),r=i;break;case"img":case"image":case"link":F("error",e),F("load",e),r=i;break;case"details":F("toggle",e),r=i;break;case"input":Hl(e,i),r=ea(e,i),F("invalid",e);break;case"option":r=i;break;case"select":e._wrapperState={wasMultiple:!!i.multiple},r=A({},i,{value:void 0}),F("invalid",e);break;case"textarea":Wl(e,i),r=ia(e,i),F("invalid",e);break;default:r=i}aa(n,r),s=r;for(a in s)if(s.hasOwnProperty(a)){var c=s[a];a==="style"?Us(e,c):a==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,c!=null&&Ps(e,c)):a==="children"?typeof c=="string"?(n!=="textarea"||c!=="")&&Dn(e,c):typeof c=="number"&&Dn(e,""+c):a!=="suppressContentEditableWarning"&&a!=="suppressHydrationWarning"&&a!=="autoFocus"&&(Rn.hasOwnProperty(a)?c!=null&&a==="onScroll"&&F("scroll",e):c!=null&&Ka(e,a,c,l))}switch(n){case"input":ai(e),$l(e,i,!1);break;case"textarea":ai(e),Vl(e);break;case"option":i.value!=null&&e.setAttribute("value",""+pt(i.value));break;case"select":e.multiple=!!i.multiple,a=i.value,a!=null?Vt(e,!!i.multiple,a,!1):i.defaultValue!=null&&Vt(e,!!i.multiple,i.defaultValue,!0);break;default:typeof r.onClick=="function"&&(e.onclick=Oi)}switch(n){case"button":case"input":case"select":case"textarea":i=!!i.autoFocus;break e;case"img":i=!0;break e;default:i=!1}}i&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return ie(t),null;case 6:if(e&&t.stateNode!=null)Wc(e,t,e.memoizedProps,i);else{if(typeof i!="string"&&t.stateNode===null)throw Error(v(166));if(n=xt($n.current),xt(_e.current),mi(t)){if(i=t.stateNode,n=t.memoizedProps,i[Me]=t,(a=i.nodeValue!==n)&&(e=he,e!==null))switch(e.tag){case 3:gi(i.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&gi(i.nodeValue,n,(e.mode&1)!==0)}a&&(t.flags|=4)}else i=(n.nodeType===9?n:n.ownerDocument).createTextNode(i),i[Me]=t,t.stateNode=i}return ie(t),null;case 13:if(_(O),i=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(G&&ye!==null&&t.mode&1&&!(t.flags&128))uc(),tn(),t.flags|=98560,a=!1;else if(a=mi(t),i!==null&&i.dehydrated!==null){if(e===null){if(!a)throw Error(v(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(v(317));a[Me]=t}else tn(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;ie(t),a=!1}else je!==null&&(Ga(je),je=null),a=!0;if(!a)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(i=i!==null,i!==(e!==null&&e.memoizedState!==null)&&i&&(t.child.flags|=8192,t.mode&1&&(e===null||O.current&1?Q===0&&(Q=3):Cl())),t.updateQueue!==null&&(t.flags|=4),ie(t),null);case 4:return rn(),Na(e,t),e===null&&On(t.stateNode.containerInfo),ie(t),null;case 10:return gl(t.type._context),ie(t),null;case 17:return ge(t.type)&&Bi(),ie(t),null;case 19:if(_(O),a=t.memoizedState,a===null)return ie(t),null;if(i=(t.flags&128)!==0,l=a.rendering,l===null)if(i)kn(a,!1);else{if(Q!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(l=Qi(e),l!==null){for(t.flags|=128,kn(a,!1),i=l.updateQueue,i!==null&&(t.updateQueue=i,t.flags|=4),t.subtreeFlags=0,i=n,n=t.child;n!==null;)a=n,e=i,a.flags&=14680066,l=a.alternate,l===null?(a.childLanes=0,a.lanes=e,a.child=null,a.subtreeFlags=0,a.memoizedProps=null,a.memoizedState=null,a.updateQueue=null,a.dependencies=null,a.stateNode=null):(a.childLanes=l.childLanes,a.lanes=l.lanes,a.child=l.child,a.subtreeFlags=0,a.deletions=null,a.memoizedProps=l.memoizedProps,a.memoizedState=l.memoizedState,a.updateQueue=l.updateQueue,a.type=l.type,e=l.dependencies,a.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return M(O,O.current&1|2),t.child}e=e.sibling}a.tail!==null&&W()>ln&&(t.flags|=128,i=!0,kn(a,!1),t.lanes=4194304)}else{if(!i)if(e=Qi(l),e!==null){if(t.flags|=128,i=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),kn(a,!0),a.tail===null&&a.tailMode==="hidden"&&!l.alternate&&!G)return ie(t),null}else 2*W()-a.renderingStartTime>ln&&n!==1073741824&&(t.flags|=128,i=!0,kn(a,!1),t.lanes=4194304);a.isBackwards?(l.sibling=t.child,t.child=l):(n=a.last,n!==null?n.sibling=l:t.child=l,a.last=l)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=W(),t.sibling=null,n=O.current,M(O,i?n&1|2:n&1),t):(ie(t),null);case 22:case 23:return Il(),i=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==i&&(t.flags|=8192),i&&t.mode&1?fe&1073741824&&(ie(t),t.subtreeFlags&6&&(t.flags|=8192)):ie(t),null;case 24:return null;case 25:return null}throw Error(v(156,t.tag))}function Pd(e,t){switch(cl(t),t.tag){case 1:return ge(t.type)&&Bi(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;
vendor: 25,396 bytes, line 40
40case 3:return rn(),_(de),_(ae),kl(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return hl(t),null;case 13:if(_(O),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(v(340));tn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return _(O),null;case 4:return rn(),null;case 10:return gl(t.type._context),null;case 22:case 23:return Il(),null;case 24:return null;default:return null}}var hi=!1,re=!1,xd=typeof WeakSet=="function"?WeakSet:Set,w=null;function $t(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(i){H(e,t,i)}else n.current=null}function Ra(e,t,n){try{n()}catch(i){H(e,t,i)}}var Mo=!1;function Ud(e,t){if(ya=Fi,e=Xs(),ol(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var r=i.anchorOffset,a=i.focusNode;i=i.focusOffset;try{n.nodeType,a.nodeType}catch{n=null;break e}var l=0,s=-1,c=-1,u=0,y=0,f=e,m=null;t:for(;;){for(var S;f!==n||r!==0&&f.nodeType!==3||(s=l+r),f!==a||i!==0&&f.nodeType!==3||(c=l+i),f.nodeType===3&&(l+=f.nodeValue.length),(S=f.firstChild)!==null;)m=f,f=S;for(;;){if(f===e)break t;if(m===n&&++u===r&&(s=l),m===a&&++y===i&&(c=l),(S=f.nextSibling)!==null)break;f=m,m=f.parentNode}f=S}n=s===-1||c===-1?null:{start:s,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(ha={focusedElem:e,selectionRange:n},Fi=!1,w=t;w!==null;)if(t=w,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,w=e;else for(;w!==null;){t=w;try{var h=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(h!==null){var P=h.memoizedProps,I=h.memoizedState,d=t.stateNode,p=d.getSnapshotBeforeUpdate(t.elementType===t.type?P:Ie(t.type,P),I);d.__reactInternalSnapshotBeforeUpdate=p}break;case 3:var g=t.stateNode.containerInfo;g.nodeType===1?g.textContent="":g.nodeType===9&&g.documentElement&&g.removeChild(g.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(v(163))}}catch(k){H(t,t.return,k)}if(e=t.sibling,e!==null){e.return=t.return,w=e;break}w=t.return}return h=Mo,Mo=!1,h}function Cn(e,t,n){var i=t.updateQueue;if(i=i!==null?i.lastEffect:null,i!==null){var r=i=i.next;do{if((r.tag&e)===e){var a=r.destroy;r.destroy=void 0,a!==void 0&&Ra(t,n,a)}r=r.next}while(r!==i)}}function dr(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var i=n.create;n.destroy=i()}n=n.next}while(n!==t)}}function Da(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Vc(e){var t=e.alternate;t!==null&&(e.alternate=null,Vc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Me],delete t[An],delete t[va],delete t[ad],delete t[ld])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Kc(e){return e.tag===5||e.tag===3||e.tag===4}function Fo(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Kc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Ea(e,t,n){var i=e.tag;if(i===5||i===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Oi));else if(i!==4&&(e=e.child,e!==null))for(Ea(e,t,n),e=e.sibling;e!==null;)Ea(e,t,n),e=e.sibling}function La(e,t,n){var i=e.tag;if(i===5||i===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(i!==4&&(e=e.child,e!==null))for(La(e,t,n),e=e.sibling;e!==null;)La(e,t,n),e=e.sibling}var J=null,Ce=!1;function Ye(e,t,n){for(n=n.child;n!==null;)Qc(e,t,n),n=n.sibling}function Qc(e,t,n){if(Fe&&typeof Fe.onCommitFiberUnmount=="function")try{Fe.onCommitFiberUnmount(rr,n)}catch{}switch(n.tag){case 5:re||$t(n,t);case 6:var i=J,r=Ce;J=null,Ye(e,t,n),J=i,Ce=r,J!==null&&(Ce?(e=J,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):J.removeChild(n.stateNode));break;case 18:J!==null&&(Ce?(e=J,n=n.stateNode,e.nodeType===8?Fr(e.parentNode,n):e.nodeType===1&&Fr(e,n),Fn(e)):Fr(J,n.stateNode));break;case 4:i=J,r=Ce,J=n.stateNode.containerInfo,Ce=!0,Ye(e,t,n),J=i,Ce=r;break;case 0:case 11:case 14:case 15:if(!re&&(i=n.updateQueue,i!==null&&(i=i.lastEffect,i!==null))){r=i=i.next;do{var a=r,l=a.destroy;a=a.tag,l!==void 0&&(a&2||a&4)&&Ra(n,t,l),r=r.next}while(r!==i)}Ye(e,t,n);break;case 1:if(!re&&($t(n,t),i=n.stateNode,typeof i.componentWillUnmount=="function"))try{i.props=n.memoizedProps,i.state=n.memoizedState,i.componentWillUnmount()}catch(s){H(n,t,s)}Ye(e,t,n);break;case 21:Ye(e,t,n);break;case 22:n.mode&1?(re=(i=re)||n.memoizedState!==null,Ye(e,t,n),re=i):Ye(e,t,n);break;default:Ye(e,t,n)}}function _o(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new xd),t.forEach(function(i){var r=Nd.bind(null,e,i);n.has(i)||(n.add(i),i.then(r,r))})}}function ze(e,t){var n=t.deletions;if(n!==null)for(var i=0;i<n.length;i++){var r=n[i];try{var a=e,l=t,s=l;e:for(;s!==null;){switch(s.tag){case 5:J=s.stateNode,Ce=!1;break e;case 3:J=s.stateNode.containerInfo,Ce=!0;break e;case 4:J=s.stateNode.containerInfo,Ce=!0;break e}s=s.return}if(J===null)throw Error(v(160));Qc(a,l,r),J=null,Ce=!1;var c=r.alternate;c!==null&&(c.return=null),r.return=null}catch(u){H(r,t,u)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Yc(t,e),t=t.sibling}function Yc(e,t){var n=e.alternate,i=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(ze(t,e),Ee(e),i&4){try{Cn(3,e,e.return),dr(3,e)}catch(P){H(e,e.return,P)}try{Cn(5,e,e.return)}catch(P){H(e,e.return,P)}}break;case 1:ze(t,e),Ee(e),i&512&&n!==null&&$t(n,n.return);break;case 5:if(ze(t,e),Ee(e),i&512&&n!==null&&$t(n,n.return),e.flags&32){var r=e.stateNode;try{Dn(r,"")}catch(P){H(e,e.return,P)}}if(i&4&&(r=e.stateNode,r!=null)){var a=e.memoizedProps,l=n!==null?n.memoizedProps:a,s=e.type,c=e.updateQueue;if(e.updateQueue=null,c!==null)try{s==="input"&&a.type==="radio"&&a.name!=null&&ks(r,a),la(s,l);var u=la(s,a);for(l=0;l<c.length;l+=2){var y=c[l],f=c[l+1];y==="style"?Us(r,f):y==="dangerouslySetInnerHTML"?Ps(r,f):y==="children"?Dn(r,f):Ka(r,y,f,u)}switch(s){case"input":ta(r,a);break;case"textarea":Ss(r,a);break;case"select":var m=r._wrapperState.wasMultiple;r._wrapperState.wasMultiple=!!a.multiple;var S=a.value;S!=null?Vt(r,!!a.multiple,S,!1):m!==!!a.multiple&&(a.defaultValue!=null?Vt(r,!!a.multiple,a.defaultValue,!0):Vt(r,!!a.multiple,a.multiple?[]:"",!1))}r[An]=a}catch(P){H(e,e.return,P)}}break;case 6:if(ze(t,e),Ee(e),i&4){if(e.stateNode===null)throw Error(v(162));r=e.stateNode,a=e.memoizedProps;try{r.nodeValue=a}catch(P){H(e,e.return,P)}}break;case 3:if(ze(t,e),Ee(e),i&4&&n!==null&&n.memoizedState.isDehydrated)try{Fn(t.containerInfo)}catch(P){H(e,e.return,P)}break;case 4:ze(t,e),Ee(e);break;case 13:ze(t,e),Ee(e),r=e.child,r.flags&8192&&(a=r.memoizedState!==null,r.stateNode.isHidden=a,!a||r.alternate!==null&&r.alternate.memoizedState!==null||(Tl=W())),i&4&&_o(e);break;case 22:if(y=n!==null&&n.memoizedState!==null,e.mode&1?(re=(u=re)||y,ze(t,e),re=u):ze(t,e),Ee(e),i&8192){if(u=e.memoizedState!==null,(e.stateNode.isHidden=u)&&!y&&e.mode&1)for(w=e,y=e.child;y!==null;){for(f=w=y;w!==null;){switch(m=w,S=m.child,m.tag){case 0:case 11:case 14:case 15:Cn(4,m,m.return);break;case 1:$t(m,m.return);var h=m.stateNode;if(typeof h.componentWillUnmount=="function"){i=m,n=m.return;try{t=i,h.props=t.memoizedProps,h.state=t.memoizedState,h.componentWillUnmount()}catch(P){H(i,n,P)}}break;case 5:$t(m,m.return);break;case 22:if(m.memoizedState!==null){Oo(f);continue}}S!==null?(S.return=m,w=S):Oo(f)}y=y.sibling}e:for(y=null,f=e;;){if(f.tag===5){if(y===null){y=f;try{r=f.stateNode,u?(a=r.style,typeof a.setProperty=="function"?a.setProperty("display","none","important"):a.display="none"):(s=f.stateNode,c=f.memoizedProps.style,l=c!=null&&c.hasOwnProperty("display")?c.display:null,s.style.display=xs("display",l))}catch(P){H(e,e.return,P)}}}else if(f.tag===6){if(y===null)try{f.stateNode.nodeValue=u?"":f.memoizedProps}catch(P){H(e,e.return,P)}}else if((f.tag!==22&&f.tag!==23||f.memoizedState===null||f===e)&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break e;for(;f.sibling===null;){if(f.return===null||f.return===e)break e;y===f&&(y=null),f=f.return}y===f&&(y=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:ze(t,e),Ee(e),i&4&&_o(e);break;case 21:break;default:ze(t,e),Ee(e)}}function Ee(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(Kc(n)){var i=n;break e}n=n.return}throw Error(v(160))}switch(i.tag){case 5:var r=i.stateNode;i.flags&32&&(Dn(r,""),i.flags&=-33);var a=Fo(e);La(e,a,r);break;case 3:case 4:var l=i.stateNode.containerInfo,s=Fo(e);Ea(e,s,l);break;default:throw Error(v(161))}}catch(c){H(e,e.return,c)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function wd(e,t,n){w=e,Xc(e)}function Xc(e,t,n){for(var i=(e.mode&1)!==0;w!==null;){var r=w,a=r.child;if(r.tag===22&&i){var l=r.memoizedState!==null||hi;if(!l){var s=r.alternate,c=s!==null&&s.memoizedState!==null||re;s=hi;var u=re;if(hi=l,(re=c)&&!u)for(w=r;w!==null;)l=w,c=l.child,l.tag===22&&l.memoizedState!==null?Bo(r):c!==null?(c.return=l,w=c):Bo(r);for(;a!==null;)w=a,Xc(a),a=a.sibling;w=r,hi=s,re=u}Go(e)}else r.subtreeFlags&8772&&a!==null?(a.return=r,w=a):Go(e)}}function Go(e){for(;w!==null;){var t=w;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:re||dr(5,t);break;case 1:var i=t.stateNode;if(t.flags&4&&!re)if(n===null)i.componentDidMount();else{var r=t.elementType===t.type?n.memoizedProps:Ie(t.type,n.memoizedProps);i.componentDidUpdate(r,n.memoizedState,i.__reactInternalSnapshotBeforeUpdate)}var a=t.updateQueue;a!==null&&wo(t,a,i);break;case 3:var l=t.updateQueue;if(l!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}wo(t,l,n)}break;case 5:var s=t.stateNode;if(n===null&&t.flags&4){n=s;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var u=t.alternate;if(u!==null){var y=u.memoizedState;if(y!==null){var f=y.dehydrated;f!==null&&Fn(f)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(v(163))}re||t.flags&512&&Da(t)}catch(m){H(t,t.return,m)}}if(t===e){w=null;break}if(n=t.sibling,n!==null){n.return=t.return,w=n;break}w=t.return}}function Oo(e){for(;w!==null;){var t=w;if(t===e){w=null;break}var n=t.sibling;if(n!==null){n.return=t.return,w=n;break}w=t.return}}function Bo(e){for(;w!==null;){var t=w;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{dr(4,t)}catch(c){H(t,n,c)}break;case 1:var i=t.stateNode;if(typeof i.componentDidMount=="function"){var r=t.return;try{i.componentDidMount()}catch(c){H(t,r,c)}}var a=t.return;try{Da(t)}catch(c){H(t,a,c)}break;case 5:var l=t.return;try{Da(t)}catch(c){H(t,l,c)}}}catch(c){H(t,t.return,c)}if(t===e){w=null;break}var s=t.sibling;if(s!==null){s.return=t.return,w=s;break}w=t.return}}var bd=Math.ceil,Zi=Qe.ReactCurrentDispatcher,bl=Qe.ReactCurrentOwner,we=Qe.ReactCurrentBatchConfig,D=0,Z=null,V=null,ee=0,fe=0,Wt=mt(0),Q=0,Qn=null,zt=0,gr=0,ql=0,jn=null,ue=null,Tl=0,ln=1/0,Ge=null,Ji=!1,Ma=null,st=null,ki=!1,nt=null,er=0,Nn=0,Fa=null,Ci=-1,ji=0;function oe(){return D&6?W():Ci!==-1?Ci:Ci=W()}function ct(e){return e.mode&1?D&2&&ee!==0?ee&-ee:sd.transition!==null?(ji===0&&(ji=Es()),ji):(e=E,e!==0||(e=window.event,e=e===void 0?16:Bs(e.type)),e):1}function Re(e,t,n,i){if(50<Nn)throw Nn=0,Fa=null,Error(v(185));Xn(e,n,i),(!(D&2)||e!==Z)&&(e===Z&&(!(D&2)&&(gr|=n),Q===4&&et(e,ee)),me(e,i),n===1&&D===0&&!(t.mode&1)&&(ln=W()+500,cr&&ft()))}function me(e,t){var n=e.callbackNode;sp(e,t);var i=Mi(e,e===Z?ee:0);if(i===0)n!==null&&Yl(n),e.callbackNode=null,e.callbackPriority=0;else if(t=i&-i,e.callbackPriority!==t){if(n!=null&&Yl(n),t===1)e.tag===0?od(Ao.bind(null,e)):oc(Ao.bind(null,e)),id(function(){!(D&6)&&ft()}),n=null;else{switch(Ls(i)){case 1:n=Ja;break;case 4:n=Rs;break;case 16:n=Li;break;case 536870912:n=Ds;break;default:n=Li}n=au(n,Zc.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function Zc(e,t){if(Ci=-1,ji=0,D&6)throw Error(v(327));var n=e.callbackNode;if(Zt()&&e.callbackNode!==n)return null;var i=Mi(e,e===Z?ee:0);if(i===0)return null;if(i&30||i&e.expiredLanes||t)t=tr(e,i);else{t=i;var r=D;D|=2;var a=eu();(Z!==e||ee!==t)&&(Ge=null,ln=W()+500,Ut(e,t));do try{zd();break}catch(s){Jc(e,s)}while(!0);dl(),Zi.current=a,D=r,V!==null?t=0:(Z=null,ee=0,t=Q)}if(t!==0){if(t===2&&(r=pa(e),r!==0&&(i=r,t=_a(e,r))),t===1)throw n=Qn,Ut(e,0),et(e,i),me(e,W()),n;if(t===6)et(e,i);else{if(r=e.current.alternate,!(i&30)&&!qd(r)&&(t=tr(e,i),t===2&&(a=pa(e),a!==0&&(i=a,t=_a(e,a))),t===1))throw n=Qn,Ut(e,0),et(e,i),me(e,W()),n;switch(e.finishedWork=r,e.finishedLanes=i,t){case 0:case 1:throw Error(v(345));case 2:St(e,ue,Ge);break;case 3:if(et(e,i),(i&130023424)===i&&(t=Tl+500-W(),10<t)){if(Mi(e,0)!==0)break;if(r=e.suspendedLanes,(r&i)!==i){oe(),e.pingedLanes|=e.suspendedLanes&r;break}e.timeoutHandle=Sa(St.bind(null,e,ue,Ge),t);break}St(e,ue,Ge);break;case 4:if(et(e,i),(i&4194240)===i)break;for(t=e.eventTimes,r=-1;0<i;){var l=31-Ne(i);a=1<<l,l=t[l],l>r&&(r=l),i&=~a}if(i=r,i=W()-i,i=(120>i?120:480>i?480:1080>i?1080:1920>i?1920:3e3>i?3e3:4320>i?4320:1960*bd(i/1960))-i,10<i){e.timeoutHandle=Sa(St.bind(null,e,ue,Ge),i);break}St(e,ue,Ge);break;case 5:St(e,ue,Ge);break;default:throw Error(v(329))}}}return me(e,W()),e.callbackNode===n?Zc.bind(null,e):null}function _a(e,t){var n=jn;return e.current.memoizedState.isDehydrated&&(Ut(e,t).flags|=256),e=tr(e,t),e!==2&&(t=ue,ue=n,t!==null&&Ga(t)),e}function Ga(e){ue===null?ue=e:ue.push.apply(ue,e)}function qd(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var i=0;i<n.length;i++){var r=n[i],a=r.getSnapshot;r=r.value;try{if(!De(a(),r))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function et(e,t){for(t&=~ql,t&=~gr,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Ne(t),i=1<<n;e[n]=-1,t&=~i}}function Ao(e){if(D&6)throw Error(v(327));Zt();var t=Mi(e,0);if(!(t&1))return me(e,W()),null;var n=tr(e,t);if(e.tag!==0&&n===2){var i=pa(e);i!==0&&(t=i,n=_a(e,i))}if(n===1)throw n=Qn,Ut(e,0),et(e,t),me(e,W()),n;if(n===6)throw Error(v(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,St(e,ue,Ge),me(e,W()),null}function zl(e,t){var n=D;D|=1;try{return e(t)}finally{D=n,D===0&&(ln=W()+500,cr&&ft())}}function It(e){nt!==null&&nt.tag===0&&!(D&6)&&Zt();var t=D;D|=1;var n=we.transition,i=E;try{if(we.transition=null,E=1,e)return e()}finally{E=i,we.transition=n,D=t,!(D&6)&&ft()}}function Il(){fe=Wt.current,_(Wt)}function Ut(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,nd(n)),V!==null)for(n=V.return;n!==null;){var i=n;switch(cl(i),i.tag){case 1:i=i.type.childContextTypes,i!=null&&Bi();break;case 3:rn(),_(de),_(ae),kl();break;case 5:hl(i);break;case 4:rn();break;case 13:_(O);break;case 19:_(O);break;case 10:gl(i.type._context);break;case 22:case 23:Il()}n=n.return}if(Z=e,V=e=ut(e.current,null),ee=fe=t,Q=0,Qn=null,ql=gr=zt=0,ue=jn=null,Pt!==null){for(t=0;t<Pt.length;t++)if(n=Pt[t],i=n.interleaved,i!==null){n.interleaved=null;var r=i.next,a=n.pending;if(a!==null){var l=a.next;a.next=r,i.next=l}n.pending=i}Pt=null}return e}function Jc(e,t){do{var n=V;try{if(dl(),Ti.current=Xi,Yi){for(var i=B.memoizedState;i!==null;){var r=i.queue;r!==null&&(r.pending=null),i=i.next}Yi=!1}if(Tt=0,X=K=B=null,In=!1,Wn=0,bl.current=null,n===null||n.return===null){Q=1,Qn=t,V=null;break}e:{var a=e,l=n.return,s=n,c=t;if(t=ee,s.flags|=32768,c!==null&&typeof c=="object"&&typeof c.then=="function"){var u=c,y=s,f=y.tag;if(!(y.mode&1)&&(f===0||f===11||f===15)){var m=y.alternate;m?(y.updateQueue=m.updateQueue,y.memoizedState=m.memoizedState,y.lanes=m.lanes):(y.updateQueue=null,y.memoizedState=null)}var S=Co(l);if(S!==null){S.flags&=-257,jo(S,l,s,a,t),S.mode&1&&Io(a,u,t),t=S,c=u;var h=t.updateQueue;if(h===null){var P=new Set;P.add(c),t.updateQueue=P}else h.add(c);break e}else{if(!(t&1)){Io(a,u,t),Cl();break e}c=Error(v(426))}}else if(G&&s.mode&1){var I=Co(l);if(I!==null){!(I.flags&65536)&&(I.flags|=256),jo(I,l,s,a,t),ul(an(c,s));break e}}a=c=an(c,s),Q!==4&&(Q=2),jn===null?jn=[a]:jn.push(a),a=l;do{switch(a.tag){case 3:a.flags|=65536,t&=-t,a.lanes|=t;var d=Lc(a,c,t);Uo(a,d);break e;case 1:s=c;var p=a.type,g=a.stateNode;if(!(a.flags&128)&&(typeof p.getDerivedStateFromError=="function"||g!==null&&typeof g.componentDidCatch=="function"&&(st===null||!st.has(g)))){a.flags|=65536,t&=-t,a.lanes|=t;var k=Mc(a,s,t);Uo(a,k);break e}}a=a.return}while(a!==null)}nu(n)}catch(U){t=U,V===n&&n!==null&&(V=n=n.return);continue}break}while(!0)}function eu(){var e=Zi.current;return Zi.current=Xi,e===null?Xi:e}function Cl(){(Q===0||Q===3||Q===2)&&(Q=4),Z===null||!(zt&268435455)&&!(gr&268435455)||et(Z,ee)}function tr(e,t){var n=D;D|=2;var i=eu();(Z!==e||ee!==t)&&(Ge=null,Ut(e,t));do try{Td();break}catch(r){Jc(e,r)}while(!0);if(dl(),D=n,Zi.current=i,V!==null)throw Error(v(261));return Z=null,ee=0,Q}function Td(){for(;V!==null;)tu(V)}function zd(){for(;V!==null&&!Ju();)tu(V)}function tu(e){var t=ru(e.alternate,e,fe);e.memoizedProps=e.pendingProps,t===null?nu(e):V=t,bl.current=null}function nu(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=Pd(n,t),n!==null){n.flags&=32767,V=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Q=6,V=null;return}}else if(n=vd(n,t,fe),n!==null){V=n;return}if(t=t.sibling,t!==null){V=t;return}V=t=e}while(t!==null);Q===0&&(Q=5)}function St(e,t,n){var i=E,r=we.transition;try{we.transition=null,E=1,Id(e,t,n,i)}finally{we.transition=r,E=i}return null}function Id(e,t,n,i){do Zt();while(nt!==null);if(D&6)throw Error(v(327));n=e.finishedWork;var r=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(v(177));e.callbackNode=null,e.callbackPriority=0;var a=n.lanes|n.childLanes;if(cp(e,a),e===Z&&(V=Z=null,ee=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||ki||(ki=!0,au(Li,function(){return Zt(),null})),a=(n.flags&15990)!==0,n.subtreeFlags&15990||a){a=we.transition,we.transition=null;var l=E;E=1;var s=D;D|=4,bl.current=null,Ud(e,n),Yc(n,e),Qp(ha),Fi=!!ya,ha=ya=null,e.current=n,wd(n),ep(),D=s,E=l,we.transition=a}else e.current=n;if(ki&&(ki=!1,nt=e,er=r),a=e.pendingLanes,a===0&&(st=null),ip(n.stateNode),me(e,W()),t!==null)for(i=e.onRecoverableError,n=0;n<t.length;n++)r=t[n],i(r.value,{componentStack:r.stack,digest:r.digest});if(Ji)throw Ji=!1,e=Ma,Ma=null,e;return er&1&&e.tag!==0&&Zt(),a=e.pendingLanes,a&1?e===Fa?Nn++:(Nn=0,Fa=e):Nn=0,ft(),null}function Zt(){if(nt!==null){var e=Ls(er),t=we.transition,n=E;try{if(we.transition=null,E=16>e?16:e,nt===null)var i=!1;else{if(e=nt,nt=null,er=0,D&6)throw Error(v(331));var r=D;for(D|=4,w=e.current;w!==null;){var a=w,l=a.child;if(w.flags&16){var s=a.deletions;if(s!==null){for(var c=0;c<s.length;c++){var u=s[c];for(w=u;w!==null;){var y=w;switch(y.tag){case 0:case 11:case 15:Cn(8,y,a)}var f=y.child;if(f!==null)f.return=y,w=f;else for(;w!==null;){y=w;var m=y.sibling,S=y.return;if(Vc(y),y===u){w=null;break}if(m!==null){m.return=S,w=m;break}w=S}}}var h=a.alternate;if(h!==null){var P=h.child;if(P!==null){h.child=null;do{var I=P.sibling;P.sibling=null,P=I}while(P!==null)}}w=a}}if(a.subtreeFlags&2064&&l!==null)l.return=a,w=l;else e:for(;w!==null;){if(a=w,a.flags&2048)switch(a.tag){case 0:case 11:case 15:Cn(9,a,a.return)}var d=a.sibling;if(d!==null){d.return=a.return,w=d;break e}w=a.return}}var p=e.current;for(w=p;w!==null;){l=w;var g=l.child;if(l.subtreeFlags&2064&&g!==null)g.return=l,w=g;else e:for(l=p;w!==null;){if(s=w,s.flags&2048)try{switch(s.tag){case 0:case 11:case 15:dr(9,s)}}catch(U){H(s,s.return,U)}if(s===l){w=null;break e}var k=s.sibling;if(k!==null){k.return=s.return,w=k;break e}w=s.return}}if(D=r,ft(),Fe&&typeof Fe.onPostCommitFiberRoot=="function")try{Fe.onPostCommitFiberRoot(rr,e)}catch{}i=!0}return i}finally{E=n,we.transition=t}}return!1}function Ho(e,t,n){t=an(n,t),t=Lc(e,t,1),e=ot(e,t,1),t=oe(),e!==null&&(Xn(e,1,t),me(e,t))}function H(e,t,n){if(e.tag===3)Ho(e,e,n);else for(;t!==null;){if(t.tag===3){Ho(t,e,n);break}else if(t.tag===1){var i=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof i.componentDidCatch=="function"&&(st===null||!st.has(i))){e=an(n,e),e=Mc(t,e,1),t=ot(t,e,1),e=oe(),t!==null&&(Xn(t,1,e),me(t,e));break}}t=t.return}}function Cd(e,t,n){var i=e.pingCache;i!==null&&i.delete(t),t=oe(),e.pingedLanes|=e.suspendedLanes&n,Z===e&&(ee&n)===n&&(Q===4||Q===3&&(ee&130023424)===ee&&500>W()-Tl?Ut(e,0):ql|=n),me(e,t)}function iu(e,t){t===0&&(e.mode&1?(t=si,si<<=1,!(si&130023424)&&(si=4194304)):t=1);var n=oe();e=Ve(e,t),e!==null&&(Xn(e,t,n),me(e,n))}function jd(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),iu(e,n)}function Nd(e,t){var n=0;switch(e.tag){case 13:var i=e.stateNode,r=e.memoizedState;r!==null&&(n=r.retryLane);break;case 19:i=e.stateNode;break;default:throw Error(v(314))}i!==null&&i.delete(t),iu(e,n)}var ru;ru=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||de.current)pe=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return pe=!1,Sd(e,t,n);pe=!!(e.flags&131072)}else pe=!1,G&&t.flags&1048576&&sc(t,$i,t.index);switch(t.lanes=0,t.tag){case 2:var i=t.type;Ii(e,t),e=t.pendingProps;var r=en(t,ae.current);Xt(t,n),r=vl(null,t,i,e,r,n);var a=Pl();return t.flags|=1,typeof r=="object"&&r!==null&&typeof r.render=="function"&&r.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,ge(i)?(a=!0,Ai(t)):a=!1,t.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,fl(t),r.updater=pr,t.stateNode=r,r._reactInternals=t,qa(t,i,e,n),t=Ia(null,t,i,!0,a,n)):(t.tag=0,G&&a&&sl(t),le(null,t,r,n),t=t.child),t;case 16:i=t.elementType;e:{switch(Ii(e,t),e=t.pendingProps,r=i._init,i=r(i._payload),t.type=i,r=t.tag=Dd(i),e=Ie(i,e),r){case 0:t=za(null,t,i,e,n);break e;case 1:t=Do(null,t,i,e,n);break e;case 11:t=No(null,t,i,e,n);break e;case 14:t=Ro(null,t,i,Ie(i.type,e),n);break e}throw Error(v(306,i,""))}return t;case 0:return i=t.type,r=t.pendingProps,r=t.elementType===i?r:Ie(i,r),za(e,t,i,r,n);case 1:return i=t.type,r=t.pendingProps,r=t.elementType===i?r:Ie(i,r),Do(e,t,i,r,n);case 3:e:{if(Oc(t),e===null)throw Error(v(387));i=t.pendingProps,a=t.memoizedState,r=a.element,mc(e,t),Ki(t,i,null,n);var l=t.memoizedState;if(i=l.element,a.isDehydrated)if(a={element:i,isDehydrated:!1,cache:l.cache,pendingSuspenseBoundaries:l.pendingSuspenseBoundaries,transitions:l.transitions},t.updateQueue.baseState=a,t.memoizedState=a,t.flags&256){r=an(Error(v(423)),t),t=Eo(e,t,i,n,r);break e}else if(i!==r){r=an(Error(v(424)),t),t=Eo(e,t,i,n,r);break e}else for(ye=lt(t.stateNode.containerInfo.firstChild),he=t,G=!0,je=null,n=dc(t,null,i,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(tn(),i===r){t=Ke(e,t,n);break e}le(e,t,i,n)}t=t.child}return t;case 5:return fc(t),e===null&&Ua(t),i=t.type,r=t.pendingProps,a=e!==null?e.memoizedProps:null,l=r.children,ka(i,r)?l=null:a!==null&&ka(i,a)&&(t.flags|=32),Gc(e,t),le(e,t,l,n),t.child;case 6:return e===null&&Ua(t),null;case 13:return Bc(e,t,n);case 4:return yl(t,t.stateNode.containerInfo),i=t.pendingProps,e===null?t.child=nn(t,null,i,n):le(e,t,i,n),t.child;case 11:return i=t.type,r=t.pendingProps,r=t.elementType===i?r:Ie(i,r),No(e,t,i,r,n);case 7:return le(e,t,t.pendingProps,n),t.child;case 8:return le(e,t,t.pendingProps.children,n),t.child;case 12:return le(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(i=t.type._context,r=t.pendingProps,a=t.memoizedProps,l=r.value,M(Wi,i._currentValue),i._currentValue=l,a!==null)if(De(a.value,l)){if(a.children===r.children&&!de.current){t=Ke(e,t,n);break e}}else for(a=t.child,a!==null&&(a.return=t);a!==null;){var s=a.dependencies;if(s!==null){l=a.child;for(var c=s.firstContext;c!==null;){if(c.context===i){if(a.tag===1){c=He(-1,n&-n),c.tag=2;var u=a.updateQueue;if(u!==null){u=u.shared;var y=u.pending;y===null?c.next=c:(c.next=y.next,y.next=c),u.pending=c}}a.lanes|=n,c=a.alternate,c!==null&&(c.lanes|=n),wa(a.return,n,t),s.lanes|=n;break}c=c.next}}else if(a.tag===10)l=a.type===t.type?null:a.child;else if(a.tag===18){if(l=a.return,l===null)throw Error(v(341));l.lanes|=n,s=l.alternate,s!==null&&(s.lanes|=n),wa(l,n,t),l=a.sibling}else l=a.child;if(l!==null)l.return=a;else for(l=a;l!==null;){if(l===t){l=null;break}if(a=l.sibling,a!==null){a.return=l.return,l=a;break}l=l.return}a=l}le(e,t,r.children,n),t=t.child}return t;case 9:return r=t.type,i=t.pendingProps.children,Xt(t,n),r=be(r),i=i(r),t.flags|=1,le(e,t,i,n),t.child;case 14:return i=t.type,r=Ie(i,t.pendingProps),r=Ie(i.type,r),Ro(e,t,i,r,n);case 15:return Fc(e,t,t.type,t.pendingProps,n);
vendor: 4,785 bytes, line 40
40case 17:return i=t.type,r=t.pendingProps,r=t.elementType===i?r:Ie(i,r),Ii(e,t),t.tag=1,ge(i)?(e=!0,Ai(t)):e=!1,Xt(t,n),Ec(t,i,r),qa(t,i,r,n),Ia(null,t,i,!0,e,n);case 19:return Ac(e,t,n);case 22:return _c(e,t,n)}throw Error(v(156,t.tag))};function au(e,t){return Ns(e,t)}function Rd(e,t,n,i){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ue(e,t,n,i){return new Rd(e,t,n,i)}function jl(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Dd(e){if(typeof e=="function")return jl(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ya)return 11;if(e===Xa)return 14}return 2}function ut(e,t){var n=e.alternate;return n===null?(n=Ue(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Ni(e,t,n,i,r,a){var l=2;if(i=e,typeof e=="function")jl(e)&&(l=1);else if(typeof e=="string")l=5;else e:switch(e){case Lt:return wt(n.children,r,a,t);case Qa:l=8,r|=8;break;case Yr:return e=Ue(12,n,t,r|2),e.elementType=Yr,e.lanes=a,e;case Xr:return e=Ue(13,n,t,r),e.elementType=Xr,e.lanes=a,e;case Zr:return e=Ue(19,n,t,r),e.elementType=Zr,e.lanes=a,e;case fs:return mr(n,r,a,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case gs:l=10;break e;case ms:l=9;break e;case Ya:l=11;break e;case Xa:l=14;break e;case Xe:l=16,i=null;break e}throw Error(v(130,e==null?e:typeof e,""))}return t=Ue(l,n,t,r),t.elementType=e,t.type=i,t.lanes=a,t}function wt(e,t,n,i){return e=Ue(7,e,i,t),e.lanes=n,e}function mr(e,t,n,i){return e=Ue(22,e,i,t),e.elementType=fs,e.lanes=n,e.stateNode={isHidden:!1},e}function Wr(e,t,n){return e=Ue(6,e,null,t),e.lanes=n,e}function Vr(e,t,n){return t=Ue(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Ed(e,t,n,i,r){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Tr(0),this.expirationTimes=Tr(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Tr(0),this.identifierPrefix=i,this.onRecoverableError=r,this.mutableSourceEagerHydrationData=null}function Nl(e,t,n,i,r,a,l,s,c){return e=new Ed(e,t,n,s,c),t===1?(t=1,a===!0&&(t|=8)):t=0,a=Ue(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:i,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},fl(a),e}function Ld(e,t,n){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Et,key:i==null?null:""+i,children:e,containerInfo:t,implementation:n}}function lu(e){if(!e)return dt;e=e._reactInternals;e:{if(jt(e)!==e||e.tag!==1)throw Error(v(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(ge(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(v(171))}if(e.tag===1){var n=e.type;if(ge(n))return lc(e,n,t)}return t}function ou(e,t,n,i,r,a,l,s,c){return e=Nl(n,i,!0,e,r,a,l,s,c),e.context=lu(null),n=e.current,i=oe(),r=ct(n),a=He(i,r),a.callback=t??null,ot(n,a,r),e.current.lanes=r,Xn(e,r,i),me(e,i),e}function fr(e,t,n,i){var r=t.current,a=oe(),l=ct(r);return n=lu(n),t.context===null?t.context=n:t.pendingContext=n,t=He(a,l),t.payload={element:e},i=i===void 0?null:i,i!==null&&(t.callback=i),e=ot(r,t,l),e!==null&&(Re(e,r,l,a),qi(e,r,l)),l}function nr(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function $o(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Rl(e,t){$o(e,t),(e=e.alternate)&&$o(e,t)}function Md(){return null}var su=typeof reportError=="function"?reportError:function(e){console.error(e)};function Dl(e){this._internalRoot=e}yr.prototype.render=Dl.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(v(409));fr(e,t,null,null)};
vendor: 6,322 bytes, line 40
40yr.prototype.unmount=Dl.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;It(function(){fr(null,e,null,null)}),t[We]=null}};function yr(e){this._internalRoot=e}yr.prototype.unstable_scheduleHydration=function(e){if(e){var t=_s();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Je.length&&t!==0&&t<Je[n].priority;n++);Je.splice(n,0,e),n===0&&Os(e)}};function El(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function hr(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Wo(){}function Fd(e,t,n,i,r){if(r){if(typeof i=="function"){var a=i;i=function(){var u=nr(l);a.call(u)}}var l=ou(t,i,e,0,null,!1,!1,"",Wo);return e._reactRootContainer=l,e[We]=l.current,On(e.nodeType===8?e.parentNode:e),It(),l}for(;r=e.lastChild;)e.removeChild(r);if(typeof i=="function"){var s=i;i=function(){var u=nr(c);s.call(u)}}var c=Nl(e,0,!1,null,null,!1,!1,"",Wo);return e._reactRootContainer=c,e[We]=c.current,On(e.nodeType===8?e.parentNode:e),It(function(){fr(t,c,n,i)}),c}function kr(e,t,n,i,r){var a=n._reactRootContainer;if(a){var l=a;if(typeof r=="function"){var s=r;r=function(){var c=nr(l);s.call(c)}}fr(t,l,e,r)}else l=Fd(n,t,e,r,i);return nr(l)}Ms=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=xn(t.pendingLanes);n!==0&&(el(t,n|1),me(t,W()),!(D&6)&&(ln=W()+500,ft()))}break;case 13:It(function(){var i=Ve(e,1);if(i!==null){var r=oe();Re(i,e,1,r)}}),Rl(e,1)}};tl=function(e){if(e.tag===13){var t=Ve(e,134217728);if(t!==null){var n=oe();Re(t,e,134217728,n)}Rl(e,134217728)}};Fs=function(e){if(e.tag===13){var t=ct(e),n=Ve(e,t);if(n!==null){var i=oe();Re(n,e,t,i)}Rl(e,t)}};_s=function(){return E};Gs=function(e,t){var n=E;try{return E=e,t()}finally{E=n}};sa=function(e,t,n){switch(t){case"input":if(ta(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var i=n[t];if(i!==e&&i.form===e.form){var r=sr(i);if(!r)throw Error(v(90));hs(i),ta(i,r)}}}break;case"textarea":Ss(e,n);break;case"select":t=n.value,t!=null&&Vt(e,!!n.multiple,t,!1)}};qs=zl;Ts=It;var _d={usingClientEntryPoint:!1,Events:[Jn,Gt,sr,ws,bs,zl]},Sn={findFiberByHostInstance:vt,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Gd={bundleType:Sn.bundleType,version:Sn.version,rendererPackageName:Sn.rendererPackageName,rendererConfig:Sn.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Qe.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Cs(e),e===null?null:e.stateNode},findFiberByHostInstance:Sn.findFiberByHostInstance||Md,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Si=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Si.isDisabled&&Si.supportsFiber)try{rr=Si.inject(Gd),Fe=Si}catch{}}Se.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=_d;Se.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!El(t))throw Error(v(200));return Ld(e,t,null,n)};Se.createRoot=function(e,t){if(!El(e))throw Error(v(299));var n=!1,i="",r=su;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(i=t.identifierPrefix),t.onRecoverableError!==void 0&&(r=t.onRecoverableError)),t=Nl(e,1,!1,null,null,n,!1,i,r),e[We]=t.current,On(e.nodeType===8?e.parentNode:e),new Dl(t)};Se.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(v(188)):(e=Object.keys(e).join(","),Error(v(268,e)));return e=Cs(t),e=e===null?null:e.stateNode,e};Se.flushSync=function(e){return It(e)};Se.hydrate=function(e,t,n){if(!hr(t))throw Error(v(200));return kr(null,e,t,!0,n)};Se.hydrateRoot=function(e,t,n){if(!El(e))throw Error(v(405));var i=n!=null&&n.hydratedSources||null,r=!1,a="",l=su;if(n!=null&&(n.unstable_strictMode===!0&&(r=!0),n.identifierPrefix!==void 0&&(a=n.identifierPrefix),n.onRecoverableError!==void 0&&(l=n.onRecoverableError)),t=ou(t,null,e,1,n??null,r,!1,a,l),e[We]=t.current,On(e),i)for(e=0;e<i.length;e++)n=i[e],r=n._getVersion,r=r(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,r]:t.mutableSourceEagerHydrationData.push(n,r);return new yr(t)};Se.render=function(e,t,n){if(!hr(t))throw Error(v(200));return kr(null,e,t,!1,n)};Se.unmountComponentAtNode=function(e){if(!hr(e))throw Error(v(40));return e._reactRootContainer?(It(function(){kr(null,null,e,!1,function(){e._reactRootContainer=null,e[We]=null})}),!0):!1};Se.unstable_batchedUpdates=zl;Se.unstable_renderSubtreeIntoContainer=function(e,t,n,i){if(!hr(n))throw Error(v(200));if(e==null||e._reactInternals===void 0)throw Error(v(38));return kr(e,t,n,!1,i)};Se.version="18.3.1-next-f1338f8080-20240426";function cu(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(cu)}catch(e){console.error(e)}}cu(),cs.exports=Se;var Od=cs.exports,Vo=Od;Kr.createRoot=Vo.createRoot,Kr.hydrateRoot=Vo.hydrateRoot;const Bd=[{id:"15-minute-chicken-broccoli-and-cashew-stir-fry",name:"15-Min Chicken, Broccoli & Cashew Stir-Fry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/15-minute-chicken-broccoli-and-cashew-stir-fry",imageUrl:"/images/recipes/15-minute-chicken-broccoli-and-cashew-stir-fry.jpg",prepTimeMinutes:5,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:23,nutrition:null,tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"chicken"},method:["Cook the noodles following packet directions. Drain well.","Meanwhile, heat the oil in a wok or large frying pan over high heat. Stir-fry the chicken, in 2 batches, for 2 mins or until golden brown and cooked through, transferring to a plate between batches.","Comb
40ine the chicken, onion, garlic, ginger and broccoli florets and stems in the wok or pan. Stir-fry for 4 mins or until broccoli is tender.","Add the oyster sauce with 1/4 cup (60ml) water and cashews. Stir-fry for 2 mins or until heated through.","Divide noodles and stir-fry among serving bowls. Serve immediately. Serve with... red chilli matchsticks and spring onion matchsticks."],ingredients:[{id:"ing-001",displayName:"Hokkien noodles",colesProductId:"5578256",colesProductDescription:"Coles hokkien noodles",productThumbnailUrl:"/images/products/5578256.jpg",packSize:600,packUnit:"g",quantityInRecipe:450,quantityPerServing:112.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"600g"},{id:"ing-002",displayName:"Peanut oil",colesProductId:"6870366",colesProductDescription:"Coles peanut oil",productThumbnailUrl:"/images/products/6870366.jpg",packSize:750,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"750mL"},{id:"ing-003",displayName:"Chicken thigh fillets",colesProductId:"2263317",colesProductDescription:"Coles RSPCA chicken thigh fillets small pack",productThumbnailUrl:"/images/products/2263317.jpg",packSize:700,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 700g"},{id:"ing-004",displayName:"Red onion",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-005",displayName:"Minced garlic",colesProductId:"5493277",colesProductDescription:"Coles minced garlic",productThumbnailUrl:"/images/products/5493277.jpg",packSize:250,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-006",displayName:"Crushed ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-007",displayName:"Broccoli",colesProductId:"407755",colesProductDescription:"Coles broccoli medium",productThumbnailUrl:"/images/products/407755.jpg",packSize:340,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"head",isPantryStaple:!1,packSizeText:"approx. 340g"},{id:"ing-008",displayName:"Oyster sauce",colesProductId:"5332234",colesProductDescription:"Coles oyster sauce",productThumbnailUrl:"/images/products/5332234.jpg",packSize:300,packUnit:"ml",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-009",displayName:"Unsalted cashews",colesProductId:"2522368",colesProductDescription:"Coles jumbo unsalted cashews",productThumbnailUrl:"/images/products/2522368.jpg",packSize:200,packUnit:"g",quantityInRecipe:75,quantityPerServing:18.75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"}]},{id:"korean-beef-stir-fry",name:"Korean Beef Stir-Fry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/korean-beef-stir-fry",imageUrl:"/images/recipes/korean-beef-stir-fry.jpg",prepTimeMinutes:15,cookTimeMinutes:15,difficulty:"medium",baseServings:4,estimatedCostBase:30,nutrition:null,tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"beef"},method:["Combine garlic, ginger, soy sauce, mirin, sesame oil and sugar in a glass bowl. Add beef and toss to combine. Set aside for 30 mins to marinate.","Meanwhile, prepare noodles following packet directions. Drain and set aside.","Heat 1 tsp peanut oil in a wok over medium-high heat. Stir-fry beef, reserving marinade, in batches, for 2 mins or until browned. Heat remaining oil in the wok and stir-fry combined capsicum and snow peas for 3 mins. Add beef, reserved marinade and noodles. Stir fry for 2 mins or until beef is cooked through."],ingredients:[{id:"ing-001",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbn
40ailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-002",displayName:"Finely grated ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-003",displayName:"Soy sauce",colesProductId:"8399399",colesProductDescription:"Amoy dark soy sauce",productThumbnailUrl:"/images/products/8399399.jpg",packSize:250,packUnit:"ml",quantityInRecipe:60,quantityPerServing:15,quantityUnit:"ml",isPantryStaple:!0,packSizeText:"250mL"},{id:"ing-004",displayName:"Mirin",colesProductId:"3743759",colesProductDescription:"Obento mirin seasoning",productThumbnailUrl:"/images/products/3743759.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"250mL"},{id:"ing-005",displayName:"Sesame oil",colesProductId:"5099093",colesProductDescription:"Changs pure sesame oil",productThumbnailUrl:"/images/products/5099093.jpg",packSize:150,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"150mL"},{id:"ing-006",displayName:"Brown sugar",colesProductId:"447829",colesProductDescription:"CSR dark brown sugar",productThumbnailUrl:"/images/products/447829.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"1kg"},{id:"ing-007",displayName:"Beef rump steak",colesProductId:"7088983",colesProductDescription:"Coles beef rump cap steak french style butter",productThumbnailUrl:"/images/products/7088983.jpg",packSize:350,packUnit:"g",quantityInRecipe:600,quantityPerServing:150,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 350g"},{id:"ing-008",displayName:"Hokkien noodles",colesProductId:"5578256",colesProductDescription:"Coles hokkien noodles",productThumbnailUrl:"/images/products/5578256.jpg",packSize:600,packUnit:"g",quantityInRecipe:450,quantityPerServing:112.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"600g"},{id:"ing-009",displayName:"Peanut oil",colesProductId:"6870366",colesProductDescription:"Coles peanut oil",productThumbnailUrl:"/images/products/6870366.jpg",packSize:750,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"750mL"},{id:"ing-010",displayName:"Red capsicum",colesProductId:"4580208",colesProductDescription:"Coles red capsicum loose",productThumbnailUrl:"/images/products/4580208.jpg",packSize:220,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 220g"},{id:"ing-011",displayName:"Yellow capsicum",colesProductId:"7215355",colesProductDescription:"Coles yellow capsicum",productThumbnailUrl:"/images/products/7215355.jpg",packSize:220,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 220g"},{id:"ing-012",displayName:"Snow peas",colesProductId:"7701375",colesProductDescription:"Coles snow peas prepacked",productThumbnailUrl:"/images/products/7701375.jpg",packSize:250,packUnit:"g",quantityInRecipe:100,quantityPerServing:25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"250g"}]},{id:"speedy-pork-and-noodle-stir-fry",name:"Speedy Pork & Noodle Stir-Fry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/speedy-pork-and-noodle-stir-fry",imageUrl:"/images/recipes/speedy-pork-and-noodle-stir-fry.jpg",prepTimeMinutes:5,cookTimeMinutes:15,difficulty:"easy",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:564,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"pork"},method:["Cook the noodles following packet directions. Drain well.","Meanwhile, heat a large non-stick frying pan over high heat. Add the mince and cook, stirring, for 5 mins or until the mince changes colour. Add the superfood mix to the mince. Cook, stirring, for 3-4 mins or until the vegetables are just tender. Add the noodles, hoisin sauce, coriander stems and 1/4 cup (60ml) water. Cook, stirring, for 1-2 mins or until the noodle mixture is heated through and well combined.","Sprinkle the noodle mixture with coriander leaves to serve."],ingredients:[{id:"ing-001",displayName:"Roll'd rice vermicelli noodles",colesProductId:"4208841",colesProductDescription:"Roll'd rice vermicelli noodles",productThumbn
40ailUrl:"/images/products/4208841.jpg",packSize:400,packUnit:"g",quantityInRecipe:340,quantityPerServing:85,quantityUnit:"g",isPantryStaple:!1,packSizeText:"400g"},{id:"ing-002",displayName:"Pork mince",colesProductId:"8781518",colesProductDescription:"Coles regular pork mince",productThumbnailUrl:"/images/products/8781518.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-003",displayName:"Kitchen ready to stir-fry superfood mix",colesProductId:"4462223",colesProductDescription:"Coles kitchen classic vegetable stir fry",productThumbnailUrl:"/images/products/4462223.jpg",packSize:750,packUnit:"g",quantityInRecipe:250,quantityPerServing:62.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"750g"},{id:"ing-004",displayName:"Roll'd hoisin sauce",colesProductId:"4207893",colesProductDescription:"Roll'd hoisin sauce",productThumbnailUrl:"/images/products/4207893.jpg",packSize:375,packUnit:"ml",quantityInRecipe:75,quantityPerServing:18.75,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"375mL"},{id:"ing-005",displayName:"Coriander, leaves picked, stems finely chopped",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:"bunch",isPantryStaple:!1,packSizeText:"15g"}]},{id:"yellow-salmon-curry",name:"Yellow Salmon Curry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/yellow-salmon-curry",imageUrl:"/images/recipes/yellow-salmon-curry.jpg",prepTimeMinutes:10,cookTimeMinutes:15,difficulty:"easy",baseServings:4,estimatedCostBase:26,nutrition:{perServing:{energyKj:null,energyCal:562,proteinG:null,fatG:46,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!0,highProtein:!0,dairyFree:!0,protein:"fish"},method:["Heat a large deep non-stick frying pan over medium-high heat. Spray the salmon with olive oil spray and season. Cook the salmon, skin-side down, for 1-2 mins or until crisp. Turn and cook for a further 1-2 mins or until light golden. Transfer to a plate.","Add the onion and ginger to the pan and cook, tossing, for 1-2 mins or until light golden. Add the curry paste and cook, stirring, for 30 secs or until aromatic. Add the coconut milk and bring to a simmer. Cook for 2-3 mins or until the sauce thickens slightly. Stir in the lime rind, lime juice, sugar and fish sauce. Season.","Add the pak choy and salmon to the pan and cook for 5 mins or until pak choy is tender and salmon is cooked to your liking.","Meanwhile, to make the pickled cucumber, combine cucumber, sugar, salt, vinegar and chilli, if using, in a small bowl. Set aside for 5 mins to soak.","Top the curry with a little pickled cucumber mixture. Serve with the rice and remaining pickled cucumber."],ingredients:[{id:"ing-001",displayName:"Responsibly sourced* tasmanian salmon portions skin on",colesProductId:"1063006",colesProductDescription:"Coles salmon fillets skin on 2 pack",productThumbnailUrl:"/images/products/1063006.jpg",packSize:250,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"250g"},{id:"ing-002",displayName:"Red onion",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-003",displayName:"4cm-piece ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:null,quantityPerServing:40,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-004",displayName:"Yellow curry paste",colesProductId:"2001423",colesProductDescription:"Ayam thai yellow curry paste",productThumbnailUrl:"/images/products/2001423.jpg",packSize:185,packUnit:"g",quantityInRecipe:75,quantityPerServing:18.75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"185g"}
40,{id:"ing-005",displayName:"Can coconut milk",colesProductId:"3924527",colesProductDescription:"Coles coconut milk",productThumbnailUrl:"/images/products/3924527.jpg",packSize:400,packUnit:"ml",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"400mL"},{id:"ing-006",displayName:"Lime, rind finely grated, juiced",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-007",displayName:"Brown sugar",colesProductId:"447829",colesProductDescription:"CSR dark brown sugar",productThumbnailUrl:"/images/products/447829.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"1kg"},{id:"ing-008",displayName:"Fish sauce",colesProductId:"5420998",colesProductDescription:"Squid fish sauce",productThumbnailUrl:"/images/products/5420998.jpg",packSize:300,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-009",displayName:"Pak choy",colesProductId:"5017430",colesProductDescription:"Coles organic choy pack",productThumbnailUrl:"/images/products/5017430.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"bunch",isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-010",displayName:"Steamed jasmine rice, to serve",colesProductId:"8703004",colesProductDescription:"Coles jasmine rice",productThumbnailUrl:"/images/products/8703004.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:null,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-011",displayName:"Lebanese cucumber",colesProductId:"4575208",colesProductDescription:"Coles lebanese cucumbers",productThumbnailUrl:"/images/products/4575208.jpg",packSize:160,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 160g"},{id:"ing-012",displayName:"Caster sugar",colesProductId:"120079",colesProductDescription:"CSR caster sugar",productThumbnailUrl:"/images/products/120079.jpg",packSize:500,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"500g"},{id:"ing-013",displayName:"Salt",colesProductId:"8766810",colesProductDescription:"Coles simply table salt",productThumbnailUrl:"/images/products/8766810.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"1Kg"},{id:"ing-014",displayName:"White vinegar",colesProductId:"432763",colesProductDescription:"Cornwell's white vinegar",productThumbnailUrl:"/images/products/432763.jpg",packSize:375,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"375mL"},{id:"ing-015",displayName:"Birdseye red chilli",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"}]},{id:"vegetarian-chickpea-curry",name:"Vegetarian Chickpea Curry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/vegetarian-chickpea-curry",imageUrl:"/images/recipes/vegetarian-chickpea-curry.jpg",prepTimeMinutes:10,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:16,nutrition:{perServing:{energyKj:null,energyCal:642,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!1,dairyFree:!0,protein:"legumes"},method:["Cook rice following packet directions.","Meanwhile, heat oil in a large non-stick frying pan over medium heat. Cook onion, stirring, for 4 mins or until soft. Add the curry powder and cook, stirring, for 30 sec or until fragrant. Add tomato, chickpea, vegetables and 1 cup (250ml) water and cook, stirring occasionally, for 5 mins or until vegetables are heated through.","Heat roti following packet directions. Wrap in foil to keep warm.","Serve curry with rice and roti."],ingredients:[{id:"ing-001",displayName:"Jasmine rice",colesProductId:"8703004",colesProductDescription:"Coles jasmine rice",productThumbn
40ailUrl:"/images/products/8703004.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:300,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-002",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-003",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Curry powder",colesProductId:"121297",colesProductDescription:"Clive of india curry powder",productThumbnailUrl:"/images/products/121297.jpg",packSize:100,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"100g"},{id:"ing-005",displayName:"Can simply chopped tomatoes",colesProductId:"4218380",colesProductDescription:"Coles simply chopped tomatoes canned",productThumbnailUrl:"/images/products/4218380.jpg",packSize:400,packUnit:"g",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"g",isPantryStaple:!1,packSizeText:"400g"},{id:"ing-006",displayName:"420g cans chick peas",colesProductId:"8075852",colesProductDescription:"Coles chick peas",productThumbnailUrl:"/images/products/8075852.jpg",packSize:420,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"x",isPantryStaple:!1,packSizeText:"420g"},{id:"ing-007",displayName:"500g frozen cauliflower",colesProductId:"2310111",colesProductDescription:"Coles kitchen broccoli & cauliflower florets",productThumbnailUrl:"/images/products/2310111.jpg",packSize:150,packUnit:"g",quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:"x",isPantryStaple:!1,packSizeText:"150g"},{id:"ing-008",displayName:"Indian roti",colesProductId:"8227892",colesProductDescription:"Supreme quality foods plain roti 4 pack",productThumbnailUrl:null,packSize:500,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"500g"}]},{id:"creamy-chicken-tikka-masala-recipe",name:"Chicken Tikka Masala",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/creamy-chicken-tikka-masala-recipe",imageUrl:"/images/recipes/creamy-chicken-tikka-masala-recipe.jpg",prepTimeMinutes:10,cookTimeMinutes:35,difficulty:"medium",baseServings:4,estimatedCostBase:26,nutrition:{perServing:{energyKj:null,energyCal:779,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"chicken"},method:["Combine yoghurt and half the curry paste in a large bowl. Add chicken and toss to coat. Cover and place in the fridge for 30 mins or overnight to marinate.","Heat oil in a medium saucepan over medium heat. Add onion, garlic and ginger and cook, stirring, for 5 mins or until soft.","Add the remaining curry paste and cook, stirring, for 2 mins or until fragrant.","Add passata and 1 cup (250ml) cream. Season. Bring to a boil. Reduce heat to low and simmer, covered, for 10 mins to develop the flavours.","Meanwhile, cook rice following packet directions.","Heat an oiled barbecue or chargrill pan on high. Cook chicken for 2-3 mins each side or until lightly charred. Add chicken to the sauce and simmer for 2-3 mins or until cooked through.","Serve chicken tikka masala and rice with coriander leaves, lemon wedges and naan bread. Drizzle with remaining cream."],ingredients:[{id:"ing-001",displayName:"Plain yoghurt",colesProductId:"1155512",colesProductDescription:"Yoplait yoghurt natural",productThumbnailUrl:"/images/products/1155512.jpg",packSize:500,packUnit:"g",quantityInRecipe:140,quantityPerServing:35,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Tikka masala paste",colesProductId:"1401696",colesProductDescription:"Patak's tikka spice rub",productThumbn
40ailUrl:"/images/products/1401696.jpg",packSize:25,packUnit:"g",quantityInRecipe:150,quantityPerServing:37.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"25g"},{id:"ing-003",displayName:"Chicken thigh fillets",colesProductId:"2263317",colesProductDescription:"Coles RSPCA chicken thigh fillets small pack",productThumbnailUrl:"/images/products/2263317.jpg",packSize:700,packUnit:"g",quantityInRecipe:600,quantityPerServing:150,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 700g"},{id:"ing-004",displayName:"Vegetable oil",colesProductId:"8211586",colesProductDescription:"Coles vegetable oil",productThumbnailUrl:"/images/products/8211586.jpg",packSize:4e3,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"4L"},{id:"ing-005",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-006",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:3,quantityPerServing:.75,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-007",displayName:"2cm piece ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:null,quantityPerServing:20,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-008",displayName:"Passata",colesProductId:"5419718",colesProductDescription:"Coles italian passata sauce",productThumbnailUrl:"/images/products/5419718.jpg",packSize:700,packUnit:"g",quantityInRecipe:250,quantityPerServing:62.5,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"700g"},{id:"ing-009",displayName:"Light thickened cream",colesProductId:"5033765",colesProductDescription:"Coles light thickened cream",productThumbnailUrl:"/images/products/5033765.jpg",packSize:300,packUnit:"ml",quantityInRecipe:300,quantityPerServing:75,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-010",displayName:"Jasmine rice",colesProductId:"8703004",colesProductDescription:"Coles jasmine rice",productThumbnailUrl:"/images/products/8703004.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:300,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-011",displayName:"Coriander leaves",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"15g"},{id:"ing-012",displayName:"Lemon wedges",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-013",displayName:"Naan bread",colesProductId:"2885521",colesProductDescription:"Stonefire original naan bread",productThumbnailUrl:"/images/products/2885521.jpg",packSize:250,packUnit:"g",quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:"250g"}]},{id:"lamb-koftas-with-beetroot-tabouli",name:"Lamb Koftas with Beetroot Tabouli",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/lamb-koftas-with-beetroot-tabouli",imageUrl:"/images/recipes/lamb-koftas-with-beetroot-tabouli.jpg",prepTimeMinutes:20,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:24,nutrition:{perServing:{energyKj:null,energyCal:420,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"lamb"},method:["Place the mince and dukkah in a large bowl. Season and use your hands to mix until well combined. Divide the mixture evenly into 12 portions and roll into oval shapes. Insert a soaked bamboo skewer into each kofta.","Spray a large non-stick frying pan with olive oil spray and place over medium heat. Cook the koftas, in 2 batches, turning often, for 6-8 mins or until golden brown and cooked through. Transfer to a plate and cover with foil. Set aside for 5 mins to rest.","Place the wraps on serving plates. Top with tzatziki, koftas and tomato. Sprinkle with extra dukkah to serve."],ingredients:[{id:"ing-001",displayName:"Lamb mince",colesProductId:"8850461",colesProductDescription:"Coles 3 star lamb mince",productThumbn
40ailUrl:"/images/products/8850461.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Pistachio dukkah",colesProductId:"7123086",colesProductDescription:"Table of plenty dukkah pistachio spice mix",productThumbnailUrl:"/images/products/7123086.jpg",packSize:45,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"45g"},{id:"ing-003",displayName:"Soft wholemeal & wholegrain wraps, warmed",colesProductId:"3731716",colesProductDescription:"Coles wholemeal & grain soft wraps 8 pack",productThumbnailUrl:"/images/products/3731716.jpg",packSize:360,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"360g"},{id:"ing-004",displayName:"Tzatziki",colesProductId:"6007487",colesProductDescription:"Coles tzatziki dip",productThumbnailUrl:"/images/products/6007487.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-005",displayName:"Red perino tomatoes",colesProductId:"7265535",colesProductDescription:"Coles perino red grape tomatoes",productThumbnailUrl:"/images/products/7265535.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"}]},{id:"curtis-stones-spaghetti-bolognese",name:"Spaghetti Bolognese (Curtis Stone)",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/curtis-stones-spaghetti-bolognese",imageUrl:"/images/recipes/curtis-stones-spaghetti-bolognese.jpg",prepTimeMinutes:5,cookTimeMinutes:15,difficulty:"easy",baseServings:4,estimatedCostBase:18,nutrition:null,tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"beef"},method:["Heat a large non-stick frying pan over medium-high heat. Add mince and cook, stirring to break up lumps, for 3 mins or until cooked through. Add pasta sauce and ½ cup (125ml) water. Reduce heat to low and simmer, stirring occasionally, for 10 mins or until sauce thickens slightly.","Meanwhile, bring a large pot of water to the boil over high heat. Add the spaghetti and cook, stirring often, for 8 mins or until tender but still firm to the bite. Drain, reserving ½ cup (125ml) of the cooking liquid.","Add the spaghetti to the sauce and toss to coat, adding enough reserved cooking liquid to moisten mixture as needed. Season with salt and pepper. Top with parmesan. Serve with finely chopped flat-leaf parsley."],ingredients:[{id:"ing-001",displayName:"Pork & beef 3 star mince bolognese",colesProductId:"8782237",colesProductDescription:"Coles pork & beef 3 star regular mince bolognese",productThumbnailUrl:"/images/products/8782237.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Simply classic tomato pasta sauce",colesProductId:"6522938",colesProductDescription:"Coles simply classic tomato pasta sauce",productThumbnailUrl:"/images/products/6522938.jpg",packSize:510,packUnit:"g",quantityInRecipe:510,quantityPerServing:127.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"510g"},{id:"ing-003",displayName:"Spaghetti",colesProductId:"3329115",colesProductDescription:"Coles simply pasta spaghetti",productThumbnailUrl:"/images/products/3329115.jpg",packSize:500,packUnit:"g",quantityInRecipe:300,quantityPerServing:75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-004",displayName:"Finely grated parmesan, to serve",colesProductId:"5235453",colesProductDescription:"Coles grated parmesan cheese",productThumbnailUrl:"/images/products/5235453.jpg",packSize:100,packUnit:"g",quantityInRecipe:null,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"100g"},{id:"ing-005",displayName:"Finely chopped flat-leaf parsley, to serve",colesProductId:"4575161",colesProductDescription:"Coles sleeved herbs parsley continental",productThumbnailUrl:"/images/products/4575161.jpg",packSize:null,packUnit:null,quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"1 Bunch"}]}
40,{id:"veggie-loaded-spiral-pasta",name:"Veggie Loaded Spiral Pasta (One-Pot)",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/veggie-loaded-spiral-pasta",imageUrl:"/images/recipes/veggie-loaded-spiral-pasta.jpg",prepTimeMinutes:5,cookTimeMinutes:25,difficulty:"easy",baseServings:4,estimatedCostBase:16,nutrition:{perServing:{energyKj:null,energyCal:539,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!1,dairyFree:!0,protein:"vegetarian"},method:["Combine the pasta, onion, garlic, capsicum, tomatoes, carrot, zucchini, dried herbs, stock and 2 cups (500ml) water in a large heavy-based saucepan.","Place over medium heat and bring to a simmer. Cook, stirring often, for 20 mins or until the pasta is al dente.","Add the spinach and chilli, if using, and stir to combine. Season."],ingredients:[{id:"ing-001",displayName:"Spiral pasta",colesProductId:"3329126",colesProductDescription:"Coles simply pasta spirals",productThumbnailUrl:"/images/products/3329126.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-003",displayName:"Garlic clove",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-004",displayName:"Capsicum",colesProductId:"132464",colesProductDescription:"Edgell australian grown diced capsicum",productThumbnailUrl:"/images/products/132464.jpg",packSize:125,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"125g"},{id:"ing-005",displayName:"Perino tomatoes",colesProductId:"5079482",colesProductDescription:"Coles perino noir grape tomatoes",productThumbnailUrl:"/images/products/5079482.jpg",packSize:200,packUnit:"g",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-006",displayName:"Carrots",colesProductId:"4223335",colesProductDescription:"Coles carrots loose",productThumbnailUrl:"/images/products/4223335.jpg",packSize:170,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 170g"},{id:"ing-007",displayName:"Zucchini",colesProductId:"4910506",colesProductDescription:"Coles green zucchini",productThumbnailUrl:"/images/products/4910506.jpg",packSize:200,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-008",displayName:"Dried italian herbs",colesProductId:"8985540",colesProductDescription:"Coles italian herbs",productThumbnailUrl:"/images/products/8985540.jpg",packSize:13,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"13g"},{id:"ing-009",displayName:"Vegetable stock",colesProductId:"7152084",colesProductDescription:"Coles stock liquid real vegetable",productThumbnailUrl:"/images/products/7152084.jpg",packSize:1e3,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"l",isPantryStaple:!1,packSizeText:"1L"},{id:"ing-010",displayName:"Baby spinach",colesProductId:"1499486",colesProductDescription:"Coles baby spinach",productThumbnailUrl:"/images/products/1499486.jpg",packSize:60,packUnit:"g",quantityInRecipe:120,quantityPerServing:30,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"60g"},{id:"ing-011",displayName:"Long red chilli",colesProductId:"1501635",colesProductDescription:"Coles red cayanne chillies",productThumbnailUrl:"/images/products/1501635.jpg",packSize:50,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"50g"}]},{id:"quick-chicken-burritos",name:"Quick Chicken Burritos",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/quick-chicken-burritos",imageUrl:"/images/recipes/quick-chicken-burritos.jpg",prepTimeMinutes:15,cookTimeMinutes:20,difficulty:"medium",baseServings:4,estimatedCostBase:28,nutrition:{perServing:{energyKj:null,energyCal:894,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"chicken"},method:["Combine the chicken, seasoning sachet from the burrito kit, half the lime juice and half the oil in a large bowl. Toss to coat.","Preheat a barbecue or chargrill plate on medium-high heat. Cook the chicken for 5 mins each side or until cooked through. Transfer to a plate. Cover with foil and set aside for 5 mins to rest.","Meanwhile, cook the corn on the same barbecue or chargrill plate, turning, for 5 mins or until kernels are tender. Combine the avocado, onion, coriander and tomato in a medium bowl. Use a sharp knife to cut the kernels from the corn cobs. Add to avocado mixture. Drizzle with the remaining lime juice and oil. Season.","Cook the tortillas from the burrito kit following packet directions. Thickly slice the chicken. Place the wraps on a work surface. Top with the combined spinach and rocket leaves, chicken and avocado mixture. Season. Top with a dollop of sour cream and drizzle with the sals
40a from the burrito kit. Serve with the chilli and lime wedges."],ingredients:[{id:"ing-001",displayName:"Chicken thigh fillets",colesProductId:"2263328",colesProductDescription:"Coles RSPCA approved chicken thigh fillets large pack",productThumbnailUrl:"/images/products/2263328.jpg",packSize:1200,packUnit:"g",quantityInRecipe:8,quantityPerServing:2,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 1.2kg"},{id:"ing-002",displayName:"Mexican-style burrito kit",colesProductId:"7886168",colesProductDescription:"Old el paso burrito kit mexican style",productThumbnailUrl:"/images/products/7886168.jpg",packSize:485,packUnit:"g",quantityInRecipe:485,quantityPerServing:121.25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"485g"},{id:"ing-003",displayName:"Lime juice",colesProductId:"5534873",colesProductDescription:"Coles lime juice",productThumbnailUrl:"/images/products/5534873.jpg",packSize:250,packUnit:"ml",quantityInRecipe:60,quantityPerServing:.25,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"250mL"},{id:"ing-004",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-005",displayName:"Corn cob, husk",colesProductId:"293565",colesProductDescription:"Coles frozen corn cobs",productThumbnailUrl:"/images/products/293565.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-006",displayName:"Avocados, stoned",colesProductId:"3479297",colesProductDescription:"Coles avocados prepacked",productThumbnailUrl:"/images/products/3479297.jpg",packSize:null,packUnit:null,quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"5 Pack"},{id:"ing-007",displayName:"Red onion",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-008",displayName:"Coriander leaves",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:.25,quantityPerServing:.06,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"15g"},{id:"ing-009",displayName:"Cherry tomatoes",colesProductId:"4834736",colesProductDescription:"Coles cherry tomatoes",productThumbnailUrl:"/images/products/4834736.jpg",packSize:250,packUnit:"g",quantityInRecipe:250,quantityPerServing:62.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-010",displayName:"Baby spinach",colesProductId:"3613141",colesProductDescription:"Coles spinach & rocket",productThumbnailUrl:"/images/products/3613141.jpg",packSize:60,packUnit:"g",quantityInRecipe:60,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,packSizeText:"60g"},{id:"ing-011",displayName:"Sour cream, to serve",colesProductId:"3676946",colesProductDescription:"Coles sour cream",productThumbnailUrl:"/images/products/3676946.jpg",packSize:300,packUnit:"g",quantityInRecipe:null,quantityPerServing:30,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"300g"},{id:"ing-012",displayName:"Thinly sliced red chilli, to serve",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-013",displayName:"Lime halves, to serve",colesProductId:"197594",colesProductDescription:"Coles limes medium loose",productThumbnailUrl:null,packSize:100,packUnit:"g",quantityInRecipe:null,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"approx. 100g"}]},{id:"pork-apple-and-sage-rissoles",name:"Pork, Apple & Sage Rissoles",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/pork-apple-and-sage-rissoles",imageUrl:"/images/recipes/pork-apple-and-sage-rissoles.jpg",prepTimeMinutes:15,cookTimeMinutes:20,difficulty:"medium",baseServings:4,estimatedCostBase:30,nutrition:{perServing:{energyKj:null,energyCal:766,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"pork"},method:["Peel, core and coarsely grate 1 apple. Place in a large bowl with the mince, sage, breadcrumbs and egg. Season well. Use your hands to mix until well combined. Divide the mixture into 12 even portions. Shape each portion into a rissole and place on a plate. Place in the fridge for 10 mins to chill.","Spray a large frying pan with olive oil spray and place over medium-high heat. Cook rissoles, in batches, for 3-4 mins each side or until golden brown and cooked through. Transfer to a clean plate and cover to keep warm. Add the cream and 2 tsp of the mustard to the pan. Bring to the boil. Cook for 2 mins or until the sauce thickens slightly.","Thinly slice the remaining apple crossways. Place in a large bowl with the rocket and fennel. Place the oil, vinegar and remaining mustard in a screw-top jar. Seal and shake well to combine. Drizzle over rocket mixture and toss to combine. Transfer to a serving platter.","Heat the mashed potato following packet directions. Transfer to a bowl.","Arrange rissoles over the rocket mixture. Drizzle with cream mixture. Season. Serve with mashed potato."],ingredients:[{id:"ing-001",displayName:"Granny smith apples",colesProductId:"408554",colesProductDescription:"Coles apple granny smith medium",productThumbn
40ailUrl:"/images/products/408554.jpg",packSize:170,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 170g"},{id:"ing-002",displayName:"Pork mince",colesProductId:"8781518",colesProductDescription:"Coles regular pork mince",productThumbnailUrl:"/images/products/8781518.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-003",displayName:"Finely shredded sage",colesProductId:"3215138",colesProductDescription:"Coles herb punnets sage",productThumbnailUrl:"/images/products/3215138.jpg",packSize:10,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"10g"},{id:"ing-004",displayName:"1 cup (100g) fresh breadcrumbs (made from day-old bread)",colesProductId:"9305277",colesProductDescription:"Coles simply breadcrumbs",productThumbnailUrl:"/images/products/9305277.jpg",packSize:500,packUnit:"g",quantityInRecipe:100,quantityPerServing:25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-005",displayName:"Free range egg",colesProductId:"2680008",colesProductDescription:"Coles free range eggs 6 pack",productThumbnailUrl:"/images/products/2680008.jpg",packSize:300,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!0,packSizeText:"300g"},{id:"ing-006",displayName:"Light thickened cream",colesProductId:"5033765",colesProductDescription:"Coles light thickened cream",productThumbnailUrl:"/images/products/5033765.jpg",packSize:300,packUnit:"ml",quantityInRecipe:300,quantityPerServing:75,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-007",displayName:"Dijon mustard",colesProductId:"5434948",colesProductDescription:"Masterfoods dijon mustard",productThumbnailUrl:"/images/products/5434948.jpg",packSize:170,packUnit:"g",quantityInRecipe:3,quantityPerServing:.75,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"170g"},{id:"ing-008",displayName:"Baby rocket leaves",colesProductId:"1499759",colesProductDescription:"Coles baby rocket",productThumbnailUrl:"/images/products/1499759.jpg",packSize:60,packUnit:"g",quantityInRecipe:120,quantityPerServing:30,quantityUnit:"g",isPantryStaple:!1,packSizeText:"60g"},{id:"ing-009",displayName:"Fennel, shaved, fronds reserved",colesProductId:"4910980",colesProductDescription:"Coles fennel",productThumbnailUrl:"/images/products/4910980.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-010",displayName:"Extra virgin olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-011",displayName:"Apple cider vinegar",colesProductId:"6963693",colesProductDescription:"Cornwell's apple cider vinegar",productThumbnailUrl:"/images/products/6963693.jpg",packSize:375,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"375mL"},{id:"ing-012",displayName:"350g tubs crème royale mashed potato",colesProductId:"2679519",colesProductDescription:"Coles kitchen creme royale potato mash",productThumbnailUrl:"/images/products/2679519.jpg",packSize:350,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"x",isPantryStaple:!1,packSizeText:"350g"}]},{id:"high-protein-burrito-bowl",name:"High-Protein Burrito Bowl",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/high-protein-burrito-bowl",imageUrl:"/images/recipes/high-protein-burrito-bowl.jpg",prepTimeMinutes:15,cookTimeMinutes:25,difficulty:"easy",baseServings:4,estimatedCostBase:28,nutrition:{perServing:{energyKj:null,energyCal:670,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"chicken"},method:["Heat oil in a large deep frying pan over high heat. Add mince and cook, stirring with a wooden spoon to break up any lumps, for 5 mins or until mince changes colour.","Add coriander stems and roots and stir to combine.","Add beans and sauce. Cook, covered, stirring occasionally, for 10 mins or until soft and sauce thickens. Season.","Cook edamame in a small saucepan for 2 mins or until heated through. Drain well.","Cook rice following packet directions.","Divide rice, chicken mixture, capsicum, tomato and avocado among serving bowls. Sprinkle with coriander leaves. Serve with cheese, yoghurt and lime wedges."],ingredients:[{id:"ing-001",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbn
40ailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-002",displayName:"Chicken breast mince",colesProductId:"4352145",colesProductDescription:"Coles RSPCA approved chicken mince",productThumbnailUrl:"/images/products/4352145.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-003",displayName:"Coriander, leaves picked, stems",colesProductId:"4575321",colesProductDescription:"Coles sleeved herbs coriander",productThumbnailUrl:"/images/products/4575321.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"bunch",isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-004",displayName:"Can black beans",colesProductId:"3812975",colesProductDescription:"Coles black beans",productThumbnailUrl:"/images/products/3812975.jpg",packSize:420,packUnit:"g",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"g",isPantryStaple:!1,packSizeText:"420g"},{id:"ing-005",displayName:"Jar mexican sauce",colesProductId:"7400700",colesProductDescription:"Coles mexican sauce",productThumbnailUrl:"/images/products/7400700.jpg",packSize:240,packUnit:"g",quantityInRecipe:240,quantityPerServing:60,quantityUnit:"g",isPantryStaple:!1,packSizeText:"240g"},{id:"ing-006",displayName:"Frozen shelled edamame beans",colesProductId:"2143224",colesProductDescription:"Hanabi frozen edamame soybean pods",productThumbnailUrl:"/images/products/2143224.jpg",packSize:400,packUnit:"g",quantityInRecipe:100,quantityPerServing:25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"400g"},{id:"ing-007",displayName:"250g pkts 7 ancient grains microwaveable rice",colesProductId:"1953819",colesProductDescription:"Coles microwave 7 grains rice",productThumbnailUrl:"/images/products/1953819.jpg",packSize:250,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"x",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-008",displayName:"Yellow capsicum",colesProductId:"7215355",colesProductDescription:"Coles yellow capsicum",productThumbnailUrl:"/images/products/7215355.jpg",packSize:220,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 220g"},{id:"ing-009",displayName:"Vine-ripened tomatoes",colesProductId:"4835171",colesProductDescription:"Coles vine ripened tomatoes",productThumbnailUrl:"/images/products/4835171.jpg",packSize:500,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"500g"},{id:"ing-010",displayName:"Avocado, stoned",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-011",displayName:"Light tasty cheese",colesProductId:"5236004",colesProductDescription:"Coles dairy tasty lite cheese block",productThumbnailUrl:"/images/products/5236004.jpg",packSize:250,packUnit:"g",quantityInRecipe:null,quantityPerServing:30,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"250g"},{id:"ing-012",displayName:"Plain greek-style yoghurt",colesProductId:"2273478",colesProductDescription:"Coles greek style natural yoghurt",productThumbnailUrl:"/images/products/2273478.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:null,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-013",displayName:"Lime wedges",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:null}]},{id:"lamb-koftas-with-couscous",name:"Lamb Koftas with Couscous",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/lamb-koftas-with-couscous",imageUrl:"/images/recipes/lamb-koftas-with-couscous.jpg",prepTimeMinutes:20,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:24,nutrition:{perServing:{energyKj:null,energyCal:420,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"lamb"},method:["Place the mince and dukkah in a large bowl. Season and use your hands to mix until well combined. Divide the mixture evenly into 12 portions and roll into oval shapes. Insert a soaked bamboo skewer into each kofta.","Spray a large non-stick frying pan with olive oil spray and place over medium heat. Cook the koftas, in 2 batches, turning often, for 6-8 mins or until golden brown and cooked through. Transfer to a plate and cover with foil. Set aside for 5 mins to rest.","Place the wraps on serving plates. Top with tzatziki, koftas and tomato. Sprinkle with extra dukkah to serve."],ingredients:[{id:"ing-001",displayName:"Lamb mince",colesProductId:"8850461",colesProductDescription:"Coles 3 star lamb mince",productThumbn
40ailUrl:"/images/products/8850461.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Pistachio dukkah",colesProductId:"7123086",colesProductDescription:"Table of plenty dukkah pistachio spice mix",productThumbnailUrl:"/images/products/7123086.jpg",packSize:45,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"45g"},{id:"ing-003",displayName:"Soft wholemeal & wholegrain wraps, warmed",colesProductId:"3731716",colesProductDescription:"Coles wholemeal & grain soft wraps 8 pack",productThumbnailUrl:"/images/products/3731716.jpg",packSize:360,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"360g"},{id:"ing-004",displayName:"Tzatziki",colesProductId:"6007487",colesProductDescription:"Coles tzatziki dip",productThumbnailUrl:"/images/products/6007487.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-005",displayName:"Red perino tomatoes",colesProductId:"7265535",colesProductDescription:"Coles perino red grape tomatoes",productThumbnailUrl:"/images/products/7265535.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"}]},{id:"classic-butter-chicken",name:"Homemade Butter Chicken",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/classic-butter-chicken",imageUrl:"/images/recipes/classic-butter-chicken.jpg",prepTimeMinutes:10,cookTimeMinutes:25,difficulty:"easy",baseServings:4,estimatedCostBase:20,nutrition:{perServing:{energyKj:null,energyCal:474,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!0,highProtein:!0,dairyFree:!1,protein:"chicken"},method:["Heat a saucepan over medium-high heat. Add oil, butter and onion. Cook, stirring, for 3-4 mins or until the onion is light golden. Add the ginger and garlic. Stir for 30 secs or until aromatic.","Add the chicken, tomato paste, garam masala, chilli powder, mustard seeds, cumin, salt and pepper. Cook, stirring occasionally, for 8-10 mins or until chicken is cooked through.","Reduce heat to medium-low. Add the cream and bring to a simmer. Cook, stirring occasionally, for 8-10 mins or until the mixture thickens. Transfer to a large serving dish. Serve with... coriander sprigs, toasted flaked almonds, naan bread, yoghurt and steamed basmati rice."],ingredients:[{id:"ing-001",displayName:"Oil",colesProductId:"5295524",colesProductDescription:"Coles classic olive oil",productThumbnailUrl:"/images/products/5295524.jpg",packSize:500,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"500mL"},{id:"ing-002",displayName:"Butter",colesProductId:"3169879",colesProductDescription:"Coles simply unsalted butter",productThumbnailUrl:"/images/products/3169879.jpg",packSize:250,packUnit:"g",quantityInRecipe:20,quantityPerServing:5,quantityUnit:"g",isPantryStaple:!0,packSizeText:"250g"},{id:"ing-003",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Finely grated ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-005",displayName:"Fresh garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-006",displayName:"Chicken breast fillets",colesProductId:"2263168",colesProductDescription:"Coles RSPCA approved chicken breast fillets small pack",productThumbn
40ailUrl:"/images/products/2263168.jpg",packSize:600,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 600g"},{id:"ing-007",displayName:"Tomato paste",colesProductId:"5885594",colesProductDescription:"Coles simply tomato paste",productThumbnailUrl:"/images/products/5885594.jpg",packSize:170,packUnit:"g",quantityInRecipe:100,quantityPerServing:25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"170g"},{id:"ing-008",displayName:"Garam masala",colesProductId:"8987477",colesProductDescription:"Coles garam masala",productThumbnailUrl:"/images/products/8987477.jpg",packSize:42,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"42g"},{id:"ing-009",displayName:"Chilli powder",colesProductId:"318021",colesProductDescription:"Hoyts chilli powder",productThumbnailUrl:"/images/products/318021.jpg",packSize:50,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"50g"},{id:"ing-010",displayName:"Yellow mustard seeds",colesProductId:"3339210",colesProductDescription:"Pattu mustard seeds",productThumbnailUrl:"/images/products/3339210.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-011",displayName:"Ground cumin",colesProductId:"8982837",colesProductDescription:"Coles cumin seeds ground",productThumbnailUrl:"/images/products/8982837.jpg",packSize:42,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"42g"},{id:"ing-012",displayName:"Salt",colesProductId:"8766810",colesProductDescription:"Coles simply table salt",productThumbnailUrl:"/images/products/8766810.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"1Kg"},{id:"ing-013",displayName:"Ground black pepper",colesProductId:"2677830",colesProductDescription:"Coles ground black pepper",productThumbnailUrl:"/images/products/2677830.jpg",packSize:50,packUnit:"g",quantityInRecipe:.25,quantityPerServing:.06,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"50g"},{id:"ing-014",displayName:"Thickened cream",colesProductId:"246973",colesProductDescription:"Coles thickened cream",productThumbnailUrl:"/images/products/246973.jpg",packSize:300,packUnit:"ml",quantityInRecipe:250,quantityPerServing:62.5,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"300mL"}]},{id:"mongolian-style-beef-rice-bowl",name:"Mongolian-Style Beef Rice Bowl",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/mongolian-style-beef-rice-bowl",imageUrl:"/images/recipes/mongolian-style-beef-rice-bowl.jpg",prepTimeMinutes:5,cookTimeMinutes:25,difficulty:"easy",baseServings:4,estimatedCostBase:20,nutrition:{perServing:{energyKj:null,energyCal:613,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"beef"},method:["Place the rice and 2¼ cups (560ml) cold water in a large saucepan over high heat. Bring to the boil. Reduce heat to low. Cover and cook for 12 mins or until the rice is tender and the water is absorbed. Set aside, covered, for 5 mins to steam.","Meanwhile, place the spring onion in a small bowl and cover with iced water. Set aside for 10 mins to curl.","Heat a wok or large frying pan over high heat. Add the mince and cook, stirring with a wooden spoon to break up lumps, for 5 mins or until the mince changes colour. Add the ginger and five spice and stir-fry for 1 min or until aromatic. Add the oyster sauce and hoisin sauce and stir-fry for 2-3 mins or until heated through.","Place the buk choy in a large heatproof bowl. Pour over boiling water. Set aside for 1 min or until just tender. Refresh under cold water. Drain well.","Drain spring onion curls. Divide rice among serving bowls. Top with mince mixture, carrot, spring onion curls and buk choy. Sprinkle with peanut to serve. Serve with sliced red chilli and coriander sprigs."],ingredients:[{id:"ing-001",displayName:"Sushi rice",colesProductId:"4845572",colesProductDescription:"Obento sushi rice",productThumbn
40ailUrl:"/images/products/4845572.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:300,quantityPerServing:75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-002",displayName:"Spring onions",colesProductId:"5011831",colesProductDescription:"Coles organic spring onions",productThumbnailUrl:"/images/products/5011831.jpg",packSize:null,packUnit:null,quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Each"},{id:"ing-003",displayName:"No added hormones 4 star beef mince",colesProductId:"8112449",colesProductDescription:"Coles no added hormone beef 4 star lean mince",productThumbnailUrl:"/images/products/8112449.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-004",displayName:"Finely grated ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-005",displayName:"Chinese five spice",colesProductId:"318531",colesProductDescription:"Masterfoods chinese five spice",productThumbnailUrl:"/images/products/318531.jpg",packSize:30,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"30g"},{id:"ing-006",displayName:"Oyster sauce",colesProductId:"5332234",colesProductDescription:"Coles oyster sauce",productThumbnailUrl:"/images/products/5332234.jpg",packSize:300,packUnit:"ml",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-007",displayName:"Hoisin sauce",colesProductId:"5015956",colesProductDescription:"Coles asia hoisin sauce",productThumbnailUrl:"/images/products/5015956.jpg",packSize:340,packUnit:"ml",quantityInRecipe:60,quantityPerServing:15,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"340mL"},{id:"ing-008",displayName:"Baby buk choy",colesProductId:"4565907",colesProductDescription:"Coles asian choy buk",productThumbnailUrl:"/images/products/4565907.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"bunch",isPantryStaple:!1,packSizeText:"1 each"},{id:"ing-009",displayName:"Carrots",colesProductId:"4223335",colesProductDescription:"Coles carrots loose",productThumbnailUrl:"/images/products/4223335.jpg",packSize:170,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 170g"},{id:"ing-010",displayName:"Peanuts",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:null}]},{id:"mushroom-pumpkin-and-spinach-risotto",name:"Mushroom, Pumpkin & Spinach Risotto",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/mushroom-pumpkin-and-spinach-risotto",imageUrl:"/images/recipes/mushroom-pumpkin-and-spinach-risotto.jpg",prepTimeMinutes:15,cookTimeMinutes:40,difficulty:"hard",baseServings:4,estimatedCostBase:28,nutrition:null,tags:{quick:!1,glutenFree:!0,highProtein:!1,dairyFree:!1,protein:"vegetarian"},method:["Preheat oven to 180°C. Line a baking tray with baking paper. Place the pumpkin on the tray and drizzle with 1 tsp of the oil. Toss to combine. Bake for 20 mins or until tender.","Meanwhile, bring stock to the boil in a saucepan over medium heat. Reduce heat to low and keep at a gentle simmer.","Heat half the remaining oil in a large saucepan over high heat. Add the mushroom and cook, stirring, for 5 mins or until lightly browned and tender. Transfer to a bowl.","Add the remaining oil to the pan. Add the onion and garlic. Cook, stirring, for 5 mins or until onion softens. Add the rice and cook, stirring, for 2 mins or until the grains of rice appear glassy. Add the wine and cook, stirring constantly, for 2-3 mins or until the wine has been absorbed. Add 1/2 cup (125ml) of the simmering stock to the rice mixture and stir constantly with a wooden spoon until the liquid is completely absorbed before adding more. C
40ontinue adding 1/2-cupfuls of stock for 20 mins or until the rice is tender yet firm to the bite and risotto is creamy.","Add the mushroom, pumpkin, spinach, parmesan and half the pine nuts to the risotto. Stir to combine.","Combine the mascarpone and blue cheese in a small bowl. Divide the risotto among serving bowls. Spoon over the mascarpone mixture and sprinkle with remaining pine nuts and extra spinach."],ingredients:[{id:"ing-001",displayName:"Butternut pumpkin",colesProductId:"2859066",colesProductDescription:"Coles kitchen australian diced butternut pumpkin",productThumbnailUrl:"/images/products/2859066.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-003",displayName:"Vegetable stock",colesProductId:"7152084",colesProductDescription:"Coles stock liquid real vegetable",productThumbnailUrl:"/images/products/7152084.jpg",packSize:1e3,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"l",isPantryStaple:!1,packSizeText:"1L"},{id:"ing-004",displayName:"Swiss brown mushrooms",colesProductId:"4829703",colesProductDescription:"Coles brown mushrooms prepacked",productThumbnailUrl:"/images/products/4829703.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-005",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-006",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-007",displayName:"Arborio rice",colesProductId:"8465788",colesProductDescription:"Cucina matese arborio rice",productThumbnailUrl:"/images/products/8465788.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-008",displayName:"White wine",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:125,quantityPerServing:31.25,quantityUnit:"ml",isPantryStaple:!1,packSizeText:null},{id:"ing-009",displayName:"Baby spinach",colesProductId:"1499486",colesProductDescription:"Coles baby spinach",productThumbnailUrl:"/images/products/1499486.jpg",packSize:60,packUnit:"g",quantityInRecipe:60,quantityPerServing:30,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"60g"},{id:"ing-010",displayName:"Finely grated parmesan",colesProductId:"5235453",colesProductDescription:"Coles grated parmesan cheese",productThumbnailUrl:"/images/products/5235453.jpg",packSize:100,packUnit:"g",quantityInRecipe:40,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"100g"},{id:"ing-011",displayName:"Pine nuts",colesProductId:"3017531",colesProductDescription:"Coles pine nuts",productThumbnailUrl:"/images/products/3017531.jpg",packSize:80,packUnit:"g",quantityInRecipe:40,quantityPerServing:10,quantityUnit:"g",isPantryStaple:!1,packSizeText:"80g"},{id:"ing-012",displayName:"Mascarpone",colesProductId:"2212600",colesProductDescription:"Coles mascarpone",productThumbnailUrl:"/images/products/2212600.jpg",packSize:250,packUnit:"g",quantityInRecipe:100,quantityPerServing:25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-013",displayName:"Blue cheese, crumbled",colesProductId:"3020580",colesProductDescription:"Coles danish blue cheese",productThumbn
40ailUrl:"/images/products/3020580.jpg",packSize:100,packUnit:"g",quantityInRecipe:50,quantityPerServing:12.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"100g"},{id:"ing-014",displayName:"Baby spinach leaves, extra, to serve",colesProductId:"1499486",colesProductDescription:"Coles baby spinach",productThumbnailUrl:"/images/products/1499486.jpg",packSize:60,packUnit:"g",quantityInRecipe:null,quantityPerServing:30,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"60g"}]},{id:"ginger-and-chilli-baked-salmon",name:"Ginger & Chilli Baked Salmon",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/ginger-and-chilli-baked-salmon",imageUrl:"/images/recipes/ginger-and-chilli-baked-salmon.jpg",prepTimeMinutes:10,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:26,nutrition:null,tags:{quick:!0,glutenFree:!0,highProtein:!0,dairyFree:!0,protein:"fish"},method:["Preheat oven to 180ËC. Line a baking tray with baking paper.","Place the spring onion in a small bowl. Cover with iced water. Set aside for 10 mins to curl. Drain.","Meanwhile, combine 1 tbs of the oil with the lemongrass paste in a small bowl. Rub evenly over the salmon. Place salmon on lined tray. Sprinkle with the ginger and chilli, if using. Cook for 8 mins. Add pak choy to the tray and drizzle with 1 tbs oil. Cook for a further 2 mins or until the pak choy is wilted and the salmon is cooked to your liking.","Sprinkle salmon with spring onion curls, coriander and bean sprouts. Drizzle with the remaining oil. Serve with the lemon wedges."],ingredients:[{id:"ing-001",displayName:"Spring onions",colesProductId:"5011831",colesProductDescription:"Coles organic spring onions",productThumbnailUrl:"/images/products/5011831.jpg",packSize:null,packUnit:null,quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Each"},{id:"ing-002",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:60,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-003",displayName:"Lemongrass paste",colesProductId:"3023272",colesProductDescription:"Gourmet garden lemongrass cold blended paste",productThumbnailUrl:"/images/products/3023272.jpg",packSize:80,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"80g"},{id:"ing-004",displayName:"Tasmanian salmon skin-on portions",colesProductId:"1063006",colesProductDescription:"Coles salmon fillets skin on 2 pack",productThumbnailUrl:"/images/products/1063006.jpg",packSize:250,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"250g"},{id:"ing-005",displayName:"5cm-piece ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:null,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-006",displayName:"Long red chilli",colesProductId:"1501635",colesProductDescription:"Coles red cayanne chillies",productThumbnailUrl:"/images/products/1501635.jpg",packSize:50,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"50g"},{id:"ing-007",displayName:"Pak choy",colesProductId:"5017430",colesProductDescription:"Coles organic choy pack",productThumbnailUrl:"/images/products/5017430.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"bunch",isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-008",displayName:"½ cup coriander sprigs",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"15g"},{id:"ing-009",displayName:"Bean sprouts",colesProductId:"8853710",colesProductDescription:"UFC bean sprouts",productThumbn
40ailUrl:"/images/products/8853710.jpg",packSize:410,packUnit:"g",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"g",isPantryStaple:!1,packSizeText:"410g"},{id:"ing-010",displayName:"Lemon",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:null}]},{id:"shawarma",name:"Chicken Shawarma",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/shawarma",imageUrl:"/images/recipes/shawarma.jpg",prepTimeMinutes:10,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:25,nutrition:{perServing:{energyKj:null,energyCal:591,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"chicken"},method:["Combine the oil, lemon juice, spice mix and cardamom in a large bowl. Season. Add the chicken and toss to coat. Cover and place in the fridge for 30 mins (or even overnight) to develop the flavours.","Meanwhile, to make the tahini-yoghurt sauce, whisk the yoghurt, lemon juice, tahini and garlic in a small bowl. Season.","Heat a barbecue grill or chargrill on medium. Cook chicken for 4 mins each side or until golden brown and cooked through. Slice thinly.","Spread pita breads with half the tahini sauce. Top with lettuce, cucumber, tomato, onion, chicken, parsley leaves and pickled cucumbers. Drizzle with remaining tahini mixture. Roll up and serve."],ingredients:[{id:"ing-001",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-002",displayName:"Lemon juice",colesProductId:"5295557",colesProductDescription:"Coles lemon juice",productThumbnailUrl:"/images/products/5295557.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"250mL"},{id:"ing-003",displayName:"Middle eastern harissa spice mix",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:null},{id:"ing-004",displayName:"Ground cardamom (optional)",colesProductId:"8602120",colesProductDescription:"Masterfoods ground cardamom",productThumbnailUrl:"/images/products/8602120.jpg",packSize:35,packUnit:"g",quantityInRecipe:.25,quantityPerServing:.06,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"35g"},{id:"ing-005",displayName:"Chicken thigh fillets",colesProductId:"2263317",colesProductDescription:"Coles RSPCA chicken thigh fillets small pack",productThumbnailUrl:"/images/products/2263317.jpg",packSize:700,packUnit:"g",quantityInRecipe:600,quantityPerServing:150,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 700g"},{id:"ing-006",displayName:"Pita breads",colesProductId:"3340730",colesProductDescription:"MEB foods fresh pockets white pita",productThumbnailUrl:"/images/products/3340730.jpg",packSize:250,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"250g"},{id:"ing-007",displayName:"Baby cos lettuce, leaves separated",colesProductId:"4646485",colesProductDescription:"Coles lettuce cos baby hearts",productThumbnailUrl:"/images/products/4646485.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"2 Pack"},{id:"ing-008",displayName:"Lebanese cucumber",colesProductId:"4575208",colesProductDescription:"Coles lebanese cucumbers",productThumbnailUrl:"/images/products/4575208.jpg",packSize:160,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 160g"},{id:"ing-009",displayName:"Vine-ripened tomatoes",colesProductId:"4835171",colesProductDescription:"Coles vine ripened tomatoes",productThumbn
40ailUrl:"/images/products/4835171.jpg",packSize:500,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"500g"},{id:"ing-010",displayName:"Red onion",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-011",displayName:"Flat-leaf parsley leaves",colesProductId:"4575569",colesProductDescription:"Coles sleeved herbs parsley",productThumbnailUrl:"/images/products/4575569.jpg",packSize:null,packUnit:null,quantityInRecipe:.333,quantityPerServing:.08,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-012",displayName:"Pickled cucumbers, to serve (optional)",colesProductId:"4575208",colesProductDescription:"Coles lebanese cucumbers",productThumbnailUrl:"/images/products/4575208.jpg",packSize:160,packUnit:"g",quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 160g"},{id:"ing-013",displayName:"Olive oil, to drizzle (optional)",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:null,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!0,packSizeText:"250mL"},{id:"ing-014",displayName:"Reduced-fat greek-style yoghurt",colesProductId:"7019460",colesProductDescription:"Vaalia probiotics yoghurt natural",productThumbnailUrl:"/images/products/7019460.jpg",packSize:900,packUnit:"g",quantityInRecipe:210,quantityPerServing:52.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"900g"},{id:"ing-015",displayName:"Lemon juice",colesProductId:"5295557",colesProductDescription:"Coles lemon juice",productThumbnailUrl:"/images/products/5295557.jpg",packSize:250,packUnit:"ml",quantityInRecipe:60,quantityPerServing:15,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"250mL"},{id:"ing-016",displayName:"1/2 tbs tahini",colesProductId:"5022180",colesProductDescription:"Mayvers hulled tahini",productThumbnailUrl:"/images/products/5022180.jpg",packSize:385,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"385g"},{id:"ing-017",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"}]},{id:"kebabs",name:"Lamb Kebabs in Wraps",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/kebabs",imageUrl:"/images/recipes/kebabs.jpg",prepTimeMinutes:15,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:482,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"lamb"},method:["To make kebabs, place onion, garlic, parsley, oregano, cumin and paprika in a large bowl. Stir to combine. Add mince. Season. Mix until well combined.","Divide mixture evenly into 12 portions and, using wet hands, roll each portion into a 5cm-long kofta shape. Thread kebabs onto skewers. Place in the fridge for 30 mins to chill.","Heat a greased chargrill pan or barbecue on medium-high heat. Cook souvlaki bread for 1 min each side or until lightly charred and heated through. Wrap bread in foil to keep warm.","Place kebabs on chargrill and cook, turning occasionally, for 6-8 mins or until golden brown and cooked through.","Remove skewers. Serve kebabs and souvlaki bread with garlic dip, cucumber, onion, salad leaves and lemon wedges."],ingredients:[{id:"ing-001",displayName:"Souvlaki bread",colesProductId:"4327240",colesProductDescription:"Mission souvlaki bread",productThumbnailUrl:"/images/products/4327240.jpg",packSize:320,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"320g"},{id:"ing-002",displayName:"Garlic dip",colesProductId:"8429106",colesProductDescription:"Coles garlic dip",productThumbn
40ailUrl:"/images/products/8429106.jpg",packSize:null,packUnit:null,quantityInRecipe:250,quantityPerServing:62.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200 GRAM"},{id:"ing-003",displayName:"Lebanese cucumber",colesProductId:"4575208",colesProductDescription:"Coles lebanese cucumbers",productThumbnailUrl:"/images/products/4575208.jpg",packSize:160,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 160g"},{id:"ing-004",displayName:"Red onion",colesProductId:"8467604",colesProductDescription:"Coles red onion 1 kg",productThumbnailUrl:"/images/products/8467604.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-005",displayName:"Brown onion",colesProductId:"8467604",colesProductDescription:"Coles red onion 1 kg",productThumbnailUrl:"/images/products/8467604.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-006",displayName:"Garlic paste",colesProductId:"3868856",colesProductDescription:"Maharajah's choice garlic paste",productThumbnailUrl:"/images/products/3868856.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-007",displayName:"Finely chopped flat-leaf parsley",colesProductId:"4575569",colesProductDescription:"Coles sleeved herbs parsley",productThumbnailUrl:"/images/products/4575569.jpg",packSize:null,packUnit:null,quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-008",displayName:"Dried oregano",colesProductId:"8982881",colesProductDescription:"Coles oregano leaves",productThumbnailUrl:"/images/products/8982881.jpg",packSize:10,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"10g"},{id:"ing-009",displayName:"Ground cumin",colesProductId:"8982837",colesProductDescription:"Coles cumin seeds ground",productThumbnailUrl:"/images/products/8982837.jpg",packSize:42,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"42g"},{id:"ing-010",displayName:"Paprika",colesProductId:"8982961",colesProductDescription:"Coles ground paprika",productThumbnailUrl:"/images/products/8982961.jpg",packSize:39,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"39g"},{id:"ing-011",displayName:"Lamb mince",colesProductId:"8850461",colesProductDescription:"Coles 3 star lamb mince",productThumbnailUrl:"/images/products/8850461.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-012",displayName:"Seasonal salad leaves",colesProductId:"2724760",colesProductDescription:"Coles organic baby salad leaves lettuce mix",productThumbnailUrl:"/images/products/2724760.jpg",packSize:100,packUnit:"g",quantityInRecipe:null,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,packSizeText:"100g"},{id:"ing-013",displayName:"Lemon wedges",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:null}]},{id:"curtis-stones-korean-beef-bowl",name:"Korean Beef & Baby Broccoli Bowl",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/curtis-stones-korean-beef-bowl",imageUrl:"/images/recipes/curtis-stones-korean-beef-bowl.jpg",prepTimeMinutes:10,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:353,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"beef"},method:["Heat half the vegetable oil in a large heavy-based frying pan over medium heat. Add the white parts of the spring onion, garlic and ginger and stir-fry for 1 min or until aromatic. Add the baby broccoli and a little more oil, as needed, and stir-fry for 1 min or until baby broccoli is bright green and tender-crisp. Transfer baby broccoli mixture to a plate.","Meanwhile, use a whisk to combine the soy sauce, sesame oil, brown sugar and cornflour in a small jug or bowl.","Increase heat to high. Add mince to the pan and use a wooden spoon to break apart. Cook, without stirring, for 1 min or until mince caramelises on the bottom. Cook, stirring, for 2 mins or until cooked through. Return the baby broccoli mixture to the pan and stir to combine. Add the soy sauce mixture and cook, stirring, for 30 secs or until the sauce lightly coats beef. Season with chilli sauce, if using, and stir to combine.","Divide the rice and beef mixture among serving bowls. Sprinkle with green parts of the spring onion and sesame seeds to serve."],ingredients:[{id:"ing-001",displayName:"Vegetable oil, divided",colesProductId:"4574919",colesProductDescription:"Coles blended vegetable oil",productThumbn
40ailUrl:"/images/products/4574919.jpg",packSize:750,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"750mL"},{id:"ing-002",displayName:"Spring onions, white",colesProductId:"408419",colesProductDescription:"Coles spring onions",productThumbnailUrl:"/images/products/408419.jpg",packSize:null,packUnit:null,quantityInRecipe:3,quantityPerServing:.75,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-003",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-004",displayName:"Finely grated ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-005",displayName:"Baby broccoli",colesProductId:"5982477",colesProductDescription:"Coles baby broccoli",productThumbnailUrl:null,packSize:180,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"bunch",isPantryStaple:!1,packSizeText:"1 bunch"},{id:"ing-006",displayName:"Salt-reduced soy sauce",colesProductId:"5423125",colesProductDescription:"Lee kum kee salt reduced soy sauce",productThumbnailUrl:"/images/products/5423125.jpg",packSize:150,packUnit:"ml",quantityInRecipe:60,quantityPerServing:15,quantityUnit:"ml",isPantryStaple:!0,packSizeText:"150mL"},{id:"ing-007",displayName:"Sesame oil",colesProductId:"5099093",colesProductDescription:"Changs pure sesame oil",productThumbnailUrl:"/images/products/5099093.jpg",packSize:150,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"150mL"},{id:"ing-008",displayName:"Brown sugar",colesProductId:"447829",colesProductDescription:"CSR dark brown sugar",productThumbnailUrl:"/images/products/447829.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"1kg"},{id:"ing-009",displayName:"Cornflour",colesProductId:"7352902",colesProductDescription:"Coles cornflour",productThumbnailUrl:"/images/products/7352902.jpg",packSize:300,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"300g"},{id:"ing-010",displayName:"Lean beef mince",colesProductId:"9223332",colesProductDescription:"Cleaver's organic grass-fed extra lean beef mince",productThumbnailUrl:"/images/products/9223332.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-011",displayName:"Chilli sauce, to taste (optional)",colesProductId:"5422202",colesProductDescription:"ABC original chilli sauce",productThumbnailUrl:"/images/products/5422202.jpg",packSize:335,packUnit:"ml",quantityInRecipe:null,quantityPerServing:15,quantityUnit:"ml",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"335mL"},{id:"ing-012",displayName:"Steamed rice, to serve",colesProductId:"8703059",colesProductDescription:"Coles basmati rice",productThumbnailUrl:"/images/products/8703059.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:null,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1Kg"},{id:"ing-013",displayName:"Toasted sesame seeds, to serve",colesProductId:"3559523",colesProductDescription:"Coles sesame seeds",productThumbnailUrl:"/images/products/3559523.jpg",packSize:150,packUnit:"g",quantityInRecipe:null,quantityPerServing:10,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"150g"}]},{id:"sticky-pork-stir-fry-with-noodles",name:"Sticky Pork Stir-Fry with Noodles",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/sticky-pork-stir-fry-with-noodles",imageUrl:"/images/recipes/sticky-pork-stir-fry-with-noodles.jpg",prepTimeMinutes:10,cookTimeMinutes:15,difficulty:"easy",baseServings:4,estimatedCostBase:20,nutrition:null,tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"pork"},method:["Cook noodles in a large saucepan of boiling water following packet directions or until just tender, adding the Chinese broccoli for the last 2 mins of cooking. Drain well.","Heat oil in a wok or large frying pan over high heat. Add mince and cook, stirring with a wooden spoon to break up lumps, for 3-4 mins or until mince changes colour. Add spring onion and stir-fry for 1 min or until well combined. Add the plum sauce, oyster sauce and lemon juice. Stir-fry for 3-4 mins or until the mixture thickens and the mince is cooked through.","Divide the noodle mixture evenly among serving bowls. Top with the mince mixture and sprinkle with coriander and chilli, if using."],ingredients:[{id:"ing-001",displayName:"Dried flat rice noodles",colesProductId:"3318425",colesProductDescription:"MTR rice noodle vermicelli",productThumbn
40ailUrl:"/images/products/3318425.jpg",packSize:440,packUnit:"g",quantityInRecipe:150,quantityPerServing:37.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"440g"},{id:"ing-002",displayName:"Bunches chinese broccoli",colesProductId:"4569216",colesProductDescription:"Coles asian choy chinese broccoli",productThumbnailUrl:"/images/products/4569216.jpg",packSize:null,packUnit:null,quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 each"},{id:"ing-003",displayName:"Sesame oil",colesProductId:"5099093",colesProductDescription:"Changs pure sesame oil",productThumbnailUrl:"/images/products/5099093.jpg",packSize:150,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"150mL"},{id:"ing-004",displayName:"Pork mince",colesProductId:"8781518",colesProductDescription:"Coles regular pork mince",productThumbnailUrl:"/images/products/8781518.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-005",displayName:"Spring onions",colesProductId:"408419",colesProductDescription:"Coles spring onions",productThumbnailUrl:"/images/products/408419.jpg",packSize:null,packUnit:null,quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-006",displayName:"Plum sauce",colesProductId:"14639",colesProductDescription:"Ayam plum sauce",productThumbnailUrl:"/images/products/14639.jpg",packSize:210,packUnit:"ml",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"210mL"},{id:"ing-007",displayName:"Oyster sauce",colesProductId:"5332234",colesProductDescription:"Coles oyster sauce",productThumbnailUrl:"/images/products/5332234.jpg",packSize:300,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-008",displayName:"Lemon juice",colesProductId:"5295557",colesProductDescription:"Coles lemon juice",productThumbnailUrl:"/images/products/5295557.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"250mL"},{id:"ing-009",displayName:"Coriander leaves",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:.25,quantityPerServing:.06,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"15g"},{id:"ing-010",displayName:"Long red chilli",colesProductId:"1501635",colesProductDescription:"Coles red cayanne chillies",productThumbnailUrl:"/images/products/1501635.jpg",packSize:50,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"50g"}]},{id:"corn-and-zucchini-frittata",name:"Corn & Zucchini Frittata",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/corn-and-zucchini-frittata",imageUrl:"/images/recipes/corn-and-zucchini-frittata.jpg",prepTimeMinutes:10,cookTimeMinutes:20,difficulty:"medium",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:452,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!0,highProtein:!1,dairyFree:!1,protein:"eggs"},method:["Heat half the oil in a 20cm (base measurement) non-stick ovenproof frying pan over medium heat. Add the onion and cook, stirring, for 3-4 mins or until the onion softens. Transfer to a bowl. Heat the remaining oil in the pan. Add the zucchini. Cook, stirring occasionally, for 3 mins or until just tender.","Use a small serrated knife to cut down the side of the corn to release the kernels.","Preheat grill on medium. Add the onion and corn to the zucchini in the pan and spread over the base. Whisk the eggs and cream in a jug. Season. Pour over the zucchini mixture in the pan. Cook over medium-low heat for 5 mins or until almost set. Cook under grill for 5 mins or until set. Set aside for 5 mins to cool slightly.","Top the frittata with rocket, tomato, parsley and goat's cheese. Season. Drizzle with reserved marinade."],ingredients:[{id:"ing-001",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbn
40ailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-002",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-003",displayName:"Zucchini",colesProductId:"4910506",colesProductDescription:"Coles green zucchini",productThumbnailUrl:"/images/products/4910506.jpg",packSize:200,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Corn cob, husks",colesProductId:"293565",colesProductDescription:"Coles frozen corn cobs",productThumbnailUrl:"/images/products/293565.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-005",displayName:"Free range eggs",colesProductId:"2680008",colesProductDescription:"Coles free range eggs 6 pack",productThumbnailUrl:"/images/products/2680008.jpg",packSize:300,packUnit:"g",quantityInRecipe:8,quantityPerServing:2,quantityUnit:null,isPantryStaple:!1,packSizeText:"300g"},{id:"ing-006",displayName:"Cream",colesProductId:"246973",colesProductDescription:"Coles thickened cream",productThumbnailUrl:"/images/products/246973.jpg",packSize:300,packUnit:"ml",quantityInRecipe:125,quantityPerServing:31.25,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-007",displayName:"Baby rocket",colesProductId:"1499759",colesProductDescription:"Coles baby rocket",productThumbnailUrl:"/images/products/1499759.jpg",packSize:60,packUnit:"g",quantityInRecipe:60,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,packSizeText:"60g"},{id:"ing-008",displayName:"Perino tomatoes",colesProductId:"7265535",colesProductDescription:"Coles perino red grape tomatoes",productThumbnailUrl:"/images/products/7265535.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-009",displayName:"Flat-leaf parsley leaves",colesProductId:"4575569",colesProductDescription:"Coles sleeved herbs parsley",productThumbnailUrl:"/images/products/4575569.jpg",packSize:null,packUnit:null,quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-010",displayName:"Marinated goat's cheese",colesProductId:"3275901",colesProductDescription:"Meredith dairy marinated goats cheese",productThumbnailUrl:"/images/products/3275901.jpg",packSize:100,packUnit:"g",quantityInRecipe:100,quantityPerServing:25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"100g"}]},{id:"thai-style-chicken-and-noodle-stir-fry",name:"Thai-Style Chicken & Noodle Stir-Fry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/thai-style-chicken-and-noodle-stir-fry",imageUrl:"/images/recipes/thai-style-chicken-and-noodle-stir-fry.jpg",prepTimeMinutes:5,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:499,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"chicken"},method:["Cook noodles in a large saucepan of boiling water for 3 mins or until tender. Drain well, reserving ½ cup (125ml) of the cooking liquid.","Meanwhile, heat oil in a wok or large frying pan over high heat. Add half the chicken and stir-fry for 3 mins or until golden brown. Transfer to a heatproof bowl. Repeat with remaining chicken.","Combine the chicken in the wok or pan with the vegetables, ginger, garlic, chilli paste, noodles, stir-fry sauce and reserved cooking liquid. Stir-fry for 2 mins or until the vegetables are tender and the chicken is cooked through. Sprinkle with bean sprouts and cashews. Cook noodles in a large saucepan of boiling water for 3mins or until tender. Drain well, reserving ½cup (125ml) of the cooking liquid. Meanwhile, heat oil in a wok or large frying pan over high heat. Add half the chicken and stir-fry for 3mins or until golden brown. Transfer to a heatproof bowl. Repeat with remainingchicken. Combine the chicken in the wok or pan with the vegetables, ginger, garlic, chilli paste, noodles, stir-fry sauce and reserved cooking liquid. Stir-fry for 2mins or until the vegetables are tender and the chicken is cooked through. Sprinkle with bean sprouts and cashews."],ingredients:[{id:"ing-001",displayName:"Egg no
40odles",colesProductId:"9887387",colesProductDescription:"Royal fields egg noodles",productThumbnailUrl:"/images/products/9887387.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-002",displayName:"Peanut oil",colesProductId:"6870366",colesProductDescription:"Coles peanut oil",productThumbnailUrl:"/images/products/6870366.jpg",packSize:750,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"750mL"},{id:"ing-003",displayName:"Chicken breast stir fry",colesProductId:"2263179",colesProductDescription:"Coles RSPCA approved chicken breast fillets large pack",productThumbnailUrl:"/images/products/2263179.jpg",packSize:1400,packUnit:"g",quantityInRecipe:700,quantityPerServing:175,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 1.4kg"},{id:"ing-004",displayName:"Family stir-fry vegetables",colesProductId:"6799942",colesProductDescription:"Passage foods passage to asia pad thai stir fry sauce pouch",productThumbnailUrl:"/images/products/6799942.jpg",packSize:200,packUnit:"g",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-005",displayName:"Finely grated ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-006",displayName:"Minced garlic",colesProductId:"5493277",colesProductDescription:"Coles minced garlic",productThumbnailUrl:"/images/products/5493277.jpg",packSize:250,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-007",displayName:"Chilli paste",colesProductId:"4452220",colesProductDescription:"Arlington's dips thai chilli & lime",productThumbnailUrl:"/images/products/4452220.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:null},{id:"ing-008",displayName:"Thai coconut",colesProductId:"4452220",colesProductDescription:"Arlington's dips thai chilli & lime",productThumbnailUrl:"/images/products/4452220.jpg",packSize:null,packUnit:null,quantityInRecipe:180,quantityPerServing:45,quantityUnit:"g",isPantryStaple:!1,packSizeText:null},{id:"ing-009",displayName:"Bean sprouts",colesProductId:"8853710",colesProductDescription:"UFC bean sprouts",productThumbnailUrl:"/images/products/8853710.jpg",packSize:410,packUnit:"g",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"g",isPantryStaple:!1,packSizeText:"410g"},{id:"ing-010",displayName:"Cashews",colesProductId:"5619761",colesProductDescription:"Sunbeam nuts raw & natural cashews",productThumbnailUrl:"/images/products/5619761.jpg",packSize:450,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"450g"}]},{id:"lentil-bolognese",name:"Lentil Bolognese",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/lentil-bolognese",imageUrl:"/images/recipes/lentil-bolognese.jpg",prepTimeMinutes:10,cookTimeMinutes:20,difficulty:"easy",baseServings:4,estimatedCostBase:18,nutrition:{perServing:{energyKj:null,energyCal:549,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!1,dairyFree:!0,protein:"legumes"},method:["Cook the pasta in a saucepan of boiling water following packet directions or until al dente. Drain.","Meanwhile, heat the oil in a large non-stick frying pan over high heat, then add the onion, mushroom, carrot, zucchini and eggplant and cook, stirring, for 5 mins or until the vegetables soften. Add the garlic, lentils, tomatoes, tomato paste and stock. Cook, stirring occasionally, for 10 mins or until the mixture thickens slightly and lentils are tender.","Add the pasta to the mushroom mixture, stir until combined. Divide the pasta mixture among serving bowls. Sprinkle with basil to serve."],ingredients:[{id:"ing-001",displayName:"Wholemeal pasta",colesProductId:"3380316",colesProductDescription:"Coles organic wholemeal spirals pasta",productThumbn
40ailUrl:"/images/products/3380316.jpg",packSize:500,packUnit:"g",quantityInRecipe:300,quantityPerServing:75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Extra virgin olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-003",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Cup mushrooms",colesProductId:"4829420",colesProductDescription:"Coles button mushrooms",productThumbnailUrl:"/images/products/4829420.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-005",displayName:"Carrot",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-006",displayName:"Zucchini",colesProductId:"4910506",colesProductDescription:"Coles green zucchini",productThumbnailUrl:"/images/products/4910506.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-007",displayName:"Eggplant",colesProductId:"4583206",colesProductDescription:"Coles purple eggplant",productThumbnailUrl:"/images/products/4583206.jpg",packSize:500,packUnit:"g",quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 500g"},{id:"ing-008",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:3,quantityPerServing:.75,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-009",displayName:"Red lentils",colesProductId:"4683608",colesProductDescription:"Katoomba red lentils",productThumbnailUrl:"/images/products/4683608.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-010",displayName:"Can diced tomatoes",colesProductId:"8855443",colesProductDescription:"Carmelina diced tomatoes",productThumbnailUrl:"/images/products/8855443.jpg",packSize:400,packUnit:"g",quantityInRecipe:800,quantityPerServing:200,quantityUnit:"g",isPantryStaple:!1,packSizeText:"400g"},{id:"ing-011",displayName:"Salt-reduced tomato paste",colesProductId:"8745310",colesProductDescription:"Coles italian tomato paste",productThumbnailUrl:"/images/products/8745310.jpg",packSize:140,packUnit:"g",quantityInRecipe:95,quantityPerServing:23.75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"140g"},{id:"ing-012",displayName:"Reduced-salt vegetable stock",colesProductId:"9209229",colesProductDescription:"Campbell's real stock vegetable stock salt reduced",productThumbnailUrl:"/images/products/9209229.jpg",packSize:1e3,packUnit:"ml",quantityInRecipe:125,quantityPerServing:31.25,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"1L"},{id:"ing-013",displayName:"Shredded basil leaves, to serve",colesProductId:"3214521",colesProductDescription:"Coles herb punnets basil",productThumbnailUrl:"/images/products/3214521.jpg",packSize:15,packUnit:"g",quantityInRecipe:.25,quantityPerServing:.06,quantityUnit:"cup",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"15g"}]},{id:"black-bean-chicken-noodle-stir-fry",name:"Black Bean Chicken & Hokkien Noodle Stir-Fry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/black-bean-chicken-noodle-stir-fry",imageUrl:"/images/recipes/black-bean-chicken-noodle-stir-fry.jpg",prepTimeMinutes:10,cookTimeMinutes:20,difficulty:"easy",baseServings:4,estimatedCostBase:28,nutrition:{perServing:{energyKj:null,energyCal:755,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"chicken"},method:["Place noodles in a heatproof bowl. Cover with boiling water. Set aside for 2-3 mins or until heated through. Drain.","Heat half the oil in a wok or large frying pan over high heat.","Add one-third of the chicken and cook, stirring, for 2-3 mins or until golden and cooked through. Transfer to a bowl. Repeat, in batches, with the remaining chicken.","Heat the remaining oil in the wok or frying pan.","Add the onion, garlic, ginger and beans and cook, stirring, for 2 mins or until golden.","Return the chicken to the wok or pan with the noodles, black bean sauce, oyster sauce, soy sauce and cooking wine and cook, stirring, for 2-3 mins or until heated through.","Add the pak choy and cook, stirring, for 1-2 mins or until pak choy just wilts.","Add half the cashew and half the coriander and toss to combine.","Divide the chicken mixture among serving bowls.","Sprinkle with remaining cashew and coriander to serve."],ingredients:[{id:"ing-001",displayName:"400g pkts asia ready to eat hokkien noo
40dles",colesProductId:"3725327",colesProductDescription:"Coles asia hokkien ready to eat noodles 2 pack",productThumbnailUrl:"/images/products/3725327.jpg",packSize:400,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"x",isPantryStaple:!1,packSizeText:"400g"},{id:"ing-002",displayName:"Vegetable oil",colesProductId:"8211586",colesProductDescription:"Coles vegetable oil",productThumbnailUrl:"/images/products/8211586.jpg",packSize:4e3,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"4L"},{id:"ing-003",displayName:"Chicken thigh fillets",colesProductId:"2263317",colesProductDescription:"Coles RSPCA chicken thigh fillets small pack",productThumbnailUrl:"/images/products/2263317.jpg",packSize:700,packUnit:"g",quantityInRecipe:700,quantityPerServing:175,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 700g"},{id:"ing-004",displayName:"Red onion",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-005",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-006",displayName:"5cm-piece ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:null,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-007",displayName:"Green beans",colesProductId:"6252232",colesProductDescription:"Coles trimmed green beans",productThumbnailUrl:"/images/products/6252232.jpg",packSize:250,packUnit:"g",quantityInRecipe:100,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-008",displayName:"Black bean sauce",colesProductId:"60614",colesProductDescription:"Ayam black bean sauce",productThumbnailUrl:"/images/products/60614.jpg",packSize:210,packUnit:"ml",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"210mL"},{id:"ing-009",displayName:"Oyster sauce",colesProductId:"5332234",colesProductDescription:"Coles oyster sauce",productThumbnailUrl:"/images/products/5332234.jpg",packSize:300,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-010",displayName:"Soy sauce",colesProductId:"8399399",colesProductDescription:"Amoy dark soy sauce",productThumbnailUrl:"/images/products/8399399.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"250mL"},{id:"ing-011",displayName:"Chinese cooking wine",colesProductId:"1323322",colesProductDescription:"Double phoenix chinese cooking wine",productThumbnailUrl:"/images/products/1323322.jpg",packSize:640,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"640mL"},{id:"ing-012",displayName:"Pak choy",colesProductId:"5017430",colesProductDescription:"Coles organic choy pack",productThumbnailUrl:"/images/products/5017430.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"bunch",isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-013",displayName:"Dry-roasted cashews",colesProductId:"9738456",colesProductDescription:"Coles dry roasted cashews",productThumbnailUrl:"/images/products/9738456.jpg",packSize:750,packUnit:"g",quantityInRecipe:75,quantityPerServing:18.75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"750g"},{id:"ing-014",displayName:"Coriander sprigs",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"15g"}]},{id:"curtis-stones-easy-lasagne",name:"Easy Lasagne (Curtis Stone)",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/curtis-stones-easy-lasagne",imageUrl:"/images/recipes/curtis-stones-easy-lasagne.jpg",prepTimeMinutes:15,cookTimeMinutes:50,difficulty:"medium",baseServings:4,estimatedCostBase:30,nutrition:null,tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"beef"},method:["Position a rack in top third of oven and preheat oven to 190°C (170°C fan-forced). Heat a large non-stick frying pan over high heat. Add the mince and cook, stirring to break up lumps, for 3 mins or until cooked through. Add the pasta sauce and ½ cup (125ml) water. Season with salt and pepper.","Spoon about ¾ cup of the mince mixture over a 20cm x 24cm baking dish and reserve another ¾ cup mince mixture for the top. Place 2 lasagne sheets in the dish. Spread with 1½ cups mince mixture, then sprinkle with ½ cup (50g) mozzarella and 1 tbs parmesan. Repeat twice to make 2 more layers.","Top with the remaining 2 lasagne sheets and spread with reserved mince mixture. Cover the dish with foil.","Bake for 30 mins or until the pasta is tender. Uncover and sprinkle with remaining 1 cup (100g) mozzarella and 1 tbs parmesan. Bake for 15 mins or until mozzarella melts and is browned. Set aside for 10 mins to rest before serving."],ingredients:[{id:"ing-001",displayName:"Bolognese mince",colesProductId:"8782237",colesProductDescription:"Coles pork & beef 3 star regular mince bolognese",productThumbn
40ailUrl:"/images/products/8782237.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"500g jars tomato pasta sauce",colesProductId:"6522938",colesProductDescription:"Coles simply classic tomato pasta sauce",productThumbnailUrl:"/images/products/6522938.jpg",packSize:510,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"x",isPantryStaple:!1,packSizeText:"510g"},{id:"ing-003",displayName:"Instant dried lasagne sheets",colesProductId:"7712156",colesProductDescription:"Coles kitchen pasta lasagne sheets",productThumbnailUrl:"/images/products/7712156.jpg",packSize:375,packUnit:"g",quantityInRecipe:8,quantityPerServing:2,quantityUnit:null,isPantryStaple:!1,packSizeText:"375g"},{id:"ing-004",displayName:"Shredded mozzarella, divided",colesProductId:"1413334",colesProductDescription:"Coles mozzarella shredded cheese",productThumbnailUrl:"/images/products/1413334.jpg",packSize:700,packUnit:"g",quantityInRecipe:250,quantityPerServing:62.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"700g"},{id:"ing-005",displayName:"Finely grated parmesan, divided",colesProductId:"5235453",colesProductDescription:"Coles grated parmesan cheese",productThumbnailUrl:"/images/products/5235453.jpg",packSize:100,packUnit:"g",quantityInRecipe:25,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"100g"}]},{id:"pumpkin-and-spinach-risotto",name:"Pumpkin & Spinach Risotto (Slow Cooker)",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/pumpkin-and-spinach-risotto",imageUrl:"/images/recipes/pumpkin-and-spinach-risotto.jpg",prepTimeMinutes:10,cookTimeMinutes:null,difficulty:"easy",baseServings:6,estimatedCostBase:18,nutrition:{perServing:{energyKj:null,energyCal:316,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!0,highProtein:!1,dairyFree:!1,protein:"vegetarian"},method:["Heat half the oil in a large frying pan over medium heat. Add the onion and cook, stirring, for 5 mins or until the onion softens and is golden brown. Add the garlic and rice and cook, stirring, for 1 min or until the grains appear glassy. Transfer the rice mixture to a slow cooker.","Heat the remaining oil in the pan over medium-high heat. Add the pumpkin and cook, without stirring, for 2 mins. Cook, stirring, for a further 2 mins or until lightly browned. Transfer the pumpkin to the slow cooker.","Add thyme and stock to the slow cooker and stir to combine. Cover and cook for 2¾ hours on low or until rice is tender and risotto is creamy, stirring 3-4 times in the last 45 mins of cooking.","Remove thyme sprigs and discard. Add the spinach and parmesan and stir to combine. Divide the risotto among serving bowls. Season and top with extra parmesan to serve."],ingredients:[{id:"ing-001",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-002",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-003",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.33,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-004",displayName:"Arborio rice",colesProductId:"8465788",colesProductDescription:"Cucina matese arborio rice",productThumbnailUrl:"/images/products/8465788.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:300,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"}
40,{id:"ing-005",displayName:"Butternut pumpkin",colesProductId:"2859066",colesProductDescription:"Coles kitchen australian diced butternut pumpkin",productThumbnailUrl:"/images/products/2859066.jpg",packSize:500,packUnit:"g",quantityInRecipe:800,quantityPerServing:133.33,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-006",displayName:"Thyme sprigs",colesProductId:"3215171",colesProductDescription:"Coles herb punnets thyme",productThumbnailUrl:"/images/products/3215171.jpg",packSize:10,packUnit:"g",quantityInRecipe:2,quantityPerServing:.33,quantityUnit:null,isPantryStaple:!1,packSizeText:"10g"},{id:"ing-007",displayName:"Salt-reduced vegetable stock",colesProductId:"9209229",colesProductDescription:"Campbell's real stock vegetable stock salt reduced",productThumbnailUrl:"/images/products/9209229.jpg",packSize:1e3,packUnit:"ml",quantityInRecipe:1.125,quantityPerServing:.19,quantityUnit:"l",isPantryStaple:!1,packSizeText:"1L"},{id:"ing-008",displayName:"Baby spinach",colesProductId:"1499486",colesProductDescription:"Coles baby spinach",productThumbnailUrl:"/images/products/1499486.jpg",packSize:60,packUnit:"g",quantityInRecipe:60,quantityPerServing:30,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"60g"},{id:"ing-009",displayName:"Finely grated parmesan",colesProductId:"5235453",colesProductDescription:"Coles grated parmesan cheese",productThumbnailUrl:"/images/products/5235453.jpg",packSize:100,packUnit:"g",quantityInRecipe:20,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"100g"},{id:"ing-010",displayName:"Finely grated parmesan, extra, to serve",colesProductId:"5235453",colesProductDescription:"Coles grated parmesan cheese",productThumbnailUrl:"/images/products/5235453.jpg",packSize:100,packUnit:"g",quantityInRecipe:null,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"100g"}]},{id:"lamb-chops",name:"Lemon & Rosemary Lamb Chops",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/lamb-chops",imageUrl:"/images/recipes/lamb-chops.jpg",prepTimeMinutes:10,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:28,nutrition:{perServing:{energyKj:null,energyCal:408,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!0,highProtein:!0,dairyFree:!1,protein:"lamb"},method:["Place lamb on a baking tray in a single layer.","To make marinade, combine oil, lemon rind, lemon pepper, garlic powder, and chopped rosemary in a small bowl. Season with salt.","Spread half the marinade over lamb. Turn lamb and spread with the remaining marinade. Set aside for 15 mins or cover and place in the fridge overnight to develop the flavours.","Heat a greased barbecue or chargrill pan over medium-high heat.","Cook lamb chops in batches for 3 mins each side for medium-rare or until cooked to your liking. Transfer to a warm plate and set aside for 5 mins to rest.","Meanwhile, place butter, garlic cloves and rosemary sprigs in a small saucepan over the lowest heat. Cook for 5 mins or until garlic is pale golden.","Stir in lemon juice and resting juices from lamb.","Drizzle lamb with garlic rosemary butter. Serve with beans, potatoes and lemon wedges."],ingredients:[{id:"ing-001",displayName:"Lamb loin chops",colesProductId:"9917524",colesProductDescription:"Coles lamb loin chops",productThumbnailUrl:"/images/products/9917524.jpg",packSize:500,packUnit:"g",quantityInRecipe:8,quantityPerServing:2,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 500g"},{id:"ing-002",displayName:"Butter",colesProductId:"3169879",colesProductDescription:"Coles simply unsalted butter",productThumbnailUrl:"/images/products/3169879.jpg",packSize:250,packUnit:"g",quantityInRecipe:50,quantityPerServing:12.5,quantityUnit:"g",isPantryStaple:!0,packSizeText:"250g"},{id:"ing-003",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:3,quantityPerServing:.75,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-004",displayName:"Rosemary sprigs",colesProductId:"3214780",colesProductDescription:"Coles herb punnets rosemary",productThumbn
40ailUrl:"/images/products/3214780.jpg",packSize:10,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"10g"},{id:"ing-005",displayName:"Lemon juice",colesProductId:"5295557",colesProductDescription:"Coles lemon juice",productThumbnailUrl:"/images/products/5295557.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"250mL"},{id:"ing-006",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-007",displayName:"Finely grated lemon rind",colesProductId:"5295557",colesProductDescription:"Coles lemon juice",productThumbnailUrl:"/images/products/5295557.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"250mL"},{id:"ing-008",displayName:"Lemon pepper",colesProductId:"276690",colesProductDescription:"Hoyts lemon pepper",productThumbnailUrl:"/images/products/276690.jpg",packSize:50,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"50g"},{id:"ing-009",displayName:"Garlic powder",colesProductId:"287041",colesProductDescription:"Hoyts garlic powder",productThumbnailUrl:"/images/products/287041.jpg",packSize:25,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"25g"},{id:"ing-010",displayName:"Finely chopped rosemary leaves",colesProductId:"3214780",colesProductDescription:"Coles herb punnets rosemary",productThumbnailUrl:"/images/products/3214780.jpg",packSize:10,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"10g"},{id:"ing-011",displayName:"Steamed green beans",colesProductId:"6252232",colesProductDescription:"Coles trimmed green beans",productThumbnailUrl:"/images/products/6252232.jpg",packSize:250,packUnit:"g",quantityInRecipe:null,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-012",displayName:"Roast potatoes",colesProductId:"1182162",colesProductDescription:"Coles creme gold washed potatoes loose",productThumbnailUrl:"/images/products/1182162.jpg",packSize:150,packUnit:"g",quantityInRecipe:null,quantityPerServing:150,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 150g"},{id:"ing-013",displayName:"Lemon wedges",colesProductId:"5318302",colesProductDescription:"Coles lemons",productThumbnailUrl:null,packSize:120,packUnit:"g",quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"1 each"}]},{id:"sausage-and-veg-tray-bake",name:"Sausage & Veg Tray Bake",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/sausage-and-veg-tray-bake",imageUrl:"/images/recipes/sausage-and-veg-tray-bake.jpg",prepTimeMinutes:10,cookTimeMinutes:35,difficulty:"easy",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:null,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"pork"},method:["Preheat oven to 200°C. Heat a large frying pan over high heat. Cook the sausages, turning occasionally, for 5 mins or until brown all over.","Pour the diced tomato with garlic over the base of a 10-cup (2.5L) baking tray. Top with the onion, cut into wedges, capsicum and tomato. Sprinkle with oregano. Season. Add sausages and cherry tomatoes. Spray with olive oil spray. Bake for 30 mins or until the vegetables are tender and the sausages are cooked through.","Top with pesto and extra oregano to serve."],ingredients:[{id:"ing-001",displayName:"Finest selection sausages",colesProductId:"3569232",colesProductDescription:"Coles simply thin pork bbq sausages",productThumbnailUrl:"/images/products/3569232.jpg",packSize:560,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"560g"}
40,{id:"ing-002",displayName:"Can diced tomato",colesProductId:"4837111",colesProductDescription:"Cucina matese diced tomato",productThumbnailUrl:"/images/products/4837111.jpg",packSize:400,packUnit:"g",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"g",isPantryStaple:!1,packSizeText:"400g"},{id:"ing-003",displayName:"Red onion",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Yellow capsicum",colesProductId:"7215355",colesProductDescription:"Coles yellow capsicum",productThumbnailUrl:"/images/products/7215355.jpg",packSize:220,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 220g"},{id:"ing-005",displayName:"Vine-ripened tomatoes",colesProductId:"4835171",colesProductDescription:"Coles vine ripened tomatoes",productThumbnailUrl:"/images/products/4835171.jpg",packSize:500,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"500g"},{id:"ing-006",displayName:"Oregano sprigs",colesProductId:"3215091",colesProductDescription:"Coles herb punnets oregano",productThumbnailUrl:"/images/products/3215091.jpg",packSize:10,packUnit:"g",quantityInRecipe:.25,quantityPerServing:.06,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"10g"},{id:"ing-007",displayName:"Vine-ripened cherry tomatoes",colesProductId:"4835171",colesProductDescription:"Coles vine ripened tomatoes",productThumbnailUrl:"/images/products/4835171.jpg",packSize:500,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-008",displayName:"Basil pesto, to serve",colesProductId:"5419660",colesProductDescription:"Coles pesto basil",productThumbnailUrl:"/images/products/5419660.jpg",packSize:190,packUnit:"g",quantityInRecipe:null,quantityPerServing:10,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"190g"}]},{id:"classic-maple-mustard-chicken-tray-bake",name:"Maple Mustard Chicken Tray Bake",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/classic-maple-mustard-chicken-tray-bake",imageUrl:"/images/recipes/classic-maple-mustard-chicken-tray-bake.jpg",prepTimeMinutes:15,cookTimeMinutes:15,difficulty:"easy",baseServings:4,estimatedCostBase:28,nutrition:{perServing:{energyKj:null,energyCal:383,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!0,highProtein:!0,dairyFree:!0,protein:"chicken"},method:["Preheat oven to 210°C. Line a large baking tray with baking paper. Combine the maple syrup and mustard in a jug. Chop the vegetables and garlic from the roasting kit into 2cm pieces. Place on the lined tray with the rosemary. Add half the maple mixture and toss to coat. Roast for 5 mins.","Meanwhile, cut 3 deep slits in each chicken fillet. Season. Heat a large non-stick frying pan over high heat. Cook the chicken for 2 1/2 mins each side or until golden brown.","Place the chicken over the vegetables on the tray. Drizzle with the remaining maple mixture. Roast for 10 mins. Add the brussels sprouts to the tray. Roast for a further 10 mins or until the chicken is cooked through and the vegetables are tender."],ingredients:[{id:"ing-001",displayName:"Maple flavoured syrup",colesProductId:"5920924",colesProductDescription:"Coles maple flavoured syrup",productThumbnailUrl:"/images/products/5920924.jpg",packSize:375,packUnit:"g",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"375g"},{id:"ing-002",displayName:"Wholegrain mustard",colesProductId:"2421484",colesProductDescription:"Coles wholegrain mustard",productThumbnailUrl:"/images/products/2421484.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-003",displayName:"Roasting vegetables",colesProductId:"3505819",colesProductDescription:"Coles kitchen roasting vegetables with garlic and rosemary",productThumbn
40ailUrl:"/images/products/3505819.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-004",displayName:"Pkt (about 1kg) free range chicken breast fillets",colesProductId:"3227410",colesProductDescription:"Coles RSPCA approved free range chicken breast large pack",productThumbnailUrl:"/images/products/3227410.jpg",packSize:1250,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 1.25kg"},{id:"ing-005",displayName:"Brussels sprouts",colesProductId:"9989810",colesProductDescription:"Coles brussel sprouts baby",productThumbnailUrl:"/images/products/9989810.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"}]},{id:"beef-rissoles",name:"Beef Rissoles with Hidden Veggies",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/beef-rissoles",imageUrl:"/images/recipes/beef-rissoles.jpg",prepTimeMinutes:15,cookTimeMinutes:20,difficulty:"easy",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:365,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"beef"},method:["Combine the mince, carrot, zucchini, onion, breadcrumbs, egg, barbecue sauce and mustard in a large bowl and season. Divide the mixture into 12 portions and shape each portion into an 8cm patty. Place on a plate in the fridge for 10 mins to chill.","Spray a large frying pan with olive oil spray and place over medium-high heat. Cook rissoles, in batches, for 3â4 mins each side or until golden brown and cooked through.","Serve rissoles with gravy, steamed vegetables or a salad."],ingredients:[{id:"ing-001",displayName:"No added hormones 3 star beef mince",colesProductId:"8112799",colesProductDescription:"Coles no added hormone beef 5 star extra lean mince",productThumbnailUrl:"/images/products/8112799.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Carrot",colesProductId:"4223335",colesProductDescription:"Coles carrots loose",productThumbnailUrl:"/images/products/4223335.jpg",packSize:170,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 170g"},{id:"ing-003",displayName:"Zucchini",colesProductId:"4910506",colesProductDescription:"Coles green zucchini",productThumbnailUrl:"/images/products/4910506.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-005",displayName:"1 cup (100g) breadcrumbs (made from day-old bread)",colesProductId:"9305277",colesProductDescription:"Coles simply breadcrumbs",productThumbnailUrl:"/images/products/9305277.jpg",packSize:500,packUnit:"g",quantityInRecipe:100,quantityPerServing:25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-006",displayName:"Free range egg",colesProductId:"6802242",colesProductDescription:"Fyfe family farm free range eggs 12 pack",productThumbnailUrl:"/images/products/6802242.jpg",packSize:700,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!0,packSizeText:"700g"},{id:"ing-007",displayName:"Bbq sauce",colesProductId:"4304801",colesProductDescription:"Coles 30% sugar reduced bbq sauce",productThumbnailUrl:"/images/products/4304801.jpg",packSize:500,packUnit:"ml",quantityInRecipe:60,quantityPerServing:15,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"500mL"},{id:"ing-008",displayName:"Dijon mustard",colesProductId:"5434948",colesProductDescription:"Masterfoods dijon mustard",productThumbn
40ailUrl:"/images/products/5434948.jpg",packSize:170,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"170g"},{id:"ing-009",displayName:"Traditional gravy, to serve",colesProductId:"4999805",colesProductDescription:"Gravox traditional liquid gravy pouch",productThumbnailUrl:null,packSize:165,packUnit:"g",quantityInRecipe:null,quantityPerServing:40,quantityUnit:"g",isPantryStaple:!1,packSizeText:"165g"},{id:"ing-010",displayName:"Steamed vegetables, to serve",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:null}]},{id:"vegan-pumpkin-risotto",name:"Vegan Pumpkin Risotto",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/vegan-pumpkin-risotto",imageUrl:"/images/recipes/vegan-pumpkin-risotto.jpg",prepTimeMinutes:15,cookTimeMinutes:null,difficulty:"easy",baseServings:4,estimatedCostBase:18,nutrition:{perServing:{energyKj:null,energyCal:567,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!0,highProtein:!1,dairyFree:!0,protein:"vegetarian"},method:["Heat oil in a medium frying pan over medium heat. Add the onion and cook, stirring, for 5 mins or until onion softens. Add garlic and rice and cook, stirring, for 1 min or until aromatic and grains appear glassy. Transfer to a slow cooker.","Add the pumpkin, thyme and stock. Cover and cook on high for 1½ hours. Alternatively, cook rice mixture in a large saucepan over medium heat. Add pumpkin, thyme and stock. Cook for 20-25 mins or until liquid is absorbed and rice is tender.","Add the nutritional yeast and 1/2 cup (125ml) boiling water to risotto and stir to combine. Season.","Divide among serving bowls. Top with the pepitas and extra thyme."],ingredients:[{id:"ing-001",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-002",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-003",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-004",displayName:"Arborio rice",colesProductId:"8465788",colesProductDescription:"Cucina matese arborio rice",productThumbnailUrl:"/images/products/8465788.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:300,quantityPerServing:75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-005",displayName:"Butternut pumpkin",colesProductId:"2859066",colesProductDescription:"Coles kitchen australian diced butternut pumpkin",productThumbnailUrl:"/images/products/2859066.jpg",packSize:500,packUnit:"g",quantityInRecipe:750,quantityPerServing:187.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-006",displayName:"Thyme sprigs",colesProductId:"3215171",colesProductDescription:"Coles herb punnets thyme",productThumbnailUrl:"/images/products/3215171.jpg",packSize:10,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"10g"},{id:"ing-007",displayName:"Salt-reduced vegetable stock, warmed",colesProductId:"9209229",colesProductDescription:"Campbell's real stock vegetable stock salt reduced",productThumbnailUrl:"/images/products/9209229.jpg",packSize:1e3,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"l",isPantryStaple:!1,packSizeText:"1L"},{id:"ing-008",displayName:"Wellness road nutritional yeast flakes",colesProductId:"3131253",colesProductDescription:"Wellness road nutritional yeast flakes",productThumbn
40ailUrl:"/images/products/3131253.jpg",packSize:200,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-009",displayName:"1/3 cup (65g) pepitas (pumpkin seeds)",colesProductId:"2859066",colesProductDescription:"Coles kitchen australian diced butternut pumpkin",productThumbnailUrl:"/images/products/2859066.jpg",packSize:500,packUnit:"g",quantityInRecipe:65,quantityPerServing:16.25,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-010",displayName:"Thyme sprigs, extra, to serve",colesProductId:"3215171",colesProductDescription:"Coles herb punnets thyme",productThumbnailUrl:"/images/products/3215171.jpg",packSize:10,packUnit:"g",quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"10g"}]},{id:"teriyaki-chicken-stir-fry",name:"Teriyaki Chicken Stir-Fry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/teriyaki-chicken-stir-fry",imageUrl:"/images/recipes/teriyaki-chicken-stir-fry.jpg",prepTimeMinutes:10,cookTimeMinutes:15,difficulty:"easy",baseServings:4,estimatedCostBase:20,nutrition:{perServing:{energyKj:null,energyCal:334,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!0,protein:"chicken"},method:["Cook rice in a large saucepan, following packet instructions.","Meanwhile, heat a non-stick wok over high heat. Stir-fry chicken, in 3 batches, for 4 mins or until browned and cooked through. Transfer to a bowl and cover to keep warm.","Return chicken and any pan juices to the wok with the stir -fry mix and sauce with 1/4 cup (60ml) water, stir-fry 3 mins or until vegetables have softened.","Serve stir-fry on rice and sprinkle with spring onions."],ingredients:[{id:"ing-001",displayName:"White long grain rice",colesProductId:"8703004",colesProductDescription:"Coles jasmine rice",productThumbnailUrl:"/images/products/8703004.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:300,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-002",displayName:"Chicken breast fillets",colesProductId:"2263179",colesProductDescription:"Coles RSPCA approved chicken breast fillets large pack",productThumbnailUrl:"/images/products/2263179.jpg",packSize:1400,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 1.4kg"},{id:"ing-003",displayName:"Kitchen family stir-fry mix",colesProductId:"6133889",colesProductDescription:"Coles kitchen family stir fry mix",productThumbnailUrl:"/images/products/6133889.jpg",packSize:400,packUnit:"g",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"g",isPantryStaple:!1,packSizeText:"400g"},{id:"ing-004",displayName:"Teriyaki sauce",colesProductId:"5007594",colesProductDescription:"Kikkoman gluten free sauce thick teriyaki",productThumbnailUrl:"/images/products/5007594.jpg",packSize:240,packUnit:"g",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"240g"},{id:"ing-005",displayName:"Spring onion",colesProductId:"408419",colesProductDescription:"Coles spring onions",productThumbnailUrl:"/images/products/408419.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Bunch"}]},{id:"lamb-kofta-salad",name:"Lamb Kofta Salad",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/lamb-kofta-salad",imageUrl:"/images/recipes/lamb-kofta-salad.jpg",prepTimeMinutes:20,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:24,nutrition:null,tags:{quick:!0,glutenFree:!0,highProtein:!0,dairyFree:!0,protein:"lamb"},method:["Combine the mince, olive, spring onion and garlic in a medium bowl. Season. Divide into 16 portions and roll each portion into an oval shape. Drizzle with oil and toss to coat.","Heat a barbecue grill or chargrill on medium. Cook the koftas, turning occasionally, for 10 mins or until cooked through.","Combine salad leaves from the salad kit with tomato, onion and pomegranate seeds in a large bowl. Arrange on a serving dish. Top with kofta. Sprinkle with almond from the salad kit. Season. Combine the dressing from the salad kit with extra oil in a small jug. Drizzle over the salad to serve."],ingredients:[{id:"ing-001",displayName:"Graze lamb mince",colesProductId:"8850461",colesProductDescription:"Coles 3 star lamb mince",productThumbn
40ailUrl:"/images/products/8850461.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-002",displayName:"Pitted sicilian olives",colesProductId:"2748054",colesProductDescription:"Always fresh olives sicilian pitted",productThumbnailUrl:"/images/products/2748054.jpg",packSize:230,packUnit:"g",quantityInRecipe:40,quantityPerServing:10,quantityUnit:"g",isPantryStaple:!1,packSizeText:"230g"},{id:"ing-003",displayName:"Spring onions",colesProductId:"408419",colesProductDescription:"Coles spring onions",productThumbnailUrl:"/images/products/408419.jpg",packSize:null,packUnit:null,quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-004",displayName:"Garlic clove",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-005",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-006",displayName:"Golden supergreen salad kit",colesProductId:"8209722",colesProductDescription:"Coles 4 leaf salad mix",productThumbnailUrl:"/images/products/8209722.jpg",packSize:200,packUnit:"g",quantityInRecipe:250,quantityPerServing:62.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-007",displayName:"Mixed tomatoes",colesProductId:"9129094",colesProductDescription:"Coles perino tomatoes entertainer medley",productThumbnailUrl:"/images/products/9129094.jpg",packSize:350,packUnit:"g",quantityInRecipe:350,quantityPerServing:87.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"350g"},{id:"ing-008",displayName:"Red onion",colesProductId:"8467604",colesProductDescription:"Coles red onion 1 kg",productThumbnailUrl:"/images/products/8467604.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:null,isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-009",displayName:"Pomegranate seeds",colesProductId:"3394682",colesProductDescription:"Coles frozen pomegranate arils",productThumbnailUrl:"/images/products/3394682.jpg",packSize:250,packUnit:"g",quantityInRecipe:.333,quantityPerServing:.08,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-010",displayName:"Olive oil, extra",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:2,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!0,packSizeText:"250mL"}]},{id:"oven-baked-mushroom-risotto-with-pesto",name:"Oven-Baked Mushroom Risotto with Pesto",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/oven-baked-mushroom-risotto-with-pesto",imageUrl:"/images/recipes/oven-baked-mushroom-risotto-with-pesto.jpg",prepTimeMinutes:10,cookTimeMinutes:null,difficulty:"medium",baseServings:6,estimatedCostBase:32,nutrition:{perServing:{energyKj:null,energyCal:578,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!0,highProtein:!1,dairyFree:!1,protein:"vegetarian"},method:["Preheat oven to 150°C. Heat half the oil in a flameproof casserole pan over medium heat. Add leek, fennel, onion and garlic and cook, stirring, for 5 mins or until onion softens. Transfer to a bowl.","Heat remaining oil in the pan. Add brown mushroom and cook, stirring, for 2-3 mins or until light golden. Remove from heat. Stir in the onion mixture, porcini mushrooms, wine, rice and stock.","Cover and bake for 1 hour or until rice is tender and liquid is almost absorbed. Set aside, covered, for 5 mins.","Meanwhile, to make the chive pesto, process the rocket, chive, garlic, parmesan and almond in a food processor until finely chopped. With the motor running, add the oil in a thin, steady stream until combined. Season.","Stir the parmesan and half the mascarpone into the risotto. Divide the risotto among serving bowls. Top with remaining mascarpone and chive pesto."],ingredients:[{id:"ing-001",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbn
40ailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-002",displayName:"Leek, pale section only",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.17,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-003",displayName:"Fennel",colesProductId:"4910980",colesProductDescription:"Coles fennel",productThumbnailUrl:"/images/products/4910980.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.17,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-004",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-005",displayName:"Garlic clove",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-006",displayName:"Brown mushrooms, thickly sliced",colesProductId:"4829703",colesProductDescription:"Coles brown mushrooms prepacked",productThumbnailUrl:"/images/products/4829703.jpg",packSize:200,packUnit:"g",quantityInRecipe:200,quantityPerServing:33.33,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-007",displayName:"Dried porcini mushrooms",colesProductId:"1597850",colesProductDescription:"Coles dried porcini mushrooms",productThumbnailUrl:"/images/products/1597850.jpg",packSize:20,packUnit:"g",quantityInRecipe:20,quantityPerServing:3.33,quantityUnit:"g",isPantryStaple:!1,packSizeText:"20g"},{id:"ing-008",displayName:"Dry white wine",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:125,quantityPerServing:20.83,quantityUnit:"ml",isPantryStaple:!1,packSizeText:null},{id:"ing-009",displayName:"Arborio rice",colesProductId:"8465788",colesProductDescription:"Cucina matese arborio rice",productThumbnailUrl:"/images/products/8465788.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:400,quantityPerServing:66.67,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-010",displayName:"Vegetable stock",colesProductId:"7152084",colesProductDescription:"Coles stock liquid real vegetable",productThumbnailUrl:"/images/products/7152084.jpg",packSize:1e3,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:"l",isPantryStaple:!1,packSizeText:"1L"},{id:"ing-011",displayName:"Finely grated parmesan",colesProductId:"5235453",colesProductDescription:"Coles grated parmesan cheese",productThumbnailUrl:"/images/products/5235453.jpg",packSize:100,packUnit:"g",quantityInRecipe:40,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"100g"},{id:"ing-012",displayName:"Mascarpone",colesProductId:"2212600",colesProductDescription:"Coles mascarpone",productThumbnailUrl:"/images/products/2212600.jpg",packSize:250,packUnit:"g",quantityInRecipe:125,quantityPerServing:20.83,quantityUnit:"g",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-013",displayName:"Baby rocket",colesProductId:"1499759",colesProductDescription:"Coles baby rocket",productThumbnailUrl:"/images/products/1499759.jpg",packSize:60,packUnit:"g",quantityInRecipe:60,quantityPerServing:10,quantityUnit:"g",isPantryStaple:!1,packSizeText:"60g"},{id:"ing-014",displayName:"Finely chopped chives",colesProductId:"3214747",colesProductDescription:"Coles herb punnets chives",productThumbnailUrl:"/images/products/3214747.jpg",packSize:10,packUnit:"g",quantityInRecipe:.25,quantityPerServing:.04,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"10g"},{id:"ing-015",displayName:"Garlic clove",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbn
40ailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-016",displayName:"Finely grated parmesan",colesProductId:"5235453",colesProductDescription:"Coles grated parmesan cheese",productThumbnailUrl:"/images/products/5235453.jpg",packSize:100,packUnit:"g",quantityInRecipe:20,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"100g"},{id:"ing-017",displayName:"Slivered almonds",colesProductId:"2749432",colesProductDescription:"Coles slivered almond",productThumbnailUrl:"/images/products/2749432.jpg",packSize:150,packUnit:"g",quantityInRecipe:35,quantityPerServing:5.83,quantityUnit:"g",isPantryStaple:!1,packSizeText:"150g"},{id:"ing-018",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:80,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"}]},{id:"chicken-masala",name:"Chicken Masala",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/chicken-masala",imageUrl:"/images/recipes/chicken-masala.jpg",prepTimeMinutes:10,cookTimeMinutes:25,difficulty:"easy",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:301,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!0,highProtein:!0,dairyFree:!1,protein:"chicken"},method:["Heat 2 tsp oil in a medium saucepan over medium heat.","Cook the chicken, in 2 batches, stirring, for 5 mins or until browned. Transfer chicken to a plate.","Heat remaining 1 tbs oil in the saucepan over medium heat. Add onion, garlic, ginger, curry powder and salt and cook, stirring, for 5 mins or until onion begins to caramelise.","Add the tomatoes and 1 1/3 cups (330ml) water. Bring to a simmer and use a wooden spoon to scrape the base of the pan.","Return chicken to pan and reduce heat to low. Simmer, stirring, for 10 mins or until chicken is tender. Remove from heat and stir in cream. Season.","To freeze, cool slightly and divide the chicken mixture among 4 mini round glass containers. Set aside to cool completely. Cover with lids and freeze for up to 1 month.","To reheat, remove from freezer and thaw overnight in the fridge.","Preheat oven to 160°C (140°C fan-forced). Remove lids and cover glass containers with foil. Place on a baking tray and bake for 10 mins.","Stir mixture and bake, covered, for a further 10 mins or until heated through.","Divide rice among serving bowls. Spoon over chicken masala. Top with coriander and serve with lime wedges."],ingredients:[{id:"ing-001",displayName:"1/2 tbs vegetable oil, divided",colesProductId:"4574919",colesProductDescription:"Coles blended vegetable oil",productThumbnailUrl:"/images/products/4574919.jpg",packSize:750,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"750mL"},{id:"ing-002",displayName:"Chicken breast fillets",colesProductId:"2263168",colesProductDescription:"Coles RSPCA approved chicken breast fillets small pack",productThumbnailUrl:"/images/products/2263168.jpg",packSize:600,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 600g"},{id:"ing-003",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-005",displayName:"2cm-piece ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbn
40ailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:null,quantityPerServing:20,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-006",displayName:"Curry powder",colesProductId:"121297",colesProductDescription:"Clive of india curry powder",productThumbnailUrl:"/images/products/121297.jpg",packSize:100,packUnit:"g",quantityInRecipe:3,quantityPerServing:.75,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"100g"},{id:"ing-007",displayName:"Salt",colesProductId:"8766810",colesProductDescription:"Coles simply table salt",productThumbnailUrl:"/images/products/8766810.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"1Kg"},{id:"ing-008",displayName:"Crushed tomatoes",colesProductId:"1871113",colesProductDescription:"Klein's crushed tomatoes",productThumbnailUrl:"/images/products/1871113.jpg",packSize:700,packUnit:"ml",quantityInRecipe:270,quantityPerServing:67.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"700mL"},{id:"ing-009",displayName:"Salt",colesProductId:"8766810",colesProductDescription:"Coles simply table salt",productThumbnailUrl:"/images/products/8766810.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tsp",isPantryStaple:!0,packSizeText:"1Kg"},{id:"ing-010",displayName:"Thickened cream",colesProductId:"246973",colesProductDescription:"Coles thickened cream",productThumbnailUrl:"/images/products/246973.jpg",packSize:300,packUnit:"ml",quantityInRecipe:80,quantityPerServing:20,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"300mL"},{id:"ing-011",displayName:"Steamed rice, to serve",colesProductId:"8703059",colesProductDescription:"Coles basmati rice",productThumbnailUrl:"/images/products/8703059.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:null,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1Kg"},{id:"ing-012",displayName:"Coriander",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tsp",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"15g"},{id:"ing-013",displayName:"Lime wedges, to serve",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:null}]},{id:"hamburger-recipe",name:"Classic Hamburger",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/hamburger-recipe",imageUrl:"/images/recipes/hamburger-recipe.jpg",prepTimeMinutes:10,cookTimeMinutes:10,difficulty:"easy",baseServings:4,estimatedCostBase:28,nutrition:{perServing:{energyKj:null,energyCal:776,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!0,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"beef"},method:["Thinly slice one onion. Finely chop the remaining onion.","Heat a lightly oiled saucepan over medium heat. Cook chopped onion, stirring, for 5 mins or until soft. Transfer to a bowl. Add beef mince. Season. Using your hands, mix to combine. Form the mixture into four even patties slightly larger than the diameter of the buns.","Spread the burger sauce over the bun tops and bases. Top each bun base with lettuce, a beef patty, tomato, sliced onion and pickles. Cover with the bun tops.","Serve hamburgers with fries and extra burger sauce."],ingredients:[{id:"ing-001",displayName:"Red onions",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-002",displayName:"3 star beef mince regular",colesProductId:"6065982",colesProductDescription:"El- amin's beef mince",productThumbnailUrl:"/images/products/6065982.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:800,quantityPerServing:200,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-003",displayName:"Tasty light cheddar slices",colesProductId:"5433027",colesProductDescription:"Coles tasty light cheese slice
40s 24 pack",productThumbnailUrl:"/images/products/5433027.jpg",packSize:500,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"500g"},{id:"ing-004",displayName:"(80ml ) special burger sauce",colesProductId:"3041398",colesProductDescription:"Coles special burger sauce",productThumbnailUrl:"/images/products/3041398.jpg",packSize:360,packUnit:"g",quantityInRecipe:.333,quantityPerServing:.08,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"360g"},{id:"ing-005",displayName:"Hamburger rolls, split",colesProductId:"5696751",colesProductDescription:"Coles simply hamburger rolls",productThumbnailUrl:"/images/products/5696751.jpg",packSize:540,packUnit:"g",quantityInRecipe:4,quantityPerServing:1,quantityUnit:null,isPantryStaple:!1,packSizeText:"540g"},{id:"ing-006",displayName:"Baby gem lettuce leaves",colesProductId:"2584547",colesProductDescription:"Coles baby gem lettuce",productThumbnailUrl:"/images/products/2584547.jpg",packSize:null,packUnit:null,quantityInRecipe:8,quantityPerServing:2,quantityUnit:null,isPantryStaple:!1,packSizeText:"3 Pack"},{id:"ing-007",displayName:"Tomato, thickly sliced",colesProductId:"4628676",colesProductDescription:"Coles tomatoes greenhouse truss",productThumbnailUrl:null,packSize:130,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-008",displayName:"Pickled cucumber slices",colesProductId:"5433027",colesProductDescription:"Coles tasty light cheese slices 24 pack",productThumbnailUrl:"/images/products/5433027.jpg",packSize:500,packUnit:"g",quantityInRecipe:12,quantityPerServing:3,quantityUnit:null,isPantryStaple:!1,packSizeText:"500g"},{id:"ing-009",displayName:"French fries",colesProductId:"6477549",colesProductDescription:"Coles frozen french fries",productThumbnailUrl:"/images/products/6477549.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:null,quantityPerServing:100,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"}]},{id:"chickpea-carrot-and-lemon-curry",name:"Chickpea, Carrot & Lemon Curry (Slow Cooker)",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/chickpea-carrot-and-lemon-curry",imageUrl:"/images/recipes/chickpea-carrot-and-lemon-curry.jpg",prepTimeMinutes:15,cookTimeMinutes:null,difficulty:"easy",baseServings:6,estimatedCostBase:20,nutrition:{perServing:{energyKj:null,energyCal:560,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!0,highProtein:!1,dairyFree:!0,protein:"legumes"},method:["Place the chickpeas in a large bowl. Cover with cold water. Set aside to soak overnight. Drain well.","Combine oil, onion, coriander stem, ginger, garlic, chilli, if using, turmeric and garam masala in a slow cooker. Stir to combine.","Thinly slice 1 lemon. Add chickpeas, coconut milk, carrot, sliced lemon and 2 cups (500ml) water to the onion mixture in the slow cooker. Cover and cook for 8 hours on low or until the chickpeas and carrots are tender.","Juice the remaining lemon. Add kale to the slow cooker and stir to combine. Cook for 5 mins or until kale wilts. Add the lemon juice and stir to combine.","Divide the chickpea mixture and rice among serving bowls. Sprinkle with reserved coriander leaves to serve.","To save time, use 2 x 400g cans chickpeas, rinsed, drained. Add them to the slow cooker for the last 15 mins of cooking."],ingredients:[{id:"ing-001",displayName:"Dried chickpeas (see tip)",colesProductId:"9887321",colesProductDescription:"Royal fields kabuli chickpeas",productThumbnailUrl:"/images/products/9887321.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:500,quantityPerServing:83.33,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-002",displayName:"Vegetable oil",colesProductId:"8211586",colesProductDescription:"Coles vegetable oil",productThumbnailUrl:"/images/products/8211586.jpg",packSize:4e3,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:"tbsp",isPantryStaple:!0,packSizeText:"4L"},{id:"ing-003",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbn
40ailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Coriander, stems finely chopped, leaves reserved",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:"bunch",isPantryStaple:!1,packSizeText:"15g"},{id:"ing-005",displayName:"Finely grated ginger",colesProductId:"5034484",colesProductDescription:"Coles ginger loose",productThumbnailUrl:"/images/products/5034484.jpg",packSize:130,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"approx. 130g"},{id:"ing-006",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:2,quantityPerServing:.33,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-007",displayName:"Long red chilli",colesProductId:"1501635",colesProductDescription:"Coles red cayanne chillies",productThumbnailUrl:"/images/products/1501635.jpg",packSize:50,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:null,isPantryStaple:!1,packSizeText:"50g"},{id:"ing-008",displayName:"Ground turmeric",colesProductId:"8983341",colesProductDescription:"Coles turmeric ground",productThumbnailUrl:"/images/products/8983341.jpg",packSize:47,packUnit:"g",quantityInRecipe:1,quantityPerServing:.17,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"47g"},{id:"ing-009",displayName:"Lemons",colesProductId:"5318302",colesProductDescription:"Coles lemons",productThumbnailUrl:"/images/products/5318302.jpg",packSize:null,packUnit:null,quantityInRecipe:2,quantityPerServing:.33,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Each"},{id:"ing-010",displayName:"Garam masala",colesProductId:"8987477",colesProductDescription:"Coles garam masala",productThumbnailUrl:"/images/products/8987477.jpg",packSize:42,packUnit:"g",quantityInRecipe:2,quantityPerServing:.33,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"42g"},{id:"ing-011",displayName:"Coconut milk",colesProductId:"3924527",colesProductDescription:"Coles coconut milk",productThumbnailUrl:"/images/products/3924527.jpg",packSize:400,packUnit:"ml",quantityInRecipe:800,quantityPerServing:133.33,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"400mL"},{id:"ing-012",displayName:"Bunches dutch carrots",colesProductId:"4924034",colesProductDescription:"Coles dutch carrots",productThumbnailUrl:null,packSize:500,packUnit:"g",quantityInRecipe:2,quantityPerServing:.33,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 bunch"},{id:"ing-013",displayName:"Chopped kale",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:70,quantityPerServing:11.67,quantityUnit:"g",isPantryStaple:!1,packSizeText:"15g"},{id:"ing-014",displayName:"Steamed basmati rice, to serve",colesProductId:"8703059",colesProductDescription:"Coles basmati rice",productThumbnailUrl:"/images/products/8703059.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:null,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1Kg"}]},{id:"chicken-masala-skewers-with-turmeric-rice",name:"Chicken Masala Skewers with Turmeric Rice",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/chicken-masala-skewers-with-turmeric-rice",imageUrl:"/images/recipes/chicken-masala-skewers-with-turmeric-rice.jpg",prepTimeMinutes:10,cookTimeMinutes:20,difficulty:"medium",baseServings:4,estimatedCostBase:22,nutrition:{perServing:{energyKj:null,energyCal:488,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"chicken"},method:["Combine rice, turmeric, ½ cup (125ml) coconut milk and 1 cup (250ml) water in a medium saucepan over high heat. Season and bring to the boil. Reduce heat to low and cook, covered, for 12 mins or until liquid is absorbed and rice is tender. Set aside, covered, for 5 mins to steam.","Meanwhile, combine the chicken, tikka masala paste and remaining coconut milk in a medium bowl. Season. Thread the chicken mixture onto 8 metal or soaked bamboo skewers.","Heat a barbecue or chargrill on medium-high.
40Cook the skewers, turning occasionally, for 8 mins or until cooked through. Transfer to a plate and loosely cover with foil. Set aside for 5 mins to rest.","Combine the onion, lemon zest and lemon juice in a large bowl. Season. Set aside for 5 mins to soak. Add the cucumber, coriander and mint and toss to combine.","Spoon turmeric rice and cucumber mixture among serving plates. Top with the skewers. Serve with the naan bread, yoghurt and mint leaves."],ingredients:[{id:"ing-001",displayName:"Basmati rice",colesProductId:"3933663",colesProductDescription:"Katoomba exotic basmati rice",productThumbnailUrl:"/images/products/3933663.jpg",packSize:5e3,packUnit:"g",quantityInRecipe:200,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"5kg"},{id:"ing-002",displayName:"Ground turmeric",colesProductId:"8983341",colesProductDescription:"Coles turmeric ground",productThumbnailUrl:"/images/products/8983341.jpg",packSize:47,packUnit:"g",quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:"tsp",isPantryStaple:!1,packSizeText:"47g"},{id:"ing-003",displayName:"Coconut milk",colesProductId:"3924527",colesProductDescription:"Coles coconut milk",productThumbnailUrl:"/images/products/3924527.jpg",packSize:400,packUnit:"ml",quantityInRecipe:160,quantityPerServing:40,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"400mL"},{id:"ing-004",displayName:"Chicken thigh fillets",colesProductId:"2263328",colesProductDescription:"Coles RSPCA approved chicken thigh fillets large pack",productThumbnailUrl:"/images/products/2263328.jpg",packSize:1200,packUnit:"g",quantityInRecipe:600,quantityPerServing:150,quantityUnit:"g",isPantryStaple:!1,packSizeText:"approx. 1.2kg"},{id:"ing-005",displayName:"Tikka masala paste",colesProductId:"1401696",colesProductDescription:"Patak's tikka spice rub",productThumbnailUrl:"/images/products/1401696.jpg",packSize:25,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"25g"},{id:"ing-006",displayName:"Red onion",colesProductId:"4218459",colesProductDescription:"Coles onions red local",productThumbnailUrl:"/images/products/4218459.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-007",displayName:"Lemon, zested, juiced",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-008",displayName:"Continental cucumber",colesProductId:"4559314",colesProductDescription:"Coles green cucumber",productThumbnailUrl:"/images/products/4559314.jpg",packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 each"},{id:"ing-009",displayName:"Coarsely chopped coriander",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"15g"},{id:"ing-010",displayName:"Finely shredded mint",colesProductId:"4575514",colesProductDescription:"Coles sleeved herbs mint",productThumbnailUrl:"/images/products/4575514.jpg",packSize:null,packUnit:null,quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"1 Bunch"},{id:"ing-011",displayName:"Chargrilled naan bread, to serve",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-012",displayName:"Greek-style yoghurt, to serve",colesProductId:"2273478",colesProductDescription:"Coles greek style natural yoghurt",productThumbnailUrl:"/images/products/2273478.jpg",packSize:1e3,packUnit:"g",quantityInRecipe:null,quantityPerServing:50,quantityUnit:"g",isPantryStaple:!1,packSizeText:"1kg"},{id:"ing-013",displayName:"Mint leaves, to serve",colesProductId:"4575514",colesProductDescription:"Coles sleeved herbs mint",productThumbn
40ailUrl:"/images/products/4575514.jpg",packSize:null,packUnit:null,quantityInRecipe:null,quantityPerServing:null,quantityUnit:null,isPantryStaple:!1,packSizeText:"1 Bunch"}]},{id:"easy-yellow-fish-curry",name:"Easy Yellow Fish Curry",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/easy-yellow-fish-curry",imageUrl:"/images/recipes/easy-yellow-fish-curry.jpg",prepTimeMinutes:10,cookTimeMinutes:25,difficulty:"easy",baseServings:4,estimatedCostBase:26,nutrition:null,tags:{quick:!1,glutenFree:!0,highProtein:!0,dairyFree:!0,protein:"fish"},method:["Heat the oil in a large wok over medium heat. Add the onion, carrot, zucchini and pumpkin and stir-fry for 5 mins or until the onion softens.","Add the curry paste. Cook, stirring, for 1 min or until fragrant and the vegetables are coated in paste. Stir in the coconut milk and bring to the boil. Reduce heat to medium-low. Simmer, covered, for 10 mins or until the pumpkin is tender.","Add the fish and stir gently to combine. Simmer, uncovered, for 5 mins or until the fish is cooked through. Season with salt and pepper.","Meanwhile, heat the basmati rice following packet directions.","Sprinkle the curry with coriander and fried shallots. Serve with the rice."],ingredients:[{id:"ing-001",displayName:"Peanut oil",colesProductId:"6870366",colesProductDescription:"Coles peanut oil",productThumbnailUrl:"/images/products/6870366.jpg",packSize:750,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"750mL"},{id:"ing-002",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-003",displayName:"Carrot",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-004",displayName:"Zucchini",colesProductId:"4910506",colesProductDescription:"Coles green zucchini",productThumbnailUrl:"/images/products/4910506.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-005",displayName:"Butternut pumpkin",colesProductId:"2859066",colesProductDescription:"Coles kitchen australian diced butternut pumpkin",productThumbnailUrl:"/images/products/2859066.jpg",packSize:500,packUnit:"g",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-006",displayName:"Yellow curry paste",colesProductId:"2001423",colesProductDescription:"Ayam thai yellow curry paste",productThumbnailUrl:"/images/products/2001423.jpg",packSize:185,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"185g"},{id:"ing-007",displayName:"Can coconut milk",colesProductId:"3924527",colesProductDescription:"Coles coconut milk",productThumbnailUrl:"/images/products/3924527.jpg",packSize:400,packUnit:"ml",quantityInRecipe:400,quantityPerServing:100,quantityUnit:"ml",isPantryStaple:!1,packSizeText:"400mL"},{id:"ing-008",displayName:"Firm white fish fillets (such as blue grenadier)",colesProductId:"1589884",colesProductDescription:"Coles australian whiting mini fillets with plain crumb",productThumbnailUrl:"/images/products/1589884.jpg",packSize:285,packUnit:"g",quantityInRecipe:700,quantityPerServing:175,quantityUnit:"g",isPantryStaple:!1,packSizeText:"285g"},{id:"ing-009",displayName:"250g pkts brown basmati rice",colesProductId:"2157262",colesProductDescription:"Indya crown basmati rice",productThumbnailUrl:"/images/products/2157262.jpg",packSize:5e3,packUnit:"g",quantityInRecipe:2,quantityPerServing:.5,quantityUnit:"x",isPantryStaple:!1,packSizeText:"5kg"},{id:"ing-010",displayName:"Coriander leaves",colesProductId:"3214612",colesProductDescription:"Coles herb punnets coriander",productThumbnailUrl:"/images/products/3214612.jpg",packSize:15,packUnit:"g",quantityInRecipe:.5,quantityPerServing:.13,quantityUnit:"cup",isPantryStaple:!1,packSizeText:"15g"},{id:"ing-011",displayName:"Lime juice",colesProductId:"5534873",colesProductDescription:"Coles lime juice",productThumbn
40ailUrl:"/images/products/5534873.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"250mL"},{id:"ing-012",displayName:"Fried shallots",colesProductId:"5462954",colesProductDescription:"Dragon & phoenix fried shallots",productThumbnailUrl:"/images/products/5462954.jpg",packSize:100,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:"tbsp",isPantryStaple:!1,packSizeText:"100g"}]},{id:"chicken-rissoles-with-sweet-potato-fries",name:"Chicken Rissoles with Sweet Potato Fries",colesRecipeUrl:"https://www.coles.com.au/recipes-inspiration/recipes/chicken-rissoles-with-sweet-potato-fries",imageUrl:"/images/recipes/chicken-rissoles-with-sweet-potato-fries.jpg",prepTimeMinutes:20,cookTimeMinutes:30,difficulty:"medium",baseServings:4,estimatedCostBase:28,nutrition:{perServing:{energyKj:null,energyCal:595,proteinG:null,fatG:null,satFatG:null,carbsG:null,sugarG:null,fibreG:null,sodiumMg:null}},tags:{quick:!1,glutenFree:!1,highProtein:!0,dairyFree:!1,protein:"chicken"},method:["Preheat oven to 200°C. Line a baking tray with baking paper. Arrange the chips over the tray and cook following packet directions.","Meanwhile, heat the oil in a medium frying pan over medium heat. Add the onion and carrot and cook, stirring, for 3 mins or until onion softens. Add the zucchini and garlic and cook, stirring, for 3 mins or until zucchini is soft. Transfer to a large bowl and set aside for 5 mins to cool.","Add the chicken mince, breadcrumbs and cheese to the onion mixture and stir to combine. Season. Divide the mixture into 12 even portions. Shape each portion into a 6cm rissole and place on a plate. Cover and place in the fridge for 10 mins to firm.","Spray a large frying pan with olive oil spray and place over medium-high heat. Cook rissoles, in batches, for 3-4 mins each side or until golden brown. Transfer to the oven for 10 mins or until cooked through.","Serve rissoles with sweet potato chips, steamed green beans, salad and mayonnaise."],ingredients:[{id:"ing-001",displayName:"Frozen sweet potato chips",colesProductId:"5032128",colesProductDescription:"Coles frozen sweet potato chips",productThumbnailUrl:"/images/products/5032128.jpg",packSize:750,packUnit:"g",quantityInRecipe:750,quantityPerServing:187.5,quantityUnit:"g",isPantryStaple:!1,packSizeText:"750g"},{id:"ing-002",displayName:"Olive oil",colesProductId:"4484770",colesProductDescription:"Red island extra virgin olive oil",productThumbnailUrl:"/images/products/4484770.jpg",packSize:250,packUnit:"ml",quantityInRecipe:1,quantityPerServing:10,quantityUnit:"ml",isPantryStaple:!0,isOptionalGarnish:!1,packSizeText:"250mL"},{id:"ing-003",displayName:"Brown onion",colesProductId:"4239517",colesProductDescription:"Coles loose brown onions",productThumbnailUrl:"/images/products/4239517.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-004",displayName:"Carrot",colesProductId:null,colesProductDescription:null,productThumbnailUrl:null,packSize:null,packUnit:null,quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:null},{id:"ing-005",displayName:"Zucchini",colesProductId:"4910506",colesProductDescription:"Coles green zucchini",productThumbnailUrl:"/images/products/4910506.jpg",packSize:200,packUnit:"g",quantityInRecipe:1,quantityPerServing:.25,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 200g"},{id:"ing-006",displayName:"Garlic cloves",colesProductId:"6105715",colesProductDescription:"Coles garlic loose",productThumbnailUrl:"/images/products/6105715.jpg",packSize:60,packUnit:"g",quantityInRecipe:3,quantityPerServing:.75,quantityUnit:null,isPantryStaple:!1,packSizeText:"approx. 60g"},{id:"ing-007",displayName:"Chicken breast mince",colesProductId:"4352145",colesProductDescription:"Coles RSPCA approved chicken mince",productThumbnailUrl:"/images/products/4352145.jpg",packSize:500,packUnit:"g",quantityInRecipe:500,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"500g"},{id:"ing-008",displayName:"Panko breadcrumbs",colesProductId:"2017230",colesProductDescription:"Obento panko bread crumbs",productThumbn
40ailUrl:"/images/products/2017230.jpg",packSize:200,packUnit:"g",quantityInRecipe:35,quantityPerServing:8.75,quantityUnit:"g",isPantryStaple:!1,packSizeText:"200g"},{id:"ing-009",displayName:"Grated tasty cheddar",colesProductId:"5432830",colesProductDescription:"Coles dairy shredded tasty cheese",productThumbnailUrl:"/images/products/5432830.jpg",packSize:250,packUnit:"g",quantityInRecipe:60,quantityPerServing:15,quantityUnit:"g",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-010",displayName:"Green beans",colesProductId:"6252232",colesProductDescription:"Coles trimmed green beans",productThumbnailUrl:"/images/products/6252232.jpg",packSize:250,packUnit:"g",quantityInRecipe:300,quantityPerServing:125,quantityUnit:"g",isPantryStaple:!1,packSizeText:"250g"},{id:"ing-011",displayName:"Mixed salad leaves, to serve",colesProductId:"6885716",colesProductDescription:"Coles 4 leaf salad mix",productThumbnailUrl:"/images/products/6885716.jpg",packSize:120,packUnit:"g",quantityInRecipe:null,quantityPerServing:20,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"120g"},{id:"ing-012",displayName:"Mayonnaise, to serve",colesProductId:"2454789",colesProductDescription:"Coles whole egg mayonnaise",productThumbnailUrl:"/images/products/2454789.jpg",packSize:445,packUnit:"g",quantityInRecipe:null,quantityPerServing:20,quantityUnit:"g",isPantryStaple:!1,isOptionalGarnish:!0,packSizeText:"445g"}]}];function Ad(e){const[t,n]=R.useState("all"),[i,r]=R.useState(new Set),a=R.useMemo(()=>t==="all"?e:e.filter(f=>{switch(t){case"quick":return f.tags.quick;case"glutenFree":return f.tags.glutenFree;case"highProtein":return f.tags.highProtein;case"dairyFree":return f.tags.dairyFree===!0;case"chicken":case"beef":case"lamb":case"pork":case"fish":case"vegetarian":return f.tags.protein===t;default:return!0}}),[e,t]),l=R.useMemo(()=>e.filter(f=>i.has(f.id)),[e,i]);function s(f){r(m=>{const S=new Set(m);return S.has(f)?S.delete(f):S.add(f),S})}function c(f){n(f)}function u(){r(new Set),n("all")}function y(f){const S=[...e].sort(()=>Math.random()-.5).slice(0,f);r(new Set(S.map(h=>h.id))),n("all")}return{filteredRecipes:a,selectedRecipes:l,selectedIds:i,activeFilter:t,toggleRecipe:s,setFilter:c,clearSelections:u,fillRandom:y}}const Hd={"5493277|tsp":{factor:5,packUnit:"g",type:"density",notes:"1 tsp minced garlic â 5 g"},"5034484|tsp":{factor:5,packUnit:"g",type:"density",notes:"1 tsp crushed/grated ginger â 5 g"},"5034484|tbsp":{factor:6,packUnit:"g",type:"density",notes:"1 tbsp grated ginger â 6 g"},"5007594|ml":{factor:1.15,packUnit:"g",type:"density",notes:"Teriyaki sauce â 1.15 g/ml"},"5619761|tbsp":{factor:8,packUnit:"g",type:"density",notes:"1 tbsp cashews â 8 g"},"3214612|cup":{factor:15,packUnit:"g",type:"density",notes:"1 cup fresh coriander â 15 g"},"3214612|tsp":{factor:1,packUnit:"g",type:"density",notes:"1 tsp fresh coriander â 1 g"},"5419718|ml":{factor:1.05,packUnit:"g",type:"density",notes:"Passata â 1.05 g/ml"},"8987477|tbsp":{factor:7,packUnit:"g",type:"density",notes:"1 tbsp garam masala â 7 g"},"8987477|tsp":{factor:2.5,packUnit:"g",type:"density",notes:"1 tsp garam masala â 2.5 g"},"318021|tsp":{factor:2.7,packUnit:"g",type:"density",notes:"1 tsp chilli powder â 2.7 g"},"3339210|tsp":{factor:3.5,packUnit:"g",type:"density",notes:"1 tsp mustard seeds â 3.5 g"},"8982837|tsp":{factor:2.5,packUnit:"g",type:"density",notes:"1 tsp ground cumin â 2.5 g"},"8766810|tsp":{factor:6,packUnit:"g",type:"density",notes:"1 tsp table salt â 6 g"},"2677830|tsp":{factor:2.3,packUnit:"g",type:"density",notes:"1 tsp ground black pepper â 2.3 g"},"121297|tsp":{factor:2.5,packUnit:"g",type:"density",notes:"1 tsp curry powder â 2.5 g"},"8983341|tsp":{factor:3,packUnit:"g",type:"density",notes:"1 tsp ground turmeric â 3 g"},"8983341|tbsp":{factor:9,packUnit:"g",type:"density",notes:"1 tbsp ground turmeric â 9 g"},"1871113|g":{factor:.95,packUnit:"ml",type:"density",notes:"1 g crushed tomatoes â 0.95 ml"},"1401696|tbsp":{factor:17,packUnit:"g",type:"density",notes:"1 tbsp tikka masala paste â 17 g"},"8602120|tsp":{factor:2.5,packUnit:"g",type:"density",notes:"1 tsp ground cardamom â 2.5 g"},"5920924|ml":{factor:1.32,packUnit:"g",type:"density",notes:"Maple syrup â 1.32 g/ml"},"2421484|tbsp":{factor:15,packUnit:"g",type:"density",notes:"1 tbsp wholegrain mustard â 15 g"},"5434948|tbsp":{factor:15,packUnit:"g",type:"density",notes:"1 tbsp Dijon mustard â 15 g"},"5434948|tsp":{factor:5,packUnit:"g",type:"density",notes:"1 tsp Dijon mustard â 5 g"},"3041398|cup":{factor:240,packUnit:"g",type:"density",notes:"1 cup burger sauce â 240 g"},"447829|tsp":{factor:4,packUnit:"g",type:"density",notes:"1 tsp brown sugar â 4 g"},"447829|tbsp":{factor:12,packUnit:"g",type:"density",notes:"1 tbsp brown sugar â 12 g"},"318531|tsp":{factor:2.5,packUnit:"g",type:"density",notes:"1 tsp Chinese five spice â 2.5 g"},"7352902|tsp":{factor:3,packUnit:"g",type:"density",notes:"1 tsp cornflour â 3 g"},"3214521|cup":{factor:20,packUnit:"g",type:"density",notes:"1 cup fresh basil â 20 g"},"8985540|tsp":{factor:1.2,packUnit:"g",type:"density",notes:"1 tsp dried Italian herbs â 1.2 g"},"3131253|tbsp":{factor:5,packUnit:"g",type:"density",notes:"1 tbsp nutritional yeast â 5 g"},"3214747|cup":{factor:20,packUnit:"g",type:"density",notes:"1 cup finely chopped chives â 20 g (human corrected from AI 50g)"},"3215138|tbsp":{factor:3,packUnit:"g",type:"density",notes:"1 tbsp fresh sage â 3 g"},"7755159|ml":{factor:.156,packUnit:"g",type:"density",notes:"39g powder makes 250ml reconstituted; 1ml â 0.156g dry powder (human corrected)"},"3215091|cup":{factor:15,packUnit:"g",type:"density",notes:"1 cup fresh oregano â 15 g"},"7123086|tbsp":{factor:8,packUnit:"g",type:"density",notes:"1 tbsp dukkah â 8 g"},"3394682|cup":{factor:150,packUnit:"g",type:"density",notes:"1 cup pomegranate seeds â 150 g"},"3868856|tbsp":{factor:15,packUnit:"g",type:"density",notes:"1 tbsp garlic paste â 15 g"},"8982881|tsp":{factor:1,packUnit:"g",type:"density",notes:"1 tsp dried oregano â 1 g"},"8982961|tsp":{factor:2.5,packUnit:"g",type:"density",notes:"1 tsp paprika â 2.5 g"},"276690|tsp":{factor:3,packUnit:"g",type:"density",notes:"1 tsp lemon pepper â 3 g"},"287041|tsp":{factor:3,packUnit:"g",type:"density",notes:"1 tsp garlic powder â 3 g"},"3214780|tsp":{factor:1,packUnit:"g",type:"density",notes:"1 tsp fresh rosemary â 1 g"},"120079|tsp":{factor:4,packUnit:"g",type:"density",notes:"1 tsp caster sugar â 4 g"},"3023272|tsp":{factor:5,packUnit:"g",type:"density",notes:"1 tsp lemongrass paste â 5 g"},"2001423|tbsp":{factor:18,packUnit:"g",type:"density",notes:"1 tbsp yellow curry paste â 18 g"},"5462954|tbsp":{factor:4,packUnit:"g",type:"density",notes:"1 tbsp fried shallots â 4 g"}
40,"5022180|tbsp":{factor:15,packUnit:"g",type:"density",notes:"1 tbsp tahini â 15 g (quantityUnit corrected to tbsp)"},"4218459|null":{factor:200,packUnit:"g",type:"count",notes:"Product: Coles Onions Red Local approx 200g. 1 onion â 200 g."},"8467604|null":{factor:200,packUnit:"g",type:"count",notes:"Coles Red Onion 1kg bag. 1 red onion â 200 g."},"407755|head":{factor:340,packUnit:"g",type:"count",notes:"Product: Coles Broccoli Medium approx 340g. 1 head â 340 g."},"5982477|bunch":{factor:180,packUnit:"g",type:"count",notes:"Coles Baby Broccoli 1 bunch â 180 g."},"6105715|null":{factor:5,packUnit:"g",type:"count",notes:"1 garlic clove â 5 g."},"4239517|null":{factor:200,packUnit:"g",type:"count",notes:"Coles Loose Brown Onions approx 200g. 1 onion â 200 g."},"3214612|null":{factor:15,packUnit:"g",type:"count",notes:"Coles Herb Punnets Coriander 15g. 1 punnet â 15 g."},"3214612|bunch":{factor:15,packUnit:"g",type:"count",notes:"Coles Herb Punnets Coriander 15g. 1 bunch/punnet â 15 g."},"2885521|null":{factor:125,packUnit:"g",type:"count",notes:"1 naan â 125 g. Pack 250g = 2 naan (human corrected from AI 83g)."},"2263168|null":{factor:300,packUnit:"g",type:"count",notes:"Coles Chicken Breast Small Pack approx 600g. 1 breast â 300 g."},"3227410|null":{factor:1250,packUnit:"g",type:"count",notes:"Coles Chicken Breast Large Pack approx 1.25kg. 1 pack â 1250 g."},"3340730|null":{factor:31,packUnit:"g",type:"count",notes:"1 small pita â 31 g (human corrected; small pita product used)."},"4575208|null":{factor:160,packUnit:"g",type:"count",notes:"Coles Lebanese Cucumbers approx 160g. 1 cucumber â 160 g."},"4835171|null":{factor:120,packUnit:"g",type:"count",notes:"Coles Vine Ripened Tomatoes 500g. 1 tomato â 120 g."},"4628676|null":{factor:130,packUnit:"g",type:"count",notes:"Coles Tomatoes Greenhouse Truss approx 130g. 1 tomato â 130 g."},"4910506|null":{factor:200,packUnit:"g",type:"count",notes:"Coles Green Zucchini approx 200g. 1 zucchini â 200 g."},"2263328|null":{factor:150,packUnit:"g",type:"count",notes:"Coles Chicken Thigh Fillets Large Pack approx 1.2kg. 1 thigh â 150 g."},"293565|null":{factor:250,packUnit:"g",type:"count",notes:"Coles Frozen Corn Cobs 1kg. 1 cob â 250 g (4 per pack)."},"197594|null":{factor:100,packUnit:"g",type:"count",notes:"Coles Limes Medium Loose approx 100g. 1 lime â 100 g."},"7215355|null":{factor:220,packUnit:"g",type:"count",notes:"Coles Yellow Capsicum approx 220g. 1 capsicum â 220 g."},"7712156|null":{factor:47,packUnit:"g",type:"count",notes:"Coles Lasagne Sheets 375g. 1 sheet â 47 g (8 per pack)."},"5433027|null":{factor:21,packUnit:"g",type:"count",notes:"Coles Tasty Light Cheese Slices 24 Pack 500g. 1 slice â 21 g."},"5696751|null":{factor:90,packUnit:"g",type:"count",notes:"Coles Simply Hamburger Rolls 540g. 1 roll â 90 g (6 per pack)."},"4580208|null":{factor:220,packUnit:"g",type:"count",notes:"Coles Red Capsicum Loose approx 220g. 1 capsicum â 220 g."},"4223335|null":{factor:170,packUnit:"g",type:"count",notes:"Coles Carrots Loose approx 170g. 1 carrot â 170 g."},"6802242|null":{factor:58,packUnit:"g",type:"count",notes:"Fyfe Family Free Range Eggs 12 Pack 700g. 1 egg â 58 g."},"4583206|null":{factor:500,packUnit:"g",type:"count",notes:"Coles Purple Eggplant approx 500g. 1 eggplant â 500 g."},"132464|null":{factor:125,packUnit:"g",type:"count",notes:"Edgell Diced Capsicum 125g can. 1 can â 125 g."},"1501635|null":{factor:15,packUnit:"g",type:"count",notes:"1 long red chilli â 15 g."},"3215171|null":{factor:10,packUnit:"g",type:"count",notes:"Coles Herb Punnets Thyme 10g. 1 punnet â 10 g."},"8227892|null":{factor:125,packUnit:"g",type:"count",notes:"Supreme Quality Foods Plain Roti 4 Pack 500g. 1 roti â 125 g (human corrected)."},"4924034|null":{factor:500,packUnit:"g",type:"count",notes:"Coles Dutch Carrots 1 bunch. 1 bunch â 500 g."},"2680008|null":{factor:50,packUnit:"g",type:"count",notes:"Coles Free Range Eggs 6 Pack 300g. 1 egg â 50 g."},"408554|null":{factor:170,packUnit:"g",type:"count",notes:"Coles Apple Granny Smith Medium approx 170g. 1 apple â 170 g."},"3731716|null":{factor:45,packUnit:"g",type:"count",notes:"Coles Wholemeal & Grain Soft Wraps 8 Pack 360g. 1 wrap â 45 g."},"4327240|null":{factor:64,packUnit:"g",type:"count",notes:"Mission Souvlaki Bread 320g. 1 piece â 64 g (5 per pack)."},"9917524|null":{factor:125,packUnit:"g",type:"count",notes:"Coles Lamb Loin Chops approx 500g. 1 chop â 125 g (4 per pack)."},"3214780|null":{factor:1,packUnit:"g",type:"count",notes:"Coles Herb Punnets Rosemary 10g. 1 sprig â 1 g."},"5318302|null":{factor:120,packUnit:"g",type:"count",notes:"Coles Lemons 1 each approx 120g. 1 lemon â 120 g."},"1063006|null":{factor:125,packUnit:"g",type:"count",notes:"Coles Salmon Fillets Skin On 2 Pack 250g. 1 fillet â 125 g."}},$d=Hd,Ko={g:1,kg:1e3,mg:.001},Qo={ml:1,l:1e3,L:1e3,tsp:5,tbsp:20,cup:250,cups:250};function Wd(e,t,n,i,r){if(!i||!r)return null;if(t==="x")return e*i;if(n){const u=`${n}|${t??"null"}`,y=$d[u];if(y&&y.packUnit===r)return e*y.factor}const a=t?Ko[t]:void 0,l=Ko[r];if(a!==void 0&&l!==void 0)return e*(a/l);
40const s=t?Qo[t]:void 0,c=Qo[r];return s!==void 0&&c!==void 0?e*(s/c):null}function uu(e,t){return e*t}function Oa(e,t){if(!t||t<=0)return 1;const n=e/t;if(n<=1)return 1;const i=Math.floor(n);return n-i>.2?i+1:i}function pu(e,t){if(!t||t<=0)return 0;const i=Oa(e,t)*t;return i===0?0:(i-e)/i}function Yo(e,t){return!t||t<=0?!1:pu(e,t)>.25}function Vd(e,t){if(!t||t<=0)return"";const n=pu(e,t);if(n===0)return"";const i=Math.round(n*10)*10;return i>=100?">90% left over":`${i}% left over`}function Kd(e,t){const n=new Map;for(const i of e)for(const r of i.ingredients){if(!r.colesProductId)continue;const a=(r.quantityPerServing??0)*t,l=Wd(a,r.quantityUnit,r.colesProductId,r.packSize,r.packUnit),s=l??0,c=l!==null&&r.packSize!=null,u=n.get(r.colesProductId);if(u){const y=u.totalQuantity+s,f=c?Oa(y,u.packSize):1,m=u.recipeIds.includes(i.id)?u.recipeIds:[...u.recipeIds,i.id];n.set(r.colesProductId,{...u,totalQuantity:y,packsNeeded:f,hasSignificantLeftover:c?Yo(y,u.packSize):!1,recipeIds:m})}else{const y=c?Oa(s,r.packSize):1;n.set(r.colesProductId,{colesProductId:r.colesProductId,displayName:r.displayName,colesProductDescription:r.colesProductDescription,productThumbnailUrl:r.productThumbnailUrl,packSize:r.packSize,packUnit:r.packUnit,packSizeText:r.packSizeText??null,totalQuantity:s,quantityUnit:r.packUnit??r.quantityUnit,packsNeeded:y,hasSignificantLeftover:c?Yo(s,r.packSize):!1,isPantryStaple:r.isPantryStaple,isOptionalGarnish:r.isOptionalGarnish??!1,excluded:r.isPantryStaple||(r.isOptionalGarnish??!1),recipeIds:[i.id]})}}return Array.from(n.values())}function Qd(e){return`https://www.coles.com.au/ext-cart?product_ids=${e.filter(i=>!i.excluded).map(i=>`${i.colesProductId}_${i.packsNeeded}`).join(",")}`}function Ll(e,t){return e.reduce((n,i)=>{const r=t/i.baseServings;return n+i.estimatedCostBase*r},0)}function Yd(e,t){return e.length===0||t===0?0:Ll(e,t)/(e.length*t)}function Xd(e,t){const n=e.filter(r=>r.recipeIds.length>1),i=t.map(r=>{const a=e.filter(s=>s.recipeIds.length===1&&s.recipeIds[0]===r.id),l=n.filter(s=>s.recipeIds.includes(r.id));return{recipe:r,uniqueIngredients:a,sharedIngredients:l}});return{sharedIngredients:n,recipeGroups:i}}function Zd(e,t){const[n,i]=R.useState(new Map),r=e.map(h=>h.id).join(",");R.useEffect(()=>{i(new Map)},[r]);const a=R.useMemo(()=>Kd(e,t).map(P=>{const I=n.get(P.colesProductId);return{...P,excluded:I!==void 0?I:P.isPantryStaple||P.isOptionalGarnish}}),[e,t,n]),l=R.useMemo(()=>a.filter(h=>!h.isPantryStaple&&!h.isOptionalGarnish),[a]),s=R.useMemo(()=>a.filter(h=>h.isPantryStaple&&!h.isOptionalGarnish),[a]),c=R.useMemo(()=>a.filter(h=>h.isOptionalGarnish),[a]),u=R.useMemo(()=>Qd(a),[a]),{sharedIngredients:y,recipeGroups:f}=R.useMemo(()=>Xd(a,e),[a,e]);function m(h){i(P=>new Map(P).set(h,!0))}function S(h){i(P=>new Map(P).set(h,!1))}return{allIngredients:a,shoppingList:l,pantryStaples:s,optionalGarnishes:c,trolleyUrl:u,excludeIngredient:m,includeIngredient:S,sharedIngredients:y,recipeGroups:f}}const Jd="b72ab2d47638d5f6ec564e66a7d9e7890b79005970a489259e5d2b01f3f0c46c";async function eg(e){const n=new TextEncoder().encode(e),i=await crypto.subtle.digest("SHA-256",n);return Array.from(new Uint8Array(i)).map(r=>r.toString(16).padStart(2,"0")).join("")}function tg({onAuthenticated:e}){const[t,n]=R.useState(""),[i,r]=R.useState(!1),[a,l]=R.useState(!1);async function s(c){c.preventDefault(),l(!0),r(!1),await eg(t)===Jd?e():(r(!0),l(!1))}return o.jsx("div",{className:"min-h-screen bg-off-white flex flex-col items-center justify-center px-6",style:{backgroundImage:`url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg stroke='%23F59E0B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' fill='none' opacity='0.3'%3E%3Cline x1='9' y1='5' x2='9' y2='12'/%3E%3Cline x1='12' y1='5' x2='12' y2='12'/%3E%3Cline x1='15' y1='5' x2='15' y2='12'/%3E%3Cpath d='M9 12 C9 15 15 15 15 12'/%3E%3Cline x1='12' y1='15' x2='12' y2='35'/%3E%3Cpath d='M25 5 L25 17 Q25 20 27 20'/%3E%3Cline x1='26' y1='20' x2='26' y2='35'/%3E%3C/g%3E%3C/svg%3E")`,backgroundSize:"40px 40px"},children:o.jsxs("div",{className:"w-full max-w-sm",children:[o.jsxs("div",{className:"text-center mb-section",children:[o.jsx("h1",{className:"text-4xl font-heading font-black text-brand-red mb-2",children:"The Weekly"}),o.jsx("p",{className:"text-body text-lg",children:"Easy weeknight dinners at regular grocery prices"})]}),o.jsxs("form",{onSubmit:s,className:"bg-white rounded-2xl shadow-xl border border-gray-100 p-8",children:[o.jsxs("div",{className:"mb-field",children:[o.jsx("label",{htmlFor:"password",className:"block text-sm font-medium text-gray-700 mb-2",children:"Password"}),o.jsx("input",{id:"password",type:"password",value:t,onChange:c=>n(c.target.value),placeholder:"Enter password",className:"w-full px-4 py-3 border border-gray-200 rounded-xl text-base focus:outline-none focus:ring-2 focus:ring-brand-accent focus:border-transparent",autoFocus:!0}),i&&o.jsx("p",{className:"mt-2 text-sm text-red-500",children:"Incorrect password"})]}),o.jsx("button",{type:"submit",disabled:a||!t,className:"w-full bg-brand-accent text-white text-cta py-3.5 rounded-full hover:bg-brand-accent-dark transition-colors disabled:opacity-50",children:"Enter"})]}),o.jsx("p",{className:"mt-section text-xs text-gray-400 text-center leading-relaxed",children:"This is an independent proof of concept. It is not endorsed by Coles Group Limited. All recipe and product data was sourced exclusively from publicly accessible pages on coles.c
40om.au. No confidential or proprietary information has been used."})]})})}const ng=[{step:"1",headline:"Choose your dinners",body:"A fresh selection of easy weeknight dinners, updated each week. Discover meals you'd never have thought to try.",icon:o.jsx("div",{className:"w-10 h-10 rounded-xl bg-brand-accent-light flex items-center justify-center flex-shrink-0",children:o.jsxs("svg",{className:"w-6 h-6 text-brand-accent",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:"1.5",children:[o.jsx("circle",{cx:"12",cy:"12",r:"9"}),o.jsx("path",{d:"M8 12h8M12 8v8",strokeLinecap:"round"})]})})},{step:"2",headline:"Review items",body:"Your list is ready to go â just uncheck anything already in your pantry, and add any staples or garnishes you're running low on.",icon:o.jsx("div",{className:"w-10 h-10 rounded-xl bg-brand-accent-light flex items-center justify-center flex-shrink-0",children:o.jsx("svg",{className:"w-6 h-6 text-brand-accent",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:"1.5",children:o.jsx("path",{d:"M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.3 2.3c-.5.5-.1 1.3.6 1.3H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 100 4 2 2 0 000-4z",strokeLinecap:"round",strokeLinejoin:"round"})})})},{step:"3",headline:"Order everything in one tap",body:"Print or email your recipe cards, then check out through Coles in one tap â same-day or next-day delivery, no subscription required.",icon:o.jsx("div",{className:"w-10 h-10 rounded-xl bg-brand-accent-light flex items-center justify-center flex-shrink-0",children:o.jsx("svg",{className:"w-6 h-6 text-brand-accent",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:"1.5",children:o.jsx("path",{d:"M20 7l-8-4-8 4m16 0l-8 4m8-4v10l-8 4m0-10L4 7m8 4v10M4 7v10l8 4",strokeLinecap:"round",strokeLinejoin:"round"})})})}],ig=[3,4,5,6];function rg({onComplete:e,onShowHowItWasMade:t}){const[n,i]=R.useState(4),[r,a]=R.useState(5);return o.jsxs("div",{className:"min-h-screen bg-white",children:[o.jsx("header",{className:"bg-brand-red px-4 pt-screen pb-field",children:o.jsxs("div",{className:"max-w-lg mx-auto text-center",children:[o.jsx("h1",{className:"font-heading text-4xl font-black text-white tracking-tight mb-2",children:"The Weekly"}),o.jsx("p",{className:"text-white/75 text-base",children:"Skip the meal kit markup. Get dinner sorted in minutes."}),o.jsx("button",{onClick:t,className:"mt-4 bg-white text-brand-accent border-2 border-brand-accent text-btn px-5 py-2 rounded-full hover:bg-brand-accent-light transition-colors",children:"Behind the build"})]})}),o.jsx("div",{className:"h-4 bg-gradient-to-b from-brand-red/10 to-transparent"}),o.jsx("div",{className:"max-w-lg lg:max-w-5xl mx-auto px-4",children:o.jsxs("div",{className:"lg:grid lg:grid-cols-2 lg:gap-12 lg:items-start",children:[o.jsxs("section",{className:"pt-field pb-0",children:[o.jsx("h2",{className:"text-page-title text-charcoal mb-field",children:"Set up your week"}),o.jsxs("div",{className:"mb-field",children:[o.jsx("label",{className:"block text-section-title mb-label",children:"How many people are you cooking for?"}),o.jsxs("div",{className:"flex items-center justify-center gap-4",children:[o.jsx("button",{onClick:()=>i(l=>Math.max(1,l-1)),className:"w-11 h-11 rounded-full border-2 border-gray-300 text-charcoal font-heading font-black text-xl flex items-center justify-center hover:border-brand-accent hover:text-brand-accent transition-colors","aria-label":"Decrease household size",children:"â"}),o.jsx("span",{className:"font-heading font-black text-4xl text-charcoal w-10 text-center",children:n}),o.jsx("button",{onClick:()=>i(l=>Math.min(8,l+1)),className:"w-11 h-11 rounded-full border-2 border-gray-300 text-charcoal font-heading font-black text-xl flex items-center justify-center hover:border-brand-accent hover:text-brand-accent transition-colors","aria-label":"Increase household size",children:"+"})]})]}),o.jsxs("div",{className:"mb-field",children:[o.jsx("label",{className:"block text-section-title mb-label",children:"How many dinners this week?"}),o.jsx("div",{className:"flex gap-2",children:ig.map(l=>o.jsx("button",{onClick:()=>a(l),className:`flex-1 py-3 rounded-full border-2 font-heading font-extrabold text-base transition-colors ${r===l?"border-brand-accent bg-brand-accent text-white":"border-gray-300 text-charcoal hover:border-brand-accent hover:text-brand-accent"}`,children:l},l))})]}),o.jsx("button",{onClick:()=>e(n,r),className:"w-full bg-brand-accent text-white text-cta text-lg py-4 rounded-full hover:bg-brand-accent-dark transition-colors shadow-sm",children:"Choose Your Meals â"})]}),o.jsx("div",{className:"border-t border-gray-200 lg:hidden"}),o.jsxs("section",{className:"pt-field pb-screen",children:[o.jsx("h2",{className:"text-page-title text-charcoal mb-field",children:"How it works"}),o.jsx("div",{className:"flex flex-col gap-label",children:ng.map(({step:l,headline:s,body:c,icon:u})=>o.jsxs("div",{className:"flex gap-4 p-4 bg-white rounded-2xl border border-gray-100 shadow-sm",children:[u,o.jsxs("div",{className:"flex-1",children:[o.jsx("div",{className:"flex items-center gap-2 mb-1",children:o.jsxs("span",{className:"text-xs font-heading font-black text-brand-accent uppercase tracking-wider",children:["Step ",l]})}),o.jsx("h3",{className:"text-section-title mb-1",children:s}),o.jsx("p",{className:"text-body leading-relaxed",children:c})]})]},l))})]})]})})]})}const ag=[{key:"all",label:"All"},{key:"quick",label:"Quick"},{key:"glutenFree",label:"Gluten-free"},{key:"highProtein",label:"High-protein"},{key:"dairyFree",label:"Dairy-free"}],lg=[{key:"chicken",label:"Chicken"},{key:"beef",label:"Beef"},{key:"lamb",label:"Lamb"},{key:"pork",label:"Pork"}
40,{key:"fish",label:"Fish"},{key:"vegetarian",label:"Vegetarian"}];function og({activeFilter:e,onSetFilter:t}){const n=i=>`flex-shrink-0 px-4 py-1.5 rounded-full border text-sm font-semibold transition-colors active:scale-95 ${e===i?"bg-brand-accent border-brand-accent text-white":"bg-white border-gray-300 text-charcoal hover:border-brand-accent hover:text-brand-accent"}`;return o.jsx("div",{className:"overflow-x-auto scrollbar-hide py-2",children:o.jsxs("div",{className:"flex flex-col gap-1.5 px-4",style:{width:"max-content"},children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"text-[10px] uppercase tracking-wider text-gray-400 font-semibold pl-1",children:"Diet"}),ag.map(({key:i,label:r})=>o.jsx("button",{onClick:()=>t(i),className:n(i),children:r},i))]}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"text-[10px] uppercase tracking-wider text-gray-400 font-semibold pl-1",children:"Protein"}),lg.map(({key:i,label:r})=>o.jsx("button",{onClick:()=>t(i),className:n(i),children:r},i))]})]})})}function sg(e){return e.prepTimeMinutes+e.cookTimeMinutes}const cg={quick:"Quick",glutenFree:"GF",highProtein:"High Protein",dairyFree:"Dairy-free"};function ug({recipe:e,isSelected:t,onToggle:n,onOpenModal:i}){const r=Object.entries(cg).filter(([a])=>e.tags[a]===!0).map(([,a])=>a);return o.jsxs("div",{className:`relative bg-white rounded-xl overflow-hidden shadow-sm border transition-all flex flex-col transition-transform hover:scale-[1.02] ${t?"border-brand-accent shadow-md ring-2 ring-brand-accent/20":"border-gray-200"}`,children:[o.jsxs("button",{className:"w-full text-left focus:outline-none",onClick:()=>i(e),"aria-label":`View details for ${e.name}`,children:[o.jsxs("div",{className:"relative aspect-square overflow-hidden bg-gray-100",children:[o.jsx("img",{src:e.imageUrl,alt:e.name,className:"w-full h-full object-cover",loading:"lazy"}),t&&o.jsx("div",{className:"absolute top-2 right-2 bg-brand-accent text-white rounded-full w-6 h-6 flex items-center justify-center shadow",children:o.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:o.jsx("path",{d:"M2.5 7L5.5 10L11.5 4",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),o.jsxs("div",{className:"p-3 pb-2",children:[o.jsx("h3",{className:"text-card-title mb-1.5 line-clamp-2",children:e.name}),o.jsx("div",{className:"flex items-center gap-2 text-meta mb-2",children:o.jsxs("span",{children:[sg(e)," min"]})}),r.length>0&&o.jsx("div",{className:"flex flex-wrap gap-1",children:r.map(a=>o.jsx("span",{className:"px-1.5 py-0.5 bg-gray-100 text-gray-700 rounded text-xs font-semibold",children:a},a))})]})]}),o.jsx("div",{className:"flex-1"}),o.jsx("div",{className:"px-3 pb-3",children:o.jsx("button",{onClick:a=>{a.stopPropagation(),n(e.id)},className:`w-full py-2 rounded-full text-btn transition-colors active:scale-95 transition-transform ${t?"bg-brand-accent text-white":"bg-white text-brand-accent border-2 border-brand-accent hover:bg-brand-accent-light"}`,children:t?"â Added":"+ Add"})})]})}const pg={quick:"Quick",glutenFree:"GF",highProtein:"High Protein",dairyFree:"Dairy-free"};function du({recipe:e,isSelected:t,householdSize:n,onToggle:i,onClose:r}){R.useEffect(()=>{function c(u){u.key==="Escape"&&r()}return document.addEventListener("keydown",c),()=>document.removeEventListener("keydown",c)},[r]),R.useEffect(()=>(document.body.style.overflow="hidden",()=>{document.body.style.overflow=""}),[]);const a=e.ingredients.filter(c=>!c.isPantryStaple),l=e.ingredients.filter(c=>c.isPantryStaple),s=Object.entries(pg).filter(([c])=>e.tags[c]===!0).map(([,c])=>c);return o.jsxs("div",{className:"fixed inset-0 z-50 flex items-end sm:items-center justify-center",role:"dialog","aria-modal":"true","aria-label":e.name,children:[o.jsx("div",{className:"absolute inset-0 bg-black/60 animate-fade-in",onClick:r,"aria-hidden":!0}),o.jsxs("div",{className:"relative bg-white w-full sm:max-w-lg lg:max-w-2xl sm:rounded-2xl rounded-t-2xl max-h-[92vh] flex flex-col overflow-hidden shadow-2xl animate-slide-up-sheet",children:[o.jsxs("div",{className:"relative aspect-[16/9] flex-shrink-0 bg-gray-100",children:[o.jsx("img",{src:e.imageUrl,alt:e.name,className:"w-full h-full object-cover"}),o.jsx("button",{onClick:r,className:"absolute top-3 right-3 bg-black/50 text-white rounded-full w-10 h-10 flex items-center justify-center hover:bg-black/70 transition-colors","aria-label":"Close",children:o.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:o.jsx("path",{d:"M3 3L13 13M13 3L3 13",stroke:"white",strokeWidth:"2",strokeLinecap:"round"})})})]}),o.jsxs("div",{className:"overflow-y-auto flex-1 pb-24",children:[o.jsxs("div",{className:"px-4 pt-4",children:[o.jsx("h2",{className:"font-heading font-black text-charcoal text-xl leading-tight mb-2",children:e.name}),o.jsxs("div",{className:"flex items-center gap-3 text-body mb-3",children:[o.jsxs("span",{children:["Prep ",e.prepTimeMinutes," min"]}
40),o.jsx("span",{"aria-hidden":!0,children:"·"}),o.jsxs("span",{children:["Cook ",e.cookTimeMinutes," min"]}),o.jsx("span",{"aria-hidden":!0,children:"·"}),o.jsxs("span",{children:["Serves ",n]})]}),s.length>0&&o.jsx("div",{className:"flex flex-wrap gap-1 mb-4",children:s.map(c=>o.jsx("span",{className:"px-1.5 py-0.5 bg-gray-100 text-gray-700 rounded text-xs font-semibold",children:c},c))})]}),o.jsxs("div",{className:"px-4 mb-section",children:[o.jsx("h3",{className:"text-section-title mb-3",children:"Ingredients"}),o.jsx("div",{className:"flex flex-col gap-2",children:a.map(c=>{const u=uu(c.quantityPerServing,n);return o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsx("img",{src:c.productThumbnailUrl,alt:c.displayName,className:"w-12 h-12 object-contain rounded bg-gray-100 border border-gray-200 flex-shrink-0"}),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("p",{className:"text-sm font-semibold text-charcoal truncate",children:c.displayName}),o.jsx("p",{className:"text-meta truncate",children:c.colesProductDescription})]}),o.jsx("div",{className:"text-right flex-shrink-0",children:o.jsxs("p",{className:"text-sm font-semibold text-charcoal",children:[u," ",c.quantityUnit]})})]},c.id)})}),l.length>0&&o.jsxs("div",{className:"mt-3 pt-3 border-t border-gray-200",children:[o.jsx("p",{className:"text-micro-label mb-2.5",children:"From the pantry"}),o.jsx("div",{className:"flex flex-wrap gap-1.5",children:l.map(c=>o.jsx("span",{className:"text-xs px-2 py-1 bg-gray-100 text-gray-500 rounded-full",children:c.displayName},c.id))})]})]}),o.jsxs("div",{className:"px-4",children:[o.jsx("h3",{className:"text-section-title mb-3",children:"Method"}),o.jsx("ol",{className:"flex flex-col gap-3",children:e.method.map((c,u)=>o.jsxs("li",{className:"flex items-start gap-3",children:[o.jsx("span",{className:"flex-shrink-0 w-6 h-6 rounded-full bg-brand-accent text-white text-xs font-heading font-black flex items-center justify-center",children:u+1}),o.jsx("p",{className:"text-sm text-charcoal leading-relaxed",children:c})]},u))})]})]}),o.jsx("div",{className:"absolute bottom-0 left-0 right-0 bg-white border-t border-gray-300 px-4 py-3",children:o.jsx("button",{onClick:()=>i(e.id),className:`w-full py-4 rounded-full text-cta transition-colors ${t?"bg-brand-accent-light text-brand-accent border-2 border-brand-accent":"bg-brand-accent text-white hover:bg-brand-accent-dark"}`,children:t?"â Remove from my week":"+ Add to my week"})})]})]})}function dg({selectedRecipes:e,mealCount:t,householdSize:n,onReview:i}){const r=e.length,a=r>=t,l=Math.min(r/t,1),s=Ll(e,n),c=Yd(e,n);return o.jsxs("div",{className:"bg-white border-t border-gray-200 px-4 py-3 shadow-lg",children:[o.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[o.jsx("div",{className:"flex-1 h-3 bg-gray-200 rounded-full overflow-hidden",children:o.jsx("div",{className:`h-full rounded-full transition-all duration-300 ${a?"bg-green-500":"bg-brand-accent"}`,style:{width:`${l*100}%`}})}),o.jsxs("span",{className:`text-btn flex-shrink-0 ${a?"text-green-600":"text-charcoal"}`,children:[a?o.jsx("span",{className:"inline-block animate-celebrate",children:"â"}):""," ",r,"/",t," meals"]})]}),r>0?o.jsxs("p",{className:"mb-2 leading-tight",children:[o.jsxs("span",{className:"font-heading font-extrabold text-charcoal text-lg",children:["$",s.toFixed(0)]}),o.jsx("span",{className:"text-charcoal font-heading font-extrabold text-lg",children:" total"}),o.jsx("span",{className:"text-gray-400 mx-1.5",children:"·"}),o.jsxs("span",{className:"text-body",children:["$",c.toFixed(2),"/serve"]})]}):o.jsx("p",{className:"text-meta-dim mb-2",children:"Select meals to see cost estimate"}),o.jsx("button",{onClick:i,disabled:r===0,className:`w-full py-3 rounded-full text-btn transition-colors ${r>0?"bg-brand-accent text-white hover:bg-brand-accent-dark":"bg-gray-200 text-gray-400 cursor-not-allowed"}`,children:"Review Ingredients â"})]})}function gg({filteredRecipes:e,selectedIds:t,activeFilter:n,mealCount:i,householdSize:r,selectedRecipes:a,onToggleRecipe:l,onSetFilter:s,onReviewIngredients:c,onBack:u,onShowHowItWasMade:y,onFillRandom:f}
40){const[m,S]=R.useState(null);return o.jsxs("div",{className:"min-h-screen bg-white flex flex-col",children:[o.jsx("header",{className:"bg-brand-red text-white px-4 py-4 flex-shrink-0",children:o.jsxs("div",{className:"max-w-4xl mx-auto flex items-center gap-3",children:[o.jsx("button",{onClick:u,className:"text-white/80 hover:text-white transition-colors flex-shrink-0","aria-label":"Back to setup",children:o.jsx("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:o.jsx("path",{d:"M12.5 4L7 10L12.5 16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),o.jsx("h1",{className:"text-page-title flex-1",children:"The Weekly"}),o.jsx("button",{onClick:y,className:"bg-white text-brand-accent border-2 border-brand-accent text-btn px-5 py-2 rounded-full hover:bg-brand-accent-light transition-colors flex-shrink-0",children:"Behind the build"})]})}),o.jsx("div",{className:"bg-white border-b border-gray-200 py-3 flex-shrink-0",children:o.jsx(og,{activeFilter:n,onSetFilter:s})}),o.jsx("main",{className:"flex-1 overflow-y-auto pb-32",children:o.jsxs("div",{className:"max-w-4xl mx-auto px-4 py-4",children:[t.size===0&&o.jsx("div",{className:"text-center mb-field",children:o.jsx("button",{onClick:f,className:"text-sm font-semibold text-brand-accent hover:text-brand-accent-dark transition-colors",children:"Not sure? Let us pick for you"})}),e.length===0?o.jsxs("div",{className:"text-center py-16 text-gray-400",children:[o.jsx("p",{className:"font-heading font-extrabold text-lg mb-1",children:"No recipes match this filter"}),o.jsx("p",{className:"text-sm",children:"Try a different category"})]}):o.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-4",children:e.map(h=>o.jsx(ug,{recipe:h,isSelected:t.has(h.id),onToggle:l,onOpenModal:S},h.id))})]})}),o.jsx("div",{className:"fixed bottom-0 left-0 right-0 z-40",children:o.jsx(dg,{selectedRecipes:a,mealCount:i,householdSize:r,onReview:c})}),m&&o.jsx(du,{recipe:m,isSelected:t.has(m.id),householdSize:r,onToggle:l,onClose:()=>S(null)})]})}function vi({ingredient:e,onExclude:t,onInclude:n,readOnly:i=!1,recipeNames:r}){const{colesProductId:a,displayName:l,colesProductDescription:s,productThumbnailUrl:c,packsNeeded:u,packSizeText:y,totalQuantity:f,packSize:m,hasSignificantLeftover:S,isPantryStaple:h,isOptionalGarnish:P,excluded:I}=e,d=S&&m?Vd(f,m):"",p=P?"Optional garnish":h?"Pantry staple":null,g=i||I?"opacity-60":"";return o.jsxs("div",{className:"flex items-center gap-3 py-3",children:[!i&&o.jsx("input",{type:"checkbox",checked:!I,onChange:()=>I?n(a):t(a),className:"w-5 h-5 flex-shrink-0 cursor-pointer accent-amber-500","aria-label":I?`Include ${l}`:`Exclude ${l}`}),o.jsxs("div",{className:`flex items-center gap-3 flex-1 min-w-0 transition-opacity ${g}`,children:[o.jsx("img",{src:c,alt:l,className:"w-12 h-12 object-contain rounded bg-gray-50 flex-shrink-0"}),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("p",{className:"text-sm font-semibold text-charcoal leading-tight",children:l}),o.jsx("p",{className:"text-meta leading-tight truncate",children:s}),y&&o.jsx("p",{className:"text-meta leading-tight",children:y}),r&&r.length>0&&o.jsxs("p",{className:"text-meta-dim mt-0.5",children:["Used in ",r.join(", ")]}),p&&o.jsx("span",{className:"inline-block text-xs px-2 py-0.5 rounded-full bg-brand-accent-light text-amber-800 font-semibold mt-1",children:p}),S&&m&&o.jsx("p",{className:`text-xs text-amber-600 font-semibold mt-0.5 ${I?"invisible":""}`,children:d})]}),o.jsxs("div",{className:"flex flex-col items-end gap-1.5 flex-shrink-0",children:[o.jsxs("span",{className:`text-sm font-heading font-extrabold text-charcoal ${I?"invisible":""}`,children:[u," added"]}),i&&o.jsx("span",{className:"text-sm px-3 py-1.5 rounded-full bg-brand-accent-light text-brand-accent font-semibold",children:"Shared"})]})]})]})}function mg({selectedRecipes:e,sharedIngredients:t,recipeGroups:n,householdSize:i,onExclude:r,onInclude:a,onToggleRecipe:l,onConfirm:s,onBack:c}){const[u,y]=R.useState(null),[f,m]=R.useState(new Set),S=Ll(e,i),P=[...t,...n.flatMap(d=>d.uniqueIngredients)].filter(d=>!d.excluded).length;function I(d){m(p=>{const g=new Set(p);return g.has(d)?g.delete(d):g.add(d),g})}return o.jsxs("div",{className:"min-h-screen bg-off-white flex flex-col",children:[o.jsx("header",{className:"bg-brand-red text-white px-4 py-4 flex-shrink-0",children:o.jsxs("div",{className:"max-w-2xl lg:max-w-6xl mx-auto flex items-center gap-3",children:[o.jsx("button",{onClick:c,className:"text-white/80 hover:text-white transition-colors","aria-label":"Back to meals",children:o.jsx("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:o.jsx("path",{d:"M12.5 4L7 10L12.5 16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),o.jsxs("div",{children:[o.jsx("h1",{className:"text-page-title",children:"Your Ingredients"}),o.jsxs("p",{className:"text-white/70 text-xs",children:[e.length," meals · ",i," people · Est. $",S.toFixed(0)]})]})]})}),o.jsx("main",{className:"flex-1 overflow-y-auto pb-36",children:o.jsxs("div",{className:"max-w-2xl lg:max-w-6xl mx-auto px-4 py-4 space-y-4",children:[t.length>0&&o.jsxs("div",{className:"bg-white rounded-xl overflow-hidden shadow-sm border border-gray-200",children:[o.jsxs("div",{className:"px-4 py-3 border-b border-gray-100 flex items-center justify-between",children:[o.jsxs("div",{children:[o.jsx("h2",{className:"text-section-title",children:"Used in multiple recipes"}),o.jsx("p",{className:"text-meta-dim",children:"Quantities combined across all your meals"})]}),o.jsx("span",{className:"text-xs bg-brand-accent-light text-brand-accent font-semibold px-2 py-0.5 rounded-full",children:t.length})]}),o.jsx("div",{className:"px-4 divide-y divide-gray-100",children:t.map(d=>o.jsx(vi,{ingredient:d,onExclude:r,onInclude:a},d.colesProductId))})]}),n.map(({recipe:d,uniqueIngredients:p,sharedIngredients:g})=>{const k=p.filter(x=>!x.isPantryStaple&&!x.isOptionalGarnish),U=p.filter(x=>x.isPantryStaple||x.isOptionalGarnish);return o.jsxs("div",{className:"bg-white rounded-xl overflow-hidden shadow-sm border border-gray-200",children:[o.jsxs("button",{onClick:()=>y(d),className:"w-full border-b border-gray-100 text-left hover:opacity-90 transition-opacity cursor-pointer lg:flex lg:items-stretch",children:[o.jsx("img",{src:d.imageUrl,alt:d.name,className:"w-full h-28 object-cover lg:w-40 lg:h-auto lg:flex-shrink-0"}),o.jsxs("div",{className:"px-4 py-3 flex items-center gap-3 lg:flex-1",children:[o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("h2",{className:"text-section-title leading-tight",children:d.name}),o.jsxs("p",{className:"text-meta-dim mt-0.5",children:[p.length," unique · ",g.length," shared"]})]}),o.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",className:"text-gray-400 flex-shrink-0",children:o.jsx("path",{d:"M6 3L11 8L6 13",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]})]}),o.jsxs("div",{className:"px-4 divide-y divide-gray-100",children:[k.map(x=>o.jsx(vi,{ingredient:x,onExclude:r,onInclude:a},x.colesProductId)),U.map(x=>o.jsx(vi,{ingredient:x,onExclude:r,onInclude:a},x.colesProductId)),g.length>0&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"flex justify-center py-2",children:o.jsxs("button",{onClick:()=>I(d.id),className:"flex items-center gap-1.5 px-4 py-1.5 bg-brand-accent-light text-brand-accent-dark rounded-full text-xs font-heading font-bold hover:bg-brand-accent/20 transition-colors",children:[g.length," shared ingredient",g.length>
401?"s":"",o.jsx("svg",{width:"12",height:"12",viewBox:"0 0 14 14",fill:"none",className:`flex-shrink-0 transition-transform ${f.has(d.id)?"rotate-180":""}`,children:o.jsx("path",{d:"M2 4.5L7 9.5L12 4.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]})}),f.has(d.id)&&g.map(x=>o.jsx(vi,{ingredient:x,onExclude:r,onInclude:a,readOnly:!0},x.colesProductId))]}),p.length===0&&g.length===0&&o.jsx("p",{className:"py-4 text-sm text-gray-400 text-center",children:"No ingredients"})]})]},d.id)})]})}),o.jsx("div",{className:"fixed bottom-0 left-0 right-0 z-40 bg-white border-t border-gray-200 px-4 py-3 shadow-lg",children:o.jsxs("div",{className:"max-w-2xl lg:max-w-6xl mx-auto",children:[o.jsxs("div",{className:"flex items-center justify-between mb-2",children:[o.jsxs("p",{className:"text-body",children:[o.jsxs("span",{className:"font-semibold text-charcoal",children:[P," items"]})," in your list"]}),o.jsxs("p",{className:"font-heading font-extrabold text-charcoal text-xl",children:["Est. $",S.toFixed(0)]})]}),o.jsx("button",{onClick:s,disabled:P===0,className:`w-full py-4 rounded-full text-cta transition-colors ${P>0?"bg-brand-accent text-white hover:bg-brand-accent-dark":"bg-gray-200 text-gray-400 cursor-not-allowed"}`,children:"My list is ready â"})]})}),u&&o.jsx(du,{recipe:u,isSelected:!0,householdSize:i,onToggle:l,onClose:()=>y(null)})]})}function fg({recipes:e,householdSize:t}){return o.jsxs("div",{className:"print-only p-8 font-sans",children:[o.jsxs("h1",{className:"text-2xl font-heading font-bold mb-6 border-b pb-3",children:["The Weekly â ",e.length," recipes for ",t," people"]}),e.map((n,i)=>o.jsxs("div",{className:`mb-10 break-inside-avoid${i>0?" break-before-page":""}`,children:[o.jsx("img",{src:n.imageUrl,alt:n.name,className:"w-40 h-28 object-cover rounded mb-3"}),o.jsx("h2",{className:"text-xl font-heading font-bold mb-1",children:n.name}),o.jsxs("p",{className:"text-sm text-gray-500 mb-4",children:["Serves ",t," · ",n.prepTimeMinutes+n.cookTimeMinutes," min"]}),o.jsx("h3",{className:"font-heading font-bold mb-2 text-sm uppercase tracking-wider",children:"Ingredients"}),o.jsx("ul",{className:"list-disc list-inside mb-4 space-y-0.5",children:n.ingredients.map(r=>{const a=uu(r.quantityPerServing,t);return o.jsxs("li",{className:"text-sm",children:[a,r.quantityUnit," ",r.displayName,r.colesProductDescription?` (${r.colesProductDescription})`:""]},r.id)})}),o.jsx("h3",{className:"font-heading font-bold mb-2 text-sm uppercase tracking-wider",children:"Method"}),o.jsx("ol",{className:"list-decimal list-inside space-y-1",children:n.method.map((r,a)=>o.jsx("li",{className:"text-sm leading-relaxed",children:r},a))})]},n.id))]})}function yg(e){const t=encodeURIComponent("This week's dinner plan"),n=e.map(r=>`- ${r.name}: ${r.colesRecipeUrl}`).join("%0A"),i=encodeURIComponent(`Here's what we're having this week: 41 42`)+n;return`mailto:?subject=${t}&body=${i}`}function hg({selectedRecipes:e,householdSize:t,trolleyUrl:n,onPlanAgain:i,onBack:r}){const[a,l]=R.useState(!0);R.useEffect(()=>{const u=setTimeout(()=>l(!1),2500);return()=>clearTimeout(u)},[]);function s(){window.print()}function c(){window.open(n,"_blank")}return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"min-h-screen bg-off-white no-print relative overflow-hidden",children:[a&&o.jsx("div",{className:"absolute inset-0 pointer-events-none z-10","aria-hidden":!0,children:Array.from({length:30}).map((u,y)=>o.jsx("div",{className:"absolute w-2 h-2 rounded-full animate-confetti",style:{left:`${Math.random()*100}%`,backgroundColor:["#F59E0B","#10B981","#3B82F6","#EF4444","#8B5CF6","#EC4899"][y%6],animationDelay:`${Math.random()*.8}s`,"--fall-duration":`${2+Math.random()*2}s`,"--drift":`${(Math.random()-.5)*80}px`,"--sway":`${10+Math.random()*20}px`,"--sway-duration":`${.6+Math.random()*.8}s`,"--spin":`${360+Math.random()*540}deg`}},y))}),o.jsx("header",{className:"bg-brand-red text-white px-4 py-4",children:o.jsxs("div",{className:"max-w-2xl mx-auto flex items-center gap-3",children:[o.jsx("button",{onClick:r,className:"text-white/80 hover:text-white transition-colors","aria-label":"Back to ingredient review",children:o.jsx("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:o.jsx("path",{d:"M12.5 4L7 10L12.5 16",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),o.jsx("h1",{className:"text-page-title",children:"The Weekly"})]})}),o.jsxs("div",{className:"max-w-2xl mx-auto px-4 pt-section pb-screen",children:[o.jsxs("div",{className:"text-center mb-section",children:[o.jsx("div",{className:"inline-flex items-center justify-center w-16 h-16 rounded-full bg-green-100 mb-label animate-celebrate",children:o.jsx("svg",{className:"w-8 h-8 text-green-600",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:"2.5",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 13l4 4L19 7"})})}),o.jsx("h2",{className:"font-heading text-2xl font-black text-charcoal",children:"You're all set!"}),o.jsxs("p",{className:"text-body mt-label",children:[e.length," meals planned for ",t," ",t===1?"person":"people"]}),o.jsx("div",{className:"flex justify-center gap-3 mt-field",children:e.map(u=>o.jsxs("div",{className:"flex flex-col items-center gap-1.5 w-16",children:[o.jsx("img",{src:u.imageUrl,alt:u.name,className:"w-16 h-16 rounded-xl object-cover shadow-sm"}),o.jsx("p",{className:"text-xs text-gray-500 leading-tight line-clamp-2",children:u.name})]},u.id))})]}),o.jsx("div",{className:"border-t border-gray-200 mb-section"}),o.jsxs("div",{children:[o.jsxs("div",{className:"flex items-center gap-label mb-label",children:[o.jsx("span",{className:"w-6 h-6 rounded-full bg-brand-accent text-white text-xs font-heading font-black flex items-center justify-center flex-shrink-0",children:"1"}),o.jsx("h2",{className:"text-section-title",children:"Save your recipes"})]}),o.jsx("p",{className:"text-body mb-field",children:"Keep them handy so cooking is easy."}),o.jsxs("div",{className:"flex flex-col gap-label",children:[o.jsx("a",{href:yg(e),className:"w-full py-3 rounded-full text-btn text-center border-2 border-brand-accent text-brand-accent hover:bg-brand-accent-light transition-colors block",children:"Email the recipes"}),o.jsx("button",{onClick:s,className:"w-full py-3 rounded-full text-btn border-2 border-brand-accent text-brand-accent hover:bg-brand-accent-light transition-colors",children:"Print the recipes"})]})]}),o.jsx("div",{className:"border-t border-gray-200 my-section"}),o.jsxs("div",{children:[o.jsxs("div",{className:"flex items-center gap-label mb-label",children:[o.jsx("span",{className:"w-6 h-6 rounded-full bg-brand-accent text-white text-xs font-heading font-black flex items-center justify-center flex-shrink-0",children:"2"}),o.jsx("h2",{className:"text-section-title",children:"Order your groceries"})]}),o.jsx("p",{className:"text-body mb-field",children:"One tap adds everything to your Coles online trolley â then just choose delivery or click & collect."}),o.jsx("button",{onClick:c,className:"w-full bg-brand-accent text-white text-cta py-4 rounded-full hover:bg-brand-accent-dark transition-colors",children:"Add to Coles Trolley â"})]}),o.jsx("div",{className:"border-t border-gray-200 my-section"}),o.jsx("button",{onClick:i,className:"w-full py-4 rounded-full border-2 border-brand-accent text-brand-accent text-cta hover:bg-brand-accent-light transition-colors",children:"Plan Another Week"})]})]}),o.jsx(fg,{recipes:e,householdSize:t})]})}function Rt({children:e}){return o.jsx("div",{className:"bg-gray-50 rounded-2xl p-5",children:e})}function Dt({children:e}){return o.jsx("h3",{className:"text-sm font-heading font-bold uppercase tracking-wider text-brand-accent mb-3",children:e})}const kg=["Design tokens centralised â colours, fonts and spacing now live in a shared workspace-level design system, so future polish passes stay consistent across every project I build.","Product names and ingredient names both tidied up â consistent sentence case throughout, so everything reads naturally (acronyms like RSPCA preserved).","Typography and spacing consistency pass â heading fonts, text colours, and spacing now use semantic design tokens across every screen for a more cohesive feel.","Shared ingredient expanders redesigned as amber accent pills â more visible and consistent with the app's design language.","Confirmation screen overhauled: confetti celebration, meal thumbnail strip, numbered next steps, consistent spacing and divi
42ders throughout.",'"Not sure? Let us pick for you" â random meal selection fills your week in one tap when no meals are selected.',"Duplicate product size info stripped from ingredient descriptions â size now only appears on its own line.","Recipe detail modal polished: separate prep and cook times, dietary tags, larger ingredient thumbnails, improved pantry section, better method step layout.","Recipe cards now use square images and wider grid spacing for a more modern, gallery-like feel.","Recipe grid background changed from grey to pure white â cleaner, more contemporary look.","New look: dark headers and Outfit heading font replace the old slate/Nunito Sans combination â sharper, more editorial feel throughout.","Automated tests added across all screens and interactions â verifies the full flow from password entry through to ingredient review works correctly.","Browser back button now navigates between screens instead of exiting the app. Page scrolls to the top on every screen transition.",'"Behind the build" button updated to amber â more visible and easier to spot on both screens.',"Recipe grid reshuffled â proteins and flavours now mixed throughout, instead of all chicken recipes grouped at the top.",'Leftover quantity labels simplified: ">90% left over" shown when nearly a full pack goes unused; "of pack" wording removed.','"How it works" heading added to the setup page; steps now visible above the fold on small phones.',"Food pattern background restored on the password page.",'"People" label removed from the household size selector.','Setup page copy updated: "Review items" (step 2) and "Order everything in one tap" (step 3), with clearer supporting copy for each.','"Behind the build" panel expanded: deeper problem analysis, personal context added, Key Discoveries section added, features called out as fully functional.','"How it was made" renamed to "Behind the build" â button replaced small underline text link in the header.',"Night count label removed after selecting dinner count â the selected button is self-explanatory.","Recipe cards in the ingredient review screen now show the photo beside the title on desktop, instead of a narrow panoramic banner.","Pantry and optional items moved to the bottom of each recipe's ingredient list, so shopping items appear first.",'Shared ingredients section simplified â recipe list removed (redundant with the cards below). "Also in other recipes" row now collapses by default.',"Ingredient rows polished: quantity hidden when item is unchecked, product size on its own line, category tags now sit directly below the product info.","Recipe photos in the ingredient review screen now appear as full-width banners instead of small thumbnails.",'Simplified "how many to buy" â plain language (e.g. "2 added") replaces technical pack notation. Product size always visible on mobile.',"Tightened the pantry staples list to genuine universals: oils, salt, butter, eggs, soy sauce, cornflour, vinegar, sugar. Everything else moved to the shopping list.","Replaced include/exclude toggle buttons with checkboxes. Items dim when excluded, making the state immediately legible.","Recipe headers on the ingredient review screen are now tappable to open the recipe detail.","Removed recipe tag chips from the top of the ingredient review screen.","Visual design overhaul: warm amber accent colour, food-pattern splash screen, improved desktop layouts, recipe card improvements, celebration animation on completion.","Switched to manual production deploys to stay within Netlify free tier. Added local HTTPS preview for testing on mobile devices.","Print view improved: each recipe on a new page, with hero image and Coles product names alongside ingredients.","Ingredient review screen redesigned around recipe groups. Shared ingredients shown at the top with combined quantities; each recipe has its own card.",'Added password-protected splash page and "How it was made" panel.',"Deployed to Netlify.","Data pipeline built: scraped recipes and products from Coles, matched ingredients to products, handled unit conversions across 41 recipes.","Full app built: 4 screens, ingredient scaling and merging, one-tap trolley integration, 93 automated tests.","Product concept, user flows, and data architecture defined before any code was written."];function Sg({isOpen:e,onClose:t}){return e?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"fixed inset-0 z-50 bg-black/60 animate-fade-in",onClick:t}),o.jsxs("div",{className:"fixed inset-y-0 right-0 z-50 w-full sm:w-[30rem] bg-white shadow-2xl overflow-y-auto animate-slide-in-right flex flex-col",children:[o.jsxs("div",{className:"bg-brand-red px-6 pt-10 pb-8 flex-shrink-0",children:[o.jsx("button",{onClick:t,className:"absolute top-4 right-4 w-8 h-8 flex items-center justify-center rounded-full bg-white/20 text-white hover:bg-white/30 transition-colors","aria-label":"Close",children:"â"}),o.jsx("p",{className:"text-white/70 text-xs font-semibold uppercase tracking-wider mb-1",children:"The Weekly"}),o.jsx("h2",{className:"text-2xl font-heading font-bold text-white leading-tight",children:"Behind the build"}),o.jsx("p",{className:"text-white/80 text-sm mt-2 leading-relaxed",children:"A meal kit planning experience built end-to-e
42nd with Claude Code."})]}),o.jsxs("div",{className:"px-5 py-6 space-y-4 flex-1",children:[o.jsxs(Rt,{children:[o.jsx(Dt,{children:"The Problem"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed mb-3",children:"Meal kits solve a real set of problems that anyone who's stared blankly at a fridge at 5pm will recognise:"}),o.jsx("ul",{className:"space-y-2 mb-4",children:[["Choice overload","A curated shortlist of recipes makes planning faster. Fewer options means quicker, more committed decisions."],["Culinary novelty","The format makes it easier to try dishes you'd never normally reach for. The curation does the exploring for you."],["Pre-portioned ingredients","Reduces food waste by delivering exactly what a recipe needs, nothing more."],["Convenient delivery","Groceries arrive at your door, ready to cook."],["Easy-to-follow recipes","Step-by-step instructions designed for weeknight cooking."]].map(([n,i])=>o.jsxs("li",{className:"flex gap-2.5 text-sm",children:[o.jsx("span",{className:"mt-1.5 w-1.5 h-1.5 rounded-full bg-brand-accent flex-shrink-0"}),o.jsxs("span",{className:"text-gray-500 leading-relaxed",children:[o.jsxs("span",{className:"font-semibold text-charcoal",children:[n," â "]}),i]})]},n))}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed mb-3",children:"The realisation that prompted this: most of what makes meal kits good is already available at a supermarket. The one exception is pre-portioned ingredients â which honestly matters less to me than the curated selection and same-day delivery. So the gap isn't the groceries. It's the planning experience."}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed mb-1",children:"Supermarket delivery can realise most of the same benefits, and in some areas go further:"}),o.jsx("ul",{className:"space-y-2",children:[["Pricing","Meal kits cost $10â15 per serve. The same ingredients from a supermarket are roughly half the price."],["Order any time","Meal kits require you to lock in 4â6 days ahead. Forget, and you get whatever they picked â rarely a good fit for a household with specific tastes. Supermarket ordering is on-demand."]].map(([n,i])=>o.jsxs("li",{className:"flex gap-2.5 text-sm",children:[o.jsx("span",{className:"mt-1.5 w-1.5 h-1.5 rounded-full bg-brand-accent flex-shrink-0"}),o.jsxs("span",{className:"text-gray-500 leading-relaxed",children:[o.jsxs("span",{className:"font-semibold text-charcoal",children:[n," â "]}),i]})]},n))})]}),o.jsxs(Rt,{children:[o.jsx(Dt,{children:"The Solution"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed mb-1",children:"The Weekly gives you the meal kit experience at regular grocery prices. This is a fully functional POC â everything below actually works. Try it all."}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed mb-4",children:"(Many first-time users assume features like the trolley push or recipe printing are mocked â they're not.)"}),o.jsx("ul",{className:"space-y-2.5",children:[["No premium pricing","Pay regular supermarket prices â not $10â15 per serve."],["No subscription","Use it when you want, skip any week, no commitment."],["Order any time","Same-day or next-day delivery. Meal kits typically require you to lock in choices at least 4 days ahead."],["Full flexibility","Pick exactly the meals you want from a curated shortlist."],["One-tap trolley","Fully functional â adds every item to a real Coles trolley in one tap. Try it."],["Print or email recipes","Fully functional â email yourself the recipe cards or print them. Replaces the physical cards that come with traditional meal kits."]].map(([n,i])=>o.jsxs("li",{className:"flex gap-3 text-sm",children:[o.jsx("span",{className:"mt-0.5 w-4 h-4 rounded-full bg-brand-accent flex-shrink-0 flex items-center justify-center",children:o.jsx("svg",{className:"w-2.5 h-2.5 text-white",fill:"none",viewBox:"0 0 10 8",children:o.jsx("path",{d:"M1 4l2.5 2.5L9 1",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),o.jsxs("span",{className:"text-gray-500 leading-relaxed",children:[o.jsxs("span",{className:"font-semibold text-charcoal",children:[n," â "]}),i]})]},n))})]}),o.jsxs(Rt,{children:[o.jsx(Dt,{children:"Key Discoveries"}),o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"The core flow works"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"The end-to-e
42nd experience â pick meals, review ingredients, add to trolley â is quick and intuitive. User-tested on a real household: approved."})]}),o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"Product match quality is everything"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:'One or two bad matches â wrong product, out of stock â can derail the entire experience. At production scale, recipe and product selections would need careful manual QA. This goes beyond per-recipe accuracy: recipes should use consistent pantry ingredients across the board (e.g. the same cooking oil) to avoid over-ordering. Products also need to be in stock â ideally, customers would select a delivery slot upfront so real availability can be checked before they start browsing. And quantity normalisation has to be precise: converting "half a cup of chopped coriander" into the right number of packets requires accurate unit and density data.'})]}),o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"Constrained choice is a feature, not a limitation"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"Coles has thousands of recipes â far too many to browse without getting lost. A curated shortlist forces quicker, more committed decisions. Counterintuitively, more choice leads to longer browsing and more second-guessing, not better outcomes. The sweet spot is probably 50â60 recipes: enough diversity to cover most household preferences, few enough to choose from without analysis paralysis."})]})]})]}),o.jsxs(Rt,{children:[o.jsx(Dt,{children:"How It Was Built"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed mb-4",children:"Built using Claude Code as the primary development environment â from initial concept through to deployed product. No prior codebase existed; the entire app was created through conversational iteration with an AI coding agent."}),o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"Plan first"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"A detailed product spec and architecture document was written before any code. It captured UX flows, data schemas, key decisions, and success criteria â and was used as the source of truth throughout the build."})]}),o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"Data pipeline"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"A Playwright scraper collected recipes, ingredients, and product data from publicly accessible Coles pages. A Claude-assisted enrichment step normalised units, resolved product matches, and identified pantry staples â producing a single structured JSON file that powers the entire frontend."})]}),o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"Phased delivery"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"The build progressed through defined phases â data pipeline, frontend components, testing, integration â with explicit sign-off between each phase before moving to the next."})]}),o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"Test-driven"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"157 unit tests written alongside implementation using Vitest and Testing Library. Every code change required all tests to pass before committing."})]}),o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"Iterative refinement"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"Copy, UX, and visual design were refined through conversational iteration â options presented and trade-offs discussed before each implementation decision."})]}),o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-heading font-semibold text-charcoal mb-1",children:"Deployment"}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"The app is hosted on Netlify, deployed from GitHub. Production releases are triggered manually via a deploy script to stay within Netlify's free tier limits."})]})]})]}),o.jsxs(Rt,{children:[o.jsx(Dt,{children:"Technology"}),o.jsx("div",{className:"flex flex-wrap gap-2 mb-3",children:["React 18","TypeScript","Vite","Tailwind CSS","Vitest","Netlify"].map(n=>o.jsx("span",{className:"px-3 py-1 bg-white border border-gray-200 rounded-full text-xs font-medium text-gray-700",children:n},n))}),o.jsx("p",{className:"text-sm text-gray-500 leading-relaxed",children:"Static frontend with no backend. Deployed to Netlify from GitHub."})]}),o.jsxs(Rt,{children:[o.jsx(Dt,{children:"Changelog â newest first"}),o.jsx("ul",{className:"space-y-2",children:kg.map((n,i)=>o.jsxs("li",{className:"flex gap-2.5 text-sm",children:[o.jsx("span",{className:"mt-1.5 w-1.5 h-1.5 rounded-full bg-brand-accent flex-shrink-0"}),o.jsx("span",{className:"text-gray-500 leading-relaxed",children:n})]},i))})]})]})]})]}):null}const vg=Bd,Xo=window!==window.parent?"setup":"splash";
42function Pg(){const[e,t]=R.useState(Xo),[n,i]=R.useState(4),[r,a]=R.useState(5),[l,s]=R.useState(!1),{filteredRecipes:c,selectedRecipes:u,selectedIds:y,activeFilter:f,toggleRecipe:m,setFilter:S,clearSelections:h,fillRandom:P}=Ad(vg),{trolleyUrl:I,excludeIngredient:d,includeIngredient:p,sharedIngredients:g,recipeGroups:k}=Zd(u,n);R.useEffect(()=>{window.scrollTo(0,0)},[e]),R.useEffect(()=>{history.replaceState({screen:Xo},"");const q=L=>{var C;(C=L.state)!=null&&C.screen&&t(L.state.screen)};return window.addEventListener("popstate",q),()=>window.removeEventListener("popstate",q)},[]);function U(q){history.pushState({screen:q},""),t(q)}function x(q,L){i(q),a(L),U("meals")}function T(){h(),U("setup")}return o.jsxs(o.Fragment,{children:[e==="splash"&&o.jsx(tg,{onAuthenticated:()=>U("setup")}),e==="setup"&&o.jsx(rg,{onComplete:x,onShowHowItWasMade:()=>s(!0)}),e==="meals"&&o.jsx(gg,{filteredRecipes:c,selectedIds:y,activeFilter:f,mealCount:r,householdSize:n,selectedRecipes:u,onToggleRecipe:m,onSetFilter:S,onReviewIngredients:()=>U("review"),onBack:()=>history.back(),onShowHowItWasMade:()=>s(!0),onFillRandom:()=>P(r)}),e==="review"&&o.jsx(mg,{selectedRecipes:u,sharedIngredients:g,recipeGroups:k,householdSize:n,onExclude:d,onInclude:p,onToggleRecipe:m,onConfirm:()=>U("confirmation"),onBack:()=>history.back()}),e==="confirmation"&&o.jsx(hg,{selectedRecipes:u,householdSize:n,trolleyUrl:I,onPlanAgain:T,onBack:()=>history.back()}),o.jsx(Sg,{isOpen:l,onClose:()=>s(!1)})]})}if(window!==window.parent){let e=null,t=!1,n=!1,i=0,r=0,a=0,l=0;const s=u=>{for(;u&&u!==document.body;){const y=getComputedStyle(u),f=(y.overflowY==="auto"||y.overflowY==="scroll")&&u.scrollHeight>u.clientHeight,m=(y.overflowX==="auto"||y.overflowX==="scroll")&&u.scrollWidth>u.clientWidth;if(m||f)return{el:u,x:m,y:f};u=u.parentElement}return{el:window,x:!1,y:!0}};document.addEventListener("mousedown",u=>{const y=s(u.target);e=y.el,t=y.x,n=y.y,i=u.clientX,r=u.clientY,e===window?(a=window.scrollX,l=window.scrollY):(a=e.scrollLeft,l=e.scrollTop),document.body.style.cursor="grabbing",document.body.style.userSelect="none"}),document.addEventListener("mousemove",u=>{if(!e)return;const y=u.clientX-i,f=u.clientY-r;if(e===window)window.scrollTo(t?a-y:window.scrollX,n?l-f:window.scrollY);else{const m=e;t&&(m.scrollLeft=a-y),n&&(m.scrollTop=l-f)}});const c=()=>{e=null,document.body.style.cursor="",document.body.style.userSelect=""};document.addEventListener("mouseup",c),document.addEventListener("mouseleave",c)}Kr.createRoot(document.getElementById("root")).render(o.jsx(Cu.StrictMode,{children:o.jsx(Pg,{})}));
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.