PASS: all 32 CMP/year/baseline cases computed by the exact serialized SC14 release functions. PASS: parameters agree across serialized controls, SC14 registry, candidate_mps_500.csv, and tuning summary. PASS: all eight original CMP29/CMP45 answers reproduced. Maximum absolute difference from original advice: 4.43378667114e-12 kt. Maximum explicit-formula versus serialized-function difference: 2.27373675443e-13 kt. Maximum index metric difference from previous calculation: 2.22044604925e-15. PASS: 40 additional full-rule branch checks, maximum difference 2.27373675443e-13 kt. Full-precision 2027 constrained advice is the prior TAC in every 2028 calculation. For x=(I-lim)/(trigger-lim), power-ramp raw advice is min at I<=lim; min+(target-min)*x^2.5 below trigger; target*(0.2+0.8*x)^0.6 at/above trigger. Hockeystick raw advice is min at I<=lim; min+(target-min)*x below trigger; target at/above trigger. For both families: final advice = max(prior*dlow,min(prior*dupp,raw advice)). All requested cases are below the HCR triggers, with positive finite observations and documented missing-index handling. Optional display-loading warnings suppressed while reading release objects; calculations and checks completed without warnings or errors. cmp tac_2026_kt advice_year metric unconstrained_tac_kt 1: CMP29 1675 2027 1.089834039844 1115.635994533 2: CMP29 1675 2028 0.953321047631 999.010080198 3: CMP29 1092 2027 1.089834039844 1115.635994533 4: CMP29 1092 2028 0.953321047631 999.010080198 5: CMP45 1675 2027 1.089834039844 1142.567077161 6: CMP45 1675 2028 0.953321047631 1022.226961733 7: CMP45 1092 2027 1.089834039844 1142.567077161 8: CMP45 1092 2028 0.953321047631 1022.226961733 9: CMP43 1675 2027 1.089834039844 1201.925381730 10: CMP43 1675 2028 0.953321047631 1073.398863892 11: CMP43 1092 2027 1.089834039844 1201.925381730 12: CMP43 1092 2028 0.953321047631 1073.398863892 13: CMP47 1675 2027 1.089834039844 1171.269941542 14: CMP47 1675 2028 0.953321047631 1046.971269685 15: CMP47 1092 2027 1.089834039844 1171.269941542 16: CMP47 1092 2028 0.953321047631 1046.971269685 17: CMP32 1675 2027 1.089834039844 676.975927164 18: CMP32 1675 2028 0.953321047631 550.830261094 19: CMP32 1092 2027 1.089834039844 676.975927164 20: CMP32 1092 2028 0.953321047631 550.830261094 21: CMP44 1675 2027 1.089834039844 703.962836720 22: CMP44 1675 2028 0.953321047631 569.452347441 23: CMP44 1092 2027 1.089834039844 703.962836720 24: CMP44 1092 2028 0.953321047631 569.452347441 25: CMP46 1675 2027 1.089834039844 687.480759062 26: CMP46 1675 2028 0.953321047631 558.079030586 27: CMP46 1092 2027 1.089834039844 687.480759062 28: CMP46 1092 2028 0.953321047631 558.079030586 29: CMP48 1675 2027 1.089834039844 721.370495731 30: CMP48 1675 2028 0.953321047631 581.464353800 31: CMP48 1092 2027 1.089834039844 721.370495731 32: CMP48 1092 2028 0.953321047631 581.464353800 cmp tac_2026_kt advice_year metric unconstrained_tac_kt tac_advice_kt binding_rule 1: 1423.750000000 15% maximum decrease 2: 1210.187500000 15% maximum decrease 3: 1115.635994533 index-based rule 4: 999.010080198 index-based rule 5: 1423.750000000 15% maximum decrease 6: 1210.187500000 15% maximum decrease 7: 1142.567077161 index-based rule 8: 1022.226961733 index-based rule 9: 1340.000000000 20% maximum decrease 10: 1073.398863892 index-based rule 11: 1201.925381730 index-based rule 12: 1073.398863892 index-based rule 13: 1172.500000000 30% maximum decrease 14: 1046.971269685 index-based rule 15: 1171.269941542 index-based rule 16: 1046.971269685 index-based rule 17: 1423.750000000 15% maximum decrease 18: 1210.187500000 15% maximum decrease 19: 928.200000000 15% maximum decrease 20: 788.970000000 15% maximum decrease 21: 1340.000000000 20% maximum decrease 22: 1072.000000000 20% maximum decrease 23: 873.600000000 20% maximum decrease 24: 698.880000000 20% maximum decrease 25: 1423.750000000 15% maximum decrease 26: 1210.187500000 15% maximum decrease 27: 928.200000000 15% maximum decrease 28: 788.970000000 15% maximum decrease 29: 1172.500000000 30% maximum decrease 30: 820.750000000 30% maximum decrease 31: 764.400000000 30% maximum decrease 32: 581.464353800 index-based rule tac_advice_kt binding_rule R version 4.6.1 (2026-06-24) Platform: aarch64-apple-darwin23 Running under: macOS Tahoe 26.6.2 Matrix products: default BLAS: /Library/Frameworks/R.framework/Versions/4.6/Resources/lib/libRblas.0.dylib LAPACK: /Library/Frameworks/R.framework/Versions/4.6/Resources/lib/libRlapack.dylib; LAPACK version 3.12.1 locale: [1] C.UTF-8/C.UTF-8/C.UTF-8/C/C.UTF-8/C.UTF-8 time zone: Atlantic/Faroe tzcode source: internal attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] mse_2.4.8.9004 progressr_1.0.0 future_1.70.0 FLasher_0.7.3 [5] FLFishery_0.4.0 ggplotFL_2.7.2 patchwork_1.3.2 ggrepel_0.9.8 [9] ggplot2_4.0.3 FLCore_2.6.30 iterators_1.0.14 lattice_0.22-9 [13] data.table_1.18.4 loaded via a namespace (and not attached): [1] Matrix_1.7-5 future.apply_1.20.2 gtable_0.3.6 [4] dplyr_1.2.1 compiler_4.6.1 tidyselect_1.2.1 [7] Rcpp_1.1.2 parallel_4.6.1 gridExtra_2.3.1 [10] globals_0.19.1 scales_1.4.0 R6_2.6.1 [13] generics_0.1.4 MASS_7.3-65 tibble_3.3.1 [16] pillar_1.11.1 RColorBrewer_1.1-3 rlang_1.3.0 [19] S7_0.2.2 cli_3.6.6 withr_3.0.3 [22] magrittr_2.0.5 FLBRP_2.5.10 foreach_1.5.2 [25] digest_0.6.39 grid_4.6.1 doFuture_1.2.2 [28] cowplot_1.2.0 lifecycle_1.0.5 vctrs_0.7.3 [31] glue_1.8.1 listenv_1.0.0 farver_2.1.2 [34] codetools_0.2-20 stats4_4.6.1 parallelly_1.48.0 [37] tools_4.6.1 pkgconfig_2.0.3