moneyfunx 1.3.2 → 1.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -34,7 +34,7 @@ export function determineExtraPayment(loans, payment) {
34
34
  export function determineCarryover(loan, loanPayment, loanFinalPayment, reduceMinimum) {
35
35
  switch (true) {
36
36
  case reduceMinimum:
37
- return Math.max(loanPayment - loan.minPayment - loanFinalPayment, 0);
37
+ return Math.max(loanPayment - Math.max(Math.max(loan.minPayment - loanFinalPayment, 0), loanFinalPayment), 0);
38
38
  default:
39
39
  return Math.max(loanPayment - loanFinalPayment, 0);
40
40
  }
@@ -1,7 +1,7 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
- <coverage generated="1740425839159" clover="3.2.0">
3
- <project timestamp="1740425839159" name="All files">
4
- <metrics statements="343" coveredstatements="343" conditionals="51" coveredconditionals="51" methods="19" coveredmethods="19" elements="413" coveredelements="413" complexity="0" loc="343" ncloc="343" packages="2" files="8" classes="8"/>
2
+ <coverage generated="1740428105702" clover="3.2.0">
3
+ <project timestamp="1740428105703" name="All files">
4
+ <metrics statements="347" coveredstatements="347" conditionals="51" coveredconditionals="51" methods="19" coveredmethods="19" elements="417" coveredelements="417" complexity="0" loc="347" ncloc="347" packages="2" files="8" classes="8"/>
5
5
  <package name="src">
6
6
  <metrics statements="7" coveredstatements="7" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
7
7
  <file name="index.ts" path="/home/runner/work/moneyfunx/moneyfunx/src/index.ts">
@@ -16,7 +16,7 @@
16
16
  </file>
17
17
  </package>
18
18
  <package name="src.lib">
19
- <metrics statements="336" coveredstatements="336" conditionals="51" coveredconditionals="51" methods="19" coveredmethods="19"/>
19
+ <metrics statements="340" coveredstatements="340" conditionals="51" coveredconditionals="51" methods="19" coveredmethods="19"/>
20
20
  <file name="constants.ts" path="/home/runner/work/moneyfunx/moneyfunx/src/lib/constants.ts">
21
21
  <metrics statements="1" coveredstatements="1" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
22
22
  <line num="1" count="1" type="stmt"/>
@@ -168,7 +168,7 @@
168
168
  <metrics statements="0" coveredstatements="0" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
169
169
  </file>
170
170
  <file name="payments.ts" path="/home/runner/work/moneyfunx/moneyfunx/src/lib/payments.ts">
171
- <metrics statements="192" coveredstatements="192" conditionals="26" coveredconditionals="26" methods="4" coveredmethods="4"/>
171
+ <metrics statements="196" coveredstatements="196" conditionals="26" coveredconditionals="26" methods="4" coveredmethods="4"/>
172
172
  <line num="7" count="1" type="stmt"/>
173
173
  <line num="24" count="1" type="cond" truecount="1" falsecount="0"/>
174
174
  <line num="25" count="8" type="stmt"/>
@@ -194,36 +194,36 @@
194
194
  <line num="57" count="6" type="stmt"/>
195
195
  <line num="58" count="6" type="cond" truecount="1" falsecount="0"/>
196
196
  <line num="59" count="3" type="stmt"/>
197
- <line num="60" count="6" type="cond" truecount="1" falsecount="0"/>
197
+ <line num="60" count="3" type="stmt"/>
198
198
  <line num="61" count="3" type="stmt"/>
199
- <line num="62" count="6" type="stmt"/>
200
- <line num="63" count="6" type="stmt"/>
201
- <line num="77" count="1" type="cond" truecount="1" falsecount="0"/>
202
- <line num="78" count="13" type="stmt"/>
203
- <line num="79" count="13" type="stmt"/>
204
- <line num="80" count="13" type="stmt"/>
205
- <line num="81" count="13" type="stmt"/>
199
+ <line num="62" count="3" type="stmt"/>
200
+ <line num="63" count="3" type="stmt"/>
201
+ <line num="64" count="6" type="cond" truecount="1" falsecount="0"/>
202
+ <line num="65" count="3" type="stmt"/>
203
+ <line num="66" count="6" type="stmt"/>
204
+ <line num="67" count="6" type="stmt"/>
205
+ <line num="81" count="1" type="cond" truecount="1" falsecount="0"/>
206
206
  <line num="82" count="13" type="stmt"/>
207
207
  <line num="83" count="13" type="stmt"/>
208
208
  <line num="84" count="13" type="stmt"/>
209
- <line num="85" count="13" type="cond" truecount="1" falsecount="0"/>
210
- <line num="86" count="1" type="stmt"/>
211
- <line num="87" count="1" type="stmt"/>
209
+ <line num="85" count="13" type="stmt"/>
210
+ <line num="86" count="13" type="stmt"/>
211
+ <line num="87" count="13" type="stmt"/>
212
212
  <line num="88" count="13" type="stmt"/>
213
- <line num="90" count="13" type="cond" truecount="1" falsecount="0"/>
213
+ <line num="89" count="13" type="cond" truecount="1" falsecount="0"/>
214
+ <line num="90" count="1" type="stmt"/>
214
215
  <line num="91" count="1" type="stmt"/>
215
- <line num="92" count="1" type="stmt"/>
216
- <line num="94" count="13" type="stmt"/>
217
- <line num="96" count="13" type="stmt"/>
218
- <line num="97" count="13" type="cond" truecount="1" falsecount="0"/>
219
- <line num="98" count="539" type="stmt"/>
220
- <line num="99" count="539" type="stmt"/>
221
- <line num="100" count="539" type="cond" truecount="1" falsecount="0"/>
216
+ <line num="92" count="13" type="stmt"/>
217
+ <line num="94" count="13" type="cond" truecount="1" falsecount="0"/>
218
+ <line num="95" count="1" type="stmt"/>
219
+ <line num="96" count="1" type="stmt"/>
220
+ <line num="98" count="13" type="stmt"/>
221
+ <line num="100" count="13" type="stmt"/>
222
222
  <line num="101" count="13" type="cond" truecount="1" falsecount="0"/>
223
223
  <line num="102" count="539" type="stmt"/>
224
224
  <line num="103" count="539" type="stmt"/>
225
- <line num="104" count="539" type="stmt"/>
226
- <line num="105" count="539" type="stmt"/>
225
+ <line num="104" count="539" type="cond" truecount="1" falsecount="0"/>
226
+ <line num="105" count="13" type="cond" truecount="1" falsecount="0"/>
227
227
  <line num="106" count="539" type="stmt"/>
228
228
  <line num="107" count="539" type="stmt"/>
229
229
  <line num="108" count="539" type="stmt"/>
@@ -231,34 +231,34 @@
231
231
  <line num="110" count="539" type="stmt"/>
232
232
  <line num="111" count="539" type="stmt"/>
233
233
  <line num="112" count="539" type="stmt"/>
234
- <line num="113" count="13" type="stmt"/>
235
- <line num="114" count="13" type="stmt"/>
236
- <line num="126" count="1" type="cond" truecount="1" falsecount="0"/>
237
- <line num="127" count="2" type="stmt"/>
238
- <line num="128" count="2" type="stmt"/>
239
- <line num="129" count="2" type="stmt"/>
240
- <line num="130" count="2" type="stmt"/>
234
+ <line num="113" count="539" type="stmt"/>
235
+ <line num="114" count="539" type="stmt"/>
236
+ <line num="115" count="539" type="stmt"/>
237
+ <line num="116" count="539" type="stmt"/>
238
+ <line num="117" count="13" type="stmt"/>
239
+ <line num="118" count="13" type="stmt"/>
240
+ <line num="130" count="1" type="cond" truecount="1" falsecount="0"/>
241
241
  <line num="131" count="2" type="stmt"/>
242
242
  <line num="132" count="2" type="stmt"/>
243
243
  <line num="133" count="2" type="stmt"/>
244
- <line num="134" count="2" type="cond" truecount="1" falsecount="0"/>
245
- <line num="135" count="6" type="stmt"/>
246
- <line num="136" count="6" type="stmt"/>
247
- <line num="137" count="6" type="stmt"/>
248
- <line num="138" count="6" type="stmt"/>
244
+ <line num="134" count="2" type="stmt"/>
245
+ <line num="135" count="2" type="stmt"/>
246
+ <line num="136" count="2" type="stmt"/>
247
+ <line num="137" count="2" type="stmt"/>
248
+ <line num="138" count="2" type="cond" truecount="1" falsecount="0"/>
249
249
  <line num="139" count="6" type="stmt"/>
250
250
  <line num="140" count="6" type="stmt"/>
251
- <line num="141" count="2" type="stmt"/>
252
- <line num="143" count="2" type="stmt"/>
253
- <line num="144" count="2" type="stmt"/>
251
+ <line num="141" count="6" type="stmt"/>
252
+ <line num="142" count="6" type="stmt"/>
253
+ <line num="143" count="6" type="stmt"/>
254
+ <line num="144" count="6" type="stmt"/>
254
255
  <line num="145" count="2" type="stmt"/>
255
- <line num="146" count="2" type="stmt"/>
256
256
  <line num="147" count="2" type="stmt"/>
257
- <line num="149" count="2" type="cond" truecount="1" falsecount="0"/>
258
- <line num="150" count="6" type="stmt"/>
259
- <line num="151" count="6" type="stmt"/>
260
- <line num="152" count="6" type="stmt"/>
261
- <line num="153" count="6" type="stmt"/>
257
+ <line num="148" count="2" type="stmt"/>
258
+ <line num="149" count="2" type="stmt"/>
259
+ <line num="150" count="2" type="stmt"/>
260
+ <line num="151" count="2" type="stmt"/>
261
+ <line num="153" count="2" type="cond" truecount="1" falsecount="0"/>
262
262
  <line num="154" count="6" type="stmt"/>
263
263
  <line num="155" count="6" type="stmt"/>
264
264
  <line num="156" count="6" type="stmt"/>
@@ -292,14 +292,14 @@
292
292
  <line num="184" count="6" type="stmt"/>
293
293
  <line num="185" count="6" type="stmt"/>
294
294
  <line num="186" count="6" type="stmt"/>
295
- <line num="187" count="6" type="cond" truecount="1" falsecount="0"/>
296
- <line num="188" count="3" type="stmt"/>
295
+ <line num="187" count="6" type="stmt"/>
296
+ <line num="188" count="6" type="stmt"/>
297
297
  <line num="189" count="6" type="stmt"/>
298
+ <line num="190" count="6" type="stmt"/>
298
299
  <line num="191" count="6" type="cond" truecount="1" falsecount="0"/>
299
- <line num="192" count="6" type="stmt"/>
300
+ <line num="192" count="3" type="stmt"/>
300
301
  <line num="193" count="6" type="stmt"/>
301
- <line num="194" count="6" type="stmt"/>
302
- <line num="195" count="6" type="stmt"/>
302
+ <line num="195" count="6" type="cond" truecount="1" falsecount="0"/>
303
303
  <line num="196" count="6" type="stmt"/>
304
304
  <line num="197" count="6" type="stmt"/>
305
305
  <line num="198" count="6" type="stmt"/>
@@ -309,58 +309,62 @@
309
309
  <line num="202" count="6" type="stmt"/>
310
310
  <line num="203" count="6" type="stmt"/>
311
311
  <line num="204" count="6" type="stmt"/>
312
- <line num="205" count="6" type="cond" truecount="1" falsecount="0"/>
313
- <line num="206" count="4" type="stmt"/>
314
- <line num="207" count="4" type="stmt"/>
315
- <line num="208" count="4" type="stmt"/>
316
- <line num="209" count="4" type="stmt"/>
317
- <line num="210" count="6" type="cond" truecount="1" falsecount="0"/>
318
- <line num="211" count="6" type="stmt"/>
319
- <line num="212" count="6" type="stmt"/>
320
- <line num="213" count="6" type="stmt"/>
321
- <line num="214" count="6" type="stmt"/>
312
+ <line num="205" count="6" type="stmt"/>
313
+ <line num="206" count="6" type="stmt"/>
314
+ <line num="207" count="6" type="stmt"/>
315
+ <line num="208" count="6" type="stmt"/>
316
+ <line num="209" count="6" type="cond" truecount="1" falsecount="0"/>
317
+ <line num="210" count="4" type="stmt"/>
318
+ <line num="211" count="4" type="stmt"/>
319
+ <line num="212" count="4" type="stmt"/>
320
+ <line num="213" count="4" type="stmt"/>
321
+ <line num="214" count="6" type="cond" truecount="1" falsecount="0"/>
322
322
  <line num="215" count="6" type="stmt"/>
323
- <line num="217" count="6" type="cond" truecount="1" falsecount="0"/>
324
- <line num="218" count="145" type="stmt"/>
325
- <line num="219" count="145" type="cond" truecount="1" falsecount="0"/>
326
- <line num="220" count="145" type="stmt"/>
327
- <line num="221" count="145" type="cond" truecount="1" falsecount="0"/>
328
- <line num="222" count="99" type="stmt"/>
329
- <line num="223" count="99" type="stmt"/>
330
- <line num="224" count="99" type="stmt"/>
331
- <line num="225" count="99" type="stmt"/>
323
+ <line num="216" count="6" type="stmt"/>
324
+ <line num="217" count="6" type="stmt"/>
325
+ <line num="218" count="6" type="stmt"/>
326
+ <line num="219" count="6" type="stmt"/>
327
+ <line num="221" count="6" type="cond" truecount="1" falsecount="0"/>
328
+ <line num="222" count="145" type="stmt"/>
329
+ <line num="223" count="145" type="cond" truecount="1" falsecount="0"/>
330
+ <line num="224" count="145" type="stmt"/>
331
+ <line num="225" count="145" type="cond" truecount="1" falsecount="0"/>
332
332
  <line num="226" count="99" type="stmt"/>
333
333
  <line num="227" count="99" type="stmt"/>
334
334
  <line num="228" count="99" type="stmt"/>
335
- <line num="229" count="99" type="cond" truecount="1" falsecount="0"/>
336
- <line num="230" count="46" type="stmt"/>
337
- <line num="231" count="6" type="stmt"/>
338
- <line num="233" count="6" type="stmt"/>
339
- <line num="234" count="6" type="stmt"/>
335
+ <line num="229" count="99" type="stmt"/>
336
+ <line num="230" count="99" type="stmt"/>
337
+ <line num="231" count="99" type="stmt"/>
338
+ <line num="232" count="99" type="stmt"/>
339
+ <line num="233" count="99" type="cond" truecount="1" falsecount="0"/>
340
+ <line num="234" count="46" type="stmt"/>
340
341
  <line num="235" count="6" type="stmt"/>
341
- <line num="236" count="6" type="stmt"/>
342
342
  <line num="237" count="6" type="stmt"/>
343
343
  <line num="238" count="6" type="stmt"/>
344
+ <line num="239" count="6" type="stmt"/>
344
345
  <line num="240" count="6" type="stmt"/>
345
346
  <line num="241" count="6" type="stmt"/>
346
- <line num="243" count="2" type="cond" truecount="1" falsecount="0"/>
347
+ <line num="242" count="6" type="stmt"/>
347
348
  <line num="244" count="6" type="stmt"/>
348
349
  <line num="245" count="6" type="stmt"/>
349
- <line num="246" count="6" type="cond" truecount="1" falsecount="0"/>
350
- <line num="247" count="6" type="stmt"/>
350
+ <line num="247" count="2" type="cond" truecount="1" falsecount="0"/>
351
351
  <line num="248" count="6" type="stmt"/>
352
- <line num="250" count="6" type="stmt"/>
352
+ <line num="249" count="6" type="stmt"/>
353
+ <line num="250" count="6" type="cond" truecount="1" falsecount="0"/>
353
354
  <line num="251" count="6" type="stmt"/>
354
355
  <line num="252" count="6" type="stmt"/>
355
- <line num="253" count="6" type="stmt"/>
356
356
  <line num="254" count="6" type="stmt"/>
357
- <line num="256" count="2" type="stmt"/>
358
- <line num="257" count="2" type="stmt"/>
359
- <line num="258" count="2" type="stmt"/>
360
- <line num="259" count="2" type="stmt"/>
357
+ <line num="255" count="6" type="stmt"/>
358
+ <line num="256" count="6" type="stmt"/>
359
+ <line num="257" count="6" type="stmt"/>
360
+ <line num="258" count="6" type="stmt"/>
361
361
  <line num="260" count="2" type="stmt"/>
362
+ <line num="261" count="2" type="stmt"/>
362
363
  <line num="262" count="2" type="stmt"/>
363
364
  <line num="263" count="2" type="stmt"/>
365
+ <line num="264" count="2" type="stmt"/>
366
+ <line num="266" count="2" type="stmt"/>
367
+ <line num="267" count="2" type="stmt"/>
364
368
  </file>
365
369
  <file name="sorting.ts" path="/home/runner/work/moneyfunx/moneyfunx/src/lib/sorting.ts">
366
370
  <metrics statements="9" coveredstatements="9" conditionals="3" coveredconditionals="3" methods="3" coveredmethods="3"/>
@@ -4,6 +4,6 @@
4
4
  ,"/home/runner/work/moneyfunx/moneyfunx/src/lib/helperFunctions.ts": {"path":"/home/runner/work/moneyfunx/moneyfunx/src/lib/helperFunctions.ts","all":false,"statementMap":{"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":36}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":20}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":23}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":17}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":11}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":25}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":17}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":53}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":42}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":26}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":1}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":35}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":20}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":18}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":23}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":17}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":11}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":18}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":49}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":67}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":5}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":4}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":1}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":29}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":20}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":18}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":23}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":17}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":11}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":10}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":23}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":79}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":1}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":34}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":20}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":18}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":22}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":11}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":19}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":62}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":30}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":4}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":1}}},"s":{"14":1,"15":9,"16":9,"17":9,"18":9,"19":9,"20":8,"21":8,"22":8,"23":1,"24":9,"35":1,"36":30,"37":30,"38":30,"39":30,"40":30,"41":30,"42":30,"43":30,"44":30,"45":30,"46":30,"57":1,"58":9,"59":9,"60":9,"61":9,"62":9,"63":9,"64":9,"65":9,"67":9,"77":1,"78":49,"79":49,"80":49,"81":49,"82":49,"83":49,"84":49,"85":49,"86":49},"branchMap":{"0":{"type":"branch","line":15,"loc":{"start":{"line":15,"column":7},"end":{"line":25,"column":1}},"locations":[{"start":{"line":15,"column":7},"end":{"line":25,"column":1}}]},"1":{"type":"branch","line":20,"loc":{"start":{"line":20,"column":24},"end":{"line":23,"column":42}},"locations":[{"start":{"line":20,"column":24},"end":{"line":23,"column":42}}]},"2":{"type":"branch","line":23,"loc":{"start":{"line":23,"column":39},"end":{"line":24,"column":26}},"locations":[{"start":{"line":23,"column":39},"end":{"line":24,"column":26}}]},"3":{"type":"branch","line":36,"loc":{"start":{"line":36,"column":7},"end":{"line":47,"column":1}},"locations":[{"start":{"line":36,"column":7},"end":{"line":47,"column":1}}]},"4":{"type":"branch","line":58,"loc":{"start":{"line":58,"column":7},"end":{"line":68,"column":1}},"locations":[{"start":{"line":58,"column":7},"end":{"line":68,"column":1}}]},"5":{"type":"branch","line":78,"loc":{"start":{"line":78,"column":7},"end":{"line":87,"column":1}},"locations":[{"start":{"line":78,"column":7},"end":{"line":87,"column":1}}]}},"b":{"0":[9],"1":[8],"2":[1],"3":[30],"4":[9],"5":[49]},"fnMap":{"0":{"name":"calculateMinPayment","decl":{"start":{"line":15,"column":7},"end":{"line":25,"column":1}},"loc":{"start":{"line":15,"column":7},"end":{"line":25,"column":1}},"line":15},"1":{"name":"principalRemaining","decl":{"start":{"line":36,"column":7},"end":{"line":47,"column":1}},"loc":{"start":{"line":36,"column":7},"end":{"line":47,"column":1}},"line":36},"2":{"name":"interestPaid","decl":{"start":{"line":58,"column":7},"end":{"line":68,"column":1}},"loc":{"start":{"line":58,"column":7},"end":{"line":68,"column":1}},"line":58},"3":{"name":"numPaymentsToZero","decl":{"start":{"line":78,"column":7},"end":{"line":87,"column":1}},"loc":{"start":{"line":78,"column":7},"end":{"line":87,"column":1}},"line":78}},"f":{"0":9,"1":30,"2":9,"3":49}}
