1"use strict";(window.webpackChunksdc_neos=window.webpackChunksdc_neos||[]).push([[7718],{11498:(e,t,n)=>{n.d(t,{CQ:()=>c});var a=n(88767),r=n(79922),l=n(2344);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e){return["getCoreLoanPaymentPlan",e]}var c=function(e,t){var n=(0,l.h_)();return(0,a.useQuery)(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),a.forEach(function(t){o(e,t,n[t])})}return e}({},function(e,t){var n={queryFn:function(){return function(e,t){return e.getCoreLoanPaymentPlan(t)}(e,(0,r.Z)(t,"Expected payload"))},queryKey:u(t),enabled:!!t};return n}(n,e),t))}},85348:(e,t,n)=>{n.d(t,{$o:()=>c});var a=n(88767),r=n(79922),l=n(2344);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e){return["getLoanAccountDetails",e]}var c=function(e,t){var n=(0,l.h_)();return(0,a.useQuery)(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),a.forEach(function(t){o(e,t,n[t])})}return e}({},function(e,t){var n={queryFn:function(){return function(e,t){return e.getLoanAccountDetails(t)}(e,(0,r.Z)(t,"Expected payload"))},queryKey:u(t),enabled:!!t};return n}(n,e),t))}},48895:(e,t,n)=>{n.d(t,{Z:()=>m});var a=n(94184),r=n.n(a),l=n(67294),o=n(28968),u=n(96967),c=n(17372),i=n(74053),s=n(66261);const m=function(e){var t,n,a=e.label,m=e.iconId,d=(0,l.useRef)(null),f=(0,l.useRef)(null),p=(0,s.H)(e.isOpen),y=(t=(0,l.useState)({}),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=[],a=!0,r=!1,l=void 0;try{for(var o,u=e[Symbol.iterator]();!(a=(o=u.next()).done)&&(n.push(o.value),!t||n.length!==t);a=!0);}catch(e){r=!0,l=e}finally{try{a||null==u.return||u.return()}finally{if(r)throw l}}return n}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()),v=y[0],b=y[1],E=(0,c.i)();(0,l.useEffect)(function(){e.setIsOpen(!1)},[E]),(0,i.Z)(d,function(){e.setIsOpen(!1)}),(0,l.useLayoutEffect)(function(){e.isOpen?b(w()):b({})},[e.isOpen]);var w=function(){if(!d.current||!f.current)return{};var t=d.current.getBoundingClientRect(),n=f.current.getBoundingClientRect(),a={},r=t.width/2-n.width/2,l=r;n.left+l<0?(a.arrowLeft=n.left+l,l=-1*n.left):t.right-r>=window.innerWidth&&(l=t.right+r-window.innerWidth,a.arrowLeft=r-l),a.dropdownLeft=l;var o=window.innerHeight-t.bottom<n.height,u=t.top<n.height;return!o||u||e.dropdownAlwaysBelow?a.aboveButton=!1:a.aboveButton=!0,a},g=r()("button-dropdown",e.className,{"button-dropdown--is-open":e.isOpen,"button-dropdown--is-above":v.aboveButton,"button-dropdown--inactive-with-input":e.inactiveWithInput});return l.createElement("div",{className:g,ref:d,role:"group"},l.createElement(o.Z,{ref:p,className:e.buttonClassName,type:"button",iconId:m,onClick:function(){e.setIsOpen(!e.isOpen)},"aria-expanded":e.isOpen,"aria-label":e["aria-label"]||(m?a:void 0),"aria-controls":e["aria-controls"],color:e.isOpen?"brand-on-white":"transparent",disabled:e.disabled},!m&&l.createElement(l.Fragment,null,l.createElement("span",{className:"button-dropdown__label"},a),l.createElement("span",{className:"button-dropdown__icon"},e.isOpen?l.createElement(u.Z,{iconId:"icon_16_arrow-up"}):l.createElement(u.Z,{iconId:"icon_16_arrow-down"})))),e.isOpen&&l.createElement("div",{className:r()("button-dropdown__content",e.dropdownContentClassName),ref:f,style:{left:v.dropdownLeft}},l.createElement("div",{className:"button-dropdown__content-arrow",style:{marginLeft:v.arrowLeft}}),l.createElement("div",{className:"button-dropdown__content-inner"},e.children),e.renderFooter&&l.createElement("div",{className:"button-dropdown__content-footer"},e.renderFooter())))}}
1,17372:(e,t,n)=>{n.d(t,{i:()=>l});var a=n(91360),r=n(67294);function l(){var e,t,l=n.g.window?{x:window.innerWidth,y:window.innerHeight}:{x:0,y:0},o=(e=(0,r.useState)(l),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],a=!0,r=!1,l=void 0;try{for(var o,u=e[Symbol.iterator]();!(a=(o=u.next()).done)&&(n.push(o.value),!t||n.length!==t);a=!0);}catch(e){r=!0,l=e}finally{try{a||null==u.return||u.return()}finally{if(r)throw l}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()),u=o[0],c=o[1],i=(0,a.P2)(function(){c(l)},50);return(0,r.useEffect)(function(){if(n.g.window)return window.addEventListener("resize",i),function(){window.removeEventListener("resize",i)}},[i]),u}},66261:(e,t,n)=>{n.d(t,{H:()=>r,m:()=>l});var a=n(67294);function r(e){var t=(0,a.useRef)(null),n=(0,a.useRef)(!1);return(0,a.useEffect)(function(){n.current&&!e&&t.current&&t.current.focus(),n.current=e},[e]),t}function l(e,t){var n=(0,a.useRef)(!1);(0,a.useEffect)(function(){if(n.current&&!e&&t){var a=document.querySelector('input[name="'.concat(t,'"]'));a&&a.focus()}n.current=e},[e,t])}},74053:(e,t,n)=>{n.d(t,{Z:()=>r});var a=n(67294);const r=function(e,t){var n=(0,a.useRef)(),r=(0,a.useCallback)(function(n){var a=e.current;(!a||n&&!a.contains(n))&&t()},[t,e]),l=(0,a.useCallback)(function(){r(n.current),n.current=void 0},[r]),o=(0,a.useCallback)(function(e){n.current=e.target?e.target:void 0},[]),u=(0,a.useCallback)(function(n){var a=e.current;a&&a.contains(document.activeElement)&&(n.ctrlKey||n.altKey||n.metaKey||("Escape"===n.key&&t(),"Tab"===n.key&&n.target&&r(n.target)))},[t,r,e]);(0,a.useEffect)(function(){return window.addEventListener("mousedown",o),window.addEventListener("mouseup",l),window.addEventListener("keyup",u),function(){window.removeEventListener("mousedown",o),window.removeEventListener("mouseup",l),window.removeEventListener("keyup",u)}},[r,u,o,l])}},77718:(e,t,n)=>{n.r(t),n.d(t,{default:()=>J});var a=n(67294),r=n(27484),l=n.n(r),o=n(11498),u=n(85348),c=n(87191),i=n(34242),s=n(79551),m=n(88767),d=n(79922),f=n(2344);function p(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function y(e){return["calculatePaymentPlan",e]}var v,b,E=n(48895),w=n(11054),g=n(23258),_=n(80714),h=n(75168),D=n(44268),O=n(64857),N=n(1822),A=n(57709);function C(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],a=!0,r=!1,l=void 0;try{for(var o,u=e[Symbol.iterator]();!(a=(o=u.next()).done)&&(n.push(o.value),!t||n.length!==t);a=!0);}catch(e){r=!0,l=e}finally{try{a||null==u.return||u.return()}finally{if(r)throw l}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}(b=v||(v={})).REMAINING_DEBT="remainingDebt",b.DEPRECIATION_AMOUNT="depreciationAmount",b.SETTLEMENT_AMOUNT="settlementAmount",b.INTEREST_AMOUNT="interestAmount";var I=function(e){var t,n,r,l,o,u,i,s,v=e.accountCombinedKey,b=e.newExpirationDate,E=e.newSettlementAmount,g=e.currentLoanData,_=e.onError,h=(0,A.f)(),D=(u={accountCombinedKey:v,newExpirationDate:b,newSettlementAmount:E},s=(0,f.h_)(),(0,m.useQuery)(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),a.forEach(function(t){p(e,t,n[t])})}return e}({},function(e,t){var n={queryFn:function(){return function(e,t){return e.calculatePaymentPlan(t)}(e,(0,d.Z)(t,"Expected payload"))},queryKey:y(t),enabled:!!t};return n}(s,u),i))),O=D.data,C=D.isLoading,I=D.error,L=null===(t=(0,a.useMemo)(function(){return null==O?void 0:O.installment.filter(function(e){return!!e.sumYear})},[null==O?void 0:O.installment]))||void 0===t?void 0:t.reduce(function(e,t){return t.sumYear&&(e[t.sumYear.toString()]=t),e},{}),T=[{label:h.installment,current:N.H.formatCurrency(g.settlement.amount.decimalValue,g.settlement.currencyCode,{showCurrencyDisplay:!0}),calculated:(null==O?void 0:O.settlementAmount)&&N.H.formatCurrency(null==O||null===(n=O.settlementAmount)||void 0===n?void 0:n.amount.decimalValue,null==O||null===(r=O.settlementAmount)||void 0===r?void 0:r.currencyCode,{showCurrencyDisplay:!0})},{label:h.installmentFrequency,current:(0,c.B)(h.labelMappings.frequencyHelpTexts,g.frequency),calculated:(0,c.B)(h.labelMappings.frequencyHelpTexts,g.frequency)},{label:h.global.futureDetailsExpirationDate,current:g.expirationDate,calculated:null==O?void 0:O.expireDate},{label:h.totalInterest,current:N.H.formatCurrency(g.totalInterest.amount.decimalValue,g.totalInterest.currencyCode,{showCurrencyDisplay:!0}),calculated:(null==O?void 0:O.totalInterestAmount)&&N.H.formatCurrency(null==O||null===(l=O.totalInterestAmount)||void 0===l?void 0:l.amount.decimalValue,null==O||null===(o=O.totalInterestAmount)||void 0===o?void 0:o.currencyCode,{showCurrencyDisplay:!0})}];return C?a.createElement(w.Z,null):I?(_(),null):a.createElement("div",{className:"calculate-payment-plan"},a.createElement("span",{className:"calculate-payment-plan__title"},h.calculationResult),a.createElement("span",{className:"calculate-payment-plan__disclaimer"},h.loanChangeDisclaimer),a.createElement("div",{className:"calculate-payment-plan__result"},a.createElement(S,{resultData:T})),L&&a.createElement(R,{installments:L,currentInstallments:g.installments}))},S=function(e){var t=e.resultData,n=(0,A.f)();return a.createElement(a.Fragment,null,a.createElement("span",{className:"calculate-payment-plan__result-title"},n.simulationResult),a.createElement(g.i,{fixed:!0,className:"calculate-payment-plan__result-table"}
1,a.createElement(D.s,null,a.createElement(O.S,{className:"calculate-payment-plan__result-table-row blank"},a.createElement(h.D,null),a.createElement(h.D,{style:{fontWeight:900}},n.global.current),a.createElement(h.D,{style:{fontWeight:900}},n.calculated))),a.createElement(_.R,null,t.map(function(e,t){return a.createElement(O.S,{className:"calculate-payment-plan__result-table-row ".concat(t%2==0?"":"blank"),key:"".concat(e.current,"-").concat(e.calculated)},a.createElement(h.D,{noBorder:!0,highlight:!0},e.label),a.createElement(h.D,{noBorder:!0,highlight:!0},e.current),a.createElement(h.D,{noBorder:!0,highlight:!0},e.calculated))}))))},R=function(e){var t,n,r=e.installments,l=e.currentInstallments,o=(0,A.f)(),u=C((0,a.useState)(!1),2),c=u[0],i=u[1],s=C((0,a.useState)(v.REMAINING_DEBT),2),m=s[0],d=s[1],f=(0,a.useMemo)(function(){var e=Object.keys(r),t=Object.keys(l);return e.length>t.length?e:t},[r,l]),p={remainingDebt:o.outstandingDebt,depreciationAmount:o.installments,settlementAmount:o.settlements,interestAmount:o.interest};return a.createElement("div",null,a.createElement(E.Z,{inactiveWithInput:!0,label:p[m],isOpen:c,setIsOpen:i,className:"calculate-payment-plan__result-dropdown",buttonClassName:"calculate-payment-plan__result-dropdown-button",dropdownContentClassName:"calculate-payment-plan__result-dropdown-content"},Object.values(v).map(function(e){return a.createElement("div",{className:"calculate-payment-plan__result-dropdown-content-button",onClick:function(){return function(e){d(e),i(!1)}(e)},key:e},p[e])})),a.createElement(g.i,{fixed:!0,containerClassName:"calculate-payment-plan__result-table"}
1,a.createElement(D.s,null,a.createElement(O.S,{className:"calculate-payment-plan__result-table-row blank"},a.createElement(h.D,null),a.createElement(h.D,{style:{fontWeight:900}},o.global.current),a.createElement(h.D,{style:{fontWeight:900}},o.calculated))),a.createElement(_.R,null,f.map(function(e,o){return a.createElement(O.S,{className:"calculate-payment-plan__result-table-row ".concat(o%2==0?"":"blank"),key:e},a.createElement(h.D,{noBorder:!0,highlight:!0},e),a.createElement(h.D,{noBorder:!0,highlight:!0},(null==l||null===(t=l[e])||void 0===t?void 0:t[m])&&N.H.formatCurrency(l[e][m].amount.decimalValue,l[e][m].currencyCode,{showCurrencyDisplay:!0})),a.createElement(h.D,{noBorder:!0,highlight:!0},(null==r||null===(n=r[e])||void 0===n?void 0:n[m])&&N.H.formatCurrency(r[e][m].amount.decimalValue,r[e][m].currencyCode,{showCurrencyDisplay:!0})))}))))},L=n(28968),T=n(22092),k=n(18480),x=n(48394),F=n(29233),P=n(20607),j=n(28381);function q(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function M(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),a.forEach(function(t){q(e,t,n[t])})}return e}const Z=function(e){var t,n="".concat(e.id,"-label");return a.createElement(F.Z,{className:e.className,disabled:null===(t=e.fieldAttributes)||void 0===t?void 0:t.disabled},a.createElement(P.Z,{id:n,required:e.required},e.label),a.createElement(s.gN,{name:e.id,type:"radio",component:T.J1}),a.createElement("div",{role:"radiogroup","aria-labelledby":n,"aria-required":!!e.required||void 0}
1,e.options.map(function(t){return a.createElement(s.gN,{type:"radio",name:e.id,value:t.value,key:"".concat(e.id,"-").concat(t.value)},function(n){var r=n.input;return a.createElement(x.d,{checked:!!r.checked,option:t},a.createElement(j.Z,{className:e.buttonsClassName,fieldAttributes:M({},e.fieldAttributes,r,{onChange:function(t){var n;r.onChange(t),(null===(n=e.fieldAttributes)||void 0===n?void 0:n.onChange)&&e.fieldAttributes.onChange(t)}}),label:t.label},t.content))})})))};var B,H,K=n(96967),W=n(17249),V=n(14578),Y=n(80449);function Q(){return Q=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},Q.apply(this,arguments)}function U(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],a=!0,r=!1,l=void 0;try{for(var o,u=e[Symbol.iterator]();!(a=(o=u.next()).done)&&(n.push(o.value),!t||n.length!==t);a=!0);}catch(e){r=!0,l=e}finally{try{a||null==u.return||u.return()}finally{if(r)throw l}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}(H=B||(B={})).INSTALLMENT_RADIO="installmentRadio",H.DATE_FROM_RADIO="dateFromRadio";var z={installmentRadio:"settlement",dateFromRadio:"dateFrom"},G=function(){var e,t,n,r,m,d=(0,A.f)(),f=(0,Y.EH)("accountId"),p=U((0,a.useState)(!1),2),y=p[0],v=p[1],b=(0,V.Z)(),E=U((0,a.useState)(!1),2),g=E[0],_=E[1],h=(0,o.CQ)({accountCombinedKey:f||""},{enabled:!!f}),D=h.data,O=h.isLoading,C=h.error,S=(0,u.$o)({accountCombinedKey:f||""},{enabled:!!f}),R=S.data,x=S.isLoading,F=S.error,P=null===(e=(0,a.useMemo)(function(){return null==D?void 0:D.repaymentPlan.filter(function(e){return!!e.paymentYear})},[null==D?void 0:D.repaymentPlan]))||void 0===e?void 0:e.reduce(function(e,t){return t.paymentYear&&(e[t.paymentYear.toString()]=t),e},{}),j=(0,a.useMemo)(function(){if(D&&(null==R?void 0:R.loanInformation.frequency)&&P)return{settlement:D.settlementAmount,expirationDate:D.expireDate,totalInterest:D._TotalInterestAmount,frequency:null==R?void 0:R.loanInformation.frequency,installments:P}},[D,P,null==R?void 0:R.loanInformation.frequency]),q={loan_option:B.INSTALLMENT_RADIO,settlement:null==D||null===(t=D.settlementAmount)||void 0===t?void 0:t.amount.decimalValue,dateFrom:null==D?void 0:D.expireDate},M=U((0,a.useState)(q),2),H=M[0],G=M[1],J=function(e){_(!1),G(e),v(!0)},X=function(e){return[{label:B.INSTALLMENT_RADIO,value:B.INSTALLMENT_RADIO,content:a.createElement(k.Z,{id:"settlement",label:d.installment,type:i.n.Number,validationRules:[],fieldAttributes:{disabled:"installmentRadio"!==(null===(n=e.getFieldState("loan_option"))||void 0===n?void 0:n.value)},fractionDigits:2,annotation:null==D||null===(r=D.settlementAmount)||void 0===r?void 0:r.currencyCode})},{label:B.DATE_FROM_RADIO,value:B.DATE_FROM_RADIO,content:a.createElement(T.dY,{id:"dateFrom",type:i.n.DatePicker,iconId:"icon_16_calendar",label:d.global.futureDetailsExpirationDate,validationRules:[],fieldAttributes:{onFocus:function(){e.change("loan_option","dateFromRadio")},disabled:"dateFromRadio"!==(null===(m=e.getFieldState("loan_option"))||void 0===m?void 0:m.value)},minDate:l()(new Date).toString()})}]},ee={accountCombinedKey:f};if("installmentRadio"===H.loan_option&&(ee.newSettlementAmount=H.settlement),"dateFromRadio"===H.loan_option&&(ee.newExpirationDate=H.dateFrom),x||O)return a.createElement(w.Z,null);var te=F||C;return te&&b.dismissable(te),a.createElement(a.Fragment,null,a.createElement("div",{className:"calculate-loan"},a.createElement("div",{className:"calculate-loan__header"},a.createElement(K.Z,{iconId:"icon_28_calculator"}),a.createElement("span",null,d.calculateLoan)),a.createElement("div",{className:"calculate-loan__info-text"},a.createElement("span",null,d.loanInfoTextFirstLine),a.createElement("span",null,d.loanInfoTextSecondLine),a.createElement("span",null,d.loanInfoTextThirdLine)),function(){if(D&&(null==R?void 0:R.loanInformation)){var e,t,n,r=R.loanInformation,l=(0,c.B)(d.labelMappings.frequencyHelpTexts,r.frequency);return a.createElement(a.Fragment,null,r.amountToPay&&a.createElement($,{label:d.currentInstallment,value:N.H.formatCurrency(null===(e=D.settlementAmount)||void 0===e?void 0:e.amount.decimalValue,null===(t=D.settlementAmount)||void 0===t?void 0:t.currencyCode,{showCurrencyDisplay:!0})}),(null===(n=R.nextRepayment)||void 0===n?void 0:n.dueDate)&&a.createElement($,{label:d.installmentNextDueDate,value:R.nextRepayment.dueDate}),a.createElement($,{label:d.currentInstallmentFrequency,value:l}),a.createElement($,{label:d.expirationDateInfo,value:D.expireDate}))}}(),a.createElement("div",{className:"calculate-loan__form"},a.createElement("span",{className:"calculate-loan__form-header"},d.loanFormHeader),a.createElement(s.l0,{onSubmit:J,initialValues:q,render:function(e){var t,n,r,l=e.form,o=e.dirtyFields,u=e.values,c=Object.keys(o).some(function(e){return(null===(t=q[e])||void 0===t?void 0:t.toString())!==(null===(n=l.getFieldState(e))||void 0===n||null===(r=n.value)||void 0===r?void 0:r.toString())});return a.createElement("form",null,a.createElement(Z,{id:"loan_option",options:X(l),buttonsClassName:"calculate-loan__form-custom-radio-buttons",fieldAttributes:{onChange:function(e){var t=e.target.value===B.INSTALLMENT_RADIO?B.DATE_FROM_RADIO:B.INSTALLMENT_RADIO,n=z[t];l.change(z[t],q[n])}}}),g&&a.createElement("div",{className:"calculate-loan__form-error-message"},d.loanCalculationError),a.createElement(L.Z,{className:"calculate-loan__form-submit-button",fullWidth:!0,disabled:!c||!u[z[u.loan_o
1ption]],type:"button",onClick:function(){return J(u)}},d.global.calculate))}}))),f&&j&&a.createElement(W.Z,{isOpen:y,onRequestClose:function(){return v(!1)},className:"calculate-loan__modal",contentClassName:"calculate-loan__modal-content",innerContentClassName:"calculate-loan__modal-content-inner",footerContent:a.createElement(L.Z,{fullWidth:!0,onClick:function(){return v(!1)},color:"default"},d.global.close)},a.createElement(I,Q({accountCombinedKey:f},ee,{currentLoanData:j,onError:function(){v(!1),_(!0)}}))))},$=function(e){var t=e.label,n=e.value;return a.createElement("div",{className:"calculate-loan__loan-info"},a.createElement("span",null,t),a.createElement("span",null,n))};const J=function(){return a.createElement(G,null)}}}]); 2//# sourceMappingURL=7718.8192ce3c93e793195a7d.js.map
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.