Developing software requires to model the world. We, we developers, generally assume that models are regular. It always comes as a surprise when they are not. All models are wrong, but some are useful. When it comes to dates, a calendar is a model of organizing time into days, weeks, months, and years. A date references a specific day in a specific calendar. During the course of history, there has been changes to calendars e.g. from one calendar to another, or even within a calendar. In