{"version":3,"sources":["engine/factor.ts","engine/calculator.ts","Header.tsx","FormLabel.tsx","Footer.tsx","Results.tsx","NumberFormat.tsx","App.tsx","serviceWorker.ts","theme.ts","index.tsx"],"names":["getImmediateFactor","col","value","factor","table","find","obj","BigNumber","getDeferredFactor","deferredTable","Calculator","inputs","otherInputs","benefitsMultiplier","discountRate","cola","salaryProjection","this","n","m","Decimal","toString","pow","moment","dateOfPurchaseOfService","diff","dateOfBirth","ageActual","integerValue","ROUND_DOWN","minus","ageYears","times","plus","ageMonths","dividedBy","monthsOfPurchasedService","salary","dateOfPlanEntry","min","max","age","yearsOfPurchasedService","dbServiceAtPurchaseDate","uraM18","unreducedRetirementAge","uraK18","temp","uraJ18","isEqualTo","decimalPlaces","uraL18","isLessThanOrEqualTo","toNumber","uraI18","uraH18","power","salaryFactor","pvFactor","servicePurchase","Date","year","month","date","dates","Array","isValid","currDate","clone","add","startOf","length","includes","push","useStyles","makeStyles","root","backgroundColor","borderWidth","borderStyle","borderColor","background","Header","styles","AppBar","position","className","Toolbar","style","fontWeight","marginTop","Typography","variant","Box","fontSize","opacity","FormLabel","label","backgroundImage","backgroundRepeat","top","bottom","Footer","dateOfServicePurchase","marginBottom","paddingTop","StyledCard","withStyles","margin","borderRadius","border","Card","Title","padding","color","Note","Cost","Pdf","Link","Results","costOfService","monthsPurchased","align","href","target","rel","NumberFormatCustom","props","inputRef","onChange","other","getInputRef","onValueChange","values","name","thousandSeparator","isNumericString","prefix","formLabelGridProps","item","md","xs","StyledTextField","TextField","DisabledTextField","StyledDatePicker","KeyboardDatePicker","StyledSelect","Select","SubText","paddingRight","minDateDob","subtract","maxDateDob","minDatePlanEntry","App","React","useState","setDateOfBirth","dateEffective","setDateOfPlanEntry","setDateOfPurchaseOfService","setSalary","mos","setMos","dob","isAfter","isBefore","calculator","isNaN","formatter","Intl","NumberFormat","currency","minimumFractionDigits","dateFormats","system","String","enUS","Paper","elevation","paddingBottom","Grid","container","spacing","libInstance","utils","MomentUtils","autoOk","inputVariant","format","minDate","maxDate","minDateMessage","maxDateMessage","open","keyboardIcon","disabled","Tooltip","disableFocusListener","disableTouchListener","title","textDecoration","fullWidth","defaultValue","purchaseDateOptions","e","map","option","index","MenuItem","key","fontStyle","InputProps","inputComponent","type","isGreaterThan","justify","alignItems","Boolean","window","location","hostname","match","theme","createMuiTheme","typography","fontFamily","htmlFontSize","overrides","MuiIconButton","MuiInputBase","maxWidth","MuiPickersToolbar","toolbar","MuiPickersDay","daySelected","MuiTooltip","tooltip","ReactDOM","render","StrictMode","ThemeProvider","document","getElementById","navigator","serviceWorker","ready","then","registration","unregister","catch","error","console","message"],"mappings":"0bAkBaA,EAAqB,SAACC,EAAaC,GAC5C,IAAMC,EAASC,EAAMC,MAAK,SAAAC,GAAG,OACzBA,EAAI,cAAgBJ,KAGxB,OAAKC,EAKE,IAAII,YAAUJ,EAAOF,IAHjB,IAAIM,YAAU,MAMdC,EAAoB,SAACP,EAAaC,GAC7C,IAAMC,EAASM,EAAcJ,MAAK,SAAAC,GAAG,OACjCA,EAAI,cAAgBJ,KAGxB,OAAKC,EAKE,IAAII,YAAUJ,EAAOF,IAHnB,IAAIM,YAAU,MAMrBH,EAAQ,CACV,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,QACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,EAAK,SACL,GAAM,SACN,GAAM,SACN,WAAY,IAEd,CACE,EAAK,SACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,OACL,EAAK,QACL,EAAK,QACL,EAAK,OACL,EAAK,QACL,EAAK,QACL,GAAM,OACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,GAAM,QACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,OACL,GAAM,QACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,GAAM,QACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,OACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,GAAM,OACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,OACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,GAAM,QACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,OACL,EAAK,QACL,GAAM,QACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,OACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,GAAM,QACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,OACL,EAAK,QACL,EAAK,QACL,GAAM,QACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,OACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,OACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,EAAK,QACL,GAAM,QACN,GAAM,QACN,WAAY,IAEd,CACE,EAAK,QACL,EAAK,GACL,EAAK,GACL,EAAK,GACL,EAAK,GACL,EAAK,GACL,EAAK,GACL,EAAK,GACL,EAAK,GACL,EAAK,GACL,GAAM,GACN,GAAM,GACN,WAAY,KAIVK,EAAgB,CACpB,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,QACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,QACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,GAAM,WACN,GAAM,WACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,WACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,OACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,WACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,WACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,WACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,WACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,WACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,WACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,SACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,UACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,GAAM,SACN,GAAM,UACN,WAAY,IAEd,CACE,EAAK,YACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,UACL,EAAK,SACL,EAA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","file":"static/js/main.20060ec8.chunk.js","sourcesContent":["import { BigNumber } from 'bignumber.js';\r\n\r\ntype entry = {\r\n 0: number;\r\n 1: number;\r\n 2: number;\r\n 3: number;\r\n 4: number;\r\n 5: number;\r\n 6: number;\r\n 7: number;\r\n 8: number;\r\n 9: number;\r\n 10: number;\r\n 11: number;\r\n \"Year/Mos\": number;\r\n};\r\n\r\nexport const getImmediateFactor = (col: number, value: number) : BigNumber => {\r\n const factor = table.find(obj => \r\n obj[\"Year/Mos\"] === value\r\n );\r\n\r\n if (!factor) {\r\n //throw new Error(\"getImmediateFactor lookup failed\");\r\n return new BigNumber('0');\r\n }\r\n\r\n return new BigNumber(factor[col as keyof(entry)]);\r\n }\r\n\r\n export const getDeferredFactor = (col: number, value: number) : BigNumber => {\r\n const factor = deferredTable.find(obj => \r\n obj[\"Year/Mos\"] === value\r\n );\r\n\r\n if (!factor) {\r\n //throw new Error(\"getDeferredFactor lookup failed\");\r\n return new BigNumber('0');\r\n }\r\n\r\n return new BigNumber(factor[col as keyof(entry)]);\r\n }\r\n\r\nconst table = [\r\n {\r\n \"0\": 14.39211,\r\n \"1\": 14.37999,\r\n \"2\": 14.36788,\r\n \"3\": 14.35576,\r\n \"4\": 14.34364,\r\n \"5\": 14.33152,\r\n \"6\": 14.31941,\r\n \"7\": 14.30729,\r\n \"8\": 14.29517,\r\n \"9\": 14.28305,\r\n \"10\": 14.27093,\r\n \"11\": 14.25882,\r\n \"Year/Mos\": 50\r\n },\r\n {\r\n \"0\": 14.2467,\r\n \"1\": 14.23403,\r\n \"2\": 14.22135,\r\n \"3\": 14.20868,\r\n \"4\": 14.19601,\r\n \"5\": 14.18334,\r\n \"6\": 14.17066,\r\n \"7\": 14.15799,\r\n \"8\": 14.14532,\r\n \"9\": 14.13264,\r\n \"10\": 14.11997,\r\n \"11\": 14.1073,\r\n \"Year/Mos\": 51\r\n },\r\n {\r\n \"0\": 14.09463,\r\n \"1\": 14.08137,\r\n \"2\": 14.06811,\r\n \"3\": 14.05486,\r\n \"4\": 14.0416,\r\n \"5\": 14.02835,\r\n \"6\": 14.01509,\r\n \"7\": 14.00183,\r\n \"8\": 13.98858,\r\n \"9\": 13.97532,\r\n \"10\": 13.96206,\r\n \"11\": 13.94881,\r\n \"Year/Mos\": 52\r\n },\r\n {\r\n \"0\": 13.93555,\r\n \"1\": 13.92169,\r\n \"2\": 13.90783,\r\n \"3\": 13.89397,\r\n \"4\": 13.88011,\r\n \"5\": 13.86625,\r\n \"6\": 13.85239,\r\n \"7\": 13.83853,\r\n \"8\": 13.82467,\r\n \"9\": 13.81081,\r\n \"10\": 13.79695,\r\n \"11\": 13.78308,\r\n \"Year/Mos\": 53\r\n },\r\n {\r\n \"0\": 13.76922,\r\n \"1\": 13.75475,\r\n \"2\": 13.74027,\r\n \"3\": 13.72579,\r\n \"4\": 13.71131,\r\n \"5\": 13.69683,\r\n \"6\": 13.68235,\r\n \"7\": 13.66787,\r\n \"8\": 13.6534,\r\n \"9\": 13.63892,\r\n \"10\": 13.62444,\r\n \"11\": 13.60996,\r\n \"Year/Mos\": 54\r\n },\r\n {\r\n \"0\": 13.59548,\r\n \"1\": 13.58037,\r\n \"2\": 13.56526,\r\n \"3\": 13.55014,\r\n \"4\": 13.53503,\r\n \"5\": 13.51992,\r\n \"6\": 13.50481,\r\n \"7\": 13.4897,\r\n \"8\": 13.47458,\r\n \"9\": 13.45947,\r\n \"10\": 13.44436,\r\n \"11\": 13.42925,\r\n \"Year/Mos\": 55\r\n },\r\n {\r\n \"0\": 13.41414,\r\n \"1\": 13.39837,\r\n \"2\": 13.38261,\r\n \"3\": 13.36684,\r\n \"4\": 13.35108,\r\n \"5\": 13.33531,\r\n \"6\": 13.31955,\r\n \"7\": 13.30379,\r\n \"8\": 13.28802,\r\n \"9\": 13.27226,\r\n \"10\": 13.25649,\r\n \"11\": 13.24073,\r\n \"Year/Mos\": 56\r\n },\r\n {\r\n \"0\": 13.22496,\r\n \"1\": 13.20854,\r\n \"2\": 13.19211,\r\n \"3\": 13.17568,\r\n \"4\": 13.15925,\r\n \"5\": 13.14283,\r\n \"6\": 13.1264,\r\n \"7\": 13.10997,\r\n \"8\": 13.09354,\r\n \"9\": 13.07711,\r\n \"10\": 13.06069,\r\n \"11\": 13.04426,\r\n \"Year/Mos\": 57\r\n },\r\n {\r\n \"0\": 13.02783,\r\n \"1\": 13.01073,\r\n \"2\": 12.99363,\r\n \"3\": 12.97654,\r\n \"4\": 12.95944,\r\n \"5\": 12.94234,\r\n \"6\": 12.92525,\r\n \"7\": 12.90815,\r\n \"8\": 12.89105,\r\n \"9\": 12.87395,\r\n \"10\": 12.85686,\r\n \"11\": 12.83976,\r\n \"Year/Mos\": 58\r\n },\r\n {\r\n \"0\": 12.82266,\r\n \"1\": 12.80489,\r\n \"2\": 12.78711,\r\n \"3\": 12.76934,\r\n \"4\": 12.75156,\r\n \"5\": 12.73379,\r\n \"6\": 12.71601,\r\n \"7\": 12.69823,\r\n \"8\": 12.68046,\r\n \"9\": 12.66268,\r\n \"10\": 12.64491,\r\n \"11\": 12.62713,\r\n \"Year/Mos\": 59\r\n },\r\n {\r\n \"0\": 12.60936,\r\n \"1\": 12.5909,\r\n \"2\": 12.57244,\r\n \"3\": 12.55399,\r\n \"4\": 12.53553,\r\n \"5\": 12.51707,\r\n \"6\": 12.49862,\r\n \"7\": 12.48016,\r\n \"8\": 12.46171,\r\n \"9\": 12.44325,\r\n \"10\": 12.42479,\r\n \"11\": 12.40634,\r\n \"Year/Mos\": 60\r\n },\r\n {\r\n \"0\": 12.38788,\r\n \"1\": 12.36874,\r\n \"2\": 12.34961,\r\n \"3\": 12.33047,\r\n \"4\": 12.31133,\r\n \"5\": 12.2922,\r\n \"6\": 12.27306,\r\n \"7\": 12.25393,\r\n \"8\": 12.23479,\r\n \"9\": 12.21565,\r\n \"10\": 12.19652,\r\n \"11\": 12.17738,\r\n \"Year/Mos\": 61\r\n },\r\n {\r\n \"0\": 12.15824,\r\n \"1\": 12.13843,\r\n \"2\": 12.11861,\r\n \"3\": 12.09879,\r\n \"4\": 12.07897,\r\n \"5\": 12.05915,\r\n \"6\": 12.03933,\r\n \"7\": 12.01951,\r\n \"8\": 11.9997,\r\n \"9\": 11.97988,\r\n \"10\": 11.96006,\r\n \"11\": 11.94024,\r\n \"Year/Mos\": 62\r\n },\r\n {\r\n \"0\": 11.92042,\r\n \"1\": 11.89992,\r\n \"2\": 11.87942,\r\n \"3\": 11.85892,\r\n \"4\": 11.83842,\r\n \"5\": 11.81792,\r\n \"6\": 11.79742,\r\n \"7\": 11.77693,\r\n \"8\": 11.75643,\r\n \"9\": 11.73593,\r\n \"10\": 11.71543,\r\n \"11\": 11.69493,\r\n \"Year/Mos\": 63\r\n },\r\n {\r\n \"0\": 11.67443,\r\n \"1\": 11.65326,\r\n \"2\": 11.63209,\r\n \"3\": 11.61092,\r\n \"4\": 11.58975,\r\n \"5\": 11.56859,\r\n \"6\": 11.54742,\r\n \"7\": 11.52625,\r\n \"8\": 11.50508,\r\n \"9\": 11.48391,\r\n \"10\": 11.46274,\r\n \"11\": 11.44158,\r\n \"Year/Mos\": 64\r\n },\r\n {\r\n \"0\": 11.42041,\r\n \"1\": 11.39859,\r\n \"2\": 11.37676,\r\n \"3\": 11.35494,\r\n \"4\": 11.33312,\r\n \"5\": 11.3113,\r\n \"6\": 11.28947,\r\n \"7\": 11.26765,\r\n \"8\": 11.24583,\r\n \"9\": 11.22401,\r\n \"10\": 11.20219,\r\n \"11\": 11.18036,\r\n \"Year/Mos\": 65\r\n },\r\n {\r\n \"0\": 11.15854,\r\n \"1\": 11.13608,\r\n \"2\": 11.11362,\r\n \"3\": 11.09116,\r\n \"4\": 11.0687,\r\n \"5\": 11.04624,\r\n \"6\": 11.02378,\r\n \"7\": 11.00132,\r\n \"8\": 10.97886,\r\n \"9\": 10.9564,\r\n \"10\": 10.93394,\r\n \"11\": 10.91148,\r\n \"Year/Mos\": 66\r\n },\r\n {\r\n \"0\": 10.88902,\r\n \"1\": 10.86594,\r\n \"2\": 10.84287,\r\n \"3\": 10.8198,\r\n \"4\": 10.79672,\r\n \"5\": 10.77365,\r\n \"6\": 10.75057,\r\n \"7\": 10.7275,\r\n \"8\": 10.70442,\r\n \"9\": 10.68135,\r\n \"10\": 10.65828,\r\n \"11\": 10.6352,\r\n \"Year/Mos\": 67\r\n },\r\n {\r\n \"0\": 10.61213,\r\n \"1\": 10.58846,\r\n \"2\": 10.5648,\r\n \"3\": 10.54113,\r\n \"4\": 10.51747,\r\n \"5\": 10.49381,\r\n \"6\": 10.47014,\r\n \"7\": 10.44648,\r\n \"8\": 10.42281,\r\n \"9\": 10.39915,\r\n \"10\": 10.37548,\r\n \"11\": 10.35182,\r\n \"Year/Mos\": 68\r\n },\r\n {\r\n \"0\": 10.32815,\r\n \"1\": 10.30394,\r\n \"2\": 10.27972,\r\n \"3\": 10.2555,\r\n \"4\": 10.23128,\r\n \"5\": 10.20706,\r\n \"6\": 10.18284,\r\n \"7\": 10.15862,\r\n \"8\": 10.13441,\r\n \"9\": 10.11019,\r\n \"10\": 10.08597,\r\n \"11\": 10.06175,\r\n \"Year/Mos\": 69\r\n },\r\n {\r\n \"0\": 10.03753,\r\n \"1\": 10.0128,\r\n \"2\": 9.98807,\r\n \"3\": 9.96333,\r\n \"4\": 9.9386,\r\n \"5\": 9.91387,\r\n \"6\": 9.88913,\r\n \"7\": 9.8644,\r\n \"8\": 9.83967,\r\n \"9\": 9.81494,\r\n \"10\": 9.7902,\r\n \"11\": 9.76547,\r\n \"Year/Mos\": 70\r\n },\r\n {\r\n \"0\": 9.74074,\r\n \"1\": 9.71554,\r\n \"2\": 9.69034,\r\n \"3\": 9.66515,\r\n \"4\": 9.63995,\r\n \"5\": 9.61475,\r\n \"6\": 9.58955,\r\n \"7\": 9.56436,\r\n \"8\": 9.53916,\r\n \"9\": 9.51396,\r\n \"10\": 9.48877,\r\n \"11\": 9.46357,\r\n \"Year/Mos\": 71\r\n },\r\n {\r\n \"0\": 9.43837,\r\n \"1\": 9.41275,\r\n \"2\": 9.38713,\r\n \"3\": 9.36151,\r\n \"4\": 9.33589,\r\n \"5\": 9.31027,\r\n \"6\": 9.28466,\r\n \"7\": 9.25904,\r\n \"8\": 9.23342,\r\n \"9\": 9.2078,\r\n \"10\": 9.18218,\r\n \"11\": 9.15656,\r\n \"Year/Mos\": 72\r\n },\r\n {\r\n \"0\": 9.13094,\r\n \"1\": 9.10495,\r\n \"2\": 9.07897,\r\n \"3\": 9.05298,\r\n \"4\": 9.02699,\r\n \"5\": 9.00101,\r\n \"6\": 8.97502,\r\n \"7\": 8.94903,\r\n \"8\": 8.92305,\r\n \"9\": 8.89706,\r\n \"10\": 8.87107,\r\n \"11\": 8.84509,\r\n \"Year/Mos\": 73\r\n },\r\n {\r\n \"0\": 8.8191,\r\n \"1\": 8.79281,\r\n \"2\": 8.76652,\r\n \"3\": 8.74023,\r\n \"4\": 8.71394,\r\n \"5\": 8.68765,\r\n \"6\": 8.66136,\r\n \"7\": 8.63507,\r\n \"8\": 8.60878,\r\n \"9\": 8.58249,\r\n \"10\": 8.5562,\r\n \"11\": 8.52991,\r\n \"Year/Mos\": 74\r\n },\r\n {\r\n \"0\": 8.50362,\r\n \"1\": 8.47708,\r\n \"2\": 8.45054,\r\n \"3\": 8.42401,\r\n \"4\": 8.39747,\r\n \"5\": 8.37093,\r\n \"6\": 8.3444,\r\n \"7\": 8.31786,\r\n \"8\": 8.29132,\r\n \"9\": 8.26479,\r\n \"10\": 8.23825,\r\n \"11\": 8.21171,\r\n \"Year/Mos\": 75\r\n },\r\n {\r\n \"0\": 8.18518,\r\n \"1\": 8.15847,\r\n \"2\": 8.13176,\r\n \"3\": 8.10505,\r\n \"4\": 8.07834,\r\n \"5\": 8.05163,\r\n \"6\": 8.02492,\r\n \"7\": 7.99821,\r\n \"8\": 7.9715,\r\n \"9\": 7.94479,\r\n \"10\": 7.91808,\r\n \"11\": 7.89137,\r\n \"Year/Mos\": 76\r\n },\r\n {\r\n \"0\": 7.86466,\r\n \"1\": 7.83785,\r\n \"2\": 7.81104,\r\n \"3\": 7.78423,\r\n \"4\": 7.75742,\r\n \"5\": 7.73061,\r\n \"6\": 7.7038,\r\n \"7\": 7.67699,\r\n \"8\": 7.65019,\r\n \"9\": 7.62338,\r\n \"10\": 7.59657,\r\n \"11\": 7.56976,\r\n \"Year/Mos\": 77\r\n },\r\n {\r\n \"0\": 7.54295,\r\n \"1\": 7.51613,\r\n \"2\": 7.48931,\r\n \"3\": 7.46249,\r\n \"4\": 7.43567,\r\n \"5\": 7.40884,\r\n \"6\": 7.38202,\r\n \"7\": 7.3552,\r\n \"8\": 7.32838,\r\n \"9\": 7.30156,\r\n \"10\": 7.27474,\r\n \"11\": 7.24792,\r\n \"Year/Mos\": 78\r\n },\r\n {\r\n \"0\": 7.2211,\r\n \"1\": 7.19436,\r\n \"2\": 7.16762,\r\n \"3\": 7.14088,\r\n \"4\": 7.11414,\r\n \"5\": 7.0874,\r\n \"6\": 7.06066,\r\n \"7\": 7.03392,\r\n \"8\": 7.00719,\r\n \"9\": 6.98045,\r\n \"10\": 6.95371,\r\n \"11\": 6.92697,\r\n \"Year/Mos\": 79\r\n },\r\n {\r\n \"0\": 6.90023,\r\n \"1\": \"\",\r\n \"2\": \"\",\r\n \"3\": \"\",\r\n \"4\": \"\",\r\n \"5\": \"\",\r\n \"6\": \"\",\r\n \"7\": \"\",\r\n \"8\": \"\",\r\n \"9\": \"\",\r\n \"10\": \"\",\r\n \"11\": \"\",\r\n \"Year/Mos\": 80\r\n }\r\n ] as entry[];\r\n\r\n const deferredTable = [\r\n {\r\n \"0\": 5204010.186,\r\n \"1\": 5178766.98,\r\n \"2\": 5153523.78,\r\n \"3\": 5128280.57,\r\n \"4\": 5103037.37,\r\n \"5\": 5077794.16,\r\n \"6\": 5052550.96,\r\n \"7\": 5027307.75,\r\n \"8\": 5002064.55,\r\n \"9\": 4976821.34,\r\n \"10\": 4951578.14,\r\n \"11\": 4926334.94,\r\n \"Year/Mos\": 20\r\n },\r\n {\r\n \"0\": 4901091.73,\r\n \"1\": 4877284.91,\r\n \"2\": 4853478.08,\r\n \"3\": 4829671.25,\r\n \"4\": 4805864.43,\r\n \"5\": 4782057.6,\r\n \"6\": 4758250.78,\r\n \"7\": 4734443.95,\r\n \"8\": 4710637.13,\r\n \"9\": 4686830.3,\r\n \"10\": 4663023.48,\r\n \"11\": 4639216.65,\r\n \"Year/Mos\": 21\r\n },\r\n {\r\n \"0\": 4615409.826,\r\n \"1\": 4592957.57,\r\n \"2\": 4570505.32,\r\n \"3\": 4548053.06,\r\n \"4\": 4525600.8,\r\n \"5\": 4503148.55,\r\n \"6\": 4480696.29,\r\n \"7\": 4458244.04,\r\n \"8\": 4435791.78,\r\n \"9\": 4413339.53,\r\n \"10\": 4390887.27,\r\n \"11\": 4368435.02,\r\n \"Year/Mos\": 22\r\n },\r\n {\r\n \"0\": 4345982.763,\r\n \"1\": 4324807.84,\r\n \"2\": 4303632.92,\r\n \"3\": 4282458,\r\n \"4\": 4261283.08,\r\n \"5\": 4240108.16,\r\n \"6\": 4218933.24,\r\n \"7\": 4197758.32,\r\n \"8\": 4176583.4,\r\n \"9\": 4155408.47,\r\n \"10\": 4134233.55,\r\n \"11\": 4113058.63,\r\n \"Year/Mos\": 23\r\n },\r\n {\r\n \"0\": 4091883.711,\r\n \"1\": 4071913.3,\r\n \"2\": 4051942.89,\r\n \"3\": 4031972.48,\r\n \"4\": 4012002.07,\r\n \"5\": 3992031.66,\r\n \"6\": 3972061.25,\r\n \"7\": 3952090.84,\r\n \"8\": 3932120.43,\r\n \"9\": 3912150.02,\r\n \"10\": 3892179.62,\r\n \"11\": 3872209.21,\r\n \"Year/Mos\": 24\r\n },\r\n {\r\n \"0\": 3852238.796,\r\n \"1\": 3833404.24,\r\n \"2\": 3814569.67,\r\n \"3\": 3795735.11,\r\n \"4\": 3776900.55,\r\n \"5\": 3758065.99,\r\n \"6\": 3739231.43,\r\n \"7\": 3720396.87,\r\n \"8\": 3701562.31,\r\n \"9\": 3682727.75,\r\n \"10\": 3663893.19,\r\n \"11\": 3645058.63,\r\n \"Year/Mos\": 25\r\n },\r\n {\r\n \"0\": 3626224.069,\r\n \"1\": 3608460.74,\r\n \"2\": 3590697.41,\r\n \"3\": 3572934.08,\r\n \"4\": 3555170.75,\r\n \"5\": 3537407.42,\r\n \"6\": 3519644.09,\r\n \"7\": 3501880.76,\r\n \"8\": 3484117.43,\r\n \"9\": 3466354.1,\r\n \"10\": 3448590.77,\r\n \"11\": 3430827.44,\r\n \"Year/Mos\": 26\r\n },\r\n {\r\n \"0\": 3413064.108,\r\n \"1\": 3396311.21,\r\n \"2\": 3379558.31,\r\n \"3\": 3362805.41,\r\n \"4\": 3346052.52,\r\n \"5\": 3329299.62,\r\n \"6\": 3312546.72,\r\n \"7\": 3295793.82,\r\n \"8\": 3279040.93,\r\n \"9\": 3262288.03,\r\n \"10\": 3245535.13,\r\n \"11\": 3228782.23,\r\n \"Year/Mos\": 27\r\n },\r\n {\r\n \"0\": 3212029.335,\r\n \"1\": 3196229.52,\r\n \"2\": 3180429.7,\r\n \"3\": 3164629.88,\r\n \"4\": 3148830.05,\r\n \"5\": 3133030.23,\r\n \"6\": 3117230.41,\r\n \"7\": 3101430.59,\r\n \"8\": 3085630.77,\r\n \"9\": 3069830.95,\r\n \"10\": 3054031.13,\r\n \"11\": 3038231.31,\r\n \"Year/Mos\": 28\r\n },\r\n {\r\n \"0\": 3022431.494,\r\n \"1\": 3007530.65,\r\n \"2\": 2992629.8,\r\n \"3\": 2977728.95,\r\n \"4\": 2962828.1,\r\n \"5\": 2947927.25,\r\n \"6\": 2933026.4,\r\n \"7\": 2918125.55,\r\n \"8\": 2903224.71,\r\n \"9\": 2888323.86,\r\n \"10\": 2873423.01,\r\n \"11\": 2858522.16,\r\n \"Year/Mos\": 29\r\n },\r\n {\r\n \"0\": 2843621.312,\r\n \"1\": 2829568.35,\r\n \"2\": 2815515.38,\r\n \"3\": 2801462.41,\r\n \"4\": 2787409.45,\r\n \"5\": 2773356.48,\r\n \"6\": 2759303.52,\r\n \"7\": 2745250.55,\r\n \"8\": 2731197.58,\r\n \"9\": 2717144.62,\r\n \"10\": 2703091.65,\r\n \"11\": 2689038.68,\r\n \"Year/Mos\": 30\r\n },\r\n {\r\n \"0\": 2674985.719,\r\n \"1\": 2661732.43,\r\n \"2\": 2648479.15,\r\n \"3\": 2635225.87,\r\n \"4\": 2621972.58,\r\n \"5\": 2608719.3,\r\n \"6\": 2595466.01,\r\n \"7\": 2582212.73,\r\n \"8\": 2568959.44,\r\n \"9\": 2555706.16,\r\n \"10\": 2542452.88,\r\n \"11\": 2529199.59,\r\n \"Year/Mos\": 31\r\n },\r\n {\r\n \"0\": 2515946.308,\r\n \"1\": 2503447.3,\r\n \"2\": 2490948.28,\r\n \"3\": 2478449.27,\r\n \"4\": 2465950.26,\r\n \"5\": 2453451.25,\r\n \"6\": 2440952.24,\r\n \"7\": 2428453.22,\r\n \"8\": 2415954.21,\r\n \"9\": 2403455.2,\r\n \"10\": 2390956.19,\r\n \"11\": 2378457.18,\r\n \"Year/Mos\": 32\r\n },\r\n {\r\n \"0\": 2365958.165,\r\n \"1\": 2354170.59,\r\n \"2\": 2342383.01,\r\n \"3\": 2330595.44,\r\n \"4\": 2318807.86,\r\n \"5\": 2307020.29,\r\n \"6\": 2295232.71,\r\n \"7\": 2283445.13,\r\n \"8\": 2271657.56,\r\n \"9\": 2259869.98,\r\n \"10\": 2248082.41,\r\n \"11\": 2236294.83,\r\n \"Year/Mos\": 33\r\n },\r\n {\r\n \"0\": 2224507.253,\r\n \"1\": 2213390.7,\r\n \"2\": 2202274.16,\r\n \"3\": 2191157.61,\r\n \"4\": 2180041.06,\r\n \"5\": 2168924.51,\r\n \"6\": 2157807.96,\r\n \"7\": 2146691.41,\r\n \"8\": 2135574.86,\r\n \"9\": 2124458.31,\r\n \"10\": 2113341.76,\r\n \"11\": 2102225.22,\r\n \"Year/Mos\": 34\r\n },\r\n {\r\n \"0\": 2091108.667,\r\n \"1\": 2080625.06,\r\n \"2\": 2070141.46,\r\n \"3\": 2059657.85,\r\n \"4\": 2049174.25,\r\n \"5\": 2038690.64,\r\n \"6\": 2028207.04,\r\n \"7\": 2017723.43,\r\n \"8\": 2007239.83,\r\n \"9\": 1996756.23,\r\n \"10\": 1986272.62,\r\n \"11\": 1975789.02,\r\n \"Year/Mos\": 35\r\n },\r\n {\r\n \"0\": 1965305.412,\r\n \"1\": 1955418.87,\r\n \"2\": 1945532.32,\r\n \"3\": 1935645.77,\r\n \"4\": 1925759.23,\r\n \"5\": 1915872.68,\r\n \"6\": 1905986.14,\r\n \"7\": 1896099.59,\r\n \"8\": 1886213.05,\r\n \"9\": 1876326.5,\r\n \"10\": 1866439.95,\r\n \"11\": 1856553.41,\r\n \"Year/Mos\": 36\r\n },\r\n {\r\n \"0\": 1846666.862,\r\n \"1\": 1837343.48,\r\n \"2\": 1828020.1,\r\n \"3\": 1818696.72,\r\n \"4\": 1809373.35,\r\n \"5\": 1800049.97,\r\n \"6\": 1790726.59,\r\n \"7\": 1781403.21,\r\n \"8\": 1772079.83,\r\n \"9\": 1762756.45,\r\n \"10\": 1753433.07,\r\n \"11\": 1744109.69,\r\n \"Year/Mos\": 37\r\n },\r\n {\r\n \"0\": 1734786.314,\r\n \"1\": 1725994.15,\r\n \"2\": 1717201.99,\r\n \"3\": 1708409.82,\r\n \"4\": 1699617.66,\r\n \"5\": 1690825.49,\r\n \"6\": 1682033.33,\r\n \"7\": 1673241.17,\r\n \"8\": 1664449,\r\n \"9\": 1655656.84,\r\n \"10\": 1646864.68,\r\n \"11\": 1638072.51,\r\n \"Year/Mos\": 38\r\n },\r\n {\r\n \"0\": 1629280.348,\r\n \"1\": 1620989.32,\r\n \"2\": 1612698.3,\r\n \"3\": 1604407.28,\r\n \"4\": 1596116.25,\r\n \"5\": 1587825.23,\r\n \"6\": 1579534.2,\r\n \"7\": 1571243.18,\r\n \"8\": 1562952.16,\r\n \"9\": 1554661.13,\r\n \"10\": 1546370.11,\r\n \"11\": 1538079.08,\r\n \"Year/Mos\": 39\r\n },\r\n {\r\n \"0\": 1529788.06,\r\n \"1\": 1521969.79,\r\n \"2\": 1514151.52,\r\n \"3\": 1506333.26,\r\n \"4\": 1498514.99,\r\n \"5\": 1490696.72,\r\n \"6\": 1482878.45,\r\n \"7\": 1475060.19,\r\n \"8\": 1467241.92,\r\n \"9\": 1459423.65,\r\n \"10\": 1451605.38,\r\n \"11\": 1443787.12,\r\n \"Year/Mos\": 40\r\n },\r\n {\r\n \"0\": 1435968.848,\r\n \"1\": 1428596.55,\r\n \"2\": 1421224.25,\r\n \"3\": 1413851.96,\r\n \"4\": 1406479.66,\r\n \"5\": 1399107.36,\r\n \"6\": 1391735.06,\r\n \"7\": 1384362.77,\r\n \"8\": 1376990.47,\r\n \"9\": 1369618.17,\r\n \"10\": 1362245.87,\r\n \"11\": 1354873.58,\r\n \"Year/Mos\": 41\r\n },\r\n {\r\n \"0\": 1347501.277,\r\n \"1\": 1340549.72,\r\n \"2\": 1333598.16,\r\n \"3\": 1326646.6,\r\n \"4\": 1319695.04,\r\n \"5\": 1312743.49,\r\n \"6\": 1305791.93,\r\n \"7\": 1298840.37,\r\n \"8\": 1291888.81,\r\n \"9\": 1284937.25,\r\n \"10\": 1277985.69,\r\n \"11\": 1271034.14,\r\n \"Year/Mos\": 42\r\n },\r\n {\r\n \"0\": 1264082.577,\r\n \"1\": 1257527.98,\r\n \"2\": 1250973.38,\r\n \"3\": 1244418.77,\r\n \"4\": 1237864.17,\r\n \"5\": 1231309.57,\r\n \"6\": 1224754.97,\r\n \"7\": 1218200.37,\r\n \"8\": 1211645.77,\r\n \"9\": 1205091.17,\r\n \"10\": 1198536.57,\r\n \"11\": 1191981.97,\r\n \"Year/Mos\": 43\r\n },\r\n {\r\n \"0\": 1185427.367,\r\n \"1\": 1179247.27,\r\n \"2\": 1173067.17,\r\n \"3\": 1166887.07,\r\n \"4\": 1160706.97,\r\n \"5\": 1154526.87,\r\n \"6\": 1148346.77,\r\n \"7\": 1142166.67,\r\n \"8\": 1135986.57,\r\n \"9\": 1129806.47,\r\n \"10\": 1123626.37,\r\n \"11\": 1117446.28,\r\n \"Year/Mos\": 44\r\n },\r\n {\r\n \"0\": 1111266.176,\r\n \"1\": 1105439.43,\r\n \"2\": 1099612.67,\r\n \"3\": 1093785.92,\r\n \"4\": 1087959.17,\r\n \"5\": 1082132.42,\r\n \"6\": 1076305.67,\r\n \"7\": 1070478.92,\r\n \"8\": 1064652.17,\r\n \"9\": 1058825.42,\r\n \"10\": 1052998.67,\r\n \"11\": 1047171.92,\r\n \"Year/Mos\": 45\r\n },\r\n {\r\n \"0\": 1041345.168,\r\n \"1\": 1035851.82,\r\n \"2\": 1030358.47,\r\n \"3\": 1024865.12,\r\n \"4\": 1019371.76,\r\n \"5\": 1013878.41,\r\n \"6\": 1008385.06,\r\n \"7\": 1002891.71,\r\n \"8\": 997398.36,\r\n \"9\": 991905.01,\r\n \"10\": 986411.66,\r\n \"11\": 980918.31,\r\n \"Year/Mos\": 46\r\n },\r\n {\r\n \"0\": 975424.9564,\r\n \"1\": 970246.19,\r\n \"2\": 965067.41,\r\n \"3\": 959888.64,\r\n \"4\": 954709.87,\r\n \"5\": 949531.1,\r\n \"6\": 944352.33,\r\n \"7\": 939173.56,\r\n \"8\": 933994.79,\r\n \"9\": 928816.02,\r\n \"10\": 923637.25,\r\n \"11\": 918458.48,\r\n \"Year/Mos\": 47\r\n },\r\n {\r\n \"0\": 913279.7066,\r\n \"1\": 908397.76,\r\n \"2\": 903515.82,\r\n \"3\": 898633.88,\r\n \"4\": 893751.94,\r\n \"5\": 888870,\r\n \"6\": 883988.05,\r\n \"7\": 879106.11,\r\n \"8\": 874224.17,\r\n \"9\": 869342.23,\r\n \"10\": 864460.29,\r\n \"11\": 859578.35,\r\n \"Year/Mos\": 48\r\n },\r\n {\r\n \"0\": 854696.4031,\r\n \"1\": 850094.56,\r\n \"2\": 845492.71,\r\n \"3\": 840890.86,\r\n \"4\": 836289.02,\r\n \"5\": 831687.17,\r\n \"6\": 827085.32,\r\n \"7\": 822483.48,\r\n \"8\": 817881.63,\r\n \"9\": 813279.78,\r\n \"10\": 808677.94,\r\n \"11\": 804076.09,\r\n \"Year/Mos\": 49\r\n },\r\n {\r\n \"0\": 799474.2447,\r\n \"1\": 795136.72,\r\n \"2\": 790799.2,\r\n \"3\": 786461.68,\r\n \"4\": 782124.16,\r\n \"5\": 777786.64,\r\n \"6\": 773449.12,\r\n \"7\": 769111.6,\r\n \"8\": 764774.08,\r\n \"9\": 760436.56,\r\n \"10\": 756099.04,\r\n \"11\": 751761.52,\r\n \"Year/Mos\": 50\r\n },\r\n {\r\n \"0\": 747423.9999,\r\n \"1\": 743335.91,\r\n \"2\": 739247.81,\r\n \"3\": 735159.72,\r\n \"4\": 731071.63,\r\n \"5\": 726983.53,\r\n \"6\": 722895.44,\r\n \"7\": 718807.35,\r\n \"8\": 714719.25,\r\n \"9\": 710631.16,\r\n \"10\": 706543.07,\r\n \"11\": 702454.97,\r\n \"Year/Mos\": 51\r\n },\r\n {\r\n \"0\": 698366.88,\r\n \"1\": 694514.16,\r\n \"2\": 690661.45,\r\n \"3\": 686808.73,\r\n \"4\": 682956.02,\r\n \"5\": 679103.3,\r\n \"6\": 675250.59,\r\n \"7\": 671397.87,\r\n \"8\": 667545.15,\r\n \"9\": 663692.44,\r\n \"10\": 659839.72,\r\n \"11\": 655987.01,\r\n \"Year/Mos\": 52\r\n },\r\n {\r\n \"0\": 652134.2902,\r\n \"1\": 648503.71,\r\n \"2\": 644873.12,\r\n \"3\": 641242.54,\r\n \"4\": 637611.96,\r\n \"5\": 633981.38,\r\n \"6\": 630350.79,\r\n \"7\": 626720.21,\r\n \"8\": 623089.63,\r\n \"9\": 619459.05,\r\n \"10\": 615828.46,\r\n \"11\": 612197.88,\r\n \"Year/Mos\": 53\r\n },\r\n {\r\n \"0\": 608567.2988,\r\n \"1\": 605146.33,\r\n \"2\": 601725.37,\r\n \"3\": 598304.4,\r\n \"4\": 594883.43,\r\n \"5\": 591462.47,\r\n \"6\": 588041.5,\r\n \"7\": 584620.53,\r\n \"8\": 581199.57,\r\n \"9\": 577778.6,\r\n \"10\": 574357.63,\r\n \"11\": 570936.67,\r\n \"Year/Mos\": 54\r\n },\r\n {\r\n \"0\": 567515.6986,\r\n \"1\": 564292.54,\r\n \"2\": 561069.38,\r\n \"3\": 557846.23,\r\n \"4\": 554623.07,\r\n \"5\": 551399.91,\r\n \"6\": 548176.75,\r\n \"7\": 544953.59,\r\n \"8\": 541730.44,\r\n \"9\": 538507.28,\r\n \"10\": 535284.12,\r\n \"11\": 532060.96,\r\n \"Year/Mos\": 55\r\n },\r\n {\r\n \"0\": 528837.8056,\r\n \"1\": 525801.34,\r\n \"2\": 522764.88,\r\n \"3\": 519728.42,\r\n \"4\": 516691.96,\r\n \"5\": 513655.5,\r\n \"6\": 510619.04,\r\n \"7\": 507582.58,\r\n \"8\": 504546.11,\r\n \"9\": 501509.65,\r\n \"10\": 498473.19,\r\n \"11\": 495436.73,\r\n \"Year/Mos\": 56\r\n },\r\n {\r\n \"0\": 492400.268,\r\n \"1\": 489540.02,\r\n \"2\": 486679.77,\r\n \"3\": 483819.52,\r\n \"4\": 480959.27,\r\n \"5\": 478099.03,\r\n \"6\": 475238.78,\r\n \"7\": 472378.53,\r\n \"8\": 469518.28,\r\n \"9\": 466658.03,\r\n \"10\": 463797.78,\r\n \"11\": 460937.54,\r\n \"Year/Mos\": 57\r\n },\r\n {\r\n \"0\": 458077.2871,\r\n \"1\": 455383.36,\r\n \"2\": 452689.44,\r\n \"3\": 449995.52,\r\n \"4\": 447301.6,\r\n \"5\": 444607.68,\r\n \"6\": 441913.75,\r\n \"7\": 439219.83,\r\n \"8\": 436525.91,\r\n \"9\": 433831.99,\r\n \"10\": 431138.07,\r\n \"11\": 428444.14,\r\n \"Year/Mos\": 58\r\n },\r\n {\r\n \"0\": 425750.222,\r\n \"1\": 423213.32,\r\n \"2\": 420676.43,\r\n \"3\": 418139.53,\r\n \"4\": 415602.63,\r\n \"5\": 413065.73,\r\n \"6\": 410528.83,\r\n \"7\": 407991.93,\r\n \"8\": 405455.04,\r\n \"9\": 402918.14,\r\n \"10\": 400381.24,\r\n \"11\": 397844.34,\r\n \"Year/Mos\": 59\r\n },\r\n {\r\n \"0\": 395307.4434,\r\n \"1\": 392918.79,\r\n \"2\": 390530.14,\r\n \"3\": 388141.49,\r\n \"4\": 385752.84,\r\n \"5\": 383364.19,\r\n \"6\": 380975.54,\r\n \"7\": 378586.89,\r\n \"8\": 376198.24,\r\n \"9\": 373809.59,\r\n \"10\": 371420.94,\r\n \"11\": 369032.29,\r\n \"Year/Mos\": 60\r\n },\r\n {\r\n \"0\": 366643.6407,\r\n \"1\": 364394.96,\r\n \"2\": 362146.28,\r\n \"3\": 359897.61,\r\n \"4\": 357648.93,\r\n \"5\": 355400.25,\r\n \"6\": 353151.57,\r\n \"7\": 350902.9,\r\n \"8\": 348654.22,\r\n \"9\": 346405.54,\r\n \"10\": 344156.86,\r\n \"11\": 341908.18,\r\n \"Year/Mos\": 61\r\n },\r\n {\r\n \"0\": 339659.506,\r\n \"1\": 337543.01,\r\n \"2\": 335426.52,\r\n \"3\": 333310.02,\r\n \"4\": 331193.53,\r\n \"5\": 329077.04,\r\n \"6\": 326960.54,\r\n \"7\": 324844.05,\r\n \"8\": 322727.55,\r\n \"9\": 320611.06,\r\n \"10\": 318494.57,\r\n \"11\": 316378.07,\r\n \"Year/Mos\": 62\r\n },\r\n {\r\n \"0\": 314261.5777,\r\n \"1\": 312269.93,\r\n \"2\": 310278.27,\r\n \"3\": 308286.62,\r\n \"4\": 306294.97,\r\n \"5\": 304303.32,\r\n \"6\": 302311.67,\r\n \"7\": 300320.02,\r\n \"8\": 298328.37,\r\n \"9\": 296336.71,\r\n \"10\": 294345.06,\r\n \"11\": 292353.41,\r\n \"Year/Mos\": 63\r\n },\r\n {\r\n \"0\": 290361.759,\r\n \"1\": 288488.02,\r\n \"2\": 286614.28,\r\n \"3\": 284740.54,\r\n \"4\": 282866.8,\r\n \"5\": 280993.06,\r\n \"6\": 279119.32,\r\n \"7\": 277245.57,\r\n \"8\": 275371.83,\r\n \"9\": 273498.09,\r\n \"10\": 271624.35,\r\n \"11\": 269750.61,\r\n \"Year/Mos\": 64\r\n },\r\n {\r\n \"0\": 267876.8717,\r\n \"1\": 266114.51,\r\n \"2\": 264352.14,\r\n \"3\": 262589.78,\r\n \"4\": 260827.41,\r\n \"5\": 259065.05,\r\n \"6\": 257302.69,\r\n \"7\": 255540.32,\r\n \"8\": 253777.96,\r\n \"9\": 252015.59,\r\n \"10\": 250253.23,\r\n \"11\": 248490.87,\r\n \"Year/Mos\": 65\r\n },\r\n {\r\n \"0\": 246728.5012,\r\n \"1\": 245071.45,\r\n \"2\": 243414.41,\r\n \"3\": 241757.36,\r\n \"4\": 240100.31,\r\n \"5\": 238443.27,\r\n \"6\": 236786.22,\r\n \"7\": 235129.18,\r\n \"8\": 233472.13,\r\n \"9\": 231815.08,\r\n \"10\": 230158.04,\r\n \"11\": 228500.99,\r\n \"Year/Mos\": 66\r\n },\r\n {\r\n \"0\": 226843.9424,\r\n \"1\": 225286.61,\r\n \"2\": 223729.29,\r\n \"3\": 222171.96,\r\n \"4\": 220614.63,\r\n \"5\": 219057.3,\r\n \"6\": 217499.97,\r\n \"7\": 215942.64,\r\n \"8\": 214385.31,\r\n \"9\": 212827.98,\r\n \"10\": 211270.66,\r\n \"11\": 209713.33,\r\n \"Year/Mos\": 67\r\n },\r\n {\r\n \"0\": 208155.9987,\r\n \"1\": 206693.13,\r\n \"2\": 205230.26,\r\n \"3\": 203767.38,\r\n \"4\": 202304.51,\r\n \"5\": 200841.64,\r\n \"6\": 199378.77,\r\n \"7\": 197915.9,\r\n \"8\": 196453.03,\r\n \"9\": 194990.16,\r\n \"10\": 193527.28,\r\n \"11\": 192064.41,\r\n \"Year/Mos\": 68\r\n },\r\n {\r\n \"0\": 190601.542,\r\n \"1\": 189228.19,\r\n \"2\": 187854.84,\r\n \"3\": 186481.49,\r\n \"4\": 185108.14,\r\n \"5\": 183734.79,\r\n \"6\": 182361.43,\r\n \"7\": 180988.08,\r\n \"8\": 179614.73,\r\n \"9\": 178241.38,\r\n \"10\": 176868.03,\r\n \"11\": 175494.68,\r\n \"Year/Mos\": 69\r\n },\r\n {\r\n \"0\": 174121.327,\r\n \"1\": 172832.85,\r\n \"2\": 171544.38,\r\n \"3\": 170255.91,\r\n \"4\": 168967.44,\r\n \"5\": 167678.96,\r\n \"6\": 166390.49,\r\n \"7\": 165102.02,\r\n \"8\": 163813.55,\r\n \"9\": 162525.07,\r\n \"10\": 161236.6,\r\n \"11\": 159948.13,\r\n \"Year/Mos\": 70\r\n },\r\n {\r\n \"0\": 158659.6553,\r\n \"1\": 157451.71,\r\n \"2\": 156243.76,\r\n \"3\": 155035.81,\r\n \"4\": 153827.86,\r\n \"5\": 152619.92,\r\n \"6\": 151411.97,\r\n \"7\": 150204.02,\r\n \"8\": 148996.07,\r\n \"9\": 147788.12,\r\n \"10\": 146580.18,\r\n \"11\": 145372.23,\r\n \"Year/Mos\": 71\r\n },\r\n {\r\n \"0\": 144164.2804,\r\n \"1\": 143032.77,\r\n \"2\": 141901.27,\r\n \"3\": 140769.76,\r\n \"4\": 139638.25,\r\n \"5\": 138506.75,\r\n \"6\": 137375.24,\r\n \"7\": 136243.74,\r\n \"8\": 135112.23,\r\n \"9\": 133980.72,\r\n \"10\": 132849.22,\r\n \"11\": 131717.71,\r\n \"Year/Mos\": 72\r\n },\r\n {\r\n \"0\": 130586.2032,\r\n \"1\": 129527.31,\r\n \"2\": 128468.41,\r\n \"3\": 127409.52,\r\n \"4\": 126350.62,\r\n \"5\": 125291.73,\r\n \"6\": 124232.84,\r\n \"7\": 123173.94,\r\n \"8\": 122115.05,\r\n \"9\": 121056.15,\r\n \"10\": 119997.26,\r\n \"11\": 118938.36,\r\n \"Year/Mos\": 73\r\n },\r\n {\r\n \"0\": 117879.4686,\r\n \"1\": 116889.59,\r\n \"2\": 115899.71,\r\n \"3\": 114909.84,\r\n \"4\": 113919.96,\r\n \"5\": 112930.08,\r\n \"6\": 111940.21,\r\n \"7\": 110950.33,\r\n \"8\": 109960.45,\r\n \"9\": 108970.57,\r\n \"10\": 107980.7,\r\n \"11\": 106990.82,\r\n \"Year/Mos\": 74\r\n },\r\n {\r\n \"0\": 106000.9429,\r\n \"1\": 105076.72,\r\n \"2\": 104152.49,\r\n \"3\": 103228.26,\r\n \"4\": 102304.03,\r\n \"5\": 101379.81,\r\n \"6\": 100455.58,\r\n \"7\": 99531.35,\r\n \"8\": 98607.12,\r\n \"9\": 97682.89,\r\n \"10\": 96758.67,\r\n \"11\": 95834.44,\r\n \"Year/Mos\": 75\r\n },\r\n {\r\n \"0\": 94910.21223,\r\n \"1\": 94048.48,\r\n \"2\": 93186.74,\r\n \"3\": 92325.01,\r\n \"4\": 91463.27,\r\n \"5\": 90601.54,\r\n \"6\": 89739.8,\r\n \"7\": 88878.06,\r\n \"8\": 88016.33,\r\n \"9\": 87154.59,\r\n \"10\": 86292.86,\r\n \"11\": 85431.12,\r\n \"Year/Mos\": 76\r\n },\r\n {\r\n \"0\": 84569.38742,\r\n \"1\": 83767.18,\r\n \"2\": 82964.97,\r\n \"3\": 82162.76,\r\n \"4\": 81360.56,\r\n \"5\": 80558.35,\r\n \"6\": 79756.14,\r\n \"7\": 78953.93,\r\n \"8\": 78151.72,\r\n \"9\": 77349.52,\r\n \"10\": 76547.31,\r\n \"11\": 75745.1,\r\n \"Year/Mos\": 77\r\n },\r\n {\r\n \"0\": 74942.89206,\r\n \"1\": 74197.43,\r\n \"2\": 73451.97,\r\n \"3\": 72706.51,\r\n \"4\": 71961.05,\r\n \"5\": 71215.59,\r\n \"6\": 70470.13,\r\n \"7\": 69724.67,\r\n \"8\": 68979.21,\r\n \"9\": 68233.75,\r\n \"10\": 67488.29,\r\n \"11\": 66742.83,\r\n \"Year/Mos\": 78\r\n },\r\n {\r\n \"0\": 65997.3735,\r\n \"1\": 65306.05,\r\n \"2\": 64614.73,\r\n \"3\": 63923.41,\r\n \"4\": 63232.09,\r\n \"5\": 62540.77,\r\n \"6\": 61849.45,\r\n \"7\": 61158.12,\r\n \"8\": 60466.8,\r\n \"9\": 59775.48,\r\n \"10\": 59084.16,\r\n \"11\": 58392.84,\r\n \"Year/Mos\": 79\r\n },\r\n {\r\n \"0\": 57701.51681,\r\n \"1\": 57061.88,\r\n \"2\": 56422.24,\r\n \"3\": 55782.6,\r\n \"4\": 55142.96,\r\n \"5\": 54503.32,\r\n \"6\": 53863.68,\r\n \"7\": 53224.04,\r\n \"8\": 52584.4,\r\n \"9\": 51944.76,\r\n \"10\": 51305.12,\r\n \"11\": 50665.48,\r\n \"Year/Mos\": 80\r\n },\r\n {\r\n \"0\": 50025.83893,\r\n \"1\": \"\",\r\n \"2\": \"\",\r\n \"3\": \"\",\r\n \"4\": \"\",\r\n \"5\": \"\",\r\n \"6\": \"\",\r\n \"7\": \"\",\r\n \"8\": \"\",\r\n \"9\": \"\",\r\n \"10\": \"\",\r\n \"11\": \"\",\r\n \"Year/Mos\": 81\r\n }\r\n ] as entry[];\r\n\r\n","import { BigNumber } from 'bignumber.js';\r\nimport { Decimal } from 'decimal.js';\r\nimport moment from \"moment\";\r\n\r\nimport * as factor from \"./factor\";\r\n\r\nexport interface Inputs {\r\n dateOfBirth: moment.Moment; //C5\r\n dateEffective: moment.Moment; //C6\r\n dateOfPlanEntry: moment.Moment; //C7\r\n dateOfPurchaseOfService: moment.Moment; //C8\r\n salary: BigNumber; //C9\r\n monthsOfPurchasedService: BigNumber; //C10\r\n}\r\n\r\nexport interface OtherInputs {\r\n benefitsMultiplier: BigNumber; // C11\r\n discountRate: BigNumber; // C12\r\n cola: BigNumber; // C13\r\n salaryProjection: BigNumber; // C14\r\n}\r\n\r\nexport class Calculator {\r\n inputs: Inputs;\r\n otherInputs: OtherInputs = {\r\n benefitsMultiplier: new BigNumber(.02),\r\n discountRate: new BigNumber(.06),\r\n cola: new BigNumber(0),\r\n salaryProjection: new BigNumber(.035),\r\n }\r\n\r\n constructor(inputs: Inputs) {\r\n this.inputs = inputs;\r\n }\r\n\r\n get ageActual(): BigNumber { //G5\r\n return new BigNumber(moment(this.inputs.dateOfPurchaseOfService).diff(this.inputs.dateOfBirth, \"years\", true));\r\n }\r\n\r\n get ageYears(): BigNumber { //E5\r\n return this.ageActual.integerValue(BigNumber.ROUND_DOWN);\r\n }\r\n\r\n get ageMonths(): BigNumber { //F5\r\n return this.ageActual.minus(this.ageYears).times(12).integerValue(BigNumber.ROUND_DOWN);\r\n }\r\n\r\n get age(): BigNumber { //C5\r\n return this.ageYears.plus(this.ageMonths.dividedBy(12));\r\n }\r\n\r\n get yearsOfPurchasedService(): BigNumber { //C7\r\n return this.inputs.monthsOfPurchasedService.dividedBy(12);\r\n }\r\n\r\n get salary(): BigNumber { //C6\r\n return this.inputs.salary;\r\n }\r\n\r\n get dbServiceAtPurchaseDate(): BigNumber { //C8\r\n return new BigNumber(moment(this.inputs.dateOfPurchaseOfService).diff(this.inputs.dateOfPlanEntry, \"years\", true));\r\n }\r\n\r\n get unreducedRetirementAge(): BigNumber { //C18\r\n return BigNumber.min(\r\n BigNumber.max(65, this.age.minus(this.yearsOfPurchasedService).minus(this.dbServiceAtPurchaseDate).plus(5)),\r\n BigNumber.max(50, this.age.plus(new BigNumber(80).minus(this.age).minus(this.yearsOfPurchasedService).minus(this.dbServiceAtPurchaseDate).dividedBy(2)))\r\n );\r\n }\r\n\r\n get uraH18(): BigNumber {\r\n return this.uraM18.integerValue(BigNumber.ROUND_DOWN);\r\n }\r\n\r\n get uraI18(): BigNumber {\r\n return this.uraM18.minus(this.uraM18.integerValue(BigNumber.ROUND_DOWN)).times(12);\r\n }\r\n\r\n get uraJ18(): BigNumber {\r\n return this.unreducedRetirementAge.minus(this.uraK18);\r\n }\r\n\r\n get uraK18(): BigNumber {\r\n return this.unreducedRetirementAge.integerValue(BigNumber.ROUND_DOWN);\r\n }\r\n\r\n get uraL18(): BigNumber {\r\n const temp = this.uraJ18.times(12);\r\n if (temp.integerValue(BigNumber.ROUND_DOWN).isEqualTo(temp.decimalPlaces(10))) {\r\n return temp.decimalPlaces(10);\r\n } else {\r\n return temp.integerValue(BigNumber.ROUND_DOWN).plus(1);\r\n }\r\n }\r\n\r\n get uraM18(): BigNumber {\r\n return this.uraK18.plus(this.uraL18.dividedBy(12));\r\n }\r\n\r\n get pvFactor(): BigNumber { //C19\r\n if (this.unreducedRetirementAge.isLessThanOrEqualTo(this.age)) {\r\n return factor.getImmediateFactor(this.ageMonths.toNumber(), this.ageYears.toNumber()).decimalPlaces(4);\r\n } else {\r\n return factor.getImmediateFactor(this.uraI18.toNumber(), this.uraH18.toNumber())\r\n .times(\r\n factor.getDeferredFactor(this.uraI18.toNumber(), this.uraH18.toNumber())\r\n )\r\n .dividedBy(\r\n factor.getDeferredFactor(this.ageMonths.toNumber(), this.ageYears.toNumber())\r\n )\r\n .decimalPlaces(4);\r\n }\r\n }\r\n\r\n get salaryFactor(): BigNumber { //C20\r\n return this.power(this.otherInputs.salaryProjection.plus(1), BigNumber.max(0, this.unreducedRetirementAge.minus(this.age).minus(1))).plus(\r\n this.power(this.otherInputs.salaryProjection.plus(1), BigNumber.max(0, this.unreducedRetirementAge.minus(this.age).minus(2)))\r\n ).plus(\r\n this.power(this.otherInputs.salaryProjection.plus(1), BigNumber.max(0, this.unreducedRetirementAge.minus(this.age).minus(3)))\r\n ).dividedBy(3).decimalPlaces(4);\r\n }\r\n\r\n get servicePurchase(): BigNumber { //C21\r\n return this.otherInputs.benefitsMultiplier.times(this.salary).times(this.salaryFactor).times(this.yearsOfPurchasedService).times(this.pvFactor);\r\n }\r\n\r\n get asAMultiplierOfSalary(): BigNumber {\r\n return this.servicePurchase.dividedBy(this.salary);\r\n }\r\n\r\n get nominalRetirementDate(): moment.Moment {\r\n return moment(new Date(\r\n this.uraH18.plus(this.inputs.dateOfBirth.year()).toNumber(),\r\n this.uraI18.plus(this.inputs.dateOfBirth.month()).plus(this.inputs.dateOfBirth.date() === 1 ? 0: 1).toNumber(),\r\n 1\r\n ));\r\n }\r\n\r\n get purchaseDateOptions(): Array {\r\n var dates = new Array();\r\n \r\n if (this.inputs.dateOfPlanEntry !== null && this.inputs.dateOfPlanEntry.isValid()) {\r\n var currDate = this.inputs.dateOfPlanEntry.clone().add(1, 'years').startOf('month');\r\n \r\n while(dates.length < 4) {\r\n if ([5, 11].includes(currDate.month() + 1) && currDate.diff(this.inputs.dateOfPlanEntry, 'months') >= 12) {\r\n dates.push(currDate.clone());\r\n }\r\n currDate.add(1, 'months');\r\n }\r\n }\r\n \r\n return dates;\r\n }\r\n\r\n // bignumber does not support decimal based power operations so we will use decimal.js for this operation\r\n private power(n: BigNumber, m: BigNumber) : BigNumber {\r\n return new BigNumber(new Decimal(n.toString()).pow(new Decimal(m.toString())).toString());\r\n }\r\n}","import React from \"react\";\r\nimport { AppBar, Toolbar, Typography, makeStyles, Box } from \"@material-ui/core\";\r\n\r\nconst useStyles = makeStyles({\r\n root: {\r\n backgroundColor: \"#ff6b00\",\r\n borderWidth: \"0 0 .25rem 0\",\r\n borderStyle: \"solid\",\r\n borderColor: \"#62269E\",\r\n background: \"url('./Banner009.jpg') no-repeat\",\r\n },\r\n});\r\n\r\nconst Header: React.FC = () => {\r\n const styles = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n Purchase of Service Cost Estimator\r\n \r\n \r\n \r\n )\r\n};\r\n\r\nexport { Header };","import { Box } from \"@material-ui/core\"\r\nimport React from \"react\"\r\n\r\nconst FormLabel: React.FC<{ label: string }> = ({ label }) => {\r\n return \r\n {label}\r\n \r\n}\r\n\r\nexport { FormLabel };","import React from \"react\";\r\nimport { AppBar, Toolbar, makeStyles, Box } from \"@material-ui/core\";\r\nimport { NONAME } from \"dns\";\r\n\r\nconst useStyles = makeStyles({\r\n root: {\r\n backgroundColor: \"#383232\",\r\n backgroundImage: \"url('./bodyBackground.jpg')\",\r\n backgroundRepeat: \"repeat-x\",\r\n top: \"auto\",\r\n bottom: 0\r\n }\r\n});\r\n\r\nconst Footer: React.FC<{ dateOfServicePurchase: string }> = ({ dateOfServicePurchase }) => {\r\n const styles = useStyles();\r\n return (\r\n \r\n \r\n \r\n The Estimated Cost of Service Purchase amount shown above is an ESTIMATE of the cost and is for illustration purposes only. \r\n It assumes the service is purchased on {dateOfServicePurchase}. \r\n Your actual Cost of Service Purchase will be based on your age, annual base salary, the months of service you purchase and shall be subject to any administrative rules and Plan provisions governing the Cost of Service Purchases on the date you purchase service. The Plan has no liability or obligation, either legal or equitable, to accept payment for a Service Purchase as a result of using this calculator. This ESTIMATE is not to be construed in any way as a promise or contract with the Plan to accept payment of a service credit purchase. The Final Cost of Service Purchase in all cases will be determined in accordance with the Plan and laws in effect at the time of the purchase. The Service Purchase provisions in the Plan are subject to IRS approval and Service Purchase will not be available if rejected by the IRS.\r\n \r\n \r\n )\r\n};\r\n\r\nexport { Footer };","import { Card, Link, Typography, withStyles } from \"@material-ui/core\"\r\nimport React from \"react\"\r\nimport BigNumber from 'bignumber.js';\r\n\r\n\r\nimport './Results.scss';\r\n\r\ninterface ResultsProps {\r\n costOfService: string;\r\n monthsPurchased: BigNumber;\r\n};\r\n\r\nconst StyledCard = withStyles({\r\n root: {\r\n margin: \"2.0rem\",\r\n borderRadius: \"0\",\r\n border: \"2px solid #2074ae\",\r\n }\r\n})(Card);\r\n\r\nconst Title = withStyles({\r\n root: {\r\n padding: \"1.0rem 0.0rem\",\r\n color: \"#2074ae\",\r\n fontWeight: \"bold\",\r\n fontSize: \"20px\"\r\n }\r\n})(Typography);\r\n\r\nconst Note = withStyles({\r\n root: {\r\n padding: \"1.0rem 0.0rem\",\r\n margin: \"0.0rem 5.0rem\",\r\n color: \"#2074ae\",\r\n fontWeight: \"normal\",\r\n fontSize: \"16px\"\r\n }\r\n})(Typography);\r\n\r\nconst Cost = withStyles({\r\n root: {\r\n margin: \"0rem 3.5rem\",\r\n backgroundColor: \"#2074ae\",\r\n color: \"white\",\r\n fontWeight: \"bold\",\r\n fontSize: \"30px\"\r\n }\r\n})(Typography);\r\n\r\nconst Pdf = withStyles({\r\n root: {\r\n color: \"#2074ae\",\r\n }\r\n})(Link);\r\n\r\nconst Results: React.FC = ({costOfService, monthsPurchased}) => {\r\n\r\n return (\r\n \r\n Estimated Cost of Service Purchase\r\n {costOfService}\r\n \r\n \r\n Calculating a monthly benefit from your service purchase\r\n \r\n \r\n \r\n )};\r\n\r\nexport { Results };","import NumberFormat from 'react-number-format';\r\nimport React from 'react';\r\n\r\ninterface NumberFormatCustomProps {\r\n inputRef: any,\r\n name: any,\r\n onChange: any,\r\n}\r\n\r\nconst NumberFormatCustom: React.FC = (props) => {\r\n const { inputRef, onChange, ...other } = props;\r\n\r\n return (\r\n {\r\n onChange({\r\n target: {\r\n name: props.name,\r\n value: values.value,\r\n },\r\n });\r\n }}\r\n thousandSeparator\r\n isNumericString\r\n prefix=\"$\"\r\n />\r\n );\r\n}\r\n\r\nexport { NumberFormatCustom };","import React from 'react';\r\nimport BigNumber from 'bignumber.js';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport MomentUtils from \"@date-io/moment\";\r\nimport { Paper, TextField, Select, MenuItem, Grid, Box, Tooltip } from '@material-ui/core';\r\nimport moment from \"moment\";\r\nimport {\r\n MuiPickersUtilsProvider, KeyboardDatePicker,\r\n} from '@material-ui/pickers';\r\n\r\nimport { Calculator } from './engine/calculator';\r\n\r\nimport './App.scss';\r\nimport { Header } from './Header';\r\nimport { FormLabel } from './FormLabel';\r\nimport { Footer } from './Footer';\r\nimport { Results } from './Results';\r\nimport { withStyles } from '@material-ui/core';\r\nimport { NumberFormatCustom } from './NumberFormat';\r\n\r\nconst formLabelGridProps = {\r\n item: true,\r\n md: 8,\r\n xs: 12,\r\n style: { margin: \"auto\" }\r\n} as any;\r\n\r\nconst StyledTextField = withStyles({\r\n root: {\r\n '& label.Mui-focused': {\r\n color: 'white',\r\n },\r\n '& .MuiInput-underline:after': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00',\r\n },\r\n '& .MuiOutlinedInput-root': {\r\n '& fieldset': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00',\r\n },\r\n '& .MuiOutlinedInput-input': {\r\n padding: \"0.5rem\",\r\n },\r\n '&:hover fieldset': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00',\r\n },\r\n '&.Mui-focused fieldset': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00',\r\n },\r\n },\r\n },\r\n})(TextField);\r\n\r\nconst DisabledTextField = withStyles({\r\n root: {\r\n '& label.Mui-focused': {\r\n color: 'white',\r\n },\r\n '& .MuiInput-underline:after': {\r\n borderRadius: \"0\",\r\n },\r\n '& .MuiOutlinedInput-root': {\r\n '& fieldset': {\r\n borderRadius: \"0\",\r\n },\r\n '& .MuiOutlinedInput-input': {\r\n padding: \"0.5rem\",\r\n },\r\n '&:hover fieldset': {\r\n borderRadius: \"0\",\r\n },\r\n '&.Mui-focused fieldset': {\r\n borderRadius: \"0\",\r\n },\r\n }\r\n },\r\n})(TextField);\r\n\r\nconst StyledDatePicker = withStyles({\r\n root: {\r\n '& label.Mui-focused': {\r\n color: 'white',\r\n },\r\n '& .MuiInput-underline:after': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00',\r\n },\r\n '& .MuiOutlinedInput-root': {\r\n '& fieldset': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00',\r\n },\r\n '& .MuiOutlinedInput-input': {\r\n padding: \"0.5rem\",\r\n },\r\n '&:hover fieldset': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00',\r\n },\r\n '&.Mui-focused fieldset': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00',\r\n },\r\n '&.MuiIconButton-root': { \r\n color: '#Ff6b00',\r\n padding: \"0\",\r\n }, \r\n },\r\n }\r\n})(KeyboardDatePicker);\r\n\r\nconst StyledSelect = withStyles({\r\n root: {\r\n padding: \"0.5rem\",\r\n '.MuiInputBase-root &': {\r\n '& ~ fieldset': {\r\n borderRadius: \"0\",\r\n borderColor: '#Ff6b00'\r\n }\r\n },\r\n '.MuiInputBase-root:hover &': {\r\n '& ~ fieldset': {\r\n borderColor: '#Ff6b00'\r\n },\r\n },\r\n '.MuiInputBase-root.Mui-focused &': {\r\n '& ~ fieldset': {\r\n borderColor: '#Ff6b00'\r\n },\r\n }\r\n }\r\n})(Select);\r\n\r\nconst SubText = withStyles({\r\n root: {\r\n paddingRight: \"1.0rem\",\r\n fontWeight: \"normal\",\r\n }\r\n})(Typography);\r\n\r\nconst minDateDob = moment().subtract(79, 'years');\r\nconst maxDateDob = moment().subtract(21, 'years');\r\n\r\nconst minDatePlanEntry = moment(new Date(2022, 0, 1));\r\n\r\nfunction App() {\r\n const [dateOfBirth, setDateOfBirth] = React.useState(maxDateDob);\r\n\r\n const [dateEffective, setDateEffective] = React.useState(minDatePlanEntry);\r\n const [dateOfPlanEntry, setDateOfPlanEntry] = React.useState(minDatePlanEntry);\r\n const [dateOfPurchaseOfService, setDateOfPurchaseOfService] = React.useState(moment(null));\r\n \r\n const [salary, setSalary] = React.useState(\"0\");\r\n const [mos, setMos] = React.useState(new BigNumber(0)); \r\n\r\n let dob = dateOfBirth;\r\n if (!dob?.isValid()) {\r\n dob = maxDateDob;\r\n } else if (dob.isAfter(maxDateDob)) {\r\n dob = maxDateDob;\r\n } else if (dob.isBefore(minDateDob)) {\r\n dob = minDateDob;\r\n }\r\n\r\n const calculator = new Calculator({\r\n dateOfBirth: dob,\r\n dateEffective,\r\n dateOfPlanEntry,\r\n dateOfPurchaseOfService,\r\n salary: new BigNumber(salary ?? 0),\r\n monthsOfPurchasedService: (mos.isNaN() ? new BigNumber(0) : mos)\r\n });\r\n\r\n const formatter = new Intl.NumberFormat('en-US', {\r\n style: 'currency',\r\n currency: 'USD',\r\n minimumFractionDigits: 0\r\n })\r\n\r\n const dateFormats = {\r\n system: String('YYYY-MM-DD'),\r\n enUS: String('MM/DD/YYYY')\r\n }\r\n\r\n // round to the nearest 1000\r\n const costOfService = calculator.servicePurchase.isNaN() ? 0 : calculator.servicePurchase.dividedBy(1000).decimalPlaces(0).times(1000).toNumber(); \r\n\r\n const updateDateOfPlanEntry = (dateOfEntry: moment.Moment) : void => {\r\n setDateOfPlanEntry(dateOfEntry);\r\n setDateOfPurchaseOfService(moment(null));\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n Retirement Plan of the Police Department of the City of Aurora (DB Plan)\r\n To estimate the cost to purchase service, enter your information in the orange cells:\r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n setDateOfBirth(date as moment.Moment)}\r\n keyboardIcon={<>}\r\n />\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Date you \r\n If you are employed by the Aurora Police Department on Jan. 1, 2022, you will have until June 30, 2023 to elect to become a member in the Plan. New employees hired or former employees rehired after Jan. 1, 2022 will have 36 months from their hire/rehire date to make their decision.}>\r\n opt-in\r\n to the DB plan\r\n \r\n \r\n \r\n \r\n updateDateOfPlanEntry(date as moment.Moment)}\r\n keyboardIcon={<>}\r\n />\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Date you \r\n Once you are a vested member in the Plan and accrue one year of credited service, you are eligible to purchase credited service provided you do so within two years of your first eligibility to purchase service credit.}>\r\n purchase service\r\n \r\n \r\n \r\n \r\n setDateOfPurchaseOfService(moment(e.target.value as string))}\r\n >\r\n {calculator.purchaseDateOptions.map((option, index) => {\r\n if (!dateOfPurchaseOfService.isValid() && index === 0){\r\n setDateOfPurchaseOfService(option);\r\n };\r\n return (\r\n {option.format(dateFormats.enUS)}\r\n );\r\n })}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Your estimated annual \r\n Annual base salary is the total base salary in the Employer's Compensation Ordinance and/or pertinent City Council resolutions for the rank and grade held by the employee and paid to the employee including other compensation detailed in the Employee Manual and longevity pay. It does not include bonuses, commissions, overtime pay, holiday pay, other taxable income and other forms of extra pay.}>\r\n base salary\r\n  \r\n on {dateOfPurchaseOfService.format((dateFormats.enUS))}\r\n \r\n \r\n \r\n setSalary(e.target.value)}\r\n InputProps={{\r\n inputComponent: NumberFormatCustom as any,\r\n }}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n You may purchase up to all months of full-time service in APD. In addition, you may also purchase up to 60 months of \r\n \r\n qualified employment\r\n .\r\n \r\n \r\n \r\n setMos(new BigNumber(e.target.value))}\r\n />\r\n {mos.isGreaterThan(0) && ({mos.dividedBy(12).decimalPlaces(3).toString()} years)}\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default App;","// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.0/8 are considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\ntype Config = {\r\n onSuccess?: (registration: ServiceWorkerRegistration) => void;\r\n onUpdate?: (registration: ServiceWorkerRegistration) => void;\r\n};\r\n\r\nexport function register(config?: Config) {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(\r\n process.env.PUBLIC_URL,\r\n window.location.href\r\n );\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service ' +\r\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl: string, config?: Config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all ' +\r\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl: string, config?: Config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl, {\r\n headers: { 'Service-Worker': 'script' }\r\n })\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (\r\n response.status === 404 ||\r\n (contentType != null && contentType.indexOf('javascript') === -1)\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready\r\n .then(registration => {\r\n registration.unregister();\r\n })\r\n .catch(error => {\r\n console.error(error.message);\r\n });\r\n }\r\n}\r\n","import { ThemeOptions, createMuiTheme } from \"@material-ui/core/styles\";\r\n\r\nconst defaultOptions: ThemeOptions = {\r\n typography: {\r\n fontSize: 8,\r\n fontFamily: \"Verdana\",\r\n htmlFontSize: 10,\r\n },\r\n};\r\n\r\nconst theme = createMuiTheme(defaultOptions);\r\ntheme.overrides = {\r\n MuiIconButton: {\r\n root: {\r\n //color: \"#62269E\",\r\n padding: 0,\r\n }\r\n },\r\n MuiInputBase: {\r\n root: {\r\n maxWidth: \"13.2rem\",\r\n }\r\n },\r\n MuiPickersToolbar: {\r\n toolbar: {\r\n backgroundColor: \"#62269E\",\r\n }\r\n },\r\n MuiPickersDay: {\r\n daySelected: {\r\n backgroundColor: \"#62269E\",\r\n \"&:hover\": {\r\n backgroundColor: \"#62269E\",\r\n }\r\n }\r\n },\r\n MuiTooltip: {\r\n tooltip: {\r\n fontSize: \".8rem\",\r\n }\r\n }\r\n} as any;\r\n\r\nexport { theme };\r\n","import 'react-app-polyfill/ie11';\r\nimport 'react-app-polyfill/stable';\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport './index.scss';\r\nimport App from './App';\r\nimport * as serviceWorker from './serviceWorker';\r\nimport { ThemeProvider } from '@material-ui/core';\r\nimport { theme } from './theme';\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n"],"sourceRoot":""}