5
5
  ,"/home/runner/work/moneyfunx/moneyfunx/src/lib/loan.ts": {"path":"/home/runner/work/moneyfunx/moneyfunx/src/lib/loan.ts","all":false,"statementMap":{"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":35}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":45}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":36}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":14}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":22}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":23}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":27}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":24}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":17}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":28}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":18}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":5}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":61}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":21}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":31}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":33}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":41}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":35}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":62}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":58}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":49}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":54}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":26}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":3}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":62}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":92}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":42}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":70}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":8}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":5}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":19}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":3}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":33}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":39}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":21}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":24}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":18}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":6}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":3}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":67}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":41}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":3}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":20}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":38}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":44}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":13}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":34}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":76}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":3}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":21}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":20}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":38}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":43}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":13}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":34}},"141":{"start":{"line":142,"column":0},"end":{"line":142,"column":63}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":35}},"143":{"start":{"line":144,"column":0},"end":{"line":144,"column":18}},"144":{"start":{"line":145,"column":0},"end":{"line":145,"column":16}},"145":{"start":{"line":146,"column":0},"end":{"line":146,"column":26}},"146":{"start":{"line":147,"column":0},"end":{"line":147,"column":15}},"147":{"start":{"line":148,"column":0},"end":{"line":148,"column":7}},"148":{"start":{"line":149,"column":0},"end":{"line":149,"column":10}},"149":{"start":{"line":150,"column":0},"end":{"line":150,"column":3}},"158":{"start":{"line":159,"column":0},"end":{"line":159,"column":15}},"159":{"start":{"line":160,"column":0},"end":{"line":160,"column":20}},"160":{"start":{"line":161,"column":0},"end":{"line":161,"column":38}},"161":{"start":{"line":162,"column":0},"end":{"line":162,"column":43}},"162":{"start":{"line":163,"column":0},"end":{"line":163,"column":13}},"163":{"start":{"line":164,"column":0},"end":{"line":164,"column":34}},"164":{"start":{"line":165,"column":0},"end":{"line":165,"column":70}},"165":{"start":{"line":166,"column":0},"end":{"line":166,"column":35}},"166":{"start":{"line":167,"column":0},"end":{"line":167,"column":76}},"167":{"start":{"line":168,"column":0},"end":{"line":168,"column":29}},"168":{"start":{"line":169,"column":0},"end":{"line":169,"column":18}},"169":{"start":{"line":170,"column":0},"end":{"line":170,"column":16}},"170":{"start":{"line":171,"column":0},"end":{"line":171,"column":26}},"171":{"start":{"line":172,"column":0},"end":{"line":172,"column":26}},"172":{"start":{"line":173,"column":0},"end":{"line":173,"column":9}},"173":{"start":{"line":174,"column":0},"end":{"line":174,"column":26}},"174":{"start":{"line":175,"column":0},"end":{"line":175,"column":71}},"175":{"start":{"line":176,"column":0},"end":{"line":176,"column":8}},"176":{"start":{"line":177,"column":0},"end":{"line":177,"column":3}},"177":{"start":{"line":178,"column":0},"end":{"line":178,"column":1}}},"s":{"12":1,"13":1,"32":1,"55":1,"56":9,"57":9,"58":9,"59":9,"60":9,"61":9,"62":9,"63":9,"64":9,"65":9,"66":9,"67":9,"68":9,"69":9,"70":9,"71":9,"72":9,"73":9,"74":9,"75":9,"84":1,"85":108,"86":10,"87":10,"88":10,"89":10,"90":98,"91":108,"97":1,"98":9,"99":9,"100":9,"101":9,"102":9,"103":9,"110":1,"111":546,"112":546,"120":1,"121":51,"122":51,"123":51,"124":51,"125":51,"126":51,"135":1,"136":25,"137":25,"138":25,"139":25,"140":25,"141":25,"142":21,"143":21,"144":21,"145":21,"146":21,"147":21,"148":2,"149":25,"158":1,"159":11,"160":11,"161":11,"162":11,"163":11,"164":11,"165":11,"166":8,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":11,"177":1},"branchMap":{"0":{"type":"branch","line":56,"loc":{"start":{"line":56,"column":2},"end":{"line":76,"column":3}},"locations":[{"start":{"line":56,"column":2},"end":{"line":76,"column":3}}]},"1":{"type":"branch","line":74,"loc":{"start":{"line":74,"column":26},"end":{"line":74,"column":54}},"locations":[{"start":{"line":74,"column":26},"end":{"line":74,"column":54}}]},"2":{"type":"branch","line":75,"loc":{"start":{"line":75,"column":16},"end":{"line":75,"column":26}},"locations":[{"start":{"line":75,"column":16},"end":{"line":75,"column":26}}]},"3":{"type":"branch","line":85,"loc":{"start":{"line":85,"column":2},"end":{"line":92,"column":3}},"locations":[{"start":{"line":85,"column":2},"end":{"line":92,"column":3}}]},"4":{"type":"branch","line":86,"loc":{"start":{"line":86,"column":91},"end":{"line":90,"column":5}},"locations":[{"start":{"line":86,"column":91},"end":{"line":90,"column":5}}]},"5":{"type":"branch","line":90,"loc":{"start":{"line":90,"column":4},"end":{"line":91,"column":19}},"locations":[{"start":{"line":90,"column":4},"end":{"line":91,"column":19}}]},"6":{"type":"branch","line":98,"loc":{"start":{"line":98,"column":2},"end":{"line":104,"column":3}},"locations":[{"start":{"line":98,"column":2},"end":{"line":104,"column":3}}]},"7":{"type":"branch","line":111,"loc":{"start":{"line":111,"column":2},"end":{"line":113,"column":3}},"locations":[{"start":{"line":111,"column":2},"end":{"line":113,"column":3}}]},"8":{"type":"branch","line":121,"loc":{"start":{"line":121,"column":2},"end":{"line":127,"column":3}},"locations":[{"start":{"line":121,"column":2},"end":{"line":127,"column":3}}]},"9":{"type":"branch","line":136,"loc":{"start":{"line":136,"column":2},"end":{"line":150,"column":3}},"locations":[{"start":{"line":136,"column":2},"end":{"line":150,"column":3}}]},"10":{"type":"branch","line":142,"loc":{"start":{"line":142,"column":62},"end":{"line":148,"column":7}},"locations":[{"start":{"line":142,"column":62},"end":{"line":148,"column":7}}]},"11":{"type":"branch","line":148,"loc":{"start":{"line":148,"column":6},"end":{"line":149,"column":10}},"locations":[{"start":{"line":148,"column":6},"end":{"line":149,"column":10}}]},"12":{"type":"branch","line":159,"loc":{"start":{"line":159,"column":2},"end":{"line":177,"column":3}},"locations":[{"start":{"line":159,"column":2},"end":{"line":177,"column":3}}]},"13":{"type":"branch","line":166,"loc":{"start":{"line":166,"column":21},"end":{"line":167,"column":76}},"locations":[{"start":{"line":166,"column":21},"end":{"line":167,"column":76}}]},"14":{"type":"branch","line":167,"loc":{"start":{"line":167,"column":75},"end":{"line":176,"column":8}},"locations":[{"start":{"line":167,"column":75},"end":{"line":176,"column":8}}]}},"b":{"0":[9],"1":[7],"2":[7],"3":[108],"4":[10],"5":[98],"6":[9],"7":[546],"8":[51],"9":[25],"10":[21],"11":[2],"12":[11],"13":[8],"14":[1]},"fnMap":{"0":{"name":"Loan","decl":{"start":{"line":56,"column":2},"end":{"line":76,"column":3}},"loc":{"start":{"line":56,"column":2},"end":{"line":76,"column":3}},"line":56},"1":{"name":"validatePayment","decl":{"start":{"line":85,"column":2},"end":{"line":92,"column":3}},"loc":{"start":{"line":85,"column":2},"end":{"line":92,"column":3}},"line":85},"2":{"name":"calculateMinPayment","decl":{"start":{"line":98,"column":2},"end":{"line":104,"column":3}},"loc":{"start":{"line":98,"column":2},"end":{"line":104,"column":3}},"line":98},"3":{"name":"accrueInterest","decl":{"start":{"line":111,"column":2},"end":{"line":113,"column":3}},"loc":{"start":{"line":111,"column":2},"end":{"line":113,"column":3}},"line":111},"4":{"name":"numPaymentsToZero","decl":{"start":{"line":121,"column":2},"end":{"line":127,"column":3}},"loc":{"start":{"line":121,"column":2},"end":{"line":127,"column":3}},"line":121},"5":{"name":"principalRemaining","decl":{"start":{"line":136,"column":2},"end":{"line":150,"column":3}},"loc":{"start":{"line":136,"column":2},"end":{"line":150,"column":3}},"line":136},"6":{"name":"interestPaid","decl":{"start":{"line":159,"column":2},"end":{"line":177,"column":3}},"loc":{"start":{"line":159,"column":2},"end":{"line":177,"column":3}},"line":159}},"f":{"0":9,"1":108,"2":9,"3":546,"4":51,"5":25,"6":11}}
