*30-Dec*Krasner
6-JanGazula
*13-Jan*Krasner
20-JanL. Mikael
27-JanJoshi
3-FebN. Mikael
10-FebFanucci
*17-Feb*Gazula
*24-Feb*L. Mikael
3-MarKafina
10-MarN. Mikael
17-MarKrasner
24-MarJoshi
31-MarGazula
7-AprKafina
*14-Apr*N. Mikael
*21-Apr*Joshi
28-AprFanucci
5-MayL. Mikael
12-MayKrasner
19-MayKafina
*26-May*Fanucci
2-JunGazula
9-JunJoshi
16-JunN. Mikael
23-JunL. Mikael
30-JunFanucci
*4-Jul*Kafina
7-JulGazula
14-JulKrasner
21-JulJoshi
28-JulKafina
4-AugL. Mikael
11-AugN. Mikael
18-AugFanucci
25-AugGazula
*1-Sep*Kafina
8-SepJoshi
15-SepL. Mikael
22-SepN. Mikael
29-SepFanucci
*6-Oct*Gazula
13-OctJoshi
20-OctKafina
27-OctN. Mikael
3-NovKrasner
*10-Nov*L. Mikael
17-NovFanucci
*22-Nov*N. Mikael
*24-Nov*Joshi
1-DecKafina
8-DecKrasner
15-DecL. Mikael
22-DecGazula
*24-Dec*Fanucci
*29-Dec*Kafina
*31-Dec*Krasner
2019 rotation starts with Krasner
Who is up first for the year?

