1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6781,7602,9162],{14937:(e,t,r)=>{r.d(t,{Cm:()=>S,gb:()=>w,Eu:()=>N,ou:()=>_});var n=r(35155),a=r(79678),s=r(40728),l=r(22266),i=r(26392),o=r(73130);function u(e,t){let r=e.toLowerCase(),n=t.toLowerCase(),a=0;for(;a<=r.length-n.length;){let e=r.indexOf(n,a);if(-1===e)break;let t=0===e?"":r[e-1],s=e+n.length>=r.length?"":r[e+n.length],l=""===t||!/[a-z0-9]/.test(t),i=""===s||!/[a-z0-9]/.test(s);if(l&&i)return!0;a=e+1}return!1}var c=r(97964),d=r(25694),m=r(28969),f=r(1827);let p=e=>{if(!e)return()=>1;let t=(0,m.UH)(e);return e=>(0,m.S_)(e,t)},h=e=>{let t=Number(e);return Number.isFinite(t)?t:null};function g(e,t,r){let n=(0,c.m)(e);if(!n)return null;if(void 0===t)return Math.max(0,(0,o.Q)(e));let a=t.find(e=>String(e?.id??"")===n);if(!a)return 0;let s=(0,c.A_)(a)??Math.max(0,(0,o.Q)(e));if(r<=0)return s;let l=[...Array.isArray(a.projections)?a.projections.filter(Boolean):[]].sort((e,t)=>{let r=h(e?.year),n=h(t?.year);return null===r&&null===n?0:null===r?1:null===n?-1:r-n}),i=l.map(e=>h(e?.year)).filter(e=>null!==e),u=i.length>0&&1900>Math.min(...i),d=null;if(u){let e=-1/0;for(let t of l){let n=h(t?.year),a=h(t?.total_cash_value);null!==n&&null!==a&&n<=r&&n>e&&(e=n,d=a)}}else for(let e=Math.min(r,l.length)-1;e>=0;e--){let t=h(l[e]?.total_cash_value);if(null!==t){d=t;break}}return null===d?s:Math.max(0,d)}let y=e=>{let t=String(e?.type||"").toLowerCase(),r=String(e?.name||"").toLowerCase();if("insurance_cash_value"===t||(0,l.ad)(e))return null;if((e=>{let t=String(e?.type||"").toLowerCase(),r=String(e?.name||"").toLowerCase();return"rdsp"===t||r.includes("rdsp")})(e))return"rdspBalance";if("business_investments"===t||"business_cash"===t||"corporate_segregated_fund"===t)return"corporateNonRegBalance";if("resp"===t)return null;if("rrsp"===t||"group_rrsp"===t||"rrif"===t||"fhsa"===t||u(r,"rrsp")||u(r,"rrif")||u(r,"fhsa"))return"rrspBalance";if("tfsa"===t||u(r,"tfsa"))return"tfsaBalance";if("non_registered"===t||r.includes("non-reg")||r.includes("non registered")||r.includes("nonregistered"))return"nonRegBalance";if("lira"===t||"lif"===t||"dc_pension"===t||"ipp"===t||u(r,"lira")||u(r,"lif")||u(r,"ipp")||r.includes("locked")||r.includes("dc pension"))return"lifBalance";if("chequing_savings"===t||"cash"===t||u(r,"cash")||u(r,"chequing")||u(r,"savings"))return"cashBalance";if(r.includes("business investments")||r.includes("corporate"))return"corporateNonRegBalance";if("segregated_fund"===t){let t=String(e?.registration_details?.registration_type||(0,f.wA)("assets","segregated_fund","registration_details.registration_type")||"rrsp").toLowerCase();return"tfsa"===t?"tfsaBalance":"non_registered"===t?"nonRegBalance":"corporate"===t?"corporateNonRegBalance":"lira"===t||"lif"===t?"lifBalance":"rrspBalance"}return null},x=new Set(["rrsp","group_rrsp","rrif","fhsa","tfsa","non_registered","lira","dc_pension","ipp","chequing_savings","cash","rdsp","segregated_fund"]),b=new Set(["business_investments","business_cash","corporate_segregated_fund"]);function _(e,t){return e-t}let v=(e,t)=>"rrspBalance"===t?(e.rrspBalance??0)+(e.rrifBalanceTotal??0):e[t],j=(e,t)=>{let r=new Set;if(!e)return r;for(let n of Object.keys(t)){let a=t[n]??0;!(a<=1)&&(v(e,n)??0)<=Math.max(1,.02*a)&&r.add(n)}return r};function k(e){let t=String(e?.type||"");return!(0,l.ad)(e)&&(null!==y(e)||x.has(t)||b.has(t))}function N({assets:e,corporateAssets:t=[],liabilities:r,corporateLiabilities:l=[],getAssetGrowthRatePercent:u,years:m,context:f,retirementProjection:h,insurancePolicies:x,assetSaleYearOffsetById:b,profile:_}){let N=p(_),w=(e,t)=>{if(!b||0===b.size)return!1;let r=b.get(String(e?.id||""));return"number"==typeof r&&Number.isFinite(r)&&t>=r},S=(0,c.N5)([...e,...(0,d.Dc)(t)],x).filter(n.f),A=[...r,...l],M=new Map((h??[]).filter(e=>e.yearOffset>=0).map(e=>[Math.round(e.yearOffset),e])),O=M.size>0?[...M.entries()].sort((e,t)=>e[0]-t[0]):[],B=O.at(-1),R=O[0]?.[1],C=e=>{let t=M.get(e)??(B&&e>B[0]?B[1]:null);return Math.max(0,t?.replacementHomeValue??0)},I=S.reduce((e,t)=>{let r=y(t);return r&&(e[r]=(e[r]??0)+Math.max(0,(0,o.Q)(t))*N(t)),e},{}),E=S.reduce((e,t)=>
1{let r=y(t);return r&&(e[r]=(e[r]??0)+1),e},{}),F=j(R,I),L=e=>{let t=M.get(e)??(B&&e>B[0]?B[1]:null);if(!t)return null;let r=(E.nonRegBalance??0)===0?Math.max(0,t.nonRegBalance??0):0;return S.reduce((r,n)=>{let a=y(n);if(!a)return r;if(F.has(a))return r+(0,s.m)(n,u(n),e,f)*N(n);let l=v(t,a);if("number"!=typeof l||!Number.isFinite(l))return r;let i=Math.max(0,l),c=I[a]??0;if(c>0)return r+Math.max(0,(0,o.Q)(n))*N(n)/c*i;let d=E[a]??0;return d>0?r+i/d:r},r)},T=(0,i.u1)(A,m),P=A.map(e=>N(e)),W=A.reduce((e,t)=>e+(0,a.bI)(t)*N(t),0),z=[];for(let e=0;e<=m;e+=1){let t=S.reduce((t,r)=>{if(k(r)||w(r,e))return t;let n=g(r,x,e);return null!==n?t+n*N(r):t+(0,s.m)(r,u(r),e,f)*N(r)},0),r=S.reduce((t,r)=>k(r)?t+(0,s.m)(r,u(r),e,f)*N(r):t,0),n=L(e),a=C(e)+(null===n?t+r:t+n),l=T.data[e],i=l?T.series.reduce((e,t,r)=>e+(l[t.key]??0)*(P[r]??1),0):0;z.push({year:e,assets:a,liabilities:i,netWorth:a-i})}let D=W>0?z.find(e=>e.year>0&&e.liabilities<=1):null;return{data:z,debtFreeYear:D?.year??null}}function w({assets:e,corporateAssets:t=[],liabilities:r,corporateLiabilities:l=[],getAssetGrowthRatePercent:u,years:m,context:f,retirementProjection:h,insurancePolicies:x,assetSaleYearOffsetById:b,profile:_}){let k=p(_),N=(0,c.N5)([...e,...(0,d.Dc)(t)],x).filter(n.f),w=[...r,...l],S=(0,i.u1)(w,m),A=w.map(e=>k(e)),M=new Map((h??[]).filter(e=>e.yearOffset>=0).map(e=>[Math.round(e.yearOffset),e])),O=M.size?[...M.entries()].sort((e,t)=>e[0]-t[0]):[],B=O.at(-1),R=O[0]?.[1],C=e=>{let t=M.get(e)??(B&&e>B[0]?B[1]:null);return Math.max(0,t?.replacementHomeValue??0)},I=(e,t)=>{let r=M.get(e)??(B&&e>B[0]?B[1]:null);if(!r)return null;let n=v(r,t);return"number"==typeof n&&Number.isFinite(n)?Math.max(0,n):null},E=N.reduce((e,t)=>{let r=y(t);return r&&(e[r]=(e[r]??0)+Math.max(0,(0,o.Q)(t))*k(t)),e},{}),F=N.reduce((e,t)=>{let r=y(t);return r&&(e[r]=(e[r]??0)+1),e},{}),L=j(R,E),T=N.map((e,t)=>{let r=(e=>{let t=String(e?.type||"").toLowerCase(),r=y(e);return"primary_residence"===t||"secondary_property"===t||"real_estate"===t||"corporate_real_estate"===t?{key:"asset_group_properties",name:"Total properties"}:"rrspBalance"===r?{key:"asset_group_rrsp",name:"Total RRSP"}:"tfsaBalance"===r?{key:"asset_group_tfsa",name:"Total TFSA"}
1:"rdspBalance"===r?{key:"asset_group_rdsp",name:"Total RDSP"}:"lifBalance"===r?{key:"asset_group_locked_in",name:"Total pensions"}:"cashBalance"===r?{key:"asset_group_cash",name:"Total cash"}:"corporateNonRegBalance"===r?{key:"asset_group_business",name:"Total business assets"}:"nonRegBalance"===r?{key:"asset_group_non_registered",name:"Total non-registered"}:"resp"===t?{key:"asset_group_resp",name:"Total RESP"}:"business"===t?{key:"asset_group_business",name:"Total business assets"}:{key:"asset_group_other",name:"Total other assets"}})(e);return{key:`asset_${t}`,name:e?.name?.toString().trim()||`Asset ${t+1}`,kind:"asset",groupKey:r.key,groupName:r.name}});(h??[]).some(e=>(e.replacementHomeValue??0)>0)&&T.push({key:"replacement_home",name:"Replacement primary residence",kind:"asset",groupKey:"asset_group_properties",groupName:"Total properties"});let P=(F.nonRegBalance??0)===0&&(h??[]).some(e=>(e.nonRegBalance??0)>0);P&&T.push({key:"unlisted_non_reg",name:"Projected non-registered savings",kind:"asset",groupKey:"asset_group_non_registered",groupName:"Total non-registered"});let W=S.series.map(e=>({key:`liability_${e.key}`,name:e.name,kind:"liability",groupKey:"liability_group_total",groupName:"Total liabilities"})),z=[];for(let e=0;e<=m;e+=1){let t={year:e,assets:0,liabilities:0,netWorth:0};N.forEach((r,n)=>{let a=y(r),l=a&&L.has(a)?null:a,i=l?I(e,l):null,c=l?E[l]??0:0,d=Math.max(0,(0,o.Q)(r))*k(r),m=l?F[l]??0:0,p=b?.get(String(r?.id||"")),h="number"==typeof p&&Number.isFinite(p)&&e>=p,_=g(r,x,e),v=h?0:null!==_?_*k(r):l&&null!==i?c>0?d/c*i:m>0?i/m:0:(0,s.m)(r,u(r),e,f)*k(r);t[`asset_${n}`]=v,t.assets+=v}),t.replacement_home=C(e),t.assets+=t.replacement_home,P&&(t.unlisted_non_reg=I(e,"nonRegBalance")??0,t.assets+=t.unlisted_non_reg);let r=S.data[e];S.series.forEach((e,n)=>{let a=(r?.[e.key]??0)*(A[n]??1);t[`liability_${e.key}`]=a,t.liabilities+=a}),t.netWorth=t.assets-t.liabilities,z.push(t)}let D=w.reduce((e,t)=>e+(0,a.bI)(t)*k(t),0)>0?z.find(e=>e.year>0&&e.liabilities<=1):null;return{data:z,series:[...T,...W],debtFreeYear:D?.year??null}}function S(e){return function({data:e,series:t,debtFreeYear:r}){let n=new Map;return t.forEach(e=>{let t=e.groupKey??e.key;n.has(t)||n.set(t,{key:t,name:e.groupName??e.name,kind:e.kind,groupKey:t,groupName:e.groupName??e.name})}),{data:e.map(e=>{let r={year:e.year,assets:e.assets,liabilities:e.liabilities,netWorth:e.netWorth};return t.forEach(t=>{let n=t.groupKey??t.key;r[n]=(r[n]??0)+(e[t.key]??0)}),n.has("liability_group_total")&&(r.liability_group_total=e.liabilities),r}),series:Array.from(n.values()),debtFreeYear:r}}(w(e))}},16302:(e,t,r)=>{r.d(t,{V:()=>Q});var n=r(95155),a=r(19749),s=r(12115),l=r(93629),i=r(1738),o=r(57269),u=r(14409),c=r(32030),d=r(82944),m=r(85783),f=r(99065),p=r(96139),h=r(52907),g=r(93732),y=r(97968),x=r(33978),b=r(6164),_=r(95519),v=r(73836),j=r(89782),k=r(93934),N=r(1012),w=r(65748),S=r(10968);class A{constructor(e){var{x:t,y:r}=e;this.xAxisScale=t,this.yAxisScale=r}map(e,t){var r,n,{position:a}=t;return{x:null!=(r=this.xAxisScale.map(e.x,{position:a}))?r:0,y:null!=(n=this.yAxisScale.map(e.y,{position:a}))?n:0}}mapWithFallback(e,t){var r,n,a,s,{position:l,fallback:i}=t;return a="rangeMin"===i?this.yAxisScale.rangeMin():"rangeMax"===i?this.yAxisScale.rangeMax():0,s="rangeMin"===i?this.xAxisScale.rangeMin():"rangeMax"===i?this.xAxisScale.rangeMax():0,{x:null!=(r=this.xAxisScale.map(e.x,{position:l}))?r:s,y:null!=(n=this.yAxisScale.map(e.y,{position:l}))?n:a}}isInRange(e){var{x:t,y:r}=e,n=null==t||this.xAxisScale.isInRange(t),a=null==r||this.yAxisScale.isInRange(r);return n&&a}}function M(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function O(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?M(Object(r),!0).forEach(function(t){var n,a,s;n=e,a=t,s=r[t],(a=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(a))in n?Object.defineProperty(n,a,{value:s,enumerable:!0,configurable:!0,writable:!0}):n[a]=s}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):M(Object(r)).forEac
1h(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function B(){return(B=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}function R(e){var t=(0,b.j)();return(0,s.useEffect)(()=>(t((0,x.$6)(e)),()=>{t((0,x.sP)(e))})),null}function C(e){var{x:t,y:r,r:n}=e,a=(0,j.Y)(),l=((e,t,r,n,a)=>{var s=(0,y.vh)(e),l=(0,y.vh)(t),i=(0,v.r)(),o=(0,b.G)(e=>(0,_.iV)(e,"xAxis",r,i)),u=(0,b.G)(e=>(0,_.iV)(e,"yAxis",n,i));if(!s||!l||null==o||null==u)return null;var c=new A({x:o,y:u}),d=c.map({x:e,y:t},{position:"middle"});return"discard"!==a||c.isInRange(d)?d:null})(t,r,e.xAxisId,e.yAxisId,e.ifOverflow);if(!l)return null;var{x:i,y:o}=l,{shape:u,className:c,ifOverflow:d}=e,m=O(O({clipPath:"hidden"===d?"url(#".concat(a,")"):void 0},(0,k.a)(e)),{},{cx:null!=i?i:void 0,cy:null!=o?o:void 0});return s.createElement(w.g,{zIndex:e.zIndex},s.createElement(p.W,{className:(0,f.$)("recharts-reference-dot",c)},s.isValidElement(u)?s.cloneElement(u,m):"function"==typeof u?u(m):s.createElement(h.c,B({},m,{cx:m.cx,cy:m.cy,className:"recharts-reference-dot-dot"})),s.createElement(g.zJ,{x:i-n,y:o-n,width:2*n,height:2*n,upperWidth:2*n,lowerWidth:2*n},s.createElement(g._I,{label:e.label}),e.children)))}var I={ifOverflow:"discard",xAxisId:0,yAxisId:0,r:10,label:!1,fill:"#fff",stroke:"#ccc",fillOpacity:1,strokeWidth:1,zIndex:S.I.scatter};function E(e){var t=(0,N.e)(e,I),{x:r,y:n,r:a,ifOverflow:l,yAxisId:i,xAxisId:o}=t;return s.createElement(s.Fragment,null,s.createElement(R,{y:n,x:r,r:a,yAxisId:i,xAxisId:o,ifOverflow:l}),s.createElement(C,t))}E.displayName="ReferenceDot";var F=r(86296),L=r(91753),T=r(44573),P=r(466);let W="hsl(152 32% 42%)",z="hsl(8 50% 54%)",D=["hsl(152 32% 42%)","hsl(185 35% 45%)","hsl(215 45% 55%)","hsl(262 38% 58%)","hsl(36 55% 50%)","hsl(330 35% 55%)"],K=["hsl(8 50% 54%)","hsl(24 50% 52%)","hsl(345 42% 54%)","hsl(12 45% 46%)","hsl(290 30% 54%)","hsl(32 48% 45%)"];function G(e){let t,r,s,l,i,o=(0,a.c)(29),{active:u,payload:c,label:d,locale:m,assetsLabel:f,liabilitiesLabel:p,netLabel:h,formatTooltipYear:g,detailSeries:y}=e;if(!u||!c?.length)return null;let x=c[0]?.payload;o[0]!==d?(t="number"==typeof d?d:null!=d&&""!==String(d).trim()?Number(d):NaN,o[0]=d,o[1]=t):t=o[1];let b=t;if(!x||!Number.isFinite(b))return null;let{assets:_,liabilities:v,netWorth:j}=x;o[2]!==_||o[3]!==m?(r=(0,P.D)(_,m),o[2]=_,o[3]=m,o[4]=r):r=o[4];let k=r;o[5]!==v||o[6]!==m?(s=(0,P.D)(v,m),o[5]=v,o[6]=m,o[7]=s):s=o[7];let N=s;o[8]!==m||o[9]!==j?(l=(0,P.D)(j,m),o[8]=m,o[9]=j,o[10]=l):l=o[10];let w=l,S=!!y?.length;if(o[11]!==f||o[12]!==y||o[13]!==k||o[14]!==N||o[15]!==w||o[16]!==g||o[17]!==S||o[18]!==p||o[19]!==m||o[20]!==h||o[21]!==c||o[22]!==b){let e,t,r=new Map((y??[]).map(V)),a=S?c.map(e=>{let t=String(e.dataKey??""),n=r.get(t),a=Number(e.value??0);return n&&Number.isFinite(a)&&a>0?{color:e.color,key:t,name:n.name,value:a}:null}).filter(Boolean).sort($):[];o[24]!==g||o[25]!==b?(e=g(b),o[24]=g,o[25]=b,o[26]=e):e=o[26],o[27]!==e?(t=(0,n.jsx)("div",{className:"text-foreground mb-2 font-semibold",children:e}),o[27]=e,o[28]=t):t=o[28],i=(0,n.jsxs)("div",{className:"border-border/60 bg-background/95 text-foreground max-w-[min(100vw-2rem,22rem)] rounded-lg border px-3 py-2.5 text-xs shadow-md backdrop-blur-sm",children:[t,S?(0,n.jsxs)("div",{className:"max-h-72 space-y-1.5 overflow-y-auto overscroll-contain pr-2 [scrollbar-color:hsl(var(--muted-foreground)/0.5)_transparent] [scrollbar-width:thin]",children:[a.map(e=>e?(0,n.jsxs)("div",{className:"flex items-center justify-between gap-6",children:[(0,n.jsxs)("span",{className:"text-muted-foreground flex min-w-0 items-center gap-1.5",children:[(0,n.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full",style:{background:e.color},"aria-hidden":!0}),(0,n.jsx)("span",{className:"truncate",children:e.name})]}),(0,n.jsx)("span",{className:"text-foreground font-medium tabular-nums",children:(0,P.D)(e.value,m)})]},e.key):null),(0,n.jsxs)("div",{className:"border-border/50 flex items-center justify-between gap-6 border-t border-dashed pt-1.5",children:[(0,n.jsx)("span",{className:"text-muted-foreground font-medium",children:h}),(0,n.jsx)("span",{className:"text-foreground font-medium tabular-nums",children:w})]})]}):(0,n.jsxs)("div",{className:"space-y-1.5",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between gap-6",children:[(0,n.jsxs)("span",{className:"text-muted-foreground flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full",style:{background:W},"aria-hidden":!0}),f]}),(0,n.jsx)("span",{className:"text-foreground font-medium tabular-nums",children:k})]}),(0,n.jsxs)("div",{className:"flex items-center justify-between gap-6",children:[(0,n.jsxs)("span",{className:"text-muted-foreground flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full",style:{background:z},"aria-hidden":!0}),p]}),(0,n.jsx)("span",{className:"text-foreground font-medium tabular-nums",children:N})]}),(0,n.jsxs)("div",{className:"border-border/50 flex items-center justify-between gap-6 border-t border-dashed pt-1.5",children:[(0,n.jsx)("span",{className:"text-muted-foreground font-medium",children:h}),(0,n.jsx)("span",{className:"text-foreground font-medium tabular-nums",children:w})]})]})]}),o[11]=f,o[12]=y,o[13]=k,o[14]=N,o[15]=w,o[16]=g,o[17]=S,o[18]=p,o[19]=m,o[20]=h,o[21]=c,o[22]=b,o[23]=i}else i=o[23];return i}function $(e,t){return(t?.value??0)-(e?.value??0)}function V(e){return[e.key,e]}let Q=e=>{let t,r,s,f,p,h,g,y,x,b,_,v,j,k,N,w,S,A,M,O=(0,a.c)(84),{data:B,assetsLabel:R,liabilitiesLabel:C,netLabel:I,formatTooltipYear:$,xTickSuffix:V,debtPayoffYear:Q,debtPayoffLabel:Z,detailSeries:H,showLegend:Y,isAnimationActive:q,className:J}=e,U=void 0===V?"":V,X=void 0===Y||Y,ee=void 0===q||q,et=void 0===J?"h-[clamp(160px,24vh,260px
1)] min-h-[160px] w-full":J,er=(0,F.Ym)(),en=!!H?.length;if(O[0]!==R||O[1]!==et||O[2]!==B||O[3]!==Z||O[4]!==Q||O[5]!==H||O[6]!==$||O[7]!==ee||O[8]!==en||O[9]!==C||O[10]!==er||O[11]!==I||O[12]!==X||O[13]!==U){_=Symbol.for("react.early_return_sentinel");e:{let e,a,S,A,M,F=null!=Q&&Number.isFinite(Q)?B.find(e=>e.year===Q)??null:null;if(!B.length){let e,t;O[30]!==et?(e=(0,L.cn)("text-muted-foreground flex items-center justify-center text-sm",et),O[30]=et,O[31]=e):e=O[31],O[32]!==e?(t=(0,n.jsx)("div",{className:e,children:"â"}),O[32]=e,O[33]=t):t=O[33],_=t;break e}b=et,r=T.P,y="100%",x="100%",t=l.X,v=B,O[34]===Symbol.for("react.memo_cache_sentinel")?(j={top:8,right:8,left:8,bottom:20},O[34]=j):j=O[34],O[35]===Symbol.for("react.memo_cache_sentinel")?(e=(0,n.jsxs)("linearGradient",{id:"nwAssetsFill",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,n.jsx)("stop",{offset:"5%",stopColor:W,stopOpacity:.14}),(0,n.jsx)("stop",{offset:"95%",stopColor:W,stopOpacity:.02})]}),O[35]=e):e=O[35],O[36]===Symbol.for("react.memo_cache_sentinel")?(k=(0,n.jsxs)("defs",{children:[e,(0,n.jsxs)("linearGradient",{id:"nwLiabFill",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,n.jsx)("stop",{offset:"5%",stopColor:z,stopOpacity:.14}),(0,n.jsx)("stop",{offset:"95%",stopColor:z,stopOpacity:.02})]})]}),O[36]=k):k=O[36],O[37]!==U?(a=e=>`${e}${U}`,O[37]=U,O[38]=a):a=O[38],O[39]===Symbol.for("react.memo_cache_sentinel")?(S={fontSize:11},O[39]=S):S=O[39],O[40]!==a?(N=(0,n.jsx)(i.W,{dataKey:"year",tickFormatter:a,axisLine:!1,tickLine:!1,tickMargin:8,tick:S}),O[40]=a,O[41]=N):N=O[41],O[42]===Symbol.for("react.memo_cache_sentinel")?(A={fontSize:11},O[42]=A):A=O[42],O[43]!==er?(w=(0,n.jsx)(o.h,{axisLine:!1,tickLine:!1,tick:A,tickFormatter:e=>(0,P.D)(e,er),width:56}),O[43]=er,O[44]=w):w=O[44],O[45]===Symbol.for("react.memo_cache_sentinel")?(M={zIndex:50,outline:"none",pointerEvents:"auto"},O[45]=M):M=O[45],O[46]!==R||O[47]!==H||O[48]!==$||O[49]!==C||O[50]!==er||O[51]!==I?(s=(0,n.jsx)(u.m,{wrapperStyle:M,content:e=>(0,n.jsx)(G,{...e,locale:er,assetsLabel:R,liabilitiesLabel:C,netLabel:I,formatTooltipYear:$,detailSeries:H})}),O[46]=R,O[47]=H,O[48]=$,O[49]=C,O[50]=er,O[51]=I,O[52]=s):s=O[52],O[53]!==X?(f=X?(0,n.jsx)(c.s,{wrapperStyle:{fontSize:12}}):null,O[53]=X,O[54]=f):f=O[54],O[55]!==H||O[56]!==ee||O[57]!==en?(p=en?H?.map((e,t)=>{let r="asset"===e.kind?D:K,a=r[t%r.length];return(0,n.jsx)(d.N1,{isAnimationActive:ee,type:"monotone",name:e.name,dataKey:e.key,stroke:a,strokeWidth:2,dot:!1,activeDot:{r:3}},e.key)}):null,O[55]=H,O[56]=ee,O[57]=en,O[58]=p):p=O[58],O[59]!==R||O[60]!==ee||O[61]!==en||O[62]!==C?(h=en?null:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(m.Gk,{isAnimationActive:ee,type:"monotone",name:R,dataKey:"assets",stroke:W,fill:"url(#nwAssetsFill)",strokeWidth:2}),(0,n.jsx)(m.Gk,{isAnimationActive:ee,type:"monotone",name:C,dataKey:"liabilities",stroke:z,fill:"url(#nwLiabFill)",strokeWidth:2})]}),O[59]=R,O[60]=ee,O[61]=en,O[62]=C,O[63]=h):h=O[63],g=F&&Number.isFinite(F.netWorth)?(0,n.jsx)(E,{x:F.year,y:0,r:6,fill:"hsl(152 32% 42%)",stroke:"hsl(0 0% 100%)",strokeWidth:2,ifOverflow:"visible",label:Z?{value:Z,position:"top",fontSize:11,fill:"hsl(0 0% 40%)"}:void 0}):null}O[0]=R,O[1]=et,O[2]=B,O[3]=Z,O[4]=Q,O[5]=H,O[6]=$,O[7]=ee,O[8]=en,O[9]=C,O[10]=er,O[11]=I,O[12]=X,O[13]=U,O[14]=t,O[15]=r,O[16]=s,O[17]=f,O[18]=p,O[19]=h,O[20]=g,O[21]=y,O[22]=x,O[23]=b,O[24]=_,O[25]=v,O[26]=j,O[27]=k,O[28]=N,O[29]=w}else t=O[14],r=O[15],s=O[16],f=O[17],p=O[18],h=O[19],g=O[20],y=O[21],x=O[22],b=O[23],_=O[24],v=O[25],j=O[26],k=O[27],N=O[28],w=O[29];return _!==Symbol.for("react.early_return_sentinel")?_:(O[64]!==t||O[65]!==s||O[66
1]!==f||O[67]!==p||O[68]!==h||O[69]!==g||O[70]!==v||O[71]!==j||O[72]!==k||O[73]!==N||O[74]!==w?(S=(0,n.jsxs)(t,{data:v,margin:j,children:[k,N,w,s,f,p,h,g]}),O[64]=t,O[65]=s,O[66]=f,O[67]=p,O[68]=h,O[69]=g,O[70]=v,O[71]=j,O[72]=k,O[73]=N,O[74]=w,O[75]=S):S=O[75],O[76]!==r||O[77]!==y||O[78]!==x||O[79]!==S?(A=(0,n.jsx)(r,{width:y,height:x,children:S}),O[76]=r,O[77]=y,O[78]=x,O[79]=S,O[80]=A):A=O[80],O[81]!==b||O[82]!==A?(M=(0,n.jsx)("div",{className:b,children:A}),O[81]=b,O[82]=A,O[83]=M):M=O[83],M)}},40728:(e,t,r)=>{r.d(t,{m:()=>s});var n=r(57143),a=r(73130);function s(e,t,r,s){let l=(0,a.Q)(e),i=function(e,t){if("number"==typeof e.currentAge&&Number.isFinite(e.currentAge))return e.currentAge;let r=String(e.ownership?.owner_id||"").trim().toLowerCase();return"spouse"===r?t?.ownerCurrentAges?.spouse??t?.currentAge:"client"===r?t?.ownerCurrentAges?.client??t?.currentAge:t?.currentAge}(e,s);if("resp"===String(e.type||"").toLowerCase()&&s)return(0,n.GE)({...e,familyMembers:s.familyMembers,estimatedGrantIncome:s.estimatedGrantIncome},t,r,s);let o=(0,n.i0)({...e,growthRate:t,projectionYears:r,..."resp"===e.type&&s?{familyMembers:s.familyMembers,estimatedGrantIncome:s.estimatedGrantIncome}:{},currentAge:i},s).futureValue;return"number"==typeof o&&Number.isFinite(o)&&!(l>0&&0===o)?o:l*Math.pow(1+t/100,r)}},59162:(e,t,r)=>{r.d(t,{Wu:()=>n.Wu,ZB:()=>n.ZB,Zp:()=>n.Zp,aR:()=>n.aR});var n=r(93456)},90152:(e,t,r)=>{r.d(t,{M:()=>d});var n=r(95155),a=r(19749),s=r(12115),l=r(87477),i=r(21352),o=r(11675),u=r(67993),c=r(91753);function d(e){let t,r,d,m,f,p=(0,a.c)(15),{label:h,onClick:g,disabled:y,downloading:x,className:b}=e,_=(0,s.useContext)(l.V);if(_?.isDemo)return null;p[0]!==b?(t=(0,c.cn)("text-muted-foreground hover:bg-muted hover:text-foreground -my-1 h-6 w-6 shrink-0 rounded-full p-0",b),p[0]=b,p[1]=t):t=p[1];let v=y||x;return p[2]!==x?(r=x?(0,n.jsx)(o.I,{name:"Loader2",className:"size-4 animate-spin"}):(0,n.jsx)(o.I,{name:"Download",className:"size-4"}),p[2]=x,p[3]=r):r=p[3],p[4]!==h||p[5]!==g||p[6]!==t||p[7]!==v||p[8]!==r?(d=(0,n.jsx)(u.k$,{asChild:!0,children:(0,n.jsx)(i.$,{type:"button",variant:"ghost",size:"sm",className:t,onClick:g,disabled:v,"aria-label":h,children:r})}),p[4]=h,p[5]=g,p[6]=t,p[7]=v,p[8]=r,p[9]=d):d=p[9],p[10]!==h?(m=(0,n.jsx)(u.ZI,{side:"top",className:"text-xs",children:h}),p[10]=h,p[11]=m):m=p[11],p[12]!==d||p[13]!==m?(f=(0,n.jsx)(u.Bc,{delayDuration:0,children:(0,n.jsxs)(u.m_,{children:[d,m]})}),p[12]=d,p[13]=m,p[14]=f):f=p[14],f}},93456:(e,t,r)=>{r.d(t,{Wu:()=>u,ZB:()=>o,Zp:()=>l,aR:()=>i});var n=r(95155),a=r(12115),s=r(91753);let l=a.forwardRef(({className:e,...t},r)=>(0,n.jsx)("div",{ref:r,className:(0,s.cn)("card",e),...t}));l.displayName="Card";let i=a.forwardRef(({className:e,...t},r)=>(0,n.jsx)("div",{ref:r,className:(0,s.cn)("flex flex-col space-y-1.5 p-2 md:p-3",e),...t}));i.displayName="CardHeader";let o=a.forwardRef(({className:e,...t},r)=>(0,n.jsx)("h3",{ref:r,className:(0,s.cn)("leading-none font-semibold tracking-tight",e),...t}));o.displayName="CardTitle";let u=a.forwardRef(({className:e,...t},r)=>(0,n.jsx)("div",{ref:r,className:(0,s.cn)("p-2 pt-0 md:p-3 md:pt-0",e),...t}));u.displayName="CardContent"}}]);
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.