6
6
  ,"/home/runner/work/moneyfunx/moneyfunx/src/lib/paymentTypes.ts": {"path":"/home/runner/work/moneyfunx/moneyfunx/src/lib/paymentTypes.ts","all":false,"statementMap":{},"s":{},"branchMap":{},"b":{},"fnMap":{},"f":{}}
7
- ,"/home/runner/work/moneyfunx/moneyfunx/src/lib/payments.ts": {"path":"/home/runner/work/moneyfunx/moneyfunx/src/lib/payments.ts","all":false,"statementMap":{"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":35}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":38}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":17}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":17}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":11}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":39}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":77}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":5}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":4}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":90}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":40}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":76}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":6}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":3}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":35}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":1}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":35}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":13}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":22}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":27}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":25}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":11}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":17}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":23}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":75}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":12}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":57}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":3}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":1}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":33}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":13}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":20}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":18}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":22}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":26}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":23}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":25}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":25}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":30}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":3}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":42}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":29}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":50}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":3}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":37}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":56}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":56}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":71}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":41}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":33}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":29}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":40}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":24}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":6}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":46}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":31}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":39}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":37}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":35}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":25}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":7}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":3}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":30}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":1}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":25}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":16}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":18}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":32}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":25}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":31}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":51}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":53}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":27}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":32}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":26}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":45}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":30}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":6}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":59}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":5}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":25}},"143":{"start":{"line":144,"column":0},"end":{"line":144,"column":20}},"144":{"start":{"line":145,"column":0},"end":{"line":145,"column":32}},"145":{"start":{"line":146,"column":0},"end":{"line":146,"column":33}},"146":{"start":{"line":147,"column":0},"end":{"line":147,"column":59}},"148":{"start":{"line":149,"column":0},"end":{"line":149,"column":36}},"149":{"start":{"line":150,"column":0},"end":{"line":150,"column":48}},"150":{"start":{"line":151,"column":0},"end":{"line":151,"column":28}},"151":{"start":{"line":152,"column":0},"end":{"line":152,"column":28}},"152":{"start":{"line":153,"column":0},"end":{"line":153,"column":68}},"153":{"start":{"line":154,"column":0},"end":{"line":154,"column":78}},"154":{"start":{"line":155,"column":0},"end":{"line":155,"column":53}},"155":{"start":{"line":156,"column":0},"end":{"line":156,"column":23}},"156":{"start":{"line":157,"column":0},"end":{"line":157,"column":34}},"157":{"start":{"line":158,"column":0},"end":{"line":158,"column":6}},"158":{"start":{"line":159,"column":0},"end":{"line":159,"column":56}},"159":{"start":{"line":160,"column":0},"end":{"line":160,"column":16}},"160":{"start":{"line":161,"column":0},"end":{"line":161,"column":34}},"161":{"start":{"line":162,"column":0},"end":{"line":162,"column":23}},"162":{"start":{"line":163,"column":0},"end":{"line":163,"column":19}},"163":{"start":{"line":164,"column":0},"end":{"line":164,"column":20}},"164":{"start":{"line":165,"column":0},"end":{"line":165,"column":6}},"165":{"start":{"line":166,"column":0},"end":{"line":166,"column":34}},"166":{"start":{"line":167,"column":0},"end":{"line":167,"column":35}},"167":{"start":{"line":168,"column":0},"end":{"line":168,"column":25}},"168":{"start":{"line":169,"column":0},"end":{"line":169,"column":25}},"169":{"start":{"line":170,"column":0},"end":{"line":170,"column":35}},"170":{"start":{"line":171,"column":0},"end":{"line":171,"column":35}},"171":{"start":{"line":172,"column":0},"end":{"line":172,"column":37}},"172":{"start":{"line":173,"column":0},"end":{"line":173,"column":27}},"173":{"start":{"line":174,"column":0},"end":{"line":174,"column":27}},"174":{"start":{"line":175,"column":0},"end":{"line":175,"column":37}},"175":{"start":{"line":176,"column":0},"end":{"line":176,"column":9}},"176":{"start":{"line":177,"column":0},"end":{"line":177,"column":6}},"177":{"start":{"line":178,"column":0},"end":{"line":178,"column":58}},"178":{"start":{"line":179,"column":0},"end":{"line":179,"column":60}},"179":{"start":{"line":180,"column":0},"end":{"line":180,"column":35}},"180":{"start":{"line":181,"column":0},"end":{"line":181,"column":6}},"181":{"start":{"line":182,"column":0},"end":{"line":182,"column":33}},"182":{"start":{"line":183,"column":0},"end":{"line":183,"column":35}},"183":{"start":{"line":184,"column":0},"end":{"line":184,"column":35}},"184":{"start":{"line":185,"column":0},"end":{"line":185,"column":6}},"185":{"start":{"line":186,"column":0},"end":{"line":186,"column":19}},"186":{"start":{"line":187,"column":0},"end":{"line":187,"column":24}},"187":{"start":{"line":188,"column":0},"end":{"line":188,"column":45}},"188":{"start":{"line":189,"column":0},"end":{"line":189,"column":6}},"190":{"start":{"line":191,"column":0},"end":{"line":191,"column":53}},"191":{"start":{"line":192,"column":0},"end":{"line":192,"column":70}},"192":{"start":{"line":193,"column":0},"end":{"line":193,"column":53}},"193":{"start":{"line":194,"column":0},"end":{"line":194,"column":13}},"194":{"start":{"line":195,"column":0},"end":{"line":195,"column":31}},"195":{"start":{"line":196,"column":0},"end":{"line":196,"column":24}},"196":{"start":{"line":197,"column":0},"end":{"line":197,"column":17}},"197":{"start":{"line":198,"column":0},"end":{"line":198,"column":23}},"198":{"start":{"line":199,"column":0},"end":{"line":199,"column":33}},"199":{"start":{"line":200,"column":0},"end":{"line":200,"column":28}},"200":{"start":{"line":201,"column":0},"end":{"line":201,"column":35}},"201":{"start":{"line":202,"column":0},"end":{"line":202,"column":12}},"202":{"start":{"line":203,"column":0},"end":{"line":203,"column":10}},"203":{"start":{"line":204,"column":0},"end":{"line":204,"column":23}},"204":{"start":{"line":205,"column":0},"end":{"line":205,"column":42}},"205":{"start":{"line":206,"column":0},"end":{"line":206,"column":20}},"206":{"start":{"line":207,"column":0},"end":{"line":207,"column":27}},"207":{"start":{"line":208,"column":0},"end":{"line":208,"column":32}},"208":{"start":{"line":209,"column":0},"end":{"line":209,"column":24}},"209":{"start":{"line":210,"column":0},"end":{"line":210,"column":14}},"210":{"start":{"line":211,"column":0},"end":{"line":211,"column":8}},"211":{"start":{"line":212,"column":0},"end":{"line":212,"column":55}},"212":{"start":{"line":213,"column":0},"end":{"line":213,"column":57}},"213":{"start":{"line":214,"column":0},"end":{"line":214,"column":33}},"214":{"start":{"line":215,"column":0},"end":{"line":215,"column":8}},"216":{"start":{"line":217,"column":0},"end":{"line":217,"column":78}},"217":{"start":{"line":218,"column":0},"end":{"line":218,"column":63}},"218":{"start":{"line":219,"column":0},"end":{"line":219,"column":66}},"219":{"start":{"line":220,"column":0},"end":{"line":220,"column":10}},"220":{"start":{"line":221,"column":0},"end":{"line":221,"column":44}},"221":{"start":{"line":222,"column":0},"end":{"line":222,"column":13}},"222":{"start":{"line":223,"column":0},"end":{"line":223,"column":35}},"223":{"start":{"line":224,"column":0},"end":{"line":224,"column":73}},"224":{"start":{"line":225,"column":0},"end":{"line":225,"column":70}},"225":{"start":{"line":226,"column":0},"end":{"line":226,"column":31}},"226":{"start":{"line":227,"column":0},"end":{"line":227,"column":42}},"227":{"start":{"line":228,"column":0},"end":{"line":228,"column":52}},"228":{"start":{"line":229,"column":0},"end":{"line":229,"column":11}},"229":{"start":{"line":230,"column":0},"end":{"line":230,"column":20}},"230":{"start":{"line":231,"column":0},"end":{"line":231,"column":9}},"232":{"start":{"line":233,"column":0},"end":{"line":233,"column":57}},"233":{"start":{"line":234,"column":0},"end":{"line":234,"column":15}},"234":{"start":{"line":235,"column":0},"end":{"line":235,"column":29}},"235":{"start":{"line":236,"column":0},"end":{"line":236,"column":64}},"236":{"start":{"line":237,"column":0},"end":{"line":237,"column":27}},"237":{"start":{"line":238,"column":0},"end":{"line":238,"column":7}},"239":{"start":{"line":240,"column":0},"end":{"line":240,"column":35}},"240":{"start":{"line":241,"column":0},"end":{"line":241,"column":3}},"242":{"start":{"line":243,"column":0},"end":{"line":243,"column":29}},"243":{"start":{"line":244,"column":0},"end":{"line":244,"column":34}},"244":{"start":{"line":245,"column":0},"end":{"line":245,"column":59}},"245":{"start":{"line":246,"column":0},"end":{"line":246,"column":73}},"246":{"start":{"line":247,"column":0},"end":{"line":247,"column":9}},"247":{"start":{"line":248,"column":0},"end":{"line":248,"column":7}},"249":{"start":{"line":250,"column":0},"end":{"line":250,"column":69}},"250":{"start":{"line":251,"column":0},"end":{"line":251,"column":64}},"251":{"start":{"line":252,"column":0},"end":{"line":252,"column":50}},"252":{"start":{"line":253,"column":0},"end":{"line":253,"column":50}},"253":{"start":{"line":254,"column":0},"end":{"line":254,"column":3}},"255":{"start":{"line":256,"column":0},"end":{"line":256,"column":28}},"256":{"start":{"line":257,"column":0},"end":{"line":257,"column":44}},"257":{"start":{"line":258,"column":0},"end":{"line":258,"column":46}},"258":{"start":{"line":259,"column":0},"end":{"line":259,"column":51}},"259":{"start":{"line":260,"column":0},"end":{"line":260,"column":4}},"261":{"start":{"line":262,"column":0},"end":{"line":262,"column":25}},"262":{"start":{"line":263,"column":0},"end":{"line":263,"column":1}}},"s":{"6":1,"23":1,"24":8,"25":8,"26":8,"27":8,"28":8,"29":8,"30":8,"32":8,"33":1,"34":1,"35":1,"36":1,"37":7,"38":7,"50":1,"51":6,"52":6,"53":6,"54":6,"55":6,"56":6,"57":6,"58":3,"59":6,"60":3,"61":6,"62":6,"76":1,"77":13,"78":13,"79":13,"80":13,"81":13,"82":13,"83":13,"84":13,"85":1,"86":1,"87":13,"89":13,"90":1,"91":1,"93":13,"95":13,"96":13,"97":539,"98":539,"99":539,"100":13,"101":539,"102":539,"103":539,"104":539,"105":539,"106":539,"107":539,"108":539,"109":539,"110":539,"111":539,"112":13,"113":13,"125":1,"126":2,"127":2,"128":2,"129":2,"130":2,"131":2,"132":2,"133":2,"134":6,"135":6,"136":6,"137":6,"138":6,"139":6,"140":2,"142":2,"143":2,"144":2,"145":2,"146":2,"148":2,"149":6,"150":6,"151":6,"152":6,"153":6,"154":6,"155":6,"156":6,"157":6,"158":6,"159":6,"160":6,"161":6,"162":6,"163":6,"164":6,"165":6,"166":6,"167":6,"168":6,"169":6,"170":6,"171":6,"172":6,"173":6,"174":6,"175":6,"176":6,"177":6,"178":6,"179":6,"180":6,"181":6,"182":6,"183":6,"184":6,"185":6,"186":6,"187":3,"188":6,"190":6,"191":6,"192":6,"193":6,"194":6,"195":6,"196":6,"197":6,"198":6,"199":6,"200":6,"201":6,"202":6,"203":6,"204":6,"205":4,"206":4,"207":4,"208":4,"209":6,"210":6,"211":6,"212":6,"213":6,"214":6,"216":6,"217":145,"218":145,"219":145,"220":145,"221":99,"222":99,"223":99,"224":99,"225":99,"226":99,"227":99,"228":99,"229":46,"230":6,"232":6,"233":6,"234":6,"235":6,"236":6,"237":6,"239":6,"240":6,"242":2,"243":6,"244":6,"245":6,"246":6,"247":6,"249":6,"250":6,"251":6,"252":6,"253":6,"255":2,"256":2,"257":2,"258":2,"259":2,"261":2,"262":2},"branchMap":{"0":{"type":"branch","line":24,"loc":{"start":{"line":24,"column":7},"end":{"line":39,"column":1}},"locations":[{"start":{"line":24,"column":7},"end":{"line":39,"column":1}}]},"1":{"type":"branch","line":33,"loc":{"start":{"line":33,"column":89},"end":{"line":37,"column":3}},"locations":[{"start":{"line":33,"column":89},"end":{"line":37,"column":3}}]},"2":{"type":"branch","line":37,"loc":{"start":{"line":37,"column":2},"end":{"line":39,"column":1}},"locations":[{"start":{"line":37,"column":2},"end":{"line":39,"column":1}}]},"3":{"type":"branch","line":29,"loc":{"start":{"line":29,"column":4},"end":{"line":29,"column":77}},"locations":[{"start":{"line":29,"column":4},"end":{"line":29,"column":77}}]},"4":{"type":"branch","line":51,"loc":{"start":{"line":51,"column":7},"end":{"line":63,"column":1}},"locations":[{"start":{"line":51,"column":7},"end":{"line":63,"column":1}}]},"5":{"type":"branch","line":58,"loc":{"start":{"line":58,"column":4},"end":{"line":59,"column":75}},"locations":[{"start":{"line":58,"column":4},"end":{"line":59,"column":75}}]},"6":{"type":"branch","line":60,"loc":{"start":{"line":60,"column":4},"end":{"line":61,"column":57}},"locations":[{"start":{"line":60,"column":4},"end":{"line":61,"column":57}}]},"7":{"type":"branch","line":77,"loc":{"start":{"line":77,"column":7},"end":{"line":114,"column":1}},"locations":[{"start":{"line":77,"column":7},"end":{"line":114,"column":1}}]},"8":{"type":"branch","line":85,"loc":{"start":{"line":85,"column":24},"end":{"line":87,"column":3}},"locations":[{"start":{"line":85,"column":24},"end":{"line":87,"column":3}}]},"9":{"type":"branch","line":90,"loc":{"start":{"line":90,"column":28},"end":{"line":92,"column":3}},"locations":[{"start":{"line":90,"column":28},"end":{"line":92,"column":3}}]},"10":{"type":"branch","line":97,"loc":{"start":{"line":97,"column":55},"end":{"line":112,"column":3}},"locations":[{"start":{"line":97,"column":55},"end":{"line":112,"column":3}}]},"11":{"type":"branch","line":100,"loc":{"start":{"line":100,"column":32},"end":{"line":101,"column":29}},"locations":[{"start":{"line":100,"column":32},"end":{"line":101,"column":29}}]},"12":{"type":"branch","line":101,"loc":{"start":{"line":101,"column":20},"end":{"line":102,"column":21}},"locations":[{"start":{"line":101,"column":20},"end":{"line":102,"column":21}}]},"13":{"type":"branch","line":126,"loc":{"start":{"line":126,"column":7},"end":{"line":263,"column":1}},"locations":[{"start":{"line":126,"column":7},"end":{"line":263,"column":1}}]},"14":{"type":"branch","line":149,"loc":{"start":{"line":149,"column":35},"end":{"line":241,"column":3}},"locations":[{"start":{"line":149,"column":35},"end":{"line":241,"column":3}}]},"15":{"type":"branch","line":187,"loc":{"start":{"line":187,"column":23},"end":{"line":189,"column":5}},"locations":[{"start":{"line":187,"column":23},"end":{"line":189,"column":5}}]},"16":{"type":"branch","line":243,"loc":{"start":{"line":243,"column":28},"end":{"line":254,"column":3}},"locations":[{"start":{"line":243,"column":28},"end":{"line":254,"column":3}}]},"17":{"type":"branch","line":134,"loc":{"start":{"line":134,"column":16},"end":{"line":141,"column":3}},"locations":[{"start":{"line":134,"column":16},"end":{"line":141,"column":3}}]},"18":{"type":"branch","line":191,"loc":{"start":{"line":191,"column":35},"end":{"line":238,"column":5}},"locations":[{"start":{"line":191,"column":35},"end":{"line":238,"column":5}}]},"19":{"type":"branch","line":205,"loc":{"start":{"line":205,"column":19},"end":{"line":210,"column":12}},"locations":[{"start":{"line":205,"column":19},"end":{"line":210,"column":12}}]},"20":{"type":"branch","line":210,"loc":{"start":{"line":210,"column":8},"end":{"line":210,"column":14}},"locations":[{"start":{"line":210,"column":8},"end":{"line":210,"column":14}}]},"21":{"type":"branch","line":217,"loc":{"start":{"line":217,"column":64},"end":{"line":231,"column":7}},"locations":[{"start":{"line":217,"column":64},"end":{"line":231,"column":7}}]},"22":{"type":"branch","line":221,"loc":{"start":{"line":221,"column":39},"end":{"line":229,"column":11}},"locations":[{"start":{"line":221,"column":39},"end":{"line":229,"column":11}}]},"23":{"type":"branch","line":229,"loc":{"start":{"line":229,"column":10},"end":{"line":230,"column":20}},"locations":[{"start":{"line":229,"column":10},"end":{"line":230,"column":20}}]},"24":{"type":"branch","line":219,"loc":{"start":{"line":219,"column":10},"end":{"line":219,"column":66}},"locations":[{"start":{"line":219,"column":10},"end":{"line":219,"column":66}}]},"25":{"type":"branch","line":246,"loc":{"start":{"line":246,"column":8},"end":{"line":246,"column":73}},"locations":[{"start":{"line":246,"column":8},"end":{"line":246,"column":73}}]}},"b":{"0":[8],"1":[1],"2":[7],"3":[18],"4":[6],"5":[3],"6":[3],"7":[13],"8":[1],"9":[1],"10":[539],"11":[13],"12":[526],"13":[2],"14":[6],"15":[3],"16":[6],"17":[6],"18":[6],"19":[4],"20":[2],"21":[145],"22":[99],"23":[46],"24":[1283],"25":[358]},"fnMap":{"0":{"name":"determineExtraPayment","decl":{"start":{"line":24,"column":7},"end":{"line":39,"column":1}},"loc":{"start":{"line":24,"column":7},"end":{"line":39,"column":1}},"line":24},"1":{"name":"determineCarryover","decl":{"start":{"line":51,"column":7},"end":{"line":63,"column":1}},"loc":{"start":{"line":51,"column":7},"end":{"line":63,"column":1}},"line":51},"2":{"name":"amortizePayments","decl":{"start":{"line":77,"column":7},"end":{"line":114,"column":1}},"loc":{"start":{"line":77,"column":7},"end":{"line":114,"column":1}},"line":77},"3":{"name":"payLoans","decl":{"start":{"line":126,"column":7},"end":{"line":263,"column":1}},"loc":{"start":{"line":126,"column":7},"end":{"line":263,"column":1}},"line":126}},"f":{"0":8,"1":6,"2":13,"3":2}}
7
+ ,"/home/runner/work/moneyfunx/moneyfunx/src/lib/payments.ts": {"path":"/home/runner/work/moneyfunx/moneyfunx/src/lib/payments.ts","all":false,"statementMap":{"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":35}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":38}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":17}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":17}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":11}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":39}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":77}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":5}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":4}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":90}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":40}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":76}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":6}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":3}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":35}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":1}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":35}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":13}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":22}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":27}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":25}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":11}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":17}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":23}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":45}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":56}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":25}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":8}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":9}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":12}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":57}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":3}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":1}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":33}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":13}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":20}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":18}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":22}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":26}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":23}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":25}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":25}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":30}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":3}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":42}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":29}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":50}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":3}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":37}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":56}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":56}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":71}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":41}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":33}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":29}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":40}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":24}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":6}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":46}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":31}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":39}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":37}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":35}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":25}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":7}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":3}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":30}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":1}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":25}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":16}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":18}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":32}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":25}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":31}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":51}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":53}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":27}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":32}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":26}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":45}},"141":{"start":{"line":142,"column":0},"end":{"line":142,"column":30}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":6}},"143":{"start":{"line":144,"column":0},"end":{"line":144,"column":59}},"144":{"start":{"line":145,"column":0},"end":{"line":145,"column":5}},"146":{"start":{"line":147,"column":0},"end":{"line":147,"column":25}},"147":{"start":{"line":148,"column":0},"end":{"line":148,"column":20}},"148":{"start":{"line":149,"column":0},"end":{"line":149,"column":32}},"149":{"start":{"line":150,"column":0},"end":{"line":150,"column":33}},"150":{"start":{"line":151,"column":0},"end":{"line":151,"column":59}},"152":{"start":{"line":153,"column":0},"end":{"line":153,"column":36}},"153":{"start":{"line":154,"column":0},"end":{"line":154,"column":48}},"154":{"start":{"line":155,"column":0},"end":{"line":155,"column":28}},"155":{"start":{"line":156,"column":0},"end":{"line":156,"column":28}},"156":{"start":{"line":157,"column":0},"end":{"line":157,"column":68}},"157":{"start":{"line":158,"column":0},"end":{"line":158,"column":78}},"158":{"start":{"line":159,"column":0},"end":{"line":159,"column":53}},"159":{"start":{"line":160,"column":0},"end":{"line":160,"column":23}},"160":{"start":{"line":161,"column":0},"end":{"line":161,"column":34}},"161":{"start":{"line":162,"column":0},"end":{"line":162,"column":6}},"162":{"start":{"line":163,"column":0},"end":{"line":163,"column":56}},"163":{"start":{"line":164,"column":0},"end":{"line":164,"column":16}},"164":{"start":{"line":165,"column":0},"end":{"line":165,"column":34}},"165":{"start":{"line":166,"column":0},"end":{"line":166,"column":23}},"166":{"start":{"line":167,"column":0},"end":{"line":167,"column":19}},"167":{"start":{"line":168,"column":0},"end":{"line":168,"column":20}},"168":{"start":{"line":169,"column":0},"end":{"line":169,"column":6}},"169":{"start":{"line":170,"column":0},"end":{"line":170,"column":34}},"170":{"start":{"line":171,"column":0},"end":{"line":171,"column":35}},"171":{"start":{"line":172,"column":0},"end":{"line":172,"column":25}},"172":{"start":{"line":173,"column":0},"end":{"line":173,"column":25}},"173":{"start":{"line":174,"column":0},"end":{"line":174,"column":35}},"174":{"start":{"line":175,"column":0},"end":{"line":175,"column":35}},"175":{"start":{"line":176,"column":0},"end":{"line":176,"column":37}},"176":{"start":{"line":177,"column":0},"end":{"line":177,"column":27}},"177":{"start":{"line":178,"column":0},"end":{"line":178,"column":27}},"178":{"start":{"line":179,"column":0},"end":{"line":179,"column":37}},"179":{"start":{"line":180,"column":0},"end":{"line":180,"column":9}},"180":{"start":{"line":181,"column":0},"end":{"line":181,"column":6}},"181":{"start":{"line":182,"column":0},"end":{"line":182,"column":58}},"182":{"start":{"line":183,"column":0},"end":{"line":183,"column":60}},"183":{"start":{"line":184,"column":0},"end":{"line":184,"column":35}},"184":{"start":{"line":185,"column":0},"end":{"line":185,"column":6}},"185":{"start":{"line":186,"column":0},"end":{"line":186,"column":33}},"186":{"start":{"line":187,"column":0},"end":{"line":187,"column":35}},"187":{"start":{"line":188,"column":0},"end":{"line":188,"column":35}},"188":{"start":{"line":189,"column":0},"end":{"line":189,"column":6}},"189":{"start":{"line":190,"column":0},"end":{"line":190,"column":19}},"190":{"start":{"line":191,"column":0},"end":{"line":191,"column":24}},"191":{"start":{"line":192,"column":0},"end":{"line":192,"column":45}},"192":{"start":{"line":193,"column":0},"end":{"line":193,"column":6}},"194":{"start":{"line":195,"column":0},"end":{"line":195,"column":53}},"195":{"start":{"line":196,"column":0},"end":{"line":196,"column":70}},"196":{"start":{"line":197,"column":0},"end":{"line":197,"column":53}},"197":{"start":{"line":198,"column":0},"end":{"line":198,"column":13}},"198":{"start":{"line":199,"column":0},"end":{"line":199,"column":31}},"199":{"start":{"line":200,"column":0},"end":{"line":200,"column":24}},"200":{"start":{"line":201,"column":0},"end":{"line":201,"column":17}},"201":{"start":{"line":202,"column":0},"end":{"line":202,"column":23}},"202":{"start":{"line":203,"column":0},"end":{"line":203,"column":33}},"203":{"start":{"line":204,"column":0},"end":{"line":204,"column":28}},"204":{"start":{"line":205,"column":0},"end":{"line":205,"column":35}},"205":{"start":{"line":206,"column":0},"end":{"line":206,"column":12}},"206":{"start":{"line":207,"column":0},"end":{"line":207,"column":10}},"207":{"start":{"line":208,"column":0},"end":{"line":208,"column":23}},"208":{"start":{"line":209,"column":0},"end":{"line":209,"column":42}},"209":{"start":{"line":210,"column":0},"end":{"line":210,"column":20}},"210":{"start":{"line":211,"column":0},"end":{"line":211,"column":27}},"211":{"start":{"line":212,"column":0},"end":{"line":212,"column":32}},"212":{"start":{"line":213,"column":0},"end":{"line":213,"column":24}},"213":{"start":{"line":214,"column":0},"end":{"line":214,"column":14}},"214":{"start":{"line":215,"column":0},"end":{"line":215,"column":8}},"215":{"start":{"line":216,"column":0},"end":{"line":216,"column":55}},"216":{"start":{"line":217,"column":0},"end":{"line":217,"column":57}},"217":{"start":{"line":218,"column":0},"end":{"line":218,"column":33}},"218":{"start":{"line":219,"column":0},"end":{"line":219,"column":8}},"220":{"start":{"line":221,"column":0},"end":{"line":221,"column":78}},"221":{"start":{"line":222,"column":0},"end":{"line":222,"column":63}},"222":{"start":{"line":223,"column":0},"end":{"line":223,"column":66}},"223":{"start":{"line":224,"column":0},"end":{"line":224,"column":10}},"224":{"start":{"line":225,"column":0},"end":{"line":225,"column":44}},"225":{"start":{"line":226,"column":0},"end":{"line":226,"column":13}},"226":{"start":{"line":227,"column":0},"end":{"line":227,"column":35}},"227":{"start":{"line":228,"column":0},"end":{"line":228,"column":73}},"228":{"start":{"line":229,"column":0},"end":{"line":229,"column":70}},"229":{"start":{"line":230,"column":0},"end":{"line":230,"column":31}},"230":{"start":{"line":231,"column":0},"end":{"line":231,"column":42}},"231":{"start":{"line":232,"column":0},"end":{"line":232,"column":52}},"232":{"start":{"line":233,"column":0},"end":{"line":233,"column":11}},"233":{"start":{"line":234,"column":0},"end":{"line":234,"column":20}},"234":{"start":{"line":235,"column":0},"end":{"line":235,"column":9}},"236":{"start":{"line":237,"column":0},"end":{"line":237,"column":57}},"237":{"start":{"line":238,"column":0},"end":{"line":238,"column":15}},"238":{"start":{"line":239,"column":0},"end":{"line":239,"column":29}},"239":{"start":{"line":240,"column":0},"end":{"line":240,"column":64}},"240":{"start":{"line":241,"column":0},"end":{"line":241,"column":27}},"241":{"start":{"line":242,"column":0},"end":{"line":242,"column":7}},"243":{"start":{"line":244,"column":0},"end":{"line":244,"column":35}},"244":{"start":{"line":245,"column":0},"end":{"line":245,"column":3}},"246":{"start":{"line":247,"column":0},"end":{"line":247,"column":29}},"247":{"start":{"line":248,"column":0},"end":{"line":248,"column":34}},"248":{"start":{"line":249,"column":0},"end":{"line":249,"column":59}},"249":{"start":{"line":250,"column":0},"end":{"line":250,"column":73}},"250":{"start":{"line":251,"column":0},"end":{"line":251,"column":9}},"251":{"start":{"line":252,"column":0},"end":{"line":252,"column":7}},"253":{"start":{"line":254,"column":0},"end":{"line":254,"column":69}},"254":{"start":{"line":255,"column":0},"end":{"line":255,"column":64}},"255":{"start":{"line":256,"column":0},"end":{"line":256,"column":50}},"256":{"start":{"line":257,"column":0},"end":{"line":257,"column":50}},"257":{"start":{"line":258,"column":0},"end":{"line":258,"column":3}},"259":{"start":{"line":260,"column":0},"end":{"line":260,"column":28}},"260":{"start":{"line":261,"column":0},"end":{"line":261,"column":44}},"261":{"start":{"line":262,"column":0},"end":{"line":262,"column":46}},"262":{"start":{"line":263,"column":0},"end":{"line":263,"column":51}},"263":{"start":{"line":264,"column":0},"end":{"line":264,"column":4}},"265":{"start":{"line":266,"column":0},"end":{"line":266,"column":25}},"266":{"start":{"line":267,"column":0},"end":{"line":267,"column":1}}},"s":{"6":1,"23":1,"24":8,"25":8,"26":8,"27":8,"28":8,"29":8,"30":8,"32":8,"33":1,"34":1,"35":1,"36":1,"37":7,"38":7,"50":1,"51":6,"52":6,"53":6,"54":6,"55":6,"56":6,"57":6,"58":3,"59":3,"60":3,"61":3,"62":3,"63":6,"64":3,"65":6,"66":6,"80":1,"81":13,"82":13,"83":13,"84":13,"85":13,"86":13,"87":13,"88":13,"89":1,"90":1,"91":13,"93":13,"94":1,"95":1,"97":13,"99":13,"100":13,"101":539,"102":539,"103":539,"104":13,"105":539,"106":539,"107":539,"108":539,"109":539,"110":539,"111":539,"112":539,"113":539,"114":539,"115":539,"116":13,"117":13,"129":1,"130":2,"131":2,"132":2,"133":2,"134":2,"135":2,"136":2,"137":2,"138":6,"139":6,"140":6,"141":6,"142":6,"143":6,"144":2,"146":2,"147":2,"148":2,"149":2,"150":2,"152":2,"153":6,"154":6,"155":6,"156":6,"157":6,"158":6,"159":6,"160":6,"161":6,"162":6,"163":6,"164":6,"165":6,"166":6,"167":6,"168":6,"169":6,"170":6,"171":6,"172":6,"173":6,"174":6,"175":6,"176":6,"177":6,"178":6,"179":6,"180":6,"181":6,"182":6,"183":6,"184":6,"185":6,"186":6,"187":6,"188":6,"189":6,"190":6,"191":3,"192":6,"194":6,"195":6,"196":6,"197":6,"198":6,"199":6,"200":6,"201":6,"202":6,"203":6,"204":6,"205":6,"206":6,"207":6,"208":6,"209":4,"210":4,"211":4,"212":4,"213":6,"214":6,"215":6,"216":6,"217":6,"218":6,"220":6,"221":145,"222":145,"223":145,"224":145,"225":99,"226":99,"227":99,"228":99,"229":99,"230":99,"231":99,"232":99,"233":46,"234":6,"236":6,"237":6,"238":6,"239":6,"240":6,"241":6,"243":6,"244":6,"246":2,"247":6,"248":6,"249":6,"250":6,"251":6,"253":6,"254":6,"255":6,"256":6,"257":6,"259":2,"260":2,"261":2,"262":2,"263":2,"265":2,"266":2},"branchMap":{"0":{"type":"branch","line":24,"loc":{"start":{"line":24,"column":7},"end":{"line":39,"column":1}},"locations":[{"start":{"line":24,"column":7},"end":{"line":39,"column":1}}]},"1":{"type":"branch","line":33,"loc":{"start":{"line":33,"column":89},"end":{"line":37,"column":3}},"locations":[{"start":{"line":33,"column":89},"end":{"line":37,"column":3}}]},"2":{"type":"branch","line":37,"loc":{"start":{"line":37,"column":2},"end":{"line":39,"column":1}},"locations":[{"start":{"line":37,"column":2},"end":{"line":39,"column":1}}]},"3":{"type":"branch","line":29,"loc":{"start":{"line":29,"column":4},"end":{"line":29,"column":77}},"locations":[{"start":{"line":29,"column":4},"end":{"line":29,"column":77}}]},"4":{"type":"branch","line":51,"loc":{"start":{"line":51,"column":7},"end":{"line":67,"column":1}},"locations":[{"start":{"line":51,"column":7},"end":{"line":67,"column":1}}]},"5":{"type":"branch","line":58,"loc":{"start":{"line":58,"column":4},"end":{"line":63,"column":9}},"locations":[{"start":{"line":58,"column":4},"end":{"line":63,"column":9}}]},"6":{"type":"branch","line":64,"loc":{"start":{"line":64,"column":4},"end":{"line":65,"column":57}},"locations":[{"start":{"line":64,"column":4},"end":{"line":65,"column":57}}]},"7":{"type":"branch","line":81,"loc":{"start":{"line":81,"column":7},"end":{"line":118,"column":1}},"locations":[{"start":{"line":81,"column":7},"end":{"line":118,"column":1}}]},"8":{"type":"branch","line":89,"loc":{"start":{"line":89,"column":24},"end":{"line":91,"column":3}},"locations":[{"start":{"line":89,"column":24},"end":{"line":91,"column":3}}]},"9":{"type":"branch","line":94,"loc":{"start":{"line":94,"column":28},"end":{"line":96,"column":3}},"locations":[{"start":{"line":94,"column":28},"end":{"line":96,"column":3}}]},"10":{"type":"branch","line":101,"loc":{"start":{"line":101,"column":55},"end":{"line":116,"column":3}},"locations":[{"start":{"line":101,"column":55},"end":{"line":116,"column":3}}]},"11":{"type":"branch","line":104,"loc":{"start":{"line":104,"column":32},"end":{"line":105,"column":29}},"locations":[{"start":{"line":104,"column":32},"end":{"line":105,"column":29}}]},"12":{"type":"branch","line":105,"loc":{"start":{"line":105,"column":20},"end":{"line":106,"column":21}},"locations":[{"start":{"line":105,"column":20},"end":{"line":106,"column":21}}]},"13":{"type":"branch","line":130,"loc":{"start":{"line":130,"column":7},"end":{"line":267,"column":1}},"locations":[{"start":{"line":130,"column":7},"end":{"line":267,"column":1}}]},"14":{"type":"branch","line":153,"loc":{"start":{"line":153,"column":35},"end":{"line":245,"column":3}},"locations":[{"start":{"line":153,"column":35},"end":{"line":245,"column":3}}]},"15":{"type":"branch","line":191,"loc":{"start":{"line":191,"column":23},"end":{"line":193,"column":5}},"locations":[{"start":{"line":191,"column":23},"end":{"line":193,"column":5}}]},"16":{"type":"branch","line":247,"loc":{"start":{"line":247,"column":28},"end":{"line":258,"column":3}},"locations":[{"start":{"line":247,"column":28},"end":{"line":258,"column":3}}]},"17":{"type":"branch","line":138,"loc":{"start":{"line":138,"column":16},"end":{"line":145,"column":3}},"locations":[{"start":{"line":138,"column":16},"end":{"line":145,"column":3}}]},"18":{"type":"branch","line":195,"loc":{"start":{"line":195,"column":35},"end":{"line":242,"column":5}},"locations":[{"start":{"line":195,"column":35},"end":{"line":242,"column":5}}]},"19":{"type":"branch","line":209,"loc":{"start":{"line":209,"column":19},"end":{"line":214,"column":12}},"locations":[{"start":{"line":209,"column":19},"end":{"line":214,"column":12}}]},"20":{"type":"branch","line":214,"loc":{"start":{"line":214,"column":8},"end":{"line":214,"column":14}},"locations":[{"start":{"line":214,"column":8},"end":{"line":214,"column":14}}]},"21":{"type":"branch","line":221,"loc":{"start":{"line":221,"column":64},"end":{"line":235,"column":7}},"locations":[{"start":{"line":221,"column":64},"end":{"line":235,"column":7}}]},"22":{"type":"branch","line":225,"loc":{"start":{"line":225,"column":39},"end":{"line":233,"column":11}},"locations":[{"start":{"line":225,"column":39},"end":{"line":233,"column":11}}]},"23":{"type":"branch","line":233,"loc":{"start":{"line":233,"column":10},"end":{"line":234,"column":20}},"locations":[{"start":{"line":233,"column":10},"end":{"line":234,"column":20}}]},"24":{"type":"branch","line":223,"loc":{"start":{"line":223,"column":10},"end":{"line":223,"column":66}},"locations":[{"start":{"line":223,"column":10},"end":{"line":223,"column":66}}]},"25":{"type":"branch","line":250,"loc":{"start":{"line":250,"column":8},"end":{"line":250,"column":73}},"locations":[{"start":{"line":250,"column":8},"end":{"line":250,"column":73}}]}},"b":{"0":[8],"1":[1],"2":[7],"3":[18],"4":[6],"5":[3],"6":[3],"7":[13],"8":[1],"9":[1],"10":[539],"11":[13],"12":[526],"13":[2],"14":[6],"15":[3],"16":[6],"17":[6],"18":[6],"19":[4],"20":[2],"21":[145],"22":[99],"23":[46],"24":[1283],"25":[358]},"fnMap":{"0":{"name":"determineExtraPayment","decl":{"start":{"line":24,"column":7},"end":{"line":39,"column":1}},"loc":{"start":{"line":24,"column":7},"end":{"line":39,"column":1}},"line":24},"1":{"name":"determineCarryover","decl":{"start":{"line":51,"column":7},"end":{"line":67,"column":1}},"loc":{"start":{"line":51,"column":7},"end":{"line":67,"column":1}},"line":51},"2":{"name":"amortizePayments","decl":{"start":{"line":81,"column":7},"end":{"line":118,"column":1}},"loc":{"start":{"line":81,"column":7},"end":{"line":118,"column":1}},"line":81},"3":{"name":"payLoans","decl":{"start":{"line":130,"column":7},"end":{"line":267,"column":1}},"loc":{"start":{"line":130,"column":7},"end":{"line":267,"column":1}},"line":130}},"f":{"0":8,"1":6,"2":13,"3":2}}
8
8
  ,"/home/runner/work/moneyfunx/moneyfunx/src/lib/sorting.ts": {"path":"/home/runner/work/moneyfunx/moneyfunx/src/lib/sorting.ts","all":false,"statementMap":{"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":63}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":45}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":1}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":62}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":53}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":1}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":80}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":34}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":1}}},"s":{"18":1,"19":8,"20":8,"28":1,"29":5,"30":5,"38":1,"39":3,"40":3},"branchMap":{"0":{"type":"branch","line":19,"loc":{"start":{"line":19,"column":7},"end":{"line":21,"column":1}},"locations":[{"start":{"line":19,"column":7},"end":{"line":21,"column":1}}]},"1":{"type":"branch","line":29,"loc":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"locations":[{"start":{"line":29,"column":7},"end":{"line":31,"column":1}}]},"2":{"type":"branch","line":39,"loc":{"start":{"line":39,"column":7},"end":{"line":41,"column":1}},"locations":[{"start":{"line":39,"column":7},"end":{"line":41,"column":1}}]}},"b":{"0":[8],"1":[5],"2":[3]},"fnMap":{"0":{"name":"avalanche","decl":{"start":{"line":19,"column":7},"end":{"line":21,"column":1}},"loc":{"start":{"line":19,"column":7},"end":{"line":21,"column":1}},"line":19},"1":{"name":"snowball","decl":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"loc":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"line":29},"2":{"name":"sortLoans","decl":{"start":{"line":39,"column":7},"end":{"line":41,"column":1}},"loc":{"start":{"line":39,"column":7},"end":{"line":41,"column":1}},"line":39}},"f":{"0":8,"1":5,"2":3}}