hi
012345678910111213
0*31-Dec**30-Dec**31-Dec**1-Jan**1-Jan**1-Jan**1-Jan**31-Dec**30-Dec**31-Dec**1-Jan**1-Jan**1-Jan**1-Jan*
17-Jan6-Jan5-Jan4-Jan3-Jan9-Jan8-Jan7-Jan6-Jan5-Jan4-Jan3-Jan9-Jan8-Jan
2*14-Jan**13-Jan*12-Jan11-Jan10-Jan*16-Jan**15-Jan**14-Jan**13-Jan*12-Jan11-Jan10-Jan*16-Jan**15-Jan*
321-Jan20-Jan*19-Jan**18-Jan**17-Jan*23-Jan22-Jan21-Jan20-Jan*19-Jan**18-Jan**17-Jan*23-Jan22-Jan
428-Jan27-Jan26-Jan25-Jan24-Jan30-Jan29-Jan28-Jan27-Jan26-Jan25-Jan24-Jan30-Jan29-Jan
54-Feb3-Feb2-Feb1-Feb31-Jan6-Feb5-Feb4-Feb3-Feb2-Feb1-Feb31-Jan6-Feb5-Feb
611-Feb10-Feb9-Feb8-Feb7-Feb*13-Feb*12-Feb11-Feb10-Feb9-Feb8-Feb7-Feb*13-Feb*12-Feb
7*18-Feb**17-Feb**16-Feb**15-Feb**14-Feb**20-Feb**19-Feb**18-Jan**17-Feb**16-Feb**15-Feb**14-Feb**20-Feb**19-Feb*
8*25-Feb**24-Feb**23-Feb**22-Feb**21-Feb*27-Feb*26-Feb**25-Jan**24-Feb**23-Feb**22-Feb**21-Feb*27-Feb*26-Feb*
94-Mar3-Mar2-Mar1-Mar28-Feb6-Mar5-Mar3-Mar2-Mar1-Mar29-Feb28-Feb5-Mar4-Mar
1011-Mar10-Mar9-Mar8-Mar7-Mar13-Mar12-Mar10-Mar9-Mar8-Mar7-Mar6-Mar12-Mar11-Mar
1118-Mar17-Mar16-Mar15-Mar14-Mar20-Mar19-Mar17-Mar16-Mar15-Mar14-Mar13-Mar19-Mar18-Mar
1225-Mar24-Mar23-Mar22-Mar21-Mar27-Mar26-Mar24-Mar23-Mar22-Mar21-Mar20-Mar26-Mar25-Mar
131-Apr31-Mar30-Mar29-Mar28-Mar3-Apr2-Apr31-Mar30-Mar29-Mar28-Mar27-Mar2-Apr1-Apr
148-Apr7-Apr6-Apr5-Apr4-Apr10-Apr9-Apr7-Apr6-Apr5-Apr4-Apr3-Apr9-Apr8-Apr
15*15-Apr**14-Apr**13-Apr*12-Apr11-Apr*17-Apr**16-Apr**14-Apr**13-Apr*12-Apr11-Apr10-Apr*16-Apr**15-Apr*
16*22-Apr**21-Apr**20-Apr**19-Apr**18-Apr**24-Apr**23-Apr**21-Apr**20-Apr**19-Apr**18-Apr**17-Apr**23-Apr**22-Apr*
1729-Apr28-Apr27-Apr*26-Apr**25-Apr*1-May30-Apr28-Apr27-Apr*26-Apr**25-Apr**24-Apr*30-Apr29-Apr
186-May5-May4-May3-May2-May8-May7-May5-May4-May3-May2-May1-May7-May6-May
1913-May12-May11-May10-May9-May15-May14-May12-May11-May10-May9-May8-May14-May13-May
2020-May19-May18-May17-May16-May22-May21-May19-May18-May17-May16-May15-May21-May20-May
21*27-May**26-May**25-May**24-May**23-May**29-May**28-May**26-May**25-May**24-May**23-May*22-May*28-May**27-May*
223-Jun2-Jun1-Jun31-May30-May5-Jun4-Jun2-Jun1-Jun31-May30-May*29-May*4-Jun3-Jun
2310-Jun9-Jun8-Jun7-Jun6-Jun12-Jun11-Jun9-Jun8-Jun7-Jun6-Jun5-Jun11-Jun10-Jun
2417-Jun16-Jun15-Jun14-Jun13-Jun19-Jun18-Jun16-Jun15-Jun14-Jun13-Jun12-Jun18-Jun17-Jun
2524-Jun23-Jun22-Jun21-Jun20-Jun26-Jun25-Jun23-Jun22-Jun21-Jun20-Jun19-Jun25-Jun24-Jun
261-Jul30-Jun29-Jun28-Jun27-Jun*3-Jul**2-Jul*30-Jun29-Jun28-Jun29-Jun26-Jun*2-Jul*1-Jul
27*3-Jul**4-Jul**4-Jul**4-Jul**4-Jul*10-Jul9-Jul*4-Jul**4-Jul**4-Jul**4-Jul**3-Jul*9-Jul*3-Jul*
288-Jul7-Jul6-Jul12-Jul11-Jul17-Jul16-Jul7-Jul6-Jul12-Jul11-Jul10-Jul16-Jul8-Jul
2915-Jul14-Jul13-Jul19-Jul18-Jul24-Jul23-Jul14-Jul13-Jul19-Jul18-Jul17-Jul23-Jul15-Jul
3022-Jul21-Jul20-Jul26-Jul25-Jul31-Jul30-Jul21-Jul20-Jul26-Jul25-Jul24-Jul30-Jul22-Jul
3129-Jul28-Jul27-Jul2-Aug1-Aug7-Aug6-Aug28-Jul27-Jul2-Aug1-Aug31-Jul6-Aug29-Jul
325-Aug4-Aug3-Aug9-Aug8-Aug14-Aug13-Aug4-Aug3-Aug9-Aug8-Aug7-Aug13-Aug5-Aug
3312-Aug11-Aug10-Aug16-Aug15-Aug21-Aug20-Aug11-Aug10-Aug16-Aug15-Aug14-Aug20-Aug12-Aug
3419-Aug18-Aug17-Aug23-Aug22-Aug28-Aug27-Aug18-Aug17-Aug23-Aug22-Aug21-Aug27-Aug12-Aug
3526-Aug25-Aug24-Aug*30-Aug*29-Aug*4-Sep**3-Sep*25-Aug24-Aug*30-Aug*29-Aug28-Aug*3-Sep*26-Aug
36*2-Sep**1-Sep**31-Aug*6-Sep*5-Sep*11-Sep10-Sep*1-Sep**31-Aug*6-Sep*5-Sep**4-Sep*10-Sep*2-Sep*
379-Sep8-Sep7-Sep13-Sep12-Sep18-Sep17-Sep8-Sep7-Sep13-Sep12-Sep11-Sep17-Sep9-Sep
3816-Sep15-Sep14-Sep20-Sep19-Sep25-Sep24-Sep15-Sep14-Sep20-Sep19-Sep18-Sep24-Sep16-Sep
3923-Sep22-Sep21-Sep27-Sep26-Sep2-Oct1-Oct22-Sep21-Sep27-Sep26-Sep25-Sep1-Oct23-Sep
4030-Sep29-Sep28-Sep4-Oct3-Oct*9-Oct**8-Oct*29-Sep28-Sep4-Oct3-Oct2-Oct*8-Oct*30-Sep
41*7-Oct**6-Oct*5-Oct*11-Oct**10-Oct*16-Oct15-Oct*6-Oct*5-Oct*11-Oct**10-Oct**9-Oct*15-Oct*7-Oct*
4214-Oct13-Oct*12-Oct*18-Oct17-Oct23-Oct22-Oct13-Oct*12-Oct*18-Oct17-Oct16-Oct22-Oct14-Oct
4321-Oct20-Oct19-Oct25-Oct24-Oct30-Oct29-Oct20-Oct19-Oct25-Oct24-Oct23-Oct29-Oct21-Oct
4428-Oct27-Oct26-Oct1-Nov31-Oct6-Nov5-Nov27-Oct26-Oct1-Nov31-Oct30-Oct5-Nov28-Oct
454-Nov3-Nov2-Nov8-Nov7-Nov*11-Nov**11-Nov*3-Nov2-Nov8-Nov7-Nov6-Nov*11-Nov*4-Nov
46*11-Nov**10-Nov**9-Nov**10-Nov**11-Nov*13-Nov19-Nov*10-Nov**9-Nov**10-Nov**11-Nov**11-Nov*19-Nov*11-Nov*
4718-Nov17-Nov16-Nov15-Nov14-Nov20-Nov*24-Nov*17-Nov16-Nov15-Nov14-Nov13-Nov*24-Nov*18-Nov
48*23-Nov**22-Nov*23-Nov22-Nov21-Nov*25-Nov**26-Nov**22-Nov*23-Nov22-Nov21-Nov20-Nov*26-Nov**23-Nov*
49*25-Nov**24-Nov**28-Nov**27-Nov**26-Nov**27-Nov*3-Dec*24-Nov**28-Nov**27-Nov**26-Nov**25-Nov*3-Dec*25-Nov*
502-Dec1-Dec*30-Nov**29-Nov**28-Nov*4-Dec10-Dec1-Dec*30-Nov**29-Nov**28-Nov**27-Nov*10-Dec2-Dec
519-Dec8-Dec7-Dec6-Dec5-Dec11-Dec17-Dec8-Dec7-Dec6-Dec5-Dec4-Dec17-Dec9-Dec
5216-Dec15-Dec14-Dec13-Dec12-Dec18-Dec*24-Dec*15-Dec14-Dec13-Dec12-Dec11-Dec*24-Dec*16-Dec
53*23-Dec*22-Dec21-Dec20-Dec19-Dec*25-Dec*22-Dec21-Dec20-Dec19-Dec18-Dec *23-Dec*
54*24-Dec**25-Dec**25-Dec**25-Dec**24-Dec**25-Dec**25-Dec**25-Dec**25-Dec*
55*29-Dec**28-Dec**27-Dec**29-Dec**28-Dec**27-Dec*
Contact Info
(For any dweebs looking at this page, it's a Vernam cipher)
7951435d204f030d0a070a070e49017f743b7728092c0f0152415d505d081208030b635f755e5752632702094d1218080f7646655b5d424451565715123a7957230a65445d45514d475312071d000c7958656626170c140217011a090600674f765a525f59575f560138765040744f6d55534a40445f57121f0001087e4f4f080b151a0f0a0361535f5d162d00284c6d7b606d6d
795147513a07244c231313110b040d127d75184420230a0d110c444f5c160a19110e7d5a685d5c4259446d23404a10190179576c4c52415c49565d1103103b702102204c4c4b5e5c4e451305041c0a7e5f714c6e310c080b4509070009116e5c755449445f5055452b705554482b1d65445d45514d475217021d060c7d5965660f15081e1209407249505021006b0f0b1f606d6e6c2838
64595f5d2b1b244c2e1d1a0c0e49017f741132010923050717494c5e52191b1002097642755c5445496e24004d5e10190179576c4c5c4250495e561401103b702102204c4c4b5e5c4e451304031c0d7d5c744c6e300c011700531218080f7646655f52444457575617123a7759365565445d45514d4756100a1d01087b596566121b0701021140585f4250272f260309110817134b4f5744383147664c66
7f51434c270165270514000a0649017f743b7a2f0c2e23021400070245090b0709116e5d7d5b4944595d5f452b7d5657512d0a65445d45514d475719051d010f7e5f656627170508474d160a01181879567c4151475f57476f695d5d541866587d5d4d525b515e481203060518442d200914171b444f5c160a19110a7a5a685d56475a446d23404a10190179576c4c5744504957571402103b55250e23050a1329010a0053415f5f50211c35420b000e6d6e6c283b3a
785148180c4f0e1e050107011549017f741132010923050717494c5e52191b10050c7d427d5c5542496e2f0a4c5710190179576c4c504659495053180b103b7b2b03294c4c47595c4e451404011c0f7c5c774c6e34081c474d18050818187a5b764150445a50476f455d5345573c052415241f080d0b034e40535416200a31656d7b606e
7e595d512f0165210d1908010b49017f741132010923050717494c5e52191b10020e7742725b5340496e24004d5e10190f765e6c4c5741594956551104103b702102204c4c4551554e45190b091c087e5f7c4c6e34081c474d160a0118187c5f724156465a50476f4d5f595a592b03050105011a0902010f5d42563147664c66
7c5156416e222c0705170548472865123a7e5e280626095e52415d505d08120307016358725b5652632c080844121806007f4665545d4b4454575518123a735d2b1f201e445a50535f4c010a040015775c725a44782f051f4509050800116e5d755b49405d5753452b71555d546e477254555b495754550c030000086e6528050f130c0827084041435c5d2a412a1e037b606d6e6f
Under the calendar system we use in Western civilization today, there are 14 distinct yearly calendars - one beginning on each weekday for a non-leap year and one beginning on each weekday for a leap year. Because of the Gregorian leap year system in use since 1582, (off by 1/2 second per century), these calendars rotate in a 400-year perpetual cycle. That is, 1613, 2013, 2413, etc., all have the same calendar and each is followed by the same calendar in 1614, 2014, 2414, etc. If you don't cross a century mark (--00), the cycles are 28 years.

So how does this relate to coverage?
Well, it turns out that the number of coverage periods in a year is not the same for each of the 14 calendar types. That number varies from 53 to 56 and depends upon how many "fixed" holidays (Jan 1, Jul 4, Nov 11, Dec 25) fall on Fri/Sat/Sun/Mon vs. Tue/Wed/Thu. Also, over the years, consensus has determined which possible coverage periods are "premium" versus "non-premium." In this regard, premium periods have to been shown to include not only standard holidays, but the weekends following school vacation weeks in February and April. Taking this into account, there are between 39 and 41 non-premium coverage periods and 14 or 15 premium coverage periods in any given year, which means 5 or 6 non-premium coverage periods and 2 or 3 premium coverage periods per doc for an 7-person coverage group. There are 1537 coverage periods in the 28-year cycle (1133 non-premium and 404 premium periods). Since neither 1133 nor 404 are divisible by 7 (coverage docs), neither 28-year premium nor non-premium coverage cycles arithmetically align. Looking at the next cycle up, 400 years, there are 21957 coverage periods, (16185 non-premium and 5772 premium periods). Neither of these is divisible by 7, either. Both cycles, therefore, require 2800 years to re-align, which is the time it will take to get back to 2018, calendar/coverage-wise.

Since a 2800-year cycle is probably too long to wait for mathematically-guaranteed equal coverage distribution, another scheme must be implemented. Several possibilities are illustrated on this page. The left-hand table depicts a straight rotation scheme blind to premium vs. non-premium periods. Since 6 out of the 14 calendar types have 56 (divisible by 7) coverage periods, this leads to "clumping" of premium coverage for certain individuals for certain premium periods, and does not result in equitable premium coverage distribution.

The next simplest scheme would be to "uncouple" premium and non-premium coverage periods, having each rotate separately. For practical purposes, this works fine when neither number of premium periods (14 and 15) is integer divisible by the number of docs (to work perfectly, those quantities would need to be relatively prime), as portrayed in the center table on the linked page. However, with 7 docs, it doesn't. Why? 8 of the 14 calendar types have 14 premium periods, and there are blocks of 4 consecutive years which each have that number of premium periods. Since 14 is divisible by 7, this would result in 1 doc having the same premium period 4 or even 5 years in a row.

A more generalizable solution, which is the one currently implemented, is illustrated in the right-hand table (and on the right on this page). In this scheme, which should be obvious from the table itself, the 1st premium period of the year rotates through the Coverage Group on an 7-year cycle, assuring equitable premium period distribution. The only issues with this scheme are:
(1) In a 28 year cycle, there are only 12 years with a (premium) weekend between Christmas and New Years (Ch+). Obviously, those "extra" weekends cannot be equally apportioned - 5 docs get 2 of them and 2 docs only get 1. Boo hoo. This could be solved by incorporating a "doc offset" for the next 28 year cycle (in 2046) with a different doc.
(2) Due to the uncoupling of premium and non-premium coverage, in a given year, 1 doc could have 6 non-premium and 3 premium coverage periods (total of 9) and another could have 5 non-premium and 2 premium coverage periods (total of 5). This is a hypothetical but not a real concern. Projecting the schedule out for the remainder of this century, the difference in highest and lowest assigned coverage periods is cumulatively only 4 (over 82 years). Check it out.
(3) Since the coverages are uncoupled, a doc could have a premium coverage period immediately preceded or succeeded by a non-premium coverage period. This is easily remedied via some minor arbitrary manual adjustments.

Historical Holiday Coverage
*NYMLKPresPre+PatSpr+MemIndLabColVetThkTh+ChrCh+
2003xxDE????????MK??????JKDE??MK??
2004DE??DE??????MK????MKJKDE??JK
2005DE??JK??????????DE??MKKFDEJK
2006DEMMMKMMJKPCKFDEIBMKPCDEMKJK
2007DEDEMKMMJKMMKFJKVJDEDEVJMKMMMK
2008VJMKMKMMJKJKDEVJKFMKJKNMKFJKJK
2009DEJKKFJKJKNMVJJKDENMMKVJDEMK
2010KFVJMKNMKFMKVJKFDENMJKKFDEJK
2011MKLMKFMKNMSGDEKFSGMKVJNMLMJK
2012VJDEVJKFLMNMMKVJKFDEMKLMDEJKSH
2013DELMNMVJKFMKJKDELMNMVJKFMKJKDE
2014LMNMVJKFMKJKDELMNMVJKFMKJKDELM
2015NMVJKGMKJKDELMNMVJKFKGJKDELM
2016VJKFMKJKDEKGLMNMVJKFMKJKDEKG
2017KFMKJKDEKGLMNMVJKFMKJKDEKGLM