lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [lmi] master 18fb647: Update AZ premium tax for 2021 relea


From: Greg Chicares
Subject: [lmi-commits] [lmi] master 18fb647: Update AZ premium tax for 2021 release
Date: Tue, 1 Dec 2020 17:26:05 -0500 (EST)

branch: master
commit 18fb6475f5c9471ccafc3f9557d0c11bb3d2fa86
Author: Gregory W. Chicares <gchicares@sbcglobal.net>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>

    Update AZ premium tax for 2021 release
    
    This is the last change specified in AZ Regulatory Bulletin 2016-02.
    That Bulletin specifies changes in premium-tax rates through 2025;
    see Arizona Revised Statutes Title 20, Insurance ยง 20-224 (B)(4)(f):
      "For premiums received in calendar year 2021 and for each subsequent
      calendar year, 1.70 percent"
    so no further change is contemplated to the rate committed here.
    
    The performance benchmarks changed insignificantly (they could hardly do
    otherwise). Incidentally, committing them elicited this:
     rewrite Speed_gcc_i686-w64-mingw32 (84%)
     rewrite Speed_gcc_x86_64-pc-linux-gnu (88%)
     rewrite Speed_gcc_x86_64-w64-mingw32 (88%)
    which is curious: the percentages apparently should be the dissimilarity
    index (number of changed lines divided by number of total lines,
    truncated to an integral percentage), but all three files have six
    changed lines out of seven, so "85%" would be expected for each. Of
    course it's no real problem that git actually reports slightly different
    dissimilarities here than its documentation implies.
---
 Speed_gcc_i686-w64-mingw32    | 12 ++++++------
 Speed_gcc_x86_64-pc-linux-gnu | 12 ++++++------
 Speed_gcc_x86_64-w64-mingw32  | 12 ++++++------
 premium_tax.cpp               | 28 +---------------------------
 4 files changed, 19 insertions(+), 45 deletions(-)

diff --git a/Speed_gcc_i686-w64-mingw32 b/Speed_gcc_i686-w64-mingw32
index 418d9b9..cde08ec 100644
--- a/Speed_gcc_i686-w64-mingw32
+++ b/Speed_gcc_i686-w64-mingw32
@@ -1,7 +1,7 @@
 Test speed:
-  naic, no solve      : 5.213e-02 s mean;      51862 us least of  20 runs
-  naic, specamt solve : 9.253e-02 s mean;      92381 us least of  11 runs
-  naic, ee prem solve : 8.511e-02 s mean;      84836 us least of  12 runs
-  finra, no solve     : 2.189e-02 s mean;      21725 us least of  46 runs
-  finra, specamt solve: 5.914e-02 s mean;      58898 us least of  17 runs
-  finra, ee prem solve: 5.502e-02 s mean;      54818 us least of  19 runs
+  naic, no solve      : 5.230e-02 s mean;      52006 us least of  20 runs
+  naic, specamt solve : 9.289e-02 s mean;      92267 us least of  11 runs
+  naic, ee prem solve : 8.522e-02 s mean;      84911 us least of  12 runs
+  finra, no solve     : 2.203e-02 s mean;      21735 us least of  46 runs
+  finra, specamt solve: 5.923e-02 s mean;      59036 us least of  17 runs
+  finra, ee prem solve: 5.509e-02 s mean;      54919 us least of  19 runs
diff --git a/Speed_gcc_x86_64-pc-linux-gnu b/Speed_gcc_x86_64-pc-linux-gnu
index 5cd14b4..9db64ad 100644
--- a/Speed_gcc_x86_64-pc-linux-gnu
+++ b/Speed_gcc_x86_64-pc-linux-gnu
@@ -1,7 +1,7 @@
 Test speed:
-  naic, no solve      : 2.012e-02 s mean;      19026 us least of  50 runs
-  naic, specamt solve : 3.338e-02 s mean;      32766 us least of  30 runs
-  naic, ee prem solve : 3.073e-02 s mean;      30324 us least of  33 runs
-  finra, no solve     : 7.956e-03 s mean;       7562 us least of 100 runs
-  finra, specamt solve: 2.084e-02 s mean;      20269 us least of  48 runs
-  finra, ee prem solve: 1.945e-02 s mean;      18905 us least of  52 runs
+  naic, no solve      : 1.970e-02 s mean;      18965 us least of  51 runs
+  naic, specamt solve : 3.330e-02 s mean;      32647 us least of  31 runs
+  naic, ee prem solve : 3.066e-02 s mean;      30007 us least of  33 runs
+  finra, no solve     : 7.952e-03 s mean;       7718 us least of 100 runs
+  finra, specamt solve: 2.085e-02 s mean;      20213 us least of  48 runs
+  finra, ee prem solve: 1.947e-02 s mean;      18808 us least of  52 runs
diff --git a/Speed_gcc_x86_64-w64-mingw32 b/Speed_gcc_x86_64-w64-mingw32
index a7b2105..d81dbb9 100644
--- a/Speed_gcc_x86_64-w64-mingw32
+++ b/Speed_gcc_x86_64-w64-mingw32
@@ -1,7 +1,7 @@
 Test speed:
-  naic, no solve      : 2.665e-02 s mean;      26499 us least of  38 runs
-  naic, specamt solve : 4.183e-02 s mean;      41638 us least of  24 runs
-  naic, ee prem solve : 4.048e-02 s mean;      38911 us least of  25 runs
-  finra, no solve     : 1.491e-02 s mean;      14756 us least of  68 runs
-  finra, specamt solve: 2.881e-02 s mean;      28627 us least of  35 runs
-  finra, ee prem solve: 2.727e-02 s mean;      27162 us least of  37 runs
+  naic, no solve      : 2.687e-02 s mean;      26618 us least of  38 runs
+  naic, specamt solve : 4.202e-02 s mean;      41770 us least of  24 runs
+  naic, ee prem solve : 3.920e-02 s mean;      38984 us least of  26 runs
+  finra, no solve     : 1.497e-02 s mean;      14829 us least of  67 runs
+  finra, specamt solve: 2.905e-02 s mean;      28797 us least of  35 runs
+  finra, ee prem solve: 2.746e-02 s mean;      27293 us least of  37 runs
diff --git a/premium_tax.cpp b/premium_tax.cpp
index f9df537..e892c9d 100644
--- a/premium_tax.cpp
+++ b/premium_tax.cpp
@@ -358,32 +358,6 @@ double premium_tax::calculate_load(double payment, 
stratified_charges const& str
     return z;
 }
 
-/// Suggest updating rates each year.
-///
-/// AZ rates vary by calendar year:
-///   
https://insurance.az.gov/sites/default/files/documents/files/RegulatoryBulletin2016-02_20160705.pdf
-///   2017 0.0190
-///   2018 0.0185
-///   2019 0.0180
-///   2020 0.0175
-///   2021 0.0170
-///
-/// Without this assertion, it's too easy to forget to update this
-/// rate when building lmi in December for release in January. Each
-/// year, expunge the particular assertion that failed, after updating
-/// the AZ rate manually. It is better not to make the rate update
-/// itself automatically because the schedule of future rates may have
-/// changed in the meantime (and actually did, in the 20170508T1544Z
-/// commit). Expunge this block comment when the last assertion is
-/// expunged.
-///
-/// Implementation notes:
-///  - __DATE__[0] is month-name's first letter; D = December
-///  - __DATE__[10] is last digit of a four-digit year
-
-static_assert('D' != __DATE__[0] || '0' != __DATE__[10]);
-static_assert('D' != __DATE__[0] || '1' != __DATE__[10]);
-
 /// Premium-tax rates for life insurance without retaliation.
 ///
 /// A single table suffices for every domicile, because retaliation is
@@ -403,7 +377,7 @@ std::vector<double> const& 
premium_tax_rates_for_life_insurance()
     static int const n = 53;
     static double const d[n] =
         //   AL       AK       AZ       AR       CA       CO       CT
-        {0.0230,  tiered,  0.0175,  0.0250,  0.0235,  0.0200,  0.0175
+        {0.0230,  tiered,  0.0170,  0.0250,  0.0235,  0.0200,  0.0175
         //   DE       DC       FL       GA       HI       ID
         ,0.0200,  0.0175,  0.0175,  0.0225,  0.0275,  0.0150
         //   IL       IN       IA       KS       KY       LA       ME



reply via email to

[Prev in Thread] Current Thread [Next in Thread]