9
9
  }
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>343/343</span>
28
+ <span class='fraction'>347/347</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>343/343</span>
49
+ <span class='fraction'>347/347</span>
50
50
  </div>
51
51
 
52
52
 
@@ -99,13 +99,13 @@
99
99
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
100
100
  </td>
101
101
  <td data-value="100" class="pct high">100%</td>
102
- <td data-value="336" class="abs high">336/336</td>
102
+ <td data-value="340" class="abs high">340/340</td>
103
103
  <td data-value="100" class="pct high">100%</td>
104
104
  <td data-value="51" class="abs high">51/51</td>
105
105
  <td data-value="100" class="pct high">100%</td>
106
106
  <td data-value="19" class="abs high">19/19</td>
107
107
  <td data-value="100" class="pct high">100%</td>
108
- <td data-value="336" class="abs high">336/336</td>
108
+ <td data-value="340" class="abs high">340/340</td>
109
109
  </tr>
110
110
 
111
111
  </tbody>
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at 2025-02-24T19:37:19.149Z
119
+ at 2025-02-24T20:15:05.693Z
120
120
  </div>
121
121
  <script src="prettify.js"></script>
122
122
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at 2025-02-24T19:37:19.149Z
104
+ at 2025-02-24T20:15:05.693Z
105
105
  </div>
106
106
  <script src="../prettify.js"></script>
107
107
  <script>
@@ -136,7 +136,7 @@ export { snowball, avalanche, sortLoans } from './lib/sorting';
136
136
  <div class='footer quiet pad2 space-top1 center small'>
137
137
  Code coverage generated by
138
138
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
139
- at 2025-02-24T19:37:19.149Z
139
+ at 2025-02-24T20:15:05.693Z
140
140
  </div>
141
141
  <script src="../prettify.js"></script>
142
142
  <script>
@@ -70,7 +70,7 @@
70
70
  <div class='footer quiet pad2 space-top1 center small'>
71
71
  Code coverage generated by
72
72
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
73
- at 2025-02-24T19:37:19.149Z
73
+ at 2025-02-24T20:15:05.693Z
74
74
  </div>
75
75
  <script src="../../prettify.js"></script>
76
76
  <script>
@@ -91,7 +91,7 @@
91
91
  <div class='footer quiet pad2 space-top1 center small'>
92
92
  Code coverage generated by
93
93
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
94
- at 2025-02-24T19:37:19.149Z
94
+ at 2025-02-24T20:15:05.693Z
95
95
  </div>
96
96
  <script src="../../prettify.js"></script>
97
97
  <script>
@@ -331,7 +331,7 @@ export function numPaymentsToZero(
331
331
  <div class='footer quiet pad2 space-top1 center small'>
332
332
  Code coverage generated by
333
333
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
334
- at 2025-02-24T19:37:19.149Z
334
+ at 2025-02-24T20:15:05.693Z
335
335
  </div>
336
336
  <script src="../../prettify.js"></script>
337
337
  <script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>336/336</span>
28
+ <span class='fraction'>340/340</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>336/336</span>
49
+ <span class='fraction'>340/340</span>
50
50
  </div>
51
51
 
52
52
 
@@ -159,13 +159,13 @@
159
159
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
160
160
  </td>
161
161
  <td data-value="100" class="pct high">100%</td>
162
- <td data-value="192" class="abs high">192/192</td>
162
+ <td data-value="196" class="abs high">196/196</td>
163
163
  <td data-value="100" class="pct high">100%</td>
164
164
  <td data-value="26" class="abs high">26/26</td>
165
165
  <td data-value="100" class="pct high">100%</td>
166
166
  <td data-value="4" class="abs high">4/4</td>
167
167
  <td data-value="100" class="pct high">100%</td>
168
- <td data-value="192" class="abs high">192/192</td>
168
+ <td data-value="196" class="abs high">196/196</td>
169
169
  </tr>
170
170
 
171
171
  <tr>
@@ -191,7 +191,7 @@
191
191
  <div class='footer quiet pad2 space-top1 center small'>
192
192
  Code coverage generated by
193
193
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
194
- at 2025-02-24T19:37:19.149Z
194
+ at 2025-02-24T20:15:05.693Z
195
195
  </div>
196
196
  <script src="../../prettify.js"></script>
197
197
  <script>
@@ -604,7 +604,7 @@ export class Loan implements ILoan {
604
604
  <div class='footer quiet pad2 space-top1 center small'>
605
605
  Code coverage generated by
606
606
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
607
- at 2025-02-24T19:37:19.149Z
607
+ at 2025-02-24T20:15:05.693Z
608
608
  </div>
609
609
  <script src="../../prettify.js"></script>
610
610
  <script>
@@ -118,7 +118,7 @@ export type LoanPrincipals = Record&lt;string, number&gt;;
118
118
  <div class='footer quiet pad2 space-top1 center small'>
119
119
  Code coverage generated by
120
120
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
121
- at 2025-02-24T19:37:19.149Z
121
+ at 2025-02-24T20:15:05.693Z
122
122
  </div>
123
123
  <script src="../../prettify.js"></script>
124
124
  <script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>192/192</span>
28
+ <span class='fraction'>196/196</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>192/192</span>
49
+ <span class='fraction'>196/196</span>
50
50
  </div>
51
51
 
52
52
 
@@ -326,7 +326,11 @@
326
326
  <a name='L261'></a><a href='#L261'>261</a>
327
327
  <a name='L262'></a><a href='#L262'>262</a>
328
328
  <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
329
+ <a name='L264'></a><a href='#L264'>264</a>
330
+ <a name='L265'></a><a href='#L265'>265</a>
331
+ <a name='L266'></a><a href='#L266'>266</a>
332
+ <a name='L267'></a><a href='#L267'>267</a>
333
+ <a name='L268'></a><a href='#L268'>268</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
330
334
  <span class="cline-any cline-neutral">&nbsp;</span>
331
335
  <span class="cline-any cline-neutral">&nbsp;</span>
332
336
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -385,6 +389,10 @@
385
389
  <span class="cline-any cline-yes">6x</span>
386
390
  <span class="cline-any cline-yes">6x</span>
387
391
  <span class="cline-any cline-yes">3x</span>
392
+ <span class="cline-any cline-yes">3x</span>
393
+ <span class="cline-any cline-yes">3x</span>
394
+ <span class="cline-any cline-yes">3x</span>
395
+ <span class="cline-any cline-yes">3x</span>
388
396
  <span class="cline-any cline-yes">6x</span>
389
397
  <span class="cline-any cline-yes">3x</span>
390
398
  <span class="cline-any cline-yes">6x</span>
@@ -647,7 +655,11 @@ export function determineCarryover(
647
655
  ): number {
648
656
  switch (true) {
649
657
  case reduceMinimum:
650
- return Math.max(loanPayment - loan.minPayment - loanFinalPayment, 0);
658
+ return Math.max(loanPayment - Math.max(
659
+ Math.max(loan.minPayment - loanFinalPayment, 0),
660
+ loanFinalPayment,
661
+ ),
662
+ 0);
651
663
  default:
652
664
  return Math.max(loanPayment - loanFinalPayment, 0);
653
665
  }
@@ -859,7 +871,7 @@ export function payLoans(
859
871
  <div class='footer quiet pad2 space-top1 center small'>
860
872
  Code coverage generated by
861
873
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
862
- at 2025-02-24T19:37:19.149Z
874
+ at 2025-02-24T20:15:05.693Z
863
875
  </div>
864
876
  <script src="../../prettify.js"></script>
865
877
  <script>
@@ -193,7 +193,7 @@ export function sortLoans(loans: ILoan[], sortFunction: sortFunction): ILoan[] {
193
193
  <div class='footer quiet pad2 space-top1 center small'>
194
194
  Code coverage generated by
195
195
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
196
- at 2025-02-24T19:37:19.149Z
196
+ at 2025-02-24T20:15:05.693Z
197
197
  </div>
198
198
  <script src="../../prettify.js"></script>
199
199
  <script>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "moneyfunx",
3
3
  "type": "module",
4
- "version": "1.3.2",
4
+ "version": "1.3.3",
5
5
  "description": "MoneyFunx is a small library of functions for financial computations, with a focus on personal finance",
6
6
  "main": "build/index.js",
7
7
  "types": "build/index.d.ts",
@@ -56,7 +56,11 @@ export function determineCarryover(
56
56
  ): number {
57
57
  switch (true) {
58
58
  case reduceMinimum:
59
- return Math.max(loanPayment - loan.minPayment - loanFinalPayment, 0);
59
+ return Math.max(loanPayment - Math.max(
60
+ Math.max(loan.minPayment - loanFinalPayment, 0),
61
+ loanFinalPayment,
62
+ ),
63
+ 0);
60
64
  default:
61
65
  return Math.max(loanPayment - loanFinalPayment, 0);
62
66
  }