aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-12 11:38:35 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-12 11:38:35 +0200
commite19adb9c7ea369cafe76e7eff50e9248a4a954d0 (patch)
tree57824e121606286ebdf8fff68439986dd3300eae
parent0506388da160a15ceddb0cea1a697d737103d5c4 (diff)
parent36df2bd0af9a555a09334e14b0d89118be1dbbc0 (diff)
downloadcolitur-e19adb9c7ea369cafe76e7eff50e9248a4a954d0.tar.gz
colitur-e19adb9c7ea369cafe76e7eff50e9248a4a954d0.zip
Merge branch 'ef-plan3': Plan 3, the EF resolution engine
Adds the rite-parameterised Precedence resolver, Liturgical_day, Rite, and Calendar (year as the primitive, because transfers need whole-year knowledge), the full EF precedence ruleset (RG 91's 28-entry table, occurrence RG 92-95, commemorations RG 108-111, transfers RG 96-98), 322 bootstrapped sanctoral entries, colitur day <year>, and validation layers 3-5. Layer 3 diffs 16801 days against lectio; layer 4 diffs 730 days against missalemeum; layer 5 pins ~30 dates on the known-tricky years. Both comparison layers carry cited allow-lists that name the governing RG paragraph and which engine is right. The oracle layer earned its place immediately: Holy Thursday was violet in colitur and lectio alike, because colitur's data was bootstrapped from lectio and both carried the same error. Only an independent source could see it. RG 128(b) and RG 122 name it white.
-rw-r--r--CLAUDE.md162
-rw-r--r--README.md9
-rw-r--r--bin/main.ml137
-rw-r--r--data/ef/adjustments.sexp13
-rw-r--r--data/ef/expected-divergences-missalemeum.sexp105
-rw-r--r--data/ef/expected-divergences.sexp74
-rw-r--r--data/ef/sanctoral.sexp2644
-rw-r--r--dune24
-rw-r--r--lib/kernel/calendar.ml387
-rw-r--r--lib/kernel/calendar.mli72
-rw-r--r--lib/kernel/celebration.ml13
-rw-r--r--lib/kernel/celebration.mli12
-rw-r--r--lib/kernel/liturgical_day.ml27
-rw-r--r--lib/kernel/liturgical_day.mli25
-rw-r--r--lib/kernel/precedence.ml69
-rw-r--r--lib/kernel/precedence.mli78
-rw-r--r--lib/kernel/rite.ml14
-rw-r--r--lib/kernel/rite.mli62
-rw-r--r--lib/kernel/slug.ml8
-rw-r--r--lib/kernel/validate.ml194
-rw-r--r--lib/kernel/validate.mli79
-rw-r--r--lib/kernel/vocab.ml25
-rw-r--r--lib/kernel/vocab.mli25
-rw-r--r--lib/rites/rite_ef/precedence_ef.ml893
-rw-r--r--lib/rites/rite_ef/precedence_ef.mli260
-rw-r--r--lib/rites/rite_ef/rite_ef.ml24
-rw-r--r--lib/rites/rite_ef/rite_ef.mli35
-rw-r--r--lib/rites/rite_ef/temporal_ef.ml176
-rw-r--r--lib/rites/rite_ef/vocab_ef.ml5
-rw-r--r--test/cli.t80
-rw-r--r--test/dune9
-rw-r--r--test/fixtures/lectio-ef-2005-2050.provenance29
-rw-r--r--test/fixtures/lectio-ef-2005-2050.txt16801
-rw-r--r--test/fixtures/missalemeum-ef-2026-2027.provenance39
-rw-r--r--test/fixtures/missalemeum-ef-2026-2027.txt730
-rw-r--r--test/test_calendar.ml447
-rw-r--r--test/test_colitur.ml4
-rw-r--r--test/test_differential.ml585
-rw-r--r--test/test_golden.ml511
-rw-r--r--test/test_names.ml15
-rw-r--r--test/test_oracle.ml615
-rw-r--r--test/test_precedence.ml108
-rw-r--r--test/test_precedence_ef.ml1183
-rw-r--r--test/test_rite_ef.ml265
-rw-r--r--test/test_sanctoral_ef.ml115
-rw-r--r--test/test_temporal_ef.ml157
-rw-r--r--test/test_validate.ml448
-rw-r--r--tools/bootstrap_sanctoral.ml235
-rw-r--r--tools/dune10
-rw-r--r--tools/extract_missalemeum_oracle.py87
50 files changed, 27952 insertions, 172 deletions
diff --git a/CLAUDE.md b/CLAUDE.md
index cb8b0f4..25d3339 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -102,52 +102,146 @@ overlays**.
4. **Oracle cross-check** — vs missalemeum (EF) / litcal (OF) in lectio's `sources/`.
5. **Golden regression** — landmark + known-tricky years pinned.
-## Current state (Plan 1 DONE — verify with `git log`)
+**Status: all five layers are built and green.** Layer 2 is exhaustively clean over
+all 8 417 years (`COLITUR_EXHAUSTIVE_SWEEP=1 dune test --force`, ~50 s; the default
+suite samples). Layer 3 compares 16 801 days against lectio; layer 4, 730 days
+against missalemeum; layer 5 pins ~30 dates.
-Branch **`ef-pilot-plan1`**, ~6 commits. The Computus **walking skeleton** is built
-and green:
-- `lib/kernel/date.ml[i]` — `Date`: opaque rata-die (Howard Hinnant civil↔days, as
- in lectio); `make ~year ~month ~day : (t,string) result` (validates, 1583..9999);
- `year/month/day/weekday/to_rata/of_rata/add_days/compare`.
-- `lib/kernel/computus.ml[i]` — `gregorian_easter`, `julian_easter`, and anchors
- `ash_wednesday/palm_sunday/ascension/pentecost/corpus_christi`.
-- `bin/main.ml` — CLI `colitur easter <year>` (prints Easter + anchors; bad year → exit 2).
-- `test/` — alcotest unit + qcheck property + a `cli.t` cram test. All green.
-- Build: dune 3.0, **OCaml 5.2.0 project-local opam switch** (`./_opam` already
- present), deps `dune alcotest qcheck qcheck-alcotest`, `cram enable`,
- `generate_opam_files`. License **AGPL-3.0-or-later**.
+**Know what each layer cannot see** — this is load-bearing, not a caveat:
+- Layer 3 **never compares commemorations** (lectio has no RG 111 admission logic,
+ so its "others" are losing candidates, not the admitted set) and never compares
+ the week column. It also **shares colitur's own lineage**: colitur's data was
+ bootstrapped from lectio, so an error both inherited is invisible here. Proven:
+ Holy Thursday was violet in both because both were wrong.
+- Layer 4 is **two years wide** and compares rank, colour-membership and
+ commemoration presence/count — **never celebration identity**.
+- Together they sleep through **commemoration identity**: reversing `admit`'s
+ dignity sort, so the engine admits the *worst* commemorations, leaves all eight
+ differential and oracle assertions green across 17 531 days.
-`sexplib`/`ppx_sexp_conv` and a Mustache lib are **not yet added** — they arrive
-with the data model in Plan 2/3.
+## Current state (Plans 1–3 DONE — verify with `git log`)
+
+**Plans 1 + 2 are on `main` (35 commits). Plan 3 is branch `ef-plan3`, 42 commits,
+259 tests green** (260 with the exhaustive sweep). The kernel, the **complete EF
+temporal cycle**, the **resolution engine**, the **sanctoral data**, and **all five
+validation layers** are built. `colitur day <year>` emits a full resolved year.
+
+**Kernel** (`lib/kernel`, pure, total, 1583–9999):
+- `date.ml[i]` — opaque rata-die (Hinnant civil↔days); validated `make`;
+ `to_iso8601`/`of_iso8601`; sexp form is an ISO-8601 atom that revalidates.
+- `computus.ml[i]` — `gregorian_easter`, `julian_easter`, Easter anchors.
+- Shared vocabulary: `colour` · `subject` (Lord/BVM/saint/temporal; named
+ `Subject` because `class` is an OCaml keyword) · `slug` · `lang` · `names`
+ (open lang-keyed assoc, canonically sorted) · `citation` · `date_spec`.
+- Rite-parametric: `vocab` (operations record) · `celebration` · `temporal`
+ (+ the `RITE` module type). **`Celebration.t` takes one parameter (`'r`)**,
+ not two — season is contextual to the day, not intrinsic to a celebration.
+- `layer` (slug-canonical, date-indexed once) · `overlay` (add/suppress/replace/
+ field-edit, ordered, last-writer-wins, **diagnostics not silence or failure**)
+ · `record` (flat all-string output view) · `validate` (the invariant harness).
+- **Plan 3 additions**: `precedence` (the rite-parameterised resolver — a rite
+ supplies `band` / `disposition` / `admit`) · `liturgical_day` (the result
+ schema) · `rite` (everything a rite supplies, bundled, so mismatched assembly
+ is unrepresentable) · `calendar` (**year is the primitive**, day derived —
+ transfers need whole-year knowledge, so per-date resolution cannot be correct).
+
+**EF rite module** (`lib/rites/rite_ef`): `vocab_ef` (8 RG-cited seasons, 4
+classes) · `temporal_ef` (season boundaries RG 71–77, named feasts, Sunday slugs,
+week numbering, the resumed-Sunday tail, ferias, four Ember sets, Rogations,
+`anchors`) · `precedence_ef` (the full RG 91 28-entry table, occurrence RG 92–95,
+commemorations RG 108–111, transfers RG 96–98) · `rite_ef` (the bundle).
+
+**Data**: `data/ef/sanctoral.sexp` (322 entries, bootstrapped from lectio, SHA-256
+in its provenance header) · `data/ef/adjustments.sexp` (overlay) · two cited
+allow-lists, `expected-divergences.sexp` (11 entries, vs lectio) and
+`expected-divergences-missalemeum.sexp` (14, vs the oracle). Fixtures live in
+`test/fixtures/` with asserted SHA-256s.
+
+**CLI**: `colitur easter <year>`, `temporal <year>`, `day <year>`.
+
+`band` is **provably total** over everything the engine constructs: zero
+`unclassified` across all 8 417 years, for a 28-branch hand-transcribed table.
+Transfers reach a fixed point everywhere — 6 739 out, 6 739 in, zero unconverged.
+
+Deps are `dune alcotest qcheck qcheck-alcotest sexplib ppx_sexp_conv` and are
+**frozen**. A Mustache lib is still **not** added — it arrives with rendering.
+
+**Gotcha that costs an hour if unknown:** `[@@deriving sexp]` on a type with
+primitive fields fails with `Unbound value string_of_sexp` unless the `.ml`
+opens `Sexplib0.Sexp_conv`. Every kernel module with primitive fields does.
+Argument-less variants (`Colour`, `Subject`) don't need it. Do **not** hand-write
+converters instead — that is reserved for `Slug`/`Lang`, whose `private string`
+smart constructors deriving would bypass.
### Build & test
```sh
eval $(opam env) # activate the project-local switch (run from this dir)
dune build
-dune test
-dune exec colitur -- easter 2026
+dune test # fast suite, ~3 s
+COLITUR_EXHAUSTIVE_SWEEP=1 dune test --force # + every year 1583-9999, ~50 s
+dune exec colitur -- day 2026 | head
```
## What's next
-- **Plan 2 — kernel data model & resolution.** `LiturgicalDay` schema; `Overlay`
- (the layer-merge algebra); the `Precedence` framework (rite-parameterized
- resolver); the **EF `temporal`** (seasons per RG 71–77 incl. Septuagesima + the
- cycle); the `Validate` harness. Add `sexplib`/`ppx_sexp_conv`. Each piece
- property-tested. **Brainstorm → writing-plans → execute.**
-- **Plan 3 — EF end-to-end (the pilot).** The EF rite module: `temporal` +
- `precedence` **code** from the register's RG citations (RG 91 table, occurrence
- RG 92–95, commemorations RG 108–111, transfers RG 95–102); sanctoral + lectionary
- **data** bootstrapped from lectio; **plus a minimal output path** (CSV + one
- template) so it produces a real table. Differential vs lectio + oracle vs
- missalemeum green 2005–2050; deep-tail edges checked vs the Missal PDFs.
- **Capture the lessons.**
-- **Then**: OF rite module (proves `RITE` generalizes) → full output/rendering →
- hardening (property sweep to 9999, golden pins, first tag).
+- **Plan 4 — OF rite module** (proves `RITE` generalizes) → the lectionary
+ bootstrap and citations → full output/rendering → hardening and a first tag.
+ **Open Plan 4 with the two behaviour items below**, before OF: they are the
+ places the five layers, taken together, currently sleep through a real error.
+
+### Carried into Plan 4 (read before starting)
+
+The full record — every task's outcome, every ruling, the 21-item deferred-minor
+triage, and the whole-branch review — is in
+`.superpowers/sdd/2026-08-11-colitur-plan3-resolution-engine/progress.md`. That
+workspace is deliberately kept, because it and the register corrections exist
+nowhere in git (`docs/` is gitignored).
+
+**The two behaviour items, in order:**
+
+1. **RG 16(a) — the largest known-wrong output on the branch.** A Feast of the
+ Lord occurring on a II-class Sunday takes the Sunday's place *"cum omnibus
+ iuribus et privilegiis: de dominica, proinde, **nulla fit commemoratio**"*.
+ colitur commemorates the Sunday anyway: **5 996 wrong days over 1583–9999**,
+ 369 of them in 1583–2100. **Zero** instances fall in the oracle window and none
+ is pinned, so all five layers miss it. Needs a signature change — `privilege_of`
+ cannot currently see the winner's `subject`. Register §6.0.
+2. **Commemoration identity is unasserted** outside ~3 test rows (see the layer
+ caveats above). Related: `compare_dignity` breaks same-rank ties
+ **alphabetically**, with no RG warrant, and over 2005–2050 the admission cut
+ falls between two same-rank candidates on **66 days**.
+
+**Structural items, cheapest to fix before OF exists:**
+
+3. **`Record` and `Liturgical_day` both claim to be "the single stable output
+ schema".** `Record` cannot express what the engine now computes (no observed
+ celebration, no commemorations, no transfers), has **no test file**, and is
+ used only by the legacy `colitur temporal` path — `day` hand-formats instead.
+ Plan 2's carried item (add a `cycle` field for OF's Sunday A/B/C and weekday
+ I/II) is still open and now costlier: it must pass through `Temporal.t`, which
+ is embedded in the sexp-derived `Liturgical_day.t`.
+4. **`Temporal.RITE` and `Rite.t` are two competing abstractions.** The module
+ type still exists and `temporal_ef` still satisfies it, but it carries none of
+ `rules`, `anchors`, `season_runs`, `transfer_target` — satisfying it now proves
+ almost nothing. `Rite.t` is the load-bearing one.
+5. **EF-shaped things still in "rite-agnostic" kernel code**: `validate.ml`
+ hardcodes Sunday as the week start; `Liturgical_day.transferred_in` is an
+ `option` justified by RG 96; `Precedence.privilege` is defined by RG 111;
+ `Repose` is EF vocabulary emitted by nothing. Each is one field short of the
+ remedy already applied to `season_runs`.
+
+**Data defects traced upstream into lectio's generator** (register §6): 15 entries
+wrongly marked `Commemoration_only` that are really III-class feasts, clustered
+6 March – 5 April, **six of which produce a wrong observed office** in real years
+(2008-04-02/04/05, 2038-03-06/08/09); four missing entries (Agnes *secundo*,
+Boniface 14 May, Evaristus, Theodore); and `romanus`, which should not exist on
+9 August. lectio's ini is **generated from missalemeum**, so the two are one
+lineage, not two independent sources.
-Still-open research residuals are listed in the register §6 (EF reading-selection
-rules; Christ-the-King/Holy-Family placement; data audit) — verify-while-coding,
-not blockers.
+**Unbuilt, recorded**: the Sacred Triduum has no proper office (it uses ordinary
+Passiontide ferial slugs); RG 91 entry 27's BVM Saturday Office; RG 110's
+inseparable commemorations; Major Litanies (25 April); the Rogation-Wednesday
+commemoration. Allow-list entries M11 and M13 are `verdict open` by design.
## How to work here
diff --git a/README.md b/README.md
index e5a6c5f..6f71f6c 100644
--- a/README.md
+++ b/README.md
@@ -12,10 +12,13 @@ reading citations, correct to year 9999. See the design and rules research under
```sh
opam switch create . 5.2.0 -y # first time: local OCaml switch
-opam install -y dune alcotest qcheck qcheck-alcotest
+opam install -y dune alcotest qcheck qcheck-alcotest sexplib ppx_sexp_conv
dune build
-dune test
-dune exec colitur -- easter 2026
+dune test # fast suite (~3s)
+COLITUR_EXHAUSTIVE_SWEEP=1 dune test --force # + every year 1583-9999 (~50s)
+dune exec colitur -- easter 2026 # Easter and its Easter-relative anchors
+dune exec colitur -- temporal 2026 # the EF temporal cycle only, one line per day
+dune exec colitur -- day 2026 # the full resolved EF calendar (temporal + sanctoral)
```
## License
diff --git a/bin/main.ml b/bin/main.ml
index 896a6bd..53cae87 100644
--- a/bin/main.ml
+++ b/bin/main.ml
@@ -41,8 +41,142 @@ let temporal_report y =
d := D.add_days !d 1
done
+(* Task 11: the fully resolved EF calendar (temporal AND sanctoral,
+ occurrence and transfers applied), one line per civil-year day --
+ "YYYY-MM-DD weekday season week slug rank colour [+commemoration-slug]...".
+ [temporal_report] above only ever showed the temporal cycle in isolation
+ ([Rite_ef.Temporal_ef.temporal] directly, no sanctoral layer, no
+ [Precedence] contest); this is the first CLI path that runs every piece
+ Plan 3 built -- [Colitur_kernel.Layer], [Overlay], [Precedence_ef],
+ [Calendar] -- against real data. *)
+
+(* [data/ef/sanctoral.sexp] and [data/ef/adjustments.sexp] are located
+ relative to the BUILD TREE, not the process's own cwd: cwd varies with
+ how the binary is invoked (a user's shell for `dune exec colitur --`, a
+ dune cram test's own sandboxed temp directory for `test/cli.t`) and
+ nothing in this project's build pins it to the repository root. A
+ build-time constant substituted via dune's [%{workspace_root}] was tried
+ first and rejected: it is resolved RELATIVE TO THE BUILD ACTION'S OWN
+ directory (empirically "." here, not an absolute path -- dune keeps
+ build actions relocatable), so it silently reproduces the same
+ cwd-dependence this is trying to eliminate, just baked in at build time
+ instead of read at run time; confirmed by the resulting `colitur day`
+ failing to find its own data outside the exact directory the build
+ happened to run in.
+
+ [Sys.executable_name] does not have that problem -- on Linux it resolves
+ through /proc/self/exe, which the kernel always reports as the
+ executable's own canonical absolute path, even when the process was
+ launched through a symlink (verified against dune's own cram sandbox,
+ which places exactly such a symlink; see the task report). dune's default
+ ("no [(sandbox ...)] declared") build context mirrors the ENTIRE source
+ tree under _build/default/, unconditionally, so climbing from
+ _build/default/bin/main.exe up two directories and back down into data/
+ always finds both files, regardless of the caller's own cwd.
+
+ Known limitation, not yet exercised by this project: a `dune install`-
+ style deployment (executable copied to a prefix with no adjacent _build/
+ default/data/) would need a different resolution strategy; there is no
+ install story yet (README.md: `dune exec` only), so this is not a
+ regression against anything this project currently supports. *)
+let data_dir () = Filename.dirname (Filename.dirname Sys.executable_name) ^ "/data/ef"
+
+(* Loads the universal sanctoral layer and applies the one hand-authored
+ overlay over it (data/ef/adjustments.sexp -- see that file's own header):
+ [Overlay.apply]'s diagnostics are never silently dropped (Overlay.mli),
+ so any that come back -- expected to be none in the committed data; see
+ the overlay file's own comment on when one WOULD fire -- are printed to
+ stderr, loudly, without aborting the run. *)
+let load_ef_layer () =
+ let dir = data_dir () in
+ let sanctoral_path = Filename.concat dir "sanctoral.sexp" in
+ let adjustments_path = Filename.concat dir "adjustments.sexp" in
+ match Colitur_kernel.Layer.load Rite_ef.Vocab_ef.rank_of_sexp sanctoral_path with
+ | Error e -> Error (Printf.sprintf "failed to load %s: %s" sanctoral_path e)
+ | Ok layer -> (
+ match Colitur_kernel.Overlay.load Rite_ef.Vocab_ef.rank_of_sexp adjustments_path with
+ | Error e -> Error (Printf.sprintf "failed to load %s: %s" adjustments_path e)
+ | Ok overlay ->
+ let layer, diagnostics = Colitur_kernel.Overlay.apply layer overlay in
+ List.iter
+ (fun d -> Printf.eprintf "colitur: %s\n" (Colitur_kernel.Overlay.diagnostic_to_string d))
+ diagnostics;
+ Ok layer)
+
+let day_line (d : (Rite_ef.Vocab_ef.season, Rite_ef.Vocab_ef.rank) Colitur_kernel.Liturgical_day.t)
+ =
+ let t = d.Colitur_kernel.Liturgical_day.temporal in
+ let cel = d.Colitur_kernel.Liturgical_day.observed in
+ let week =
+ match t.Colitur_kernel.Temporal.week with Some n -> string_of_int n | None -> "-"
+ in
+ let commemoration_suffix (c, _) =
+ " +" ^ Colitur_kernel.Slug.to_string c.Colitur_kernel.Celebration.slug
+ in
+ let commemorations =
+ String.concat "" (List.map commemoration_suffix d.Colitur_kernel.Liturgical_day.commemorations)
+ in
+ Printf.printf "%s %s %s %s %s %s %s%s\n" (D.to_iso8601 d.Colitur_kernel.Liturgical_day.date)
+ (D.weekday_to_string t.Colitur_kernel.Temporal.weekday)
+ (Rite_ef.Vocab_ef.season_to_string t.Colitur_kernel.Temporal.season)
+ week
+ (Colitur_kernel.Slug.to_string cel.Colitur_kernel.Celebration.slug)
+ (Rite_ef.Vocab_ef.rank_to_string cel.Colitur_kernel.Celebration.rank)
+ (Colitur_kernel.Colour.to_string cel.Colitur_kernel.Celebration.colour)
+ commemorations
+
+(* One civil year, Jan 1 - Dec 31, matching [temporal_report]'s own scan --
+ NOT one liturgical year: [Colitur_kernel.Calendar.year] resolves a single
+ Advent-anchored liturgical year, which straddles two civil years, so a
+ civil year's worth of output needs the tail of the liturgical year that
+ opened the PREVIOUS civil year (covers roughly 1 Jan - 28 Nov) plus the
+ liturgical year that opens within this one (roughly 29 Nov - 31 Dec).
+ Both are computed once each -- not once per day via [Calendar.day], which
+ would recompute the whole (~365-day) placement pass up to 365 times over
+ for the days sharing one liturgical year (calendar.mli's own "pays it
+ once" cost model assumes exactly this usage: call [year], not [day] in a
+ loop). *)
+let day_report y =
+ match load_ef_layer () with
+ | Error msg ->
+ Printf.eprintf "colitur: %s\n" msg;
+ exit 2
+ | Ok layer ->
+ let module Cal = Colitur_kernel.Calendar in
+ let by_rata : (int, (Rite_ef.Vocab_ef.season, Rite_ef.Vocab_ef.rank) Colitur_kernel.Liturgical_day.t) Hashtbl.t =
+ Hashtbl.create 400
+ in
+ let index days =
+ Array.iter
+ (fun (d : (Rite_ef.Vocab_ef.season, Rite_ef.Vocab_ef.rank) Colitur_kernel.Liturgical_day.t) ->
+ Hashtbl.replace by_rata (D.to_rata d.Colitur_kernel.Liturgical_day.date) d)
+ days
+ in
+ index (Cal.year Rite_ef.context layer (y - 1));
+ index (Cal.year Rite_ef.context layer y);
+ let jan1 = match D.make ~year:y ~month:1 ~day:1 with Ok t -> t | Error e -> failwith e in
+ let dec31 = match D.make ~year:y ~month:12 ~day:31 with Ok t -> t | Error e -> failwith e in
+ let d = ref jan1 in
+ while D.compare !d dec31 <= 0 do
+ (match Hashtbl.find_opt by_rata (D.to_rata !d) with
+ | Some day -> day_line day
+ | None ->
+ (* Unreachable for any [y] in 1583..9999: the two indexed
+ liturgical years jointly cover [year_start (y-1), year_start
+ (y+1)), which contains all of civil year [y]
+ (calendar.mli). Not a [failwith] -- an out-of-domain [d]
+ inside this loop is impossible by construction (jan1/dec31
+ are themselves validated in range, and [add_days] only ever
+ advances within the same civil year here) -- but a silent
+ skip would violate the same "never silently dropped"
+ standard the kernel holds itself to, so a gap surfaces
+ loudly on stderr rather than as a quietly short year. *)
+ Printf.eprintf "colitur: internal error: no resolved day for %s\n" (D.to_iso8601 !d));
+ d := D.add_days !d 1
+ done
+
let usage () =
- prerr_endline "colitur: usage: colitur easter <year> | colitur temporal <year>";
+ prerr_endline "colitur: usage: colitur easter <year> | colitur temporal <year> | colitur day <year>";
exit 2
let with_year ys f =
@@ -57,4 +191,5 @@ let () =
match Sys.argv with
| [| _; "easter"; ys |] -> with_year ys easter_report
| [| _; "temporal"; ys |] -> with_year ys temporal_report
+ | [| _; "day"; ys |] -> with_year ys day_report
| _ -> usage ()
diff --git a/data/ef/adjustments.sexp b/data/ef/adjustments.sexp
new file mode 100644
index 0000000..85d7fa1
--- /dev/null
+++ b/data/ef/adjustments.sexp
@@ -0,0 +1,13 @@
+; data/ef/adjustments.sexp -- hand-authored overlay over data/ef/sanctoral.sexp
+; (Task 11). NOT generated by tools/bootstrap_sanctoral.ml -- edit directly.
+;
+; Suppresses `vigil-of-christmas` (24 Dec, data/ef/sanctoral.sexp, lectio's
+; own bootstrapped entry): it is the SAME celebration as colitur's temporal
+; cycle's own `ef-nativity-vigil` (rite_ef/temporal_ef.ml's [named], also 24
+; Dec, RG 91 entry 5), not a second, distinct one. Once the sanctoral layer
+; is live, that date would otherwise carry two candidates for one feast.
+; Recorded as an Overlay directive rather than filtered out of the bootstrap
+; or special-cased in code, per the task brief -- an auditable, diagnosable
+; removal (Overlay.apply's own diagnostic fires if this slug is ever absent,
+; e.g. after a re-bootstrap that renames it), not a silent drop.
+((id ef-adjustments) (directives ((Suppress vigil-of-christmas))))
diff --git a/data/ef/expected-divergences-missalemeum.sexp b/data/ef/expected-divergences-missalemeum.sexp
new file mode 100644
index 0000000..f50898b
--- /dev/null
+++ b/data/ef/expected-divergences-missalemeum.sexp
@@ -0,0 +1,105 @@
+; data/ef/expected-divergences-missalemeum.sexp -- Task 16's cited allow-list
+; for colitur's oracle harness against missalemeum (test/test_oracle.ml),
+; 2026-2027. A SEPARATE file from data/ef/expected-divergences.sexp (the
+; lectio allow-list, Task 15): the two oracles disagree with colitur in
+; different places and for different reasons, so the two lists are kept
+; apart rather than merged into one with two provenances tangled together.
+;
+; [verdict] names which side this task's own primary-source research backs
+; -- NOT always "colitur", unlike the lectio file's own convention (that
+; file's header: "every entry here is colitur"). Some of these entries are
+; genuine DATA GAPS this task found and could not fix here (the sanctoral
+; data is bootstrapped from lectio, which is itself missing several of
+; these entries -- CLAUDE.md's binding decision 3, and this task does not
+; touch ~/git/projects/lectio) or genuine CODE gaps (RG 91 entry 27's BVM-
+; Saturday office, RG 110's inseparable Peter/Paul commemoration) this task
+; did not build. Those are honestly verdicted [missalemeum] -- colitur is
+; short a feature or a row, not correct -- and each is cross-referenced
+; into docs/research/rules-register.md §6 as an open item, not silently
+; absorbed as if colitur were right. TWO entries (M11 and M13) are
+; [verdict open] -- corrected, final fix wave, item 7: this note previously
+; said "one entry (M13)", missing M11 (whose own verdict changed from
+; [colitur] to [open] in fix round 1, see M11's own entry below). Both are
+; adjudicated as UNRESOLVED after real primary-source effort, not defaulted
+; past -- see each entry's own note and the task report for the full
+; search.
+;
+; [expected_rows] is the exact row count this entry accounts for over the
+; fixture's 2026-2027 span: a REGRESSION PIN, not documentation --
+; test_oracle.ml asserts actual counts equal these exactly, so an unnoticed
+; behaviour change here fails loudly instead of silently changing what the
+; harness accepts.
+;
+; Regenerate expected_rows only after re-adjudicating the change against
+; the Missal/register -- never by re-running the comparator and copying its
+; output back here (that would launder a regression into a new baseline).
+((id M1)
+ (citation "RG 33, corrected (precedence_ef.ml's own [is_omissible_vigil], primary-source-verified 2026-08-12): \"Vigilia II aut III classis penitus omittitur, si occurrat in dominica quavis...\" -- a II or III class vigil is entirely omitted if it occurs on ANY Sunday")
+ (verdict colitur)
+ (note "missalemeum does not implement RG 33's Sunday-omission for II/III-class vigils. 28 June 2026 (Vigil of Sts Peter & Paul, II class): still shown as a commemoration on the V Sunday after Pentecost. 9 August 2026 (Vigil of St Lawrence, III class): shown as the day's FULL OBSERVED OFFICE, displacing the XI Sunday after Pentecost entirely, not merely surviving as a commemoration.")
+ (expected_rows 2))
+ ((id M2)
+ (citation "RG 91 entry 27 (\"Officium sanctae Mariae in sabbato\") -- register §4")
+ (verdict missalemeum)
+ (note "Every otherwise-unoccupied IV-class Saturday should carry the votive Office of the BVM (white; missalemeum's own titles cycle \"I\"..\"V Mass of the B. V. M. -- Salve, Sancta Parens\"). precedence_ef.ml's [band] already has an entry-27 comment acknowledging this row exists (corrected attribution, final fix wave: this note previously said temporal_ef.ml, but [band] is precedence_ef.ml's own function), but [Temporal_ef.temporal] never actually CONSTRUCTS this office -- an unimpeded Time-after-Epiphany/-Pentecost Saturday gets a bare ferial slug and season green instead. A genuine feature gap, not a citation dispute; tracked in register §6, not built in this task.")
+ (expected_rows 17))
+ ((id M3)
+ (citation "RG 87 (Minor Litanies/Rogations, Mon/Tue before Ascension) -- the SAME citation as the lectio allow-list's own C8 (data/ef/expected-divergences.sexp)")
+ (verdict colitur)
+ (note "missalemeum, like lectio, computes no Rogation day at all and shows the plain paschaltide-week feria instead. Only 3 May 2027 (Rogation Monday) shows it in this window -- every other Rogation day here is won outright by a saint on both sides, so only the underlying temporal identity differs, which this comparator's axes do not expose.")
+ (expected_rows 1))
+ ((id M4)
+ (citation "1962 calendarium (missale-romanum-1962.pdf), 28 January row: \"S. Petri Nolasci Conf., III classis. / Com. S. Agnetis Virg. et Mart., secundo.\" -- primary-source-verified 2026-08-12")
+ (verdict missalemeum)
+ (note "A second commemoration of St Agnes (secundo, distinct from her main 21 January feast) is missing from data/ef/sanctoral.sexp. Traced upstream: lectio's own tridentine-calendar.ini has no 01-28 entry beyond [peter-nolasco] either -- a bootstrap-source gap, not a bootstrap-tool bug. Cannot be fixed without touching lectio (out of this task's reach); register §6 open item.")
+ (expected_rows 2))
+ ((id M5)
+ (citation "RG 80 (Major Litanies, 25 April) -- register §6's own pre-existing open item, \"Major Litanies (25 April, RG 80) are not computed\"")
+ (verdict missalemeum)
+ (note "Independently confirmed by the oracle, not a new finding: missalemeum's \"Pro rogationibus\" commemoration on St Mark's day (25 April, the Major Litanies' fixed date) is exactly the missing office register §6 already tracks. Only 2026 shows as a comparator MISMATCH: 25 April 2026 is a Saturday with Mark winning outright, so colitur's commemoration list is empty where the oracle's carries \"Pro rogationibus\" -- a real presence gap. 25 April 2027 is a Sunday: the Sunday wins on BOTH sides, and each side's own single commemoration slot goes to a DIFFERENT candidate (colitur: St Mark himself, an ordinary II-class sanctoral loser admitted under RG111(b)'s \"de festo II classis\" slot; missalemeum: the Major Litanies) -- both non-empty, same count, so this comparator's count-only axis (deliberately not slug-identity, see test_oracle.ml's own header) cannot see that mismatch; the underlying gap is the same, just invisible to this year's row.")
+ (expected_rows 1))
+ ((id M6)
+ (citation "1962 calendarium, 14 August row: \"Vigilia, II classis.\" -- nothing else listed -- primary-source-verified 2026-08-12")
+ (verdict colitur)
+ (note "The reverse of M4/M7/M9: no commemoration is listed for 14 August anywhere in the primary source this project treats as authoritative. data/ef/sanctoral.sexp agrees (a single entry, vigil-of-the-assumption). missalemeum's \"St. Eusebius\" for this date has no support found here -- a DIFFERENT St Eusebius (bishop and martyr) is genuinely commemorated 16 December, matching lectio's own [eusebius] entry at THAT date, not this one.")
+ (expected_rows 2))
+ ((id M7)
+ (citation "1962 calendarium, 26 October row: \"Com. S. Evaristi Papæ et Mart.\" -- primary-source-verified 2026-08-12")
+ (verdict missalemeum)
+ (note "A genuine data gap, the same shape as M4: absent from data/ef/sanctoral.sexp and from lectio's own tridentine-calendar.ini (no 10-26 entry at all). Register §6 open item.")
+ (expected_rows 2))
+ ((id M8)
+ (citation "RG 109(a) (\"of a Sunday\" is always privileged) + RG 111(a) (\"I class: none save one privileged\")")
+ (verdict colitur)
+ (note "When a fixed I-class feast (All Saints 1 Nov; the Assumption 15 Aug) lands on an ordinary Sunday, the impeded Sunday IS the one privileged commemoration RG 111(a) admits -- already an established, independently-tested rule (test_precedence_ef.ml's RG95/RG109(a) row). missalemeum shows no commemoration at all on either occurrence in this window.")
+ (expected_rows 2))
+ ((id M9)
+ (citation "1962 calendarium, 9 November row: \"IN DEDICATIONE ARCHIBASILICÆ SANCTISSIMI SALVATORIS, II classis. / Com. S. Theodori Mart.\" -- primary-source-verified 2026-08-12")
+ (verdict missalemeum)
+ (note "A genuine data gap, the same shape as M4/M7: absent from data/ef/sanctoral.sexp and from lectio's own 11-09 entry (dedication-of-the-archbasilica-of-our-holy-savior alone). Register §6 open item.")
+ (expected_rows 2))
+ ((id M10)
+ (citation "RG 109(e), unqualified text: \"de feriis Adventus, Quadragesimae et Passionis\" -- of the FERIAS of Advent (not \"the Advent ferias 17-23 December only\", which is RG 91 entry 18's separate OCCURRENCE-table dignity, not a RG 109 privilege restriction)")
+ (verdict colitur)
+ (note "colitur commemorates the losing early-Advent feria (Monday after Advent I, 30 Nov; Tuesday/Wednesday after Advent II, 8 Dec) when a saint wins. missalemeum shows nothing on these 4 rows specifically, even though it DOES show equivalent later-Advent-feria commemorations elsewhere in the SAME window (2-21 December, matching colitur exactly there) -- read as a missalemeum-side inconsistency on these particular rows, not a textually narrower rule.")
+ (expected_rows 4))
+ ((id M11)
+ (citation "CORRECTED, fix round 1 (F3): RG 67 (\"Dies infra octavam sunt II classis\" -- days within the Octave are II class) + RG 109(c) (\"de diebus infra octavam Nativitatis Domini\" -- privileged) + the 1962 calendarium's own explicit note under 26/27/28 December, primary-source-verified 2026-08-12: \"S. STEPHANI PROTOMARTYRIS, II classis. / Com. octavae Nativitatis.\" (same pattern, verbatim, under 27 and 28 December for John the Evangelist and the Holy Innocents) -- \"Commemoration of the Octave of the Nativity\", named explicitly, alongside each of the three named feasts")
+ (verdict open)
+ (note "This entry previously read \"No RG paragraph found to support this\" and verdict colitur -- WRONG, found by fix-round-1 review: RG 67/109(c) and the calendarium's own \"Com. octavae Nativitatis\" note both confirm a real commemoration is due here. It is ALSO a genuine REGRESSION Task 16's own commemoration-eligibility fix introduced: before that fix, colitur unconditionally commemorated the day's own losing temporal candidate (\"ef-christmas-0-<weekday>\", the generic Christmastide ferial slug 26-28 December falls through to since temporal_ef.ml's [named] does not cover those three dates), which happened to keep commemoration PRESENCE agreeing with missalemeum even though the underlying reasoning was wrong (a Task 16 review-round-1 finding elsewhere, F1/F2 fixed it for the general case) -- and Task 16's fix (and this fix round's RG 23-26 correction of it) both correctly stop commemorating that generic candidate, since [ferial_rank]'s Christmastide catch-all gives it Class4, which RG 26 never commemorates. The catch: RG 67 says days WITHIN the octave are II class, not IV -- the generic ferial construction 26-28 December falls through to has the WRONG rank for this specific window (a rank bug, not merely a missing-candidate one; 29-31 December already get the correct Class2 via [named]'s own \"ef-nativity-octave-day-{5,6,7}\" branch, so this is narrowly a 26-28-December gap). Fixing it properly also has to get RG 69 right (\"De dominica infra octavam Nativitatis Domini... semper fit Officium cum commemoratione FESTI FORTE OCCURRENTIS\" -- when the Sunday falls in this window, the SUNDAY is observed with a commemoration of THE FEAST ITSELF, Stephen/John/the Innocents by name -- NOT the generic octave placeholder), so a naive \"treat the octave commemoration as one more competing candidate\" fix would get the Sunday case backwards (confirmed by working through it: it would make the octave placeholder outrank the named saint for the Sunday's own privileged slot, when RG 69 names the SAINT, not the octave, for that slot). This needs either new architecture (a commemoration that attaches to whichever of Stephen/John/the Innocents is observed, not a competing candidate the way RG 92-95's occurrence framework models everything else) or a more careful RG-69-aware fix than this task attempted -- out of scope for this fix round. Verdict changed from colitur to open: neither side is confidently right without that fix, and the previous entry's \"colitur is correct, nothing to implement\" framing was itself the risk this review flagged. Register §6 open item.")
+ (expected_rows 4))
+ ((id M12)
+ (citation "RG 110: \"In Officio et Missa S. Petri semper fit commemoratio S. Pauli, et vicissim\" -- in the Office and Mass of either Peter or Paul, a commemoration of the other is ALWAYS made (\"the inseparable commemoration\"), uncapped by RG 111's ordinary admission count")
+ (verdict missalemeum)
+ (note "Unimplemented in this codebase. 22 February 2027 (Chair of St Peter): colitur commemorates only the privileged Lent feria; missalemeum shows that AND \"St. Paul\". A genuine, primary-cited feature gap -- register §6 open item. Narrow: the only row in this window where it becomes visible against this comparator's axes (see the task report for the other Peter/Paul offices checked and found clean).")
+ (expected_rows 1))
+ ((id M14)
+ (citation "1962 calendarium, 14 May row: \"Com. S. Bonifatii Mart.\" -- primary-source-verified 2026-08-12")
+ (verdict missalemeum)
+ (note "A genuine data gap, the same shape as M4/M7/M9: a commemoration-only St Boniface, Martyr (DIFFERENT from the II-class St Boniface, Bishop and Martyr, of 5 June, which data/ef/sanctoral.sexp already carries correctly) is absent from data/ef/sanctoral.sexp and from lectio's own tridentine-calendar.ini for 05-14 (no entry at all). Only visible in 2027 -- in 2026, 14 May is Ascension Thursday (I class), which correctly admits no ordinary commemoration on either side (RG 111(a)), so Boniface is (correctly) absent from BOTH streams that year. Register §6 open item.")
+ (expected_rows 1))
+ ((id M13)
+ (citation "OPEN -- not adjudicated. 1962 calendarium's March table: \"Feria VI post dominicam I Passionis: Commemoratio septem Dolorum B. Mariæ Virg.\" (confirmed real, every year) -- but RG 91's plain table (entry 11-13, Joseph, I class, vs entry 22, an ordinary III-class Passiontide feria) gives Joseph the day outright, with no RG 96 collision requiring a transfer, so the primary text found here does not by itself explain missalemeum's result")
+ (verdict open)
+ (note "19 March 2027: St Joseph (I class) falls on the Friday of Passion Week. missalemeum shows Joseph entirely displaced, with the Friday's own III-class violet office observed and the Seven Sorrows commemorated instead. Three possibilities, none confirmed: (a) colitur's plain RG 91 reading is right and missalemeum is wrong; (b) a more specific rubric attached to St Joseph's own Proprium Sanctorum entry (the same shape as the Annunciation's own Attamen clause) overrides the general table for this exact collision, and this task did not find its text; (c) the Seven Sorrows commemoration itself outranks an ordinary I-class feast on this one Friday, unsupported by anything found here either. Extensive but non-exhaustive primary-source search did not settle it -- register §6 open item, explicitly unresolved rather than defaulted to either side. Separately, but confirmed regardless: colitur does not implement the Seven-Sorrows-of-Passion-Friday commemoration at all, in any year -- a real, primary-attested gap on its own.")
+ (expected_rows 1))
diff --git a/data/ef/expected-divergences.sexp b/data/ef/expected-divergences.sexp
new file mode 100644
index 0000000..c8d863d
--- /dev/null
+++ b/data/ef/expected-divergences.sexp
@@ -0,0 +1,74 @@
+; data/ef/expected-divergences.sexp -- Task 15's Layer C: the CITED allow-list
+; for colitur's differential harness against lectio (test/test_differential.ml),
+; 2005-2050. This is the only layer that may cover a difference in rank,
+; colour, or which celebration is observed -- Layers A (vocabulary) and B
+; (numbering) live in test_differential.ml's code because they normalise
+; NAMES and INDICES only and never touch this file's territory.
+;
+; Each entry is a genuine liturgical disagreement between the two engines.
+; [verdict] names which engine the register/Missal backs; every entry here
+; is "colitur" -- an entry saying otherwise would mean "fix colitur", not
+; "allow-list it" (task ruling). [expected_rows] is the exact row count this
+; entry accounts for over the fixture's 2005-2050 span: a REGRESSION PIN, not
+; documentation -- test_differential.ml asserts actual counts equal these
+; exactly, so an unnoticed behaviour change here fails loudly instead of
+; silently changing what the harness accepts.
+;
+; Regenerate expected_rows only after re-adjudicating the change against the
+; Missal/register -- never by re-running the comparator and copying its
+; output back here (that would launder a regression into a new baseline).
+((id C1)
+ (citation "RG 72-73 (Nativity/Epiphany season boundary, Jan 1-13) + RG 119a (white through \"expletum tempus Epiphaniae\"); register §3c item 1")
+ (verdict colitur)
+ (note "6-13 January is Christmastide in colitur, matching RG 72-73's explicit boundary at 13 January (corroborated independently by RG 119a's colour rule, §3b). lectio's efSeason switches to time-after-epiphany on 6 January. The season disagreement cascades into colour (green vs white) and, on 7-8 January specifically, into the ferial slug family name (colitur's ef-christmas-2-<weekday> vs lectio's ef-time-after-epiphany-1-<weekday> for the same two days).")
+ (expected_rows 368))
+ ((id C2)
+ (citation "RG 91 entry 6, §4 (\"Sundays of Advent, Lent, Passiontide, and Low Sunday\" -- I class, unqualified); extends register §3c item 4 (stated there for Advent only) to Lent on the same textual basis")
+ (verdict colitur)
+ (note "Advent II & IV and Lent I-III are I class in colitur, matching RG 91's own unqualified entry 6 (already confirmed for Passion Sunday, Palm Sunday, Low Sunday and Advent I, where lectio agrees). lectio's temporal_ef.go generic Sunday branch assigns Class2 and special-cases only Advent I, Passion/Palm/Low Sunday -- a lectio gap for the remaining five Sundays this entry covers.")
+ (expected_rows 215))
+ ((id C3)
+ (citation "RG 91 entry 6, §4 (same I-class Sunday rule as C2) + RG 131 (rose indult, Gaudete/Laetare, \"in Officio et Missa diei dominici tantum\")")
+ (verdict colitur)
+ (note "Gaudete (Advent III) and Laetare (Lent IV): I class per C2's citation, plus the RG 131 rose indult. lectio has no Rose case in its EF colour function and zero rose rows in tridentine-calendar.ini -- Rose exists only on lectio's OF path -- so it prints violet for both Sundays.")
+ (expected_rows 89))
+ ((id C4)
+ (citation "RG 91 entry 18 (\"II-class ferias ... Advent 17-23 Dec\"); register §3c item 2")
+ (verdict colitur)
+ (note "Advent ferias 17-23 December (excluding the Advent Ember days, already correct on both sides) are II class in colitur. lectio marks every Advent feria III class.")
+ (expected_rows 140))
+ ((id C5)
+ (citation "RG 91 entry 18 (\"Ember days of Advent, Lent, September\", the same entry as C4); extends register §3c item 2 to the Lent set on the same textual basis lectio already gets right for Advent and September")
+ (verdict colitur)
+ (note "The Lent I Ember Wednesday/Friday/Saturday are II class with colitur's own ef-lent-ember-{wed,fri,sat} slugs. lectio implements the Advent and September Ember exceptions (matches colitur exactly, confirmed empty diff there) but not the Lent one, falling back to a plain ef-lent-1-<weekday> III-class feria -- a lectio gap not previously named in the register.")
+ (expected_rows 128))
+ ((id C6)
+ (citation "RG 91 entry 17 (\"days within the Octave of the Nativity\")")
+ (verdict colitur)
+ (note "29-31 December (and any Sunday landing among them) are II class in colitur, with the ef-nativity-octave-day-{5,6,7} slugs. lectio treats them as plain class-4 ferias (ef-christmas-0-<weekday>), not recognising the Nativity octave's own entry.")
+ (expected_rows 138))
+ ((id C7)
+ (citation "RG 91 entries 16 (II-class feast of the universal Church) vs 18 (II-class ferias, incl. Ember days) -- entry 16 outranks entry 18")
+ (verdict colitur)
+ (note "St Matthew (21 September, colliding with the September Ember Wednesday or Friday in some years) and St Thomas (21 December, colliding with the Advent Ember Friday in some years) are both II-class universal feasts and win the day per RG 91's own numeric ordering -- matching Rite_ef.Precedence_ef.band's already-reviewed entry 16/18 handling. lectio does not contest Ember days against sanctoral feasts at all and keeps the Ember office observed.")
+ (expected_rows 34))
+ ((id C8)
+ (citation "RG 87 (Minor Litanies/Rogations, Mon/Tue before Ascension); register §3c item 3")
+ (verdict colitur)
+ (note "Rogation Monday and Tuesday exist as colitur's own ef-rogation-{monday,tuesday} slugs (violet) whenever no higher-ranked saint intervenes. lectio computes no Rogation days at all and shows the plain paschaltide-week-6 feria instead.")
+ (expected_rows 31))
+ ((id C9)
+ (citation "RG 95 (translation is a right of I-class FEASTS only) + RG 91 entry 6, §4 (Sundays are a separate table row, not feasts) + RG 109(a) (\"of a Sunday\" is a privileged commemoration, presupposing the Sunday stays put) + RG 96 (the general translation walk) -- the same reasoning already fixed for the analogous impeded-Sunday defect in Precedence_ef (Task 9)")
+ (verdict colitur)
+ (note "St Joseph (19 March, I class) colliding with a Lent Sunday (I class per C2): colitur keeps the Sunday observed and transfers Joseph to the next free day (usually 20 March; in years the walk is congested enough to cross Easter, as far as 1 April -- 2008, 2035, 2046, independently pinned by this project's own transfer tests). lectio instead puts Joseph ON the Sunday, displacing the Lenten Sunday office RG 95 says cannot be displaced by a translated feast.")
+ (expected_rows 15))
+ ((id C10)
+ (citation "RG 91 entry 3 (Sacred Heart, a Feast of the Lord, outranks entry 11 Precious Blood) + RG 96 (impeded I-class feast moves to the next day that is NOT I or II class)")
+ (verdict colitur)
+ (note "2011: Sacred Heart (Friday after the Corpus Christi octave) falls on 1 July and impedes the Precious Blood (also 1 July, I class but a lower RG 91 entry). RG 96's walk must skip 2 July (Visitation, II class) and 3 July (Sunday), landing on 4 July (Monday, a free class-4 feria). lectio instead lands Precious Blood on 2 July, illegitimately displacing the Visitation -- exactly what RG 96's \"not I or II class\" clause forbids.")
+ (expected_rows 2))
+ ((id C11)
+ (citation "RG 128(b), primary-source-verified 2026-08-12 (Task 16): \"...a dominica in Septuagesima usque ad Vigiliam paschalem, exceptis: ... Missa sive Chrismatis sive in Cena Domini feria V Hebdomadae sanctae; ...\" -- violet runs Septuagesima to the Easter Vigil EXCEPT (among other things) the Mass of Holy Thursday, named as a whole-Mass exception")
+ (verdict colitur)
+ (note "Holy Thursday (\"ef-passiontide-2-thursday\") is white in colitur, per RG 128(b)'s explicit exception -- independently confirmed by the missalemeum oracle (Task 16 report), whose colour set for that day is white alone, unlike the surrounding Triduum days which include violet as an option. lectio has no such exception and prints Passiontide's base violet straight through Holy Thursday. Found via Task 16's oracle comparison, not the original lectio differential (lectio's own colour did not previously disagree, because colitur's own bug matched it) -- fixed in colitur, so this row records a NEW divergence from lectio's still-uncorrected violet, not a pre-existing one.")
+ (expected_rows 46))
diff --git a/data/ef/sanctoral.sexp b/data/ef/sanctoral.sexp
new file mode 100644
index 0000000..1ff9577
--- /dev/null
+++ b/data/ef/sanctoral.sexp
@@ -0,0 +1,2644 @@
+; data/ef/sanctoral.sexp -- EF (1962) universal sanctoral (General Roman
+; Calendar), bootstrapped from lectio (sibling project; see CLAUDE.md).
+; Generator: tools/bootstrap_sanctoral.ml -- do not hand-edit; re-run the
+; generator against a newer lectio and commit the diff instead.
+;
+; Source: ../lectio/internal/caldata/tridentine-calendar.ini
+; SHA-256: 6a25e6349cae576a10b27c2cdddbfa35905753d4b1e0bc19463dc848f65b94a8
+; Converted (UTC): 2026-08-11
+; 322 entries (208 feast, 114 commemoration-only). Regenerate with:
+; eval $(opam env) && dune exec tools/bootstrap_sanctoral.exe -- ../lectio/internal/caldata/tridentine-calendar.ini data/ef/sanctoral.sexp
+((id ef-universal) (name "EF (1962) universal sanctoral")
+ (entries
+ (((date (Fixed (month 8) (day 18)))
+ (cel
+ ((slug agapitus)
+ (names
+ ((en "St. Agapitus")
+ (pl "\197\155w. Agapita, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 5)))
+ (cel
+ ((slug agatha)
+ (names
+ ((en "St. Agatha")
+ (pl "\197\155w. Agaty, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 21)))
+ (cel
+ ((slug agnes)
+ (names
+ ((en "St. Agnes")
+ (pl "\197\155w. Agnieszki, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 15)))
+ (cel
+ ((slug albert-the-great)
+ (names
+ ((en "St. Albert the Great")
+ (pl
+ "\197\155w. Alberta Wielkiego, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 17)))
+ (cel
+ ((slug alexis)
+ (names ((en "St. Alexis") (pl "\197\155w. Aleksego, Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 1)))
+ (cel
+ ((slug all-saints)
+ (names
+ ((en "All Saints")
+ (pl
+ "Uroczysto\197\155\196\135 Wszystkich \197\154wi\196\153tych")))
+ (rank Class1) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 21)))
+ (cel
+ ((slug aloysius-gongzaga)
+ (names
+ ((en "St. Aloysius Gongzaga")
+ (pl "\197\155w. Alojzego Gonzagi, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 2)))
+ (cel
+ ((slug alphonsus-liguori)
+ (names
+ ((en "St. Alphonsus Liguori")
+ (pl
+ "\197\155w. Alfonsa Marii Liguori, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 7)))
+ (cel
+ ((slug ambrose)
+ (names
+ ((en "St. Ambrose")
+ (pl
+ "\197\155w. Ambro\197\188ego, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 30)))
+ (cel
+ ((slug andrew)
+ (names
+ ((en "St. Andrew") (pl "\197\155w. Andrzeja, Aposto\197\130a")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 10)))
+ (cel
+ ((slug andrew-avellino)
+ (names
+ ((en "St. Andrew Avellino")
+ (pl "\197\155w. Andrzeja z Avellino, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 4)))
+ (cel
+ ((slug andrew-corsini)
+ (names
+ ((en "St. Andrew Corsini")
+ (pl "\197\155w. Andrzeja Corsini, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 1)))
+ (cel
+ ((slug angela-merici)
+ (names
+ ((en "St. Angela Merici")
+ (pl "\197\155w. Anieli Merici, Dziewicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 17)))
+ (cel
+ ((slug anicetus)
+ (names
+ ((en "St. Anicetus")
+ (pl "\197\155w. Aniceta, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 26)))
+ (cel
+ ((slug anne-mother-of-the-blessed-virgin)
+ (names
+ ((en "St. Anne, Mother of the Blessed Virgin")
+ (pl "\197\155w. Anny, Matki N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 25)))
+ (cel
+ ((slug annunciation-of-the-blessed-virgin-mary)
+ (names
+ ((en "Annunciation of the Blessed Virgin Mary")
+ (pl "Zwiastowanie N. M. P.")))
+ (rank Class1) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 21)))
+ (cel
+ ((slug anselm)
+ (names
+ ((en "St. Anselm")
+ (pl
+ "\197\155w. Anzelma, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 17)))
+ (cel
+ ((slug anthony)
+ (names ((en "St. Anthony") (pl "\197\155w. Antoniego, Opata")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 23)))
+ (cel
+ ((slug anthony-mary-claret)
+ (names
+ ((en "St. Anthony Mary Claret")
+ (pl "\197\155w. Antoniego Marii Claret, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 5)))
+ (cel
+ ((slug anthony-mary-zaccariah)
+ (names
+ ((en "St. Anthony Mary Zaccariah")
+ (pl "\197\155w. Antoniego Marii Zaccaria, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 13)))
+ (cel
+ ((slug anthony-of-padua)
+ (names
+ ((en "St. Anthony of Padua")
+ (pl
+ "\197\155w. Antoniego z Padwy, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 10)))
+ (cel
+ ((slug antoninus)
+ (names
+ ((en "St. Antoninus")
+ (pl "\197\155w. Antonina, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 23)))
+ (cel
+ ((slug apollinaris)
+ (names
+ ((en "St. Apollinaris")
+ (pl "\197\155w. Apolinarego, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 9)))
+ (cel
+ ((slug appollonia)
+ (names
+ ((en "St. Appollonia")
+ (pl "\197\155w. Apolonii, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 15)))
+ (cel
+ ((slug assumption-of-the-blessed-virgin-mary)
+ (names
+ ((en "Assumption of the Blessed Virgin Mary")
+ (pl "Wniebowzi\196\153cie N. M. P.")))
+ (rank Class1) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 2)))
+ (cel
+ ((slug athanasius)
+ (names
+ ((en "St. Athanasius")
+ (pl
+ "\197\155w. Atanazego, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 28)))
+ (cel
+ ((slug augustine)
+ (names
+ ((en "St. Augustine")
+ (pl
+ "\197\155w. Augustyna, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 28)))
+ (cel
+ ((slug augustine-of-canterbury)
+ (names
+ ((en "St. Augustine of Canterbury")
+ (pl "\197\155w. Augustyna z Canterbury, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 11)))
+ (cel
+ ((slug barnabas)
+ (names
+ ((en "St. Barnabas")
+ (pl "\197\155w. Barnaby, Aposto\197\130a")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 24)))
+ (cel
+ ((slug bartholomew)
+ (names
+ ((en "St. Bartholomew")
+ (pl "\197\155w. Bart\197\130omieja, Aposto\197\130a")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 14)))
+ (cel
+ ((slug basil-the-great)
+ (names
+ ((en "St. Basil the Great")
+ (pl
+ "\197\155w. Bazylego Wielkiego, Wyznawcy, Biskupa i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 12)))
+ (cel
+ ((slug basilidus)
+ (names
+ ((en "St. Basilidus")
+ (pl
+ "\197\155\197\155. Bazylidesa, Cyryna, Nabora i Nazariusza, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 27)))
+ (cel
+ ((slug bede-the-venerable)
+ (names
+ ((en "St. Bede the Venerable")
+ (pl
+ "\197\155w. Bedy Czcigodnego, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 29)))
+ (cel
+ ((slug beheading-of-st-john-the-baptist)
+ (names
+ ((en "Beheading of St. John the Baptist")
+ (pl "\197\154ci\196\153cie \197\154w. Jana Chrzciciela")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 21)))
+ (cel
+ ((slug benedict)
+ (names ((en "St. Benedict") (pl "\197\155w. Benedykta, Opata")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 20)))
+ (cel
+ ((slug bernard-of-clairvaux)
+ (names
+ ((en "St. Bernard of Clairvaux")
+ (pl
+ "\197\155w. Bernarda, Opata i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 20)))
+ (cel
+ ((slug bernardine-of-siena)
+ (names
+ ((en "St. Bernardine of Siena")
+ (pl "\197\155w. Bernardyna ze Sieny, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 3)))
+ (cel
+ ((slug blaise)
+ (names
+ ((en "St. Blaise")
+ (pl
+ "\197\155w. B\197\130a\197\188eja, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 14)))
+ (cel
+ ((slug bonaventure)
+ (names
+ ((en "St. Bonaventure")
+ (pl
+ "\197\155w. Bonawentury, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 5)))
+ (cel
+ ((slug boniface)
+ (names
+ ((en "St. Boniface")
+ (pl "\197\155w. Bonifacego, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 8)))
+ (cel
+ ((slug bridget-of-sweden)
+ (names
+ ((en "St. Bridget of Sweden") (pl "\197\155w. Brygidy, Wdowy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 6)))
+ (cel
+ ((slug bruno)
+ (names ((en "St. Bruno") (pl "\197\155w. Brunona, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 7)))
+ (cel
+ ((slug cajetan)
+ (names ((en "St. Cajetan") (pl "\197\155w. Kajetana, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 14)))
+ (cel
+ ((slug callistus-i)
+ (names
+ ((en "St. Callistus I")
+ (pl
+ "\197\155w. Kaliksta, papie\197\188a i m\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 18)))
+ (cel
+ ((slug camillus-de-lellis)
+ (names
+ ((en "Camillus de Lellis") (pl "\197\155w. Kamila de Lellis")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 19)))
+ (cel
+ ((slug canute-martyr)
+ (names
+ ((en "St. Canute, Martyr")
+ (pl "\197\155w. Kanuta, Kr\195\179la i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 4)))
+ (cel
+ ((slug casimir)
+ (names
+ ((en "St. Casimir") (pl "\197\155w. Kazimierza, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 25)))
+ (cel
+ ((slug catherine-of-alexandria)
+ (names
+ ((en "St. Catherine of Alexandria")
+ (pl "\197\155w. Katarzyny, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 30)))
+ (cel
+ ((slug catherine-of-siena)
+ (names
+ ((en "St. Catherine of Siena")
+ (pl "\197\155w. Katarzyny Siene\197\132skiej, Dziewicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 22)))
+ (cel
+ ((slug cecilia)
+ (names
+ ((en "St. Cecilia")
+ (pl "\197\155w. Cecylii, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 22)))
+ (cel
+ ((slug chair-of-st-peter)
+ (names
+ ((en "Chair of St. Peter")
+ (pl "Katedry \197\155w. Piotra Aposto\197\130a")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 4)))
+ (cel
+ ((slug charles-borromeo)
+ (names
+ ((en "St. Charles Borromeo")
+ (pl "\197\155w. Karola Boromeusza, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 24)))
+ (cel
+ ((slug christina)
+ (names
+ ((en "St. Christina")
+ (pl "\197\155w. Krystyny, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 25)))
+ (cel
+ ((slug christopher)
+ (names
+ ((en "St. Christopher")
+ (pl "\197\155w. Krzysztofa, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 24)))
+ (cel
+ ((slug chrysogonus)
+ (names
+ ((en "St. Chrysogonus")
+ (pl "\197\155w. Chryzogona, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 12)))
+ (cel
+ ((slug clare)
+ (names ((en "St. Clare") (pl "\197\155w. Klary, Dziewicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 23)))
+ (cel
+ ((slug clement-i)
+ (names
+ ((en "St. Clement I")
+ (pl
+ "\197\155w. Klemensa I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 2)))
+ (cel
+ ((slug commemoration-of-all-souls)
+ (names
+ ((en "Commemoration of All Souls")
+ (pl "Dzie\197\132 Zaduszny")))
+ (rank Class1) (status Feast) (colour Black) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 13)))
+ (cel
+ ((slug commemoration-of-the-baptism-of-the-lord)
+ (names
+ ((en "Commemoration of the Baptism of the Lord")
+ (pl "Wspomnienie Chrztu Pa\197\132skiego")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 25)))
+ (cel
+ ((slug conversion-of-st-paul)
+ (names
+ ((en "Conversion of St. Paul")
+ (pl
+ "Nawr\195\179cenie \197\155w. Paw\197\130a, Aposto\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 8)))
+ (cel
+ ((slug cyriacus-largus-and-smaragdus-martyrs)
+ (names
+ ((en "Ss. Cyriacus, Largus and Smaragdus, Martyrs")
+ (pl
+ "\197\155\197\155. Cyriaka, Larga i Szmaragda, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 9)))
+ (cel
+ ((slug cyril-of-alexandria)
+ (names
+ ((en "St. Cyril of Alexandria")
+ (pl
+ "\197\155w. Cyryla Aleksandryjskiego, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 18)))
+ (cel
+ ((slug cyril-of-jerusalem)
+ (names
+ ((en "St. Cyril of Jerusalem")
+ (pl
+ "\197\155w. Cyryla Jerozolimskiego, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 11)))
+ (cel
+ ((slug damasus-i)
+ (names
+ ((en "St. Damasus I")
+ (pl "\197\155w. Damazego, Papie\197\188a i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 29)))
+ (cel
+ ((slug dedication-of-st-michael-the-archangel)
+ (names
+ ((en "Dedication of St. Michael the Archangel")
+ (pl
+ "\197\154wi\196\153tego Micha\197\130a Archanio\197\130a")))
+ (rank Class1) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 9)))
+ (cel
+ ((slug dedication-of-the-archbasilica-of-our-holy-savior)
+ (names
+ ((en "Dedication of the Archbasilica of Our Holy Savior")
+ (pl
+ "Rocznica Konsekracji Bazyliki Naj\197\155wi\196\153tszego Zbawiciela na Lateranie")))
+ (rank Class2) (status Feast) (colour White) (subject Lord)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 5)))
+ (cel
+ ((slug dedication-of-the-basilica-of-st-mary-major)
+ (names
+ ((en "Dedication of the Basilica of St. Mary Major")
+ (pl "Rocznica Konsekracji N. M. P. \197\154nie\197\188nej")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 18)))
+ (cel
+ ((slug dedication-of-the-basilicas-of-sts-peter-paul)
+ (names
+ ((en "Dedication of the Basilicas of Sts. Peter & Paul")
+ (pl
+ "Rocznica Konsekracji Bazylik \197\154wi\196\153tych Aposto\197\130\195\179w Piotra i Paw\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 13)))
+ (cel
+ ((slug didacus)
+ (names ((en "St. Didacus") (pl "\197\155w. Dydaka, Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 9)))
+ (cel
+ ((slug dionysius-and-companions)
+ (names
+ ((en "St. Dionysius and companions")
+ (pl "\197\155\197\155. Dionizego, Rustyka i Eleuteriusza")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 4)))
+ (cel
+ ((slug dominic)
+ (names ((en "St. Dominic") (pl "\197\155w. Dominika, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 7)))
+ (cel
+ ((slug donatus)
+ (names
+ ((en "St. Donatus")
+ (pl "\197\155w. Donata, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 6)))
+ (cel
+ ((slug dorothy)
+ (names
+ ((en "St. Dorothy")
+ (pl "\197\155w. Doroty, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 13)))
+ (cel
+ ((slug edward)
+ (names
+ ((en "St. Edward")
+ (pl "\197\155w. Edwarda, kr\195\179la i wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 26)))
+ (cel
+ ((slug eleutherius)
+ (names
+ ((en "S. Eleutherius")
+ (pl
+ "\197\155w. Eleuteriusza, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 19)))
+ (cel
+ ((slug elizabeth-of-hungary)
+ (names
+ ((en "St. Elizabeth of Hungary")
+ (pl "\197\155w. El\197\188biety, Wdowy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 8)))
+ (cel
+ ((slug elizabeth-of-portugal)
+ (names
+ ((en "St. Elizabeth of Portugal")
+ (pl "\197\155w. El\197\188biety, Kr\195\179lowej i Wdowy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 23)))
+ (cel
+ ((slug emerentiana)
+ (names
+ ((en "St. Emerentiana")
+ (pl "\197\155w. Emercjanny, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 18)))
+ (cel
+ ((slug ephrem-of-syria)
+ (names
+ ((en "St. Ephrem of Syria")
+ (pl
+ "\197\155w. Efrema, Diakona, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 16)))
+ (cel
+ ((slug eusebius)
+ (names
+ ((en "St. Eusebius")
+ (pl "\197\155w. Euzebiusza, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 14)))
+ (cel
+ ((slug exaltation-of-the-holy-cross)
+ (names
+ ((en "Exaltation of the Holy Cross")
+ (pl
+ "Podwy\197\188szenia \197\154wi\196\153tego Krzy\197\188a")))
+ (rank Class2) (status Feast) (colour Red) (subject Lord)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 14)))
+ (cel
+ ((slug felicis)
+ (names
+ ((en "S. Felicis")
+ (pl "\197\155w. Feliksa, Kap\197\130ana i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 29)))
+ (cel
+ ((slug felicis-simplicii-faustini-et-beatricis)
+ (names
+ ((en "Ss. Felicis, Simplicii, Faustini et Beatricis")
+ (pl
+ "\197\155\197\155. Feliksa, Symplicjusza, Faustyna i Beatryczy, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 23)))
+ (cel
+ ((slug felicity)
+ (names
+ ((en "St. Felicity")
+ (pl "\197\155w. Felicyty, M\196\153czennicy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 30)))
+ (cel
+ ((slug felix-i)
+ (names
+ ((en "St. Felix I")
+ (pl
+ "\197\155w. Feliksa I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 20)))
+ (cel
+ ((slug felix-of-valois)
+ (names
+ ((en "St. Felix of Valois")
+ (pl "\197\155w. Feliksa Walezego, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 24)))
+ (cel
+ ((slug fidelis-of-sigmaringen)
+ (names
+ ((en "St. Fidelis of Sigmaringen")
+ (pl "\197\155w. Fidelisa z Sigmaringen, M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 10)))
+ (cel
+ ((slug forty-holy-martyrs-of-sebaste)
+ (names
+ ((en "Forty Holy Martyrs of Sebaste")
+ (pl
+ "\197\155\197\155. Czterdziestu M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 8)))
+ (cel
+ ((slug four-holy-crowned-martyrs)
+ (names
+ ((en "Four Holy Crowned Martyrs")
+ (pl
+ "\197\154wi\196\153tych Czterech Ukoronowanych M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 9)))
+ (cel
+ ((slug frances-rome)
+ (names
+ ((en "St. Frances Rome")
+ (pl "\197\155w. Franciszki Rzymianki, Wdowy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 10)))
+ (cel
+ ((slug francis-borgia)
+ (names
+ ((en "St. Francis Borgia")
+ (pl "\197\155w. Franciszka Borgiasza, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 4)))
+ (cel
+ ((slug francis-caracciolo)
+ (names
+ ((en "St. Francis Caracciolo")
+ (pl "\197\155w. Franciszka Caracciolo, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 29)))
+ (cel
+ ((slug francis-de-sales)
+ (names
+ ((en "St. Francis de Sales")
+ (pl
+ "\197\155w. Franciszka Salezego, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 4)))
+ (cel
+ ((slug francis-of-assisi)
+ (names
+ ((en "St. Francis of Assisi")
+ (pl "\197\155w. Franciszka, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 2)))
+ (cel
+ ((slug francis-of-paola)
+ (names
+ ((en "St. Francis of Paola")
+ (pl "\197\155w. Franciszka z Pauli, Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 3)))
+ (cel
+ ((slug francis-xavier)
+ (names
+ ((en "St. Francis Xavier")
+ (pl "\197\155w. Franciszka Ksawerego, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 27)))
+ (cel
+ ((slug gabriel-of-our-lady-of-sorrows)
+ (names
+ ((en "St. Gabriel of Our Lady of Sorrows")
+ (pl "\197\155w. Gabriela od Matki Bo\197\188ej Bolesnej")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 24)))
+ (cel
+ ((slug gabriel-the-archangel)
+ (names
+ ((en "St. Gabriel the Archangel")
+ (pl "\197\155w. Gabriela Archanio\197\130a")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 23)))
+ (cel
+ ((slug george)
+ (names
+ ((en "St. George")
+ (pl "\197\155w. Jerzego, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 16)))
+ (cel
+ ((slug gertrude-the-great)
+ (names
+ ((en "St. Gertrude the Great")
+ (pl "\197\155w. Gertrudy, Dziewicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 1)))
+ (cel
+ ((slug giles)
+ (names ((en "St. Giles") (pl "\197\155w. Idziego, Opata")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 10)))
+ (cel
+ ((slug gordiano-and-epimacho)
+ (names
+ ((en "St. Gordiano and Epimacho")
+ (pl
+ "\197\155\197\155. Gordiana i Epimacha, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 9)))
+ (cel
+ ((slug gorgonius)
+ (names
+ ((en "St. Gorgonius")
+ (pl "\197\155w. Gorgoniusza, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 17)))
+ (cel
+ ((slug gregory-barbarigo)
+ (names
+ ((en "St. Gregory Barbarigo")
+ (pl "\197\155w. Grzegorza Barbarigo, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 9)))
+ (cel
+ ((slug gregory-of-nazianzen)
+ (names
+ ((en "St. Gregory of Nazianzen")
+ (pl
+ "\197\155w. Grzegorza z Nazjanzu, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 12)))
+ (cel
+ ((slug gregory-the-great)
+ (names
+ ((en "St. Gregory the Great")
+ (pl
+ "\197\155w. Grzegorza Wielkiego, Papie\197\188a, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 17)))
+ (cel
+ ((slug gregory-the-wonderworker)
+ (names
+ ((en "St. Gregory the Wonderworker")
+ (pl
+ "\197\155w. Grzegorza Cudotw\195\179rcy, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 25)))
+ (cel
+ ((slug gregory-vii)
+ (names
+ ((en "St. Gregory VII")
+ (pl "\197\155w. Grzegorza VII, Papie\197\188a i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 8)))
+ (cel
+ ((slug hadriani)
+ (names
+ ((en "S. Hadriani")
+ (pl "\197\155w. Hadriana, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 16)))
+ (cel
+ ((slug hedwig)
+ (names ((en "St. Hedwig") (pl "\197\155w. Jadwigi, Wdowy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 15)))
+ (cel
+ ((slug henry-the-emperor)
+ (names
+ ((en "St. Henry the Emperor")
+ (pl "\197\155w. Henryka, Cesarza i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 13)))
+ (cel
+ ((slug hermenegild)
+ (names
+ ((en "St. Hermenegild")
+ (pl "\197\155w. Hermenegilda, M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 28)))
+ (cel
+ ((slug hermes)
+ (names
+ ((en "St. Hermes")
+ (pl "\197\155w. Hermesa, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 21)))
+ (cel
+ ((slug hilarion)
+ (names ((en "St. Hilarion") (pl "\197\155w. Hilariona, Opata")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 14)))
+ (cel
+ ((slug hilary)
+ (names
+ ((en "St. Hilary")
+ (pl
+ "\197\155w. Hilarego, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 2)))
+ (cel
+ ((slug holy-guardian-angels)
+ (names
+ ((en "Holy Guardian Angels")
+ (pl
+ "\197\154wi\196\153tych Anio\197\130\195\179w Str\195\179\197\188\195\179w")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 28)))
+ (cel
+ ((slug holy-innocents)
+ (names
+ ((en "Holy Innocents")
+ (pl "\197\154wi\196\153tych M\197\130odziank\195\179w")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 1)))
+ (cel
+ ((slug holy-machabees)
+ (names
+ ((en "Holy Machabees")
+ (pl "Siedmiu Braci Machabejskich, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 17)))
+ (cel
+ ((slug hyacinth)
+ (names ((en "St. Hyacinth") (pl "\197\155w. Jacka, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 11)))
+ (cel
+ ((slug hyginus-pope-and-martyr)
+ (names
+ ((en "St. Hyginus Pope and Martyr")
+ (pl "\197\155w. Hygina, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 31)))
+ (cel
+ ((slug ignatius-loyola)
+ (names
+ ((en "St. Ignatius Loyola")
+ (pl "\197\155w. Ignacego Loyoli, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 1)))
+ (cel
+ ((slug ignatius-of-antioch)
+ (names
+ ((en "St. Ignatius of Antioch")
+ (pl "\197\155w. Ignacego, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 8)))
+ (cel
+ ((slug immaculate-conception-of-the-blessed-virgin-mary)
+ (names
+ ((en "Immaculate Conception of the Blessed Virgin Mary")
+ (pl "Niepokalane Pocz\196\153cie N. M. P.")))
+ (rank Class1) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 22)))
+ (cel
+ ((slug immaculate-heart-of-mary)
+ (names
+ ((en "Immaculate Heart of Mary")
+ (pl "Uroczysto\197\155\196\135 Niepokalanego Serca N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 30)))
+ (cel
+ ((slug in-commemoratione-sancti-pauli-apostoli)
+ (names
+ ((en "In Commemoratione Sancti Pauli Apostoli")
+ (pl "Wspomnienie \197\155w. Paw\197\130a, Aposto\197\130a")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 3)))
+ (cel
+ ((slug irenaeus)
+ (names
+ ((en "St. Irenaeus")
+ (pl "\197\155w. Ireneusza, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 4)))
+ (cel
+ ((slug isidore-of-seville)
+ (names
+ ((en "St. Isidore of Seville")
+ (pl
+ "\197\155w. Izydora, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 25)))
+ (cel
+ ((slug james-the-greater)
+ (names
+ ((en "St. James the Greater")
+ (pl "\197\155w. Jakuba, Aposto\197\130a")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 21)))
+ (cel
+ ((slug jane-frances-de-chantal)
+ (names
+ ((en "St. Jane Frances de Chantal")
+ (pl
+ "\197\155w. Joanny Franciszki Fr\195\169miot de Chantal, Wdowy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 19)))
+ (cel
+ ((slug januarius-companions)
+ (names
+ ((en "St. Januarius & Companions")
+ (pl
+ "\197\155w. Januarego i Towarzyszy, M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 30)))
+ (cel
+ ((slug jerome)
+ (names
+ ((en "St. Jerome")
+ (pl
+ "\197\155w. Hieronima, Kap\197\130ana, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 20)))
+ (cel
+ ((slug jerome-emiliani)
+ (names
+ ((en "St. Jerome Emiliani")
+ (pl "\197\155w. Hieronima Emiliani, Wyznawcy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 16)))
+ (cel
+ ((slug joachim-father-of-the-blessed-virgin)
+ (names
+ ((en "St. Joachim, Father of the Blessed Virgin")
+ (pl "\197\155w. Joachima, Ojca N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 15)))
+ (cel
+ ((slug john-baptist-de-la-salle)
+ (names
+ ((en "St. John Baptist de la Salle")
+ (pl "\197\155w. Jana Chrzciciela de la Salle, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 31)))
+ (cel
+ ((slug john-bosco)
+ (names
+ ((en "St. John Bosco") (pl "\197\155w. Jana Bosco, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 20)))
+ (cel
+ ((slug john-cantius)
+ (names
+ ((en "St. John Cantius")
+ (pl "\197\155w. Jana Kantego, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 27)))
+ (cel
+ ((slug john-chrysostom)
+ (names
+ ((en "St. John Chrysostom")
+ (pl
+ "\197\155w. Jana Chryzostoma, Wyznawcy, Biskupa i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 27)))
+ (cel
+ ((slug john-damascene)
+ (names
+ ((en "St. John Damascene")
+ (pl
+ "\197\155w. Jana Damasce\197\132skiego, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 19)))
+ (cel
+ ((slug john-eudes)
+ (names
+ ((en "St. John Eudes") (pl "\197\155w. Jana Eudes, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 12)))
+ (cel
+ ((slug john-gualbert)
+ (names
+ ((en "St. John Gualbert")
+ (pl "\197\155w. Jana Gwalberta, Opata")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 27)))
+ (cel
+ ((slug john-i)
+ (names
+ ((en "St. John I")
+ (pl "\197\155w. Jana I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 9)))
+ (cel
+ ((slug john-leonardi)
+ (names
+ ((en "St. John Leonardi")
+ (pl "\197\155w. Jana Leonardi, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 8)))
+ (cel
+ ((slug john-mary-vianney)
+ (names
+ ((en "St. John Mary Vianney")
+ (pl "\197\155w. Jana Marii Vianney, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 28)))
+ (cel
+ ((slug john-of-capistrano)
+ (names
+ ((en "St. John of Capistrano")
+ (pl "\197\155w. Jana Kapistrana, Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 8)))
+ (cel
+ ((slug john-of-god)
+ (names
+ ((en "St. John of God")
+ (pl "\197\155w. Jana Bo\197\188ego, Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 8)))
+ (cel
+ ((slug john-of-matha)
+ (names
+ ((en "St. John of Matha")
+ (pl "\197\155w. Jana z Maty, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 12)))
+ (cel
+ ((slug john-of-san-fecundo)
+ (names
+ ((en "St. John of San Fecundo")
+ (pl "\197\155w. Jana z Facundo, Wyznawcy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 24)))
+ (cel
+ ((slug john-of-the-cross)
+ (names
+ ((en "St. John of the Cross")
+ (pl
+ "\197\155w. Jana od Krzy\197\188a, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 27)))
+ (cel
+ ((slug john-the-evangelist)
+ (names
+ ((en "St. John the Evangelist")
+ (pl "\197\155w. Jana, Aposto\197\130a i Ewangelisty")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 14)))
+ (cel
+ ((slug josaphat)
+ (names
+ ((en "St. Josaphat")
+ (pl "\197\155w. Jozafata, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 27)))
+ (cel
+ ((slug joseph-calasance)
+ (names
+ ((en "St. Joseph Calasance")
+ (pl "\197\155w. J\195\179zefa Kalasantego, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 18)))
+ (cel
+ ((slug joseph-of-cupertino)
+ (names
+ ((en "St. Joseph of Cupertino")
+ (pl "\197\155w. J\195\179zefa z Kupertynu, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 19)))
+ (cel
+ ((slug joseph-spouse-of-the-bl-virgin-mary)
+ (names
+ ((en "St. Joseph, Spouse of the Bl. Virgin Mary")
+ (pl "\197\155w. J\195\179zefa, Oblubie\197\132ca N. M. P.")))
+ (rank Class1) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 1)))
+ (cel
+ ((slug joseph-the-workman)
+ (names
+ ((en "St. Joseph the Workman")
+ (pl
+ "\197\155w. J\195\179zefa Robotnika, Oblubie\197\132ca N. M. P")))
+ (rank Class1) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 19)))
+ (cel
+ ((slug julia-of-falconieri)
+ (names
+ ((en "St. Julia of Falconieri")
+ (pl "\197\155w. Juliany Falconieri, Dziewicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 14)))
+ (cel
+ ((slug justin)
+ (names
+ ((en "St. Justin")
+ (pl "\197\155w. Justyna, M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 21)))
+ (cel
+ ((slug laurence-of-brindisi)
+ (names
+ ((en "St. Laurence of Brindisi")
+ (pl
+ "\197\155w. Wawrzy\197\132ca z Brindisi, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 10)))
+ (cel
+ ((slug lawrence)
+ (names ((en "St. Lawrence") (pl "\197\155w. Wawrzy\197\132ca")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 5)))
+ (cel
+ ((slug lawrence-justinian)
+ (names
+ ((en "St. Lawrence Justinian")
+ (pl
+ "\197\155w. Wawrzy\197\132ca Justiniani, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 11)))
+ (cel
+ ((slug leo-the-great)
+ (names
+ ((en "St. Leo the Great")
+ (pl
+ "\197\155w. Leona Wielkiego, Papie\197\188a, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 23)))
+ (cel
+ ((slug liborii)
+ (names
+ ((en "S. Liborii")
+ (pl "\197\155w. Liboriusza, Biskupa i Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 23)))
+ (cel
+ ((slug linus)
+ (names
+ ((en "St. Linus")
+ (pl "\197\155w. Linusa, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 25)))
+ (cel
+ ((slug louis-ix)
+ (names
+ ((en "St. Louis IX")
+ (pl "\197\155w. Ludwika, Kr\195\179la i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 4)))
+ (cel
+ ((slug lucius)
+ (names
+ ((en "St. Lucius")
+ (pl
+ "\197\155w. Lucjusza I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 13)))
+ (cel
+ ((slug lucy)
+ (names
+ ((en "St. Lucy")
+ (pl "\197\155w. \197\129ucji, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 18)))
+ (cel
+ ((slug luke-the-evangelist)
+ (names
+ ((en "St. Luke the Evangelist")
+ (pl "\197\155w. \197\129ukasza, Ewangelisty")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 16)))
+ (cel
+ ((slug marcellus-i)
+ (names
+ ((en "St. Marcellus I")
+ (pl
+ "\197\155w. Marcelego I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 18)))
+ (cel
+ ((slug marcus-and-marcellianus)
+ (names
+ ((en "Ss. Marcus and Marcellianus")
+ (pl
+ "\197\155\197\155. Marka i Marcelina, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 20)))
+ (cel
+ ((slug margaret)
+ (names
+ ((en "St. Margaret")
+ (pl
+ "\197\155w. Ma\197\130gorzaty, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 17)))
+ (cel
+ ((slug margaret-mary-alacoque)
+ (names
+ ((en "St. Margaret Mary Alacoque")
+ (pl "\197\155w. Ma\197\130gorzaty Marii Alacoque, Dziewicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 10)))
+ (cel
+ ((slug margaret-of-scotland)
+ (names
+ ((en "St. Margaret of Scotland")
+ (pl
+ "\197\155w. Ma\197\130gorzaty, Kr\195\179lowej Szkockiej, Wdowy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 25)))
+ (cel
+ ((slug mark)
+ (names ((en "St. Mark") (pl "\197\155w. Marka Ewangelisty")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 7)))
+ (cel
+ ((slug mark-i)
+ (names
+ ((en "St. Mark I")
+ (pl "\197\155w. Marka I, Papie\197\188a i Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 29)))
+ (cel
+ ((slug martha)
+ (names ((en "St. Martha") (pl "\197\155w. Marty, Dziewicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 12)))
+ (cel
+ ((slug martin-i)
+ (names
+ ((en "St. Martin I")
+ (pl
+ "\197\155w. Marcina I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 11)))
+ (cel
+ ((slug martin-of-tours)
+ (names
+ ((en "St. Martin of Tours")
+ (pl "\197\155w. Marcina, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 30)))
+ (cel
+ ((slug martina)
+ (names
+ ((en "St. Martina")
+ (pl "\197\155w. Martyny, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 22)))
+ (cel
+ ((slug mary-magdalene)
+ (names
+ ((en "St. Mary Magdalene")
+ (pl "\197\155w. Marii Magdaleny, Pokutnicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 29)))
+ (cel
+ ((slug mary-magdalene-de-pazzi)
+ (names
+ ((en "St. Mary Magdalene de Pazzi")
+ (pl "\197\155w. Marii Magdaleny Pazzi, Dziewicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 11)))
+ (cel
+ ((slug maternity-of-the-blessed-virgin-mary)
+ (names
+ ((en "Maternity of the Blessed Virgin Mary")
+ (pl "Macierzy\197\132stwa N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 21)))
+ (cel
+ ((slug matthew)
+ (names
+ ((en "St. Matthew")
+ (pl "\197\155w. Mateusza, Aposto\197\130a i Ewangelisty")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 24)))
+ (cel
+ ((slug matthias)
+ (names
+ ((en "St. Matthias") (pl "\197\155w. Macieja Aposto\197\130a")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 15)))
+ (cel
+ ((slug maur-abbot)
+ (names ((en "St. Maur, Abbot") (pl "\197\155w. Maura, Opata")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 22)))
+ (cel
+ ((slug maurice-and-companions-martyrs)
+ (names
+ ((en "St. Maurice and Companions, Martyrs")
+ (pl
+ "\197\155\197\155. Maurycego i Towarzyszy, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 10)))
+ (cel
+ ((slug melchiades)
+ (names
+ ((en "St. Melchiades")
+ (pl
+ "\197\155w. Melchiadesa, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 11)))
+ (cel
+ ((slug menna)
+ (names
+ ((en "St. Menna") (pl "\197\155w. Mennasa, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 4)))
+ (cel
+ ((slug monica)
+ (names ((en "St. Monica") (pl "\197\155w. Moniki, Wdowy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 12)))
+ (cel
+ ((slug most-holy-name-of-mary)
+ (names
+ ((en "Most Holy Name of Mary")
+ (pl "Naj\197\155wi\196\153tszego Imienia Maryi")))
+ (rank Class3) (status Feast) (colour White) (subject Lord)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 12)))
+ (cel
+ ((slug naboris-et-felicis)
+ (names
+ ((en "Ss. Naboris et Felicis")
+ (pl
+ "\197\155\197\155. Nabora i Feliksa, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 24)))
+ (cel
+ ((slug nativity-of-st-john-the-baptist)
+ (names
+ ((en "Nativity of St. John the Baptist")
+ (pl "Narodzenie \197\154w. Jana Chrzciciela")))
+ (rank Class1) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 8)))
+ (cel
+ ((slug nativity-of-the-blessed-virgin-mary)
+ (names
+ ((en "Nativity of the Blessed Virgin Mary")
+ (pl "Narodzenie N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 6)))
+ (cel
+ ((slug nicholas)
+ (names
+ ((en "St. Nicholas")
+ (pl "\197\155w. Miko\197\130aja, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 10)))
+ (cel
+ ((slug nicholas-of-tolentino)
+ (names
+ ((en "St. Nicholas of Tolentino")
+ (pl "\197\155w. Miko\197\130aja z Tolentynu, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 15)))
+ (cel
+ ((slug nicomedes)
+ (names
+ ((en "S. Nicomedes")
+ (pl "\197\155w. Nikomedesa, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 6)))
+ (cel
+ ((slug norbert)
+ (names
+ ((en "St. Norbert")
+ (pl "\197\155w. Norberta, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 11)))
+ (cel
+ ((slug our-lady-of-lourdes)
+ (names
+ ((en "Our Lady of Lourdes")
+ (pl
+ "Objawienie si\196\153 N. M. P. Niepokalanie Pocz\196\153tej w Lourdes")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 16)))
+ (cel
+ ((slug our-lady-of-mt-carmel)
+ (names
+ ((en "Our Lady of Mt. Carmel")
+ (pl "Wspomnienie N. M. P. z G\195\179ry Karmelu")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 24)))
+ (cel
+ ((slug our-lady-of-ransom)
+ (names
+ ((en "Our Lady of Ransom")
+ (pl "N. M. P. od Wykupu Je\197\132c\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 7)))
+ (cel
+ ((slug our-lady-of-the-rosary)
+ (names
+ ((en "Our Lady of the Rosary")
+ (pl "N. M. P. R\195\179\197\188a\197\132cowej")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 27)))
+ (cel
+ ((slug pantaleon)
+ (names
+ ((en "St. Pantaleon")
+ (pl "\197\155w. Pantaleona, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 17)))
+ (cel
+ ((slug paschal-baylon)
+ (names
+ ((en "St. Paschal Baylon")
+ (pl "\197\155w. Paschalisa Baylon, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 17)))
+ (cel
+ ((slug patrick)
+ (names
+ ((en "St. Patrick")
+ (pl "\197\155w. Patryka, Biskupa i Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 22)))
+ (cel
+ ((slug paul)
+ (names ((en "St. Paul") (pl "\197\155w. Paw\197\130a")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 28)))
+ (cel
+ ((slug paul-of-the-cross)
+ (names
+ ((en "St. Paul of the Cross")
+ (pl "\197\155w. Paw\197\130a od Krzy\197\188a, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 15)))
+ (cel
+ ((slug paul-the-first-hermit)
+ (names
+ ((en "St. Paul, the First Hermit")
+ (pl
+ "\197\155w. Paw\197\130a, Pierwszego Pustelnika, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 22)))
+ (cel
+ ((slug paulinus-of-nola)
+ (names
+ ((en "St. Paulinus of Nola")
+ (pl "\197\155w. Paulina, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 25)))
+ (cel
+ ((slug peter)
+ (names
+ ((en "St. Peter") (pl "\197\155w. Piotra, Aposto\197\130a")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 27)))
+ (cel
+ ((slug peter-canisius)
+ (names
+ ((en "St. Peter Canisius")
+ (pl
+ "\197\155w. Piotra Kanizjusza, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 19)))
+ (cel
+ ((slug peter-celestine)
+ (names
+ ((en "St. Peter Celestine")
+ (pl "\197\155w. Piotra Celestyna, Papie\197\188a i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 4)))
+ (cel
+ ((slug peter-chrysologus)
+ (names
+ ((en "St. Peter Chrysologus")
+ (pl
+ "\197\155w. Piotra Chryzologa, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 23)))
+ (cel
+ ((slug peter-damien)
+ (names
+ ((en "St. Peter Damien")
+ (pl
+ "\197\155w. Piotra Damiana, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 28)))
+ (cel
+ ((slug peter-nolasco)
+ (names
+ ((en "St. Peter Nolasco")
+ (pl "\197\155w. Piotra Nolasco, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 19)))
+ (cel
+ ((slug peter-of-alcantara)
+ (names
+ ((en "St. Peter of Alcantara")
+ (pl "\197\155w. Piotra z Alkantary, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 26)))
+ (cel
+ ((slug peter-of-alexandria)
+ (names
+ ((en "St. Peter of Alexandria")
+ (pl
+ "\197\155w. Piotra z Aleksandrii, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 29)))
+ (cel
+ ((slug peter-of-verona)
+ (names
+ ((en "St. Peter of Verona")
+ (pl "\197\155w. Piotra z Werony, M\196\153czenika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 31)))
+ (cel
+ ((slug petronilla)
+ (names
+ ((en "St. Petronilla") (pl "\197\155w. Petroneli, Dziewicy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 23)))
+ (cel
+ ((slug philip-benizi)
+ (names
+ ((en "St. Philip Benizi")
+ (pl "\197\155w. Filipa Benicjusza, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 26)))
+ (cel
+ ((slug philip-neri)
+ (names
+ ((en "St. Philip Neri")
+ (pl "\197\155w. Filipa Nereusza, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 11)))
+ (cel
+ ((slug pius-i)
+ (names
+ ((en "St. Pius I")
+ (pl "\197\155w. Piusa I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 5)))
+ (cel
+ ((slug pius-v)
+ (names
+ ((en "St. Pius V")
+ (pl "\197\155w. Piusa V, Papie\197\188a i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 3)))
+ (cel
+ ((slug pius-x)
+ (names
+ ((en "St. Pius X")
+ (pl "\197\155w. Piusa X, Papie\197\188a i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 5)))
+ (cel
+ ((slug placid-companions)
+ (names
+ ((en "St. Placid & Companions")
+ (pl
+ "\197\155\197\155. Placyda i Towarzyszy, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 26)))
+ (cel
+ ((slug polycarp)
+ (names
+ ((en "St. Polycarp")
+ (pl "\197\155w. Polikarpa, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 19)))
+ (cel
+ ((slug pontian)
+ (names
+ ((en "St. Pontian")
+ (pl
+ "\197\155w. Poncjana, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 6)))
+ (cel
+ ((slug pope-sixtus-ii-felicissimus-and-agapitus-martyrs)
+ (names
+ ((en "Pope Sixtus II, Felicissimus and Agapitus, Martyrs")
+ (pl
+ "\197\155\197\155. Sykstusa II, Papie\197\188a, Felicysyma i Agapita, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 21)))
+ (cel
+ ((slug praxedis-virginis)
+ (names
+ ((en "St. Praxedis Virginis")
+ (pl "\197\155w. Praksedy, Dziewicy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 1)))
+ (cel
+ ((slug precious-blood-of-our-lord-jesus-christ)
+ (names
+ ((en "The Precious Blood of Our Lord Jesus Christ")
+ (pl
+ "Uroczysto\197\155\196\135 Najdro\197\188szej Krwi Pana Naszego Jezusa Chrystusa")))
+ (rank Class1) (status Feast) (colour Red) (subject Lord)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 21)))
+ (cel
+ ((slug presentation-of-the-blessed-virgin-mary)
+ (names
+ ((en "Presentation of the Blessed Virgin Mary")
+ (pl "Ofiarowanie N. M. P.")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 18)))
+ (cel
+ ((slug prisca)
+ (names ((en "St. Prisca") (pl "\197\155w. Pryski, Dziewicy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 2)))
+ (cel
+ ((slug processus-and-martinian)
+ (names
+ ((en "SS. Processus and Martinian")
+ (pl
+ "\197\155\197\155. Procesa i Martyniana, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 19)))
+ (cel
+ ((slug pudentiana-virginis)
+ (names
+ ((en "St. Pudentiana Virginis")
+ (pl "\197\155w. Pudencjany, Dziewicy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 2)))
+ (cel
+ ((slug purification-of-the-blessed-virgin-mary)
+ (names
+ ((en "Purification of the Blessed Virgin Mary")
+ (pl "Oczyszczenie N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Lord)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 31)))
+ (cel
+ ((slug queenship-of-the-blessed-virgin-mary)
+ (names
+ ((en "Queenship of the Blessed Virgin Mary")
+ (pl "N. M. P. Kr\195\179lowej")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 24)))
+ (cel
+ ((slug raphael-the-archangel)
+ (names
+ ((en "St. Raphael the Archangel")
+ (pl "\197\155w. Rafa\197\130a Archanio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 31)))
+ (cel
+ ((slug raymond-nonnatus)
+ (names
+ ((en "St. Raymond Nonnatus")
+ (pl "\197\155w. Rajmunda Nonnata, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 23)))
+ (cel
+ ((slug raymond-of-pe-afort)
+ (names
+ ((en "St. Raymond of Pe\195\177afort")
+ (pl "\197\155w. Rajmunda z Pennafort, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 1)))
+ (cel
+ ((slug remigius)
+ (names
+ ((en "St. Remigius")
+ (pl "\197\155w. Remigiusza, Biskupa i Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 13)))
+ (cel
+ ((slug robert-bellarmine)
+ (names
+ ((en "St. Robert Bellarmine")
+ (pl
+ "\197\155w. Roberta Bellarmina, Biskupa, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 9)))
+ (cel
+ ((slug romanus)
+ (names
+ ((en "St. Romanus")
+ (pl "\197\155w. Romana, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 7)))
+ (cel
+ ((slug romuald)
+ (names ((en "St. Romuald") (pl "\197\155w. Romualda, Opata")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 30)))
+ (cel
+ ((slug rose-of-lima)
+ (names
+ ((en "St. Rose of Lima")
+ (pl "\197\155w. R\195\179\197\188y z Limy, Dziewicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 5)))
+ (cel
+ ((slug sabbas)
+ (names ((en "St. Sabbas") (pl "\197\155w. Saby, Opata")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 29)))
+ (cel
+ ((slug sabina)
+ (names
+ ((en "St. Sabina") (pl "\197\155w. Sabiny, M\196\153czennicy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 29)))
+ (cel
+ ((slug saturninus)
+ (names
+ ((en "St. Saturninus")
+ (pl "\197\155w. Saturnina, M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 10)))
+ (cel
+ ((slug scholastica)
+ (names ((en "St. Scholastica") (pl "\197\155w. Scholastyki")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 8)))
+ (cel
+ ((slug sergio-baccho-marcello-and-apulejo-martyrs)
+ (names
+ ((en "Ss. Sergio, Baccho, Marcello and Apulejo Martyrs")
+ (pl
+ "\197\155\197\155. Sergiusza, Bachusa, Marcelego i Apulejusza")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 10)))
+ (cel
+ ((slug seven-holy-brothers-and-sts-rufina-secunda)
+ (names
+ ((en "Seven Holy Brothers and Sts. Rufina & Secunda")
+ (pl
+ "Siedmiu Braci M\196\153czennik\195\179w oraz \197\154\197\155. Rufiny i Sekundy, Dziewic i M\196\153czennic")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 12)))
+ (cel
+ ((slug seven-holy-servite-founders)
+ (names
+ ((en "Seven Holy Servite Founders")
+ (pl
+ "Siedmiu Za\197\130o\197\188ycieli Zakonu Serwit\195\179w N. M. P., Wyznawc\195\179w")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 15)))
+ (cel
+ ((slug seven-sorrows-of-the-blessed-virgin-mary)
+ (names
+ ((en "Seven Sorrows of the Blessed Virgin Mary")
+ (pl "Siedmiu Bole\197\155ci N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 20)))
+ (cel
+ ((slug silverius)
+ (names
+ ((en "St. Silverius")
+ (pl
+ "\197\155w. Sylweriusza, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 31)))
+ (cel
+ ((slug silvester)
+ (names
+ ((en "St. Silvester")
+ (pl "\197\155w. Sylwestra I, papie\197\188a i wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 18)))
+ (cel
+ ((slug simeon)
+ (names
+ ((en "St. Simeon")
+ (pl "\197\155w. Symeona, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 7)))
+ (cel
+ ((slug stanislaus)
+ (names
+ ((en "St. Stanislaus")
+ (pl
+ "\197\155w. Stanis\197\130awa, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 26)))
+ (cel
+ ((slug stephen)
+ (names
+ ((en "St. Stephen")
+ (pl "\197\155w. Szczepana, Pierwszego M\196\153czennika")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 2)))
+ (cel
+ ((slug stephen-i-pope-and-martyr)
+ (names
+ ((en "St. Stephen I, Pope and Martyr")
+ (pl
+ "\197\155w. Stefana I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 2)))
+ (cel
+ ((slug stephen-of-hungary)
+ (names
+ ((en "St. Stephen of Hungary")
+ (pl "\197\155w. Stefana, Kr\195\179la i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 17)))
+ (cel
+ ((slug stigmata-of-st-francis)
+ (names
+ ((en "Stigmata of St. Francis")
+ (pl "Stygmat\195\179w \197\155w. Franciszka, Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 30)))
+ (cel
+ ((slug sts-abdon-sennen)
+ (names
+ ((en "Sts. Abdon & Sennen")
+ (pl
+ "\197\155\197\155. Abdona i Sennena, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 3)))
+ (cel
+ ((slug sts-alexander-companions)
+ (names
+ ((en "Sts. Alexander & Companions")
+ (pl
+ "\197\155\197\155. Aleksandra i Towarzyszy, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 25)))
+ (cel
+ ((slug sts-chrysanthus-daria)
+ (names
+ ((en "Sts. Chrysanthus & Daria")
+ (pl
+ "\197\155\197\155. Chryzanta i Darii, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 26)))
+ (cel
+ ((slug sts-cletus-marcellinus)
+ (names
+ ((en "Sts. Cletus & Marcellinus")
+ (pl
+ "\197\155\197\155. Kleta i Marcelina, Papie\197\188y i M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 16)))
+ (cel
+ ((slug sts-cornelius-cyprian)
+ (names
+ ((en "Sts. Cornelius & Cyprian")
+ (pl
+ "\197\155w. Korneliusza, Papie\197\188a i Cypriana, M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 27)))
+ (cel
+ ((slug sts-cosmas-damian)
+ (names
+ ((en "Sts. Cosmas & Damian")
+ (pl "\197\155w. Kosmy i Damiana, M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 26)))
+ (cel
+ ((slug sts-cyprian-justina)
+ (names
+ ((en "Sts. Cyprian & Justina")
+ (pl
+ "\197\155\197\155. Cypriana i Justyny, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 7)))
+ (cel
+ ((slug sts-cyril-methodius)
+ (names
+ ((en "Sts. Cyril & Methodius")
+ (pl
+ "\197\155\197\155. Cyryla i Metodego, Biskup\195\179w i Wyznawc\195\179w")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 16)))
+ (cel
+ ((slug sts-euphemia-lucy-and-geminianus)
+ (names
+ ((en "Sts. Euphemia, Lucy and Geminianus")
+ (pl
+ "\197\155\197\155. Eufemii, \197\129ucji i Geminiana, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 20)))
+ (cel
+ ((slug sts-eustace-companions)
+ (names
+ ((en "Sts. Eustace & Companions")
+ (pl
+ "\197\155w. Eustachego i Towarzyszy, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 20)))
+ (cel
+ ((slug sts-fabian-sebastian)
+ (names
+ ((en "Sts. Fabian & Sebastian")
+ (pl
+ "\197\155\197\155. Fabiana, Papie\197\188a i Sebastiana, M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 15)))
+ (cel
+ ((slug sts-faustinus-jovita)
+ (names
+ ((en "Sts. Faustinus & Jovita")
+ (pl
+ "\197\155\197\155. Faustyna i Jowity, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 6)))
+ (cel
+ ((slug sts-felicitas-perpetua)
+ (names
+ ((en "Sts. Felicitas & Perpetua")
+ (pl
+ "\197\155\197\155. Perpetui i Felicyty, M\196\153czennic")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 30)))
+ (cel
+ ((slug sts-felix-and-adauctus)
+ (names
+ ((en "Sts. Felix and Adauctus")
+ (pl
+ "\197\155\197\155. Feliksa i Adaukta, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 19)))
+ (cel
+ ((slug sts-gervasius-and-protasius)
+ (names
+ ((en "Sts. Gervasius and Protasius")
+ (pl
+ "\197\155\197\155. Gerwazego i Protazego, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 13)))
+ (cel
+ ((slug sts-hippolytus-cassian)
+ (names
+ ((en "Sts. Hippolytus & Cassian")
+ (pl
+ "\197\155\197\155. Hipolita i Kasjana, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 26)))
+ (cel
+ ((slug sts-john-paul)
+ (names
+ ((en "Sts. John & Paul")
+ (pl
+ "\197\155\197\155. Jana i Paw\197\130a, M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 2)))
+ (cel
+ ((slug sts-marcellinus-peter-erasmus)
+ (names
+ ((en "Sts. Marcellinus, Peter, & Erasmus")
+ (pl
+ "\197\155\197\155. Marcelina i Piotra, M\196\153czennik\195\179w oraz Erazma, Biskupa")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 19)))
+ (cel
+ ((slug sts-marius-martha-audifax-abachum)
+ (names
+ ((en "Sts. Marius, Martha, Audifax & Abachum")
+ (pl
+ "\197\155\197\155. Mariusza, Marty, Audifaksa i Abachuma")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 28)))
+ (cel
+ ((slug sts-nazarius-celsus-st-victor-i-st-innocent-i)
+ (names
+ ((en "Sts. Nazarius & Celsus, St. Victor I & St. Innocent I")
+ (pl
+ "\197\155\197\155. Nazariusza i Celsa, M\196\153czennik\195\179w, Wiktora I, Papie\197\188a i M\196\153czennika, oraz Innocentego I, Papie\197\188a i Wyznawcy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 12)))
+ (cel
+ ((slug sts-nereus-achilleus-domitilla-pancras)
+ (names
+ ((en "Sts. Nereus, Achilleus, Domitilla, & Pancras")
+ (pl
+ "\197\154wi\196\153tych Nereusza, Achillesa, Domicylli i Pankracego, M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 29)))
+ (cel
+ ((slug sts-peter-paul)
+ (names
+ ((en "Sts. Peter & Paul")
+ (pl
+ "\197\154wi\196\153tych Piotra i Paw\197\130a, Aposto\197\130\195\179w")))
+ (rank Class1) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 11)))
+ (cel
+ ((slug sts-philip-james)
+ (names
+ ((en "Sts. Philip & James")
+ (pl
+ "\197\154wi\196\153tych Filipa i Jakuba, Aposto\197\130\195\179w")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 9)))
+ (cel
+ ((slug sts-primus-felicianus)
+ (names
+ ((en "Sts. Primus & Felicianus")
+ (pl
+ "\197\155\197\155. Pryma i Felicjana, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 11)))
+ (cel
+ ((slug sts-protus-hyacinth)
+ (names
+ ((en "Sts. Protus & Hyacinth")
+ (pl "\197\155w. Prota i Jacka, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 28)))
+ (cel
+ ((slug sts-simon-jude)
+ (names
+ ((en "Sts. Simon & Jude")
+ (pl
+ "\197\154wi\196\153tych Szymona i Judy Tadeusza, Aposto\197\130\195\179w")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 22)))
+ (cel
+ ((slug sts-soter-caius)
+ (names
+ ((en "Sts. Soter & Caius")
+ (pl
+ "\197\155\197\155. Sotera i Kajusa, Papie\197\188y i M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 11)))
+ (cel
+ ((slug sts-tiburtius-susanna)
+ (names
+ ((en "Sts. Tiburtius & Susanna")
+ (pl
+ "\197\155\197\155. Tyburcjusza i Zuzanny, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 14)))
+ (cel
+ ((slug sts-tiburtius-valerian-et-maximus-martyrs)
+ (names
+ ((en "Sts. Tiburtius, Valerian et Maximus, Martyrs")
+ (pl
+ "\197\155\197\155. Tyburcjusza, Waleriana i Maksyma, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 22)))
+ (cel
+ ((slug sts-timothy-hippolytus-and-symphorianus-martyrs)
+ (names
+ ((en "Sts. Timothy, Hippolytus and Symphorianus, Martyrs")
+ (pl
+ "\197\155\197\155. Tymoteusza, Hipolita i Symforiana, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 10)))
+ (cel
+ ((slug sts-tryphonis-respicii-et-nymphae)
+ (names
+ ((en "Sts. Tryphonis, Respicii, et Nymphae")
+ (pl
+ "\197\155\197\155. Tryfona, Respicjusza i Nimfy, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 22)))
+ (cel
+ ((slug sts-vincent-anastasius)
+ (names
+ ((en "Sts. Vincent & Anastasius")
+ (pl
+ "\197\155\197\155. Wincentego i Anastazego, M\196\153czennik\195\179w")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 4)))
+ (cel
+ ((slug sts-vitalis-and-agricola-martyrs)
+ (names
+ ((en "Sts. Vitalis and Agricola, Martyrs")
+ (pl
+ "\197\155\197\155. Witalisa i Agrykoli, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 11) (day 26)))
+ (cel
+ ((slug sylvester)
+ (names ((en "St. Sylvester") (pl "\197\155w. Sylwestra, Opata")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 18)))
+ (cel
+ ((slug symphorosa-and-sons)
+ (names
+ ((en "Ss. Symphorosa and sons")
+ (pl "\197\155\197\155. Symforozy i Siedmiu Jej Syn\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 5)))
+ (cel
+ ((slug telesphorus-pope-and-martyr)
+ (names
+ ((en "St. Telesphorus Pope and Martyr")
+ (pl
+ "\197\155w. Telesfora, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 15)))
+ (cel
+ ((slug teresa-of-avila)
+ (names
+ ((en "St. Teresa of Avila")
+ (pl "\197\155w. Teresy z Avili, Dziewicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 23)))
+ (cel
+ ((slug thecla)
+ (names
+ ((en "St. Thecla")
+ (pl "\197\155w. Tekli, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 3)))
+ (cel
+ ((slug theresa-of-the-infant-jesus)
+ (names
+ ((en "St. Theresa of the Infant Jesus")
+ (pl "\197\155w. Teresy od Dzieci\196\133tka Jezus, Dziewicy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 21)))
+ (cel
+ ((slug thomas)
+ (names
+ ((en "St. Thomas") (pl "\197\155w. Tomasza, Aposto\197\130a")))
+ (rank Class2) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 3) (day 7)))
+ (cel
+ ((slug thomas-aquinas)
+ (names
+ ((en "St. Thomas Aquinas")
+ (pl
+ "\197\155w. Tomasza z Akwinu, Wyznawcy i Doktora Ko\197\155cio\197\130a")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 29)))
+ (cel
+ ((slug thomas-becket)
+ (names
+ ((en "St. Thomas Becket")
+ (pl
+ "\197\155w. Tomasza z Canterbury, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 22)))
+ (cel
+ ((slug thomas-of-villanova)
+ (names
+ ((en "St. Thomas of Villanova")
+ (pl "\197\155w. Tomasza z Villanueva, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 1) (day 24)))
+ (cel
+ ((slug timothy)
+ (names
+ ((en "St. Timothy")
+ (pl "\197\155w. Tymoteusza, Biskupa i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 6)))
+ (cel
+ ((slug titus)
+ (names
+ ((en "St. Titus") (pl "\197\155w. Tytusa, Biskupa i Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 6)))
+ (cel
+ ((slug transfiguration-of-our-lord)
+ (names
+ ((en "Transfiguration of Our Lord")
+ (pl "Przemienienie Pa\197\132skie")))
+ (rank Class2) (status Feast) (colour White) (subject Lord)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 1)))
+ (cel
+ ((slug twelve-holy-brothers-martyrs)
+ (names
+ ((en "Twelve Holy Brothers, Martyrs")
+ (pl
+ "\197\155\197\155. Dwunastu Braci, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 16)))
+ (cel
+ ((slug ubaldus)
+ (names
+ ((en "St. Ubaldus")
+ (pl "\197\155w. Ubalda, Biskupa i Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 25)))
+ (cel
+ ((slug urban-pope-and-martyr)
+ (names
+ ((en "St. Urban, Pope and Martyr")
+ (pl
+ "\197\155w. Urbana I, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 10) (day 21)))
+ (cel
+ ((slug ursula-and-companions)
+ (names
+ ((en "St. Ursula and Companions")
+ (pl
+ "\197\155\197\155. Urszuli i Towarzyszek, Dziewic i M\196\153czennic")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 2) (day 14)))
+ (cel
+ ((slug valentine)
+ (names
+ ((en "St. Valentine")
+ (pl
+ "\197\155w. Walentego, Kap\197\130ana i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 5) (day 18)))
+ (cel
+ ((slug venantius)
+ (names
+ ((en "St. Venantius")
+ (pl "\197\155w. Wenancjusza, M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 24)))
+ (cel
+ ((slug vigil-of-christmas)
+ (names
+ ((en "Vigil of Christmas")
+ (pl "Wigilia Bo\197\188ego Narodzenia")))
+ (rank Class1) (status Feast) (colour Violet) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 9)))
+ (cel
+ ((slug vigil-of-st-lawrence)
+ (names
+ ((en "Vigil of St. Lawrence")
+ (pl "Wigilia \197\155w. Wawrzy\197\132ca, M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 28)))
+ (cel
+ ((slug vigil-of-sts-peter-paul)
+ (names
+ ((en "Vigil of Sts. Peter & Paul")
+ (pl
+ "Wigilia \197\155\197\155. Aposto\197\130\195\179w Piotra i Paw\197\130a")))
+ (rank Class2) (status Feast) (colour Violet) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 14)))
+ (cel
+ ((slug vigil-of-the-assumption)
+ (names
+ ((en "Vigil of the Assumption")
+ (pl "Wigilia Wniebowzi\196\153cia N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 23)))
+ (cel
+ ((slug vigil-of-the-nativity-of-st-john-the-baptist)
+ (names
+ ((en "Vigil of the Nativity of St. John the Baptist")
+ (pl "Wigilia Narodzenia \197\154w. Jana Chrzciciela")))
+ (rank Class2) (status Feast) (colour Violet) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 19)))
+ (cel
+ ((slug vincent-de-paul)
+ (names
+ ((en "St. Vincent de Paul")
+ (pl "\197\155w. Wincentego a Paulo, Wyznawcy")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 4) (day 5)))
+ (cel
+ ((slug vincent-ferrer)
+ (names
+ ((en "St. Vincent Ferrer")
+ (pl "\197\155w. Wincentego Fereriusza, Wyznawcy")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 7) (day 2)))
+ (cel
+ ((slug visitation-of-the-blessed-virgin-mary)
+ (names
+ ((en "Visitation of the Blessed Virgin Mary")
+ (pl "Nawiedzenia N. M. P.")))
+ (rank Class2) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 15)))
+ (cel
+ ((slug vitus)
+ (names
+ ((en "St. Vitus")
+ (pl
+ "\197\155\197\155. Wita, Modesta i Krescencji, M\196\153czennik\195\179w")))
+ (rank Class3) (status Commemoration_only) (colour White)
+ (subject Saint) (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 12) (day 2)))
+ (cel
+ ((slug vivian)
+ (names
+ ((en "St. Vivian")
+ (pl "\197\155w. Bibiany, Dziewicy i M\196\153czennicy")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 9) (day 28)))
+ (cel
+ ((slug wenceslaus)
+ (names
+ ((en "St. Wenceslaus")
+ (pl
+ "\197\155w. Wac\197\130awa, Ksi\196\153cia i M\196\153czennika")))
+ (rank Class3) (status Feast) (colour Red) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 6) (day 25)))
+ (cel
+ ((slug william)
+ (names ((en "St. William") (pl "\197\155w. Wilhelma, Opata")))
+ (rank Class3) (status Feast) (colour White) (subject Saint)
+ (citations ()) (layer ef-universal))))
+ ((date (Fixed (month 8) (day 26)))
+ (cel
+ ((slug zephyrinus)
+ (names
+ ((en "St. Zephyrinus")
+ (pl
+ "\197\155w. Zefiryna, Papie\197\188a i M\196\153czennika")))
+ (rank Class3) (status Commemoration_only) (colour Red)
+ (subject Saint) (citations ()) (layer ef-universal)))))))
diff --git a/dune b/dune
new file mode 100644
index 0000000..8a00001
--- /dev/null
+++ b/dune
@@ -0,0 +1,24 @@
+; Makes data/ef/*.sexp part of the DEFAULT build target (`dune build`, no
+; args), not only whatever individual stanzas elsewhere happen to declare as
+; their own deps. Without this, `rm -rf _build && dune build && dune exec
+; colitur -- day 2026` failed: bare `dune build` resolves to the workspace
+; root's own `default` alias, which -- absent this file -- is implicitly
+; bound to `@install` alone and never reaches data/ef/dune's own `default`
+; alias (that alias only participates in an EXPLICIT `@default`/`@dir`
+; recursive request, e.g. `dune build @default`, not in the plain no-target
+; invocation; verified empirically -- see the task report). `test/dune`'s
+; cram stanza masked this: it declares its own (deps ../data/ef/*.sexp),
+; which materialises them as a side effect of `dune build @runtest`, so the
+; test suite could not have caught this on its own -- it took a genuinely
+; clean rebuild to surface it.
+;
+; (alias_rec install) keeps whatever `default` would otherwise resolve to
+; (the package's own install artifacts -- executables, libraries, reached
+; recursively through every subdirectory's own `install` alias) so this
+; ADDS a requirement rather than replacing dune's own default behaviour.
+(alias
+ (name default)
+ (deps
+ (alias_rec install)
+ data/ef/sanctoral.sexp
+ data/ef/adjustments.sexp))
diff --git a/lib/kernel/calendar.ml b/lib/kernel/calendar.ml
new file mode 100644
index 0000000..5d3572c
--- /dev/null
+++ b/lib/kernel/calendar.ml
@@ -0,0 +1,387 @@
+(* Resolution across a whole liturgical year. See calendar.mli for the
+ architectural rationale (why [year] is the primitive and [day] derived). *)
+
+(* The kernel's domain floor and ceiling (Date.make's documented 1583..9999
+ bound). Both are always constructible -- in-range by definition -- so
+ neither of these can itself raise. *)
+let domain_min_date =
+ match Date.make ~year:1583 ~month:1 ~day:1 with Ok d -> d | Error e -> failwith e
+
+let domain_max_date =
+ match Date.make ~year:9999 ~month:12 ~day:31 with Ok d -> d | Error e -> failwith e
+
+(* [start, stop] for the liturgical year opening in civil year [y], clamped at
+ both ends of the domain rather than calling [rite.year_start] on a civil
+ year outside 1583..9999.
+
+ Top: at [y] = 9999, [rite.year_start (y + 1)] would ask for civil year
+ 10000 -- out of Date's domain (Plan 2 shipped exactly this bug in
+ Validate). Clamp [stop] to 31 December 9999 instead: the final liturgical
+ year comes back truncated, not un-computable.
+
+ Bottom: symmetric case, reachable only through [day] below. A date in
+ civil year 1583 before that year's own [rite.year_start] genuinely belongs
+ to the liturgical year that opened in civil year 1582 for an
+ Advent-anchored rite -- but [rite.year_start 1582] is equally out of
+ domain. [day] only ever decrements a valid date's own (in-domain) civil
+ year by at most one, so [y] = 1582 is the sole way this branch is reached.
+ Clamp [start] to 1 January 1583: "year 1582" becomes the truncated
+ stretch from the domain floor up to the day before [rite.year_start 1583],
+ which is exactly the sliver a date there needs.
+
+ [y] itself is clamped once, up front, to [1582, 9999] -- not left to each
+ branch's own guard. Task 5's review found that guarding [start] and [stop]
+ independently protected only one of their two [rite.year_start] calls
+ each: [start]'s guard (["y < 1583"]) leaves [stop]'s "y + 1" call
+ unguarded at the bottom (["year 999"] still called [year_start 1000], out
+ of domain), and [stop]'s guard (["y >= 9999"]) leaves [start]'s call
+ unguarded at the top (["year 100000"] still called [year_start 100000]).
+ Neither is reachable through [day] (see calendar.mli), but [year] is
+ public, and a direct out-of-contract call must not raise either. Clamping
+ [y] once closes both gaps with one check instead of two. *)
+let year_bounds (rite : ('s, 'r) Rite.t) (y : int) : Date.t * Date.t =
+ let y = max 1582 (min 9999 y) in
+ let start = if y < 1583 then domain_min_date else rite.Rite.year_start y in
+ let stop =
+ if y >= 9999 then domain_max_date else Date.add_days (rite.Rite.year_start (y + 1)) (-1)
+ in
+ (start, stop)
+
+(* RG 91's contest for one date: the temporal office against every sanctoral
+ entry whose Date_spec resolves to it, plus whatever the placement pass
+ below has [injected] there so far (a celebration transferred in from an
+ impeded day elsewhere). [Layer.on_date] is keyed on exactly (month, day),
+ which for a [Fixed] spec -- the only form Plan 2 ships -- is the same test
+ as resolving the spec against [date]'s own year and comparing, so no
+ separate filter is needed here.
+
+ [injected] is keyed by [Date.to_rata] rather than [Date.t] directly:
+ [Date.t] carries no [compare]-respecting hash, and rata-die is already the
+ canonical total order this module uses for date arithmetic. *)
+let resolve_with_injected (rite : ('s, 'r) Rite.t) (idx : 'r Layer.by_date)
+ (injected : (int, 'r Precedence.candidate list) Hashtbl.t) (date : Date.t) :
+ ('s, 'r) Temporal.t * 's Precedence.context * 'r Precedence.resolution =
+ let temporal = rite.Rite.temporal date in
+ let temporal_candidate =
+ { Precedence.cel = temporal.Temporal.office; origin = Precedence.Temporal }
+ in
+ let natural =
+ Layer.on_date idx ~month:(Date.month date) ~day:(Date.day date)
+ |> List.map (fun (e : 'r Layer.entry) ->
+ { Precedence.cel = e.Layer.cel; origin = Precedence.Sanctoral })
+ in
+ let arrived = try Hashtbl.find injected (Date.to_rata date) with Not_found -> [] in
+ let ctx = { Precedence.date; season = temporal.Temporal.season; weekday = temporal.Temporal.weekday } in
+ let resolution =
+ Precedence.resolve rite.Rite.rules ctx ~temporal:temporal_candidate ~sanctoral:(natural @ arrived)
+ in
+ (temporal, ctx, resolution)
+
+(* What Precedence.resolve currently reports as observed on [date], given the
+ placements decided so far -- this is exactly the [occupant] callback
+ Rite.transfer_target's search walks forward with (rite.mli explains why
+ that judgement has to come from the rite, not from here). *)
+let occupant_of (rite : ('s, 'r) Rite.t) (idx : 'r Layer.by_date)
+ (injected : (int, 'r Precedence.candidate list) Hashtbl.t) (date : Date.t) : 'r Celebration.t =
+ let _, _, resolution = resolve_with_injected rite idx injected date in
+ resolution.Precedence.observed.Precedence.cel
+
+(* Hard guard on the placement fixed point (spec §2.4): every genuine
+ transfer moves a celebration strictly forward and the celebration set is
+ finite, so the round below always empties [deferred] within a handful of
+ rounds in practice (an RG 97-98 collision of N feasts on one date costs at
+ most N-1 extra rounds -- each round resolves the winner of whatever pile-up
+ occurred and re-defers the rest, one fewer each time). 64 is not tuned to
+ that bound; it is a defensive ceiling nothing in the 1962 calendar comes
+ close to, so that a rite/data combination this module has not anticipated
+ fails as a recorded, inspectable [omitted] reason (below) instead of
+ hanging the CLI. *)
+let max_transfer_rounds = 64
+
+let unconverged_reason =
+ "omitted: transfer placement did not converge within max_transfer_rounds (RG 96-98)"
+
+(* A rite-supplied [transfer_target] is trusted to search strictly forward
+ (rite.mli), but nothing stops it naming a date past the end of the
+ liturgical year it was asked about -- e.g. an I-class feast impeded in
+ the last days before Advent I, whose first admissible day genuinely
+ falls in the following liturgical year's own territory (unproven to
+ occur in the real EF calendar, but not something this module can rule
+ out by construction). [place_transfers] never injects such a target: the
+ [dates] array is exactly what [year]/[build_day] walk to produce the
+ result, so a candidate placed outside it would be [observed]/
+ [transferred_in] nowhere in the output at all -- gone, not merely
+ mis-filed, and silently so, contradicting [calendar.mli]'s "never
+ silently dropped". This reason makes that failure mode visible instead. *)
+let out_of_range_reason = "omitted: transfer target falls outside the liturgical year (RG 96)"
+
+(* Rebuilds the per-date injection index from [assignment] (slug -> (origin,
+ target)) fresh each round, rather than accumulating it incrementally as
+ candidates are placed. A candidate re-deferred in a later round (its first
+ target turned out to already be claimed by a higher-band rival, see
+ [place_transfers]) must vacate its old target date entirely, not merely
+ gain a second one; rebuilding from a slug-keyed map, which holds exactly
+ one entry per candidate, gives that for free. An append-only structure
+ would instead leave the stale placement behind forever, and the round
+ loop would never see [deferred] empty out. *)
+let injected_index_of_assignment (assignment : (string, Date.t * Date.t) Hashtbl.t)
+ (candidate_by_slug : (string, 'r Precedence.candidate) Hashtbl.t) :
+ (int, 'r Precedence.candidate list) Hashtbl.t =
+ let tbl : (int, 'r Precedence.candidate list) Hashtbl.t = Hashtbl.create 16 in
+ Hashtbl.iter
+ (fun slug (_origin, target) ->
+ let key = Date.to_rata target in
+ let c = Hashtbl.find candidate_by_slug slug in
+ Hashtbl.replace tbl key (c :: (try Hashtbl.find tbl key with Not_found -> [])))
+ assignment;
+ tbl
+
+(* The placement pass itself (spec §2.4 steps 1-4; step 5, recording
+ transferred_in/out, is [year]'s job once this reaches a fixed point).
+
+ Every [Precedence.Transfer]-*and*-[Precedence.Repose]-disposed loser lands
+ in [resolution.deferred] together -- [Precedence.resolve]'s own fold
+ matches them as one case, [Transfer | Repose -> ... :: defs ...] -- and
+ everything gathered below is routed through
+ [rite.transfer_target], i.e. RG 96's next-admissible-day search. That is
+ only correct for [Transfer]. [Repose] denotes RG 100-102's *repositio*
+ (perpetual impediment, reassigned to the next appropriate day and treated
+ as proper) -- a distinct rubric this module does not implement. It is
+ documented here rather than split into a second mechanism because nothing
+ currently produces [Repose]: the design spec records it as "declared, not
+ exercised" (§1.3) -- the EF ruleset (Tasks 7-9) returns it for nothing;
+ perpetual impediment arises from proper/diocesan calendars, which are
+ overlay content, out of this plan's scope. If a future rite's rules ever
+ do return [Repose], it would silently take the RG 96 path here, which
+ would be wrong -- worth knowing before that day, not discovering it then.
+
+ Each round: gather every currently-deferred candidate across the whole
+ year (fresh, against this round's [injected] state -- a candidate already
+ placed and now winning its target is no longer a loser anywhere and so
+ will not reappear here); if none, the fixed point is reached. Otherwise
+ sort ALL of them by band -- RG 97-98: this is the global ordering that
+ decides who transfers first when I-class feasts coincide -- ties break on
+ slug, same convention as Precedence.compare_by, so placement never depends
+ on the layer's own entry order. Then place each in turn, in that order.
+
+ [claimed_this_round] is what makes the sort actually decide anything: it
+ starts empty every round and gains one entry per candidate placed so far
+ THIS round, and [occupant_with_claims] reports a claimed date as occupied
+ by whoever claimed it, layered on top of [injected] (last round's settled
+ state, frozen for the round -- see [injected_index_of_assignment] for why
+ that has to stay frozen rather than being updated in place). Without it,
+ every candidate in a round would search against the exact same snapshot
+ and a same-date collision would only be caught (and only one side of it
+ corrected) on re-resolution next round, one collision layer per round --
+ RG 97-98's own ordering would still come out right in the end, but only
+ by accident of Precedence.resolve's own internal tie-break repeating this
+ module's, not because this module's sort ever decided anything. Layering
+ the claims instead means a same-round collision is resolved in the one
+ round it is found, in the sorted order, and the earlier RG 97-98 test
+ pins exactly that: it fails on "claims 2 Feb first" without this.
+
+ [~start ~stop] bound the [transfer_target] a placement is allowed to
+ settle on: outside that range it goes into [out_of_range] instead of
+ [assignment], permanently (never retried -- [transfer_target] is a pure
+ function of a candidate's own permanent origin and the occupancy state,
+ so asking it again would only recompute the same out-of-range answer). *)
+let place_transfers (rite : ('s, 'r) Rite.t) (idx : 'r Layer.by_date) ~(start : Date.t)
+ ~(stop : Date.t) (dates : Date.t array) :
+ (string, Date.t * Date.t) Hashtbl.t
+ * (string, 'r Precedence.candidate) Hashtbl.t
+ * (string, Date.t * Date.t) Hashtbl.t =
+ let assignment : (string, Date.t * Date.t) Hashtbl.t = Hashtbl.create 16 in
+ let candidate_by_slug : (string, 'r Precedence.candidate) Hashtbl.t = Hashtbl.create 16 in
+ let out_of_range : (string, Date.t * Date.t) Hashtbl.t = Hashtbl.create 4 in
+ let compare_deferred (_, ctx1, c1) (_, ctx2, c2) =
+ let b1 = rite.Rite.rules.Precedence.band ctx1 c1 in
+ let b2 = rite.Rite.rules.Precedence.band ctx2 c2 in
+ if b1 <> b2 then Int.compare b1 b2
+ else Slug.compare c1.Precedence.cel.Celebration.slug c2.Precedence.cel.Celebration.slug
+ in
+ let round = ref 0 in
+ let converged = ref false in
+ let guard_hit = ref false in
+ while (not !converged) && not !guard_hit do
+ incr round;
+ if !round > max_transfer_rounds then guard_hit := true
+ else begin
+ let injected = injected_index_of_assignment assignment candidate_by_slug in
+ let raw =
+ Array.to_list dates
+ |> List.concat_map (fun date ->
+ let _, ctx, resolution = resolve_with_injected rite idx injected date in
+ List.map (fun c -> (date, ctx, c)) resolution.Precedence.deferred)
+ in
+ (* [raw] rediscovers every candidate's *permanent* natural loss at its
+ origin every round -- the layer entry never moves, so a candidate
+ already settled elsewhere still shows up losing at the date it was
+ always going to lose at. Left unfiltered, that stale sighting gets
+ placed again right next to the candidate's own already-settled
+ self, which -- because a placed candidate's own rank makes it look
+ "occupied" to a fresh search starting from its original origin --
+ oscillates between two dates forever, never reaching [deferred =
+ []] (confirmed by removing this filter: "transferable" lands on 14
+ Jan instead of 13 in test_transfer_moves_and_does_not_duplicate,
+ not merely "doesn't converge" -- the bug is a wrong answer, not
+ only a hang). A sighting is genuinely actionable only if the
+ candidate has never been placed yet (first time seen, and not
+ already known unplaceable -- [out_of_range] gets the same
+ permanent exclusion [assignment] does, for the same reason), or if
+ it is losing exactly at the date it is *currently* assigned to (a
+ fresh RG 97-98 bump: something else also landed there and
+ out-ranked it) -- any other date is the stale, permanent one and is
+ dropped. *)
+ let deferred =
+ List.filter
+ (fun (date, _ctx, c) ->
+ let slug = Slug.to_string c.Precedence.cel.Celebration.slug in
+ if Hashtbl.mem out_of_range slug then false
+ else
+ match Hashtbl.find_opt assignment slug with
+ | None -> true
+ | Some (_, target) -> Date.compare date target = 0)
+ raw
+ in
+ if deferred = [] then converged := true
+ else begin
+ let claimed_this_round : (int, 'r Precedence.candidate) Hashtbl.t = Hashtbl.create 4 in
+ let occupant_with_claims d =
+ match Hashtbl.find_opt claimed_this_round (Date.to_rata d) with
+ | Some c -> c.Precedence.cel
+ | None -> occupant_of rite idx injected d
+ in
+ List.stable_sort compare_deferred deferred
+ |> List.iter (fun (origin, _ctx, c) ->
+ let target = rite.Rite.transfer_target c origin occupant_with_claims in
+ let slug = Slug.to_string c.Precedence.cel.Celebration.slug in
+ if Date.compare target start < 0 || Date.compare target stop > 0 then
+ Hashtbl.replace out_of_range slug (origin, target)
+ else begin
+ Hashtbl.replace claimed_this_round (Date.to_rata target) c;
+ Hashtbl.replace assignment slug (origin, target);
+ Hashtbl.replace candidate_by_slug slug c
+ end)
+ end
+ end
+ done;
+ (assignment, candidate_by_slug, out_of_range)
+
+(* The final build of one day, once placement has reached its fixed point (or
+ exhausted the guard): resolve against the settled [injected] state, then
+ layer on [transferred_in] (this date received an injected candidate that
+ went on to win) and [transferred_out] (whichever candidates' settled
+ placements originated here -- RG 97-98 lets that be more than one; see
+ [Liturgical_day.transferred_out]). *)
+let build_day (rite : ('s, 'r) Rite.t) (idx : 'r Layer.by_date)
+ (assignment : (string, Date.t * Date.t) Hashtbl.t)
+ (out_of_range : (string, Date.t * Date.t) Hashtbl.t)
+ (injected : (int, 'r Precedence.candidate list) Hashtbl.t)
+ (transferred_out_of : (int, ('r Celebration.t * Date.t) list) Hashtbl.t) (date : Date.t) :
+ ('s, 'r) Liturgical_day.t =
+ let temporal, _ctx, resolution = resolve_with_injected rite idx injected date in
+ let arrived = try Hashtbl.find injected (Date.to_rata date) with Not_found -> [] in
+ let transferred_in =
+ arrived
+ |> List.find_opt (fun c ->
+ Slug.equal c.Precedence.cel.Celebration.slug
+ resolution.Precedence.observed.Precedence.cel.Celebration.slug)
+ |> Option.map (fun c -> c.Precedence.cel)
+ in
+ let transferred_out =
+ try Hashtbl.find transferred_out_of (Date.to_rata date) with Not_found -> []
+ in
+ (* [resolution.deferred] here is NOT "the placement pass never got to
+ these": it is the origin day's own permanent, structural loss -- the
+ layer entry that lost the RG 91 contest here never moves, so a
+ candidate successfully placed somewhere else still shows up losing at
+ the exact date it was always going to lose at (this is the same fact
+ [place_transfers]'s round loop has to filter around, see its comment).
+ A [deferred] sighting only belongs in [omitted] if it was never
+ actually settled anywhere -- i.e. it is stuck in [out_of_range], or the
+ guard above was hit before it reached a day it wins. Settled elsewhere
+ means genuinely accounted for via [observed]/[transferred_in] on the
+ day it landed and [transferred_out] here, not via [omitted] too --
+ double-booking it in both would fail Task 12's "appears exactly once"
+ reading of this day alone. *)
+ let unresolved c =
+ let slug = Slug.to_string c.Precedence.cel.Celebration.slug in
+ if Hashtbl.mem out_of_range slug then true
+ else
+ match Hashtbl.find_opt assignment slug with
+ | None -> true
+ | Some (_, target) ->
+ not (Slug.equal (occupant_of rite idx injected target).Celebration.slug c.Precedence.cel.Celebration.slug)
+ in
+ let reason_for c =
+ if Hashtbl.mem out_of_range (Slug.to_string c.Precedence.cel.Celebration.slug) then
+ out_of_range_reason
+ else unconverged_reason
+ in
+ let omitted =
+ List.map (fun (c, reason) -> (c.Precedence.cel, reason)) resolution.Precedence.omitted
+ @ (resolution.Precedence.deferred |> List.filter unresolved
+ |> List.map (fun c -> (c.Precedence.cel, reason_for c)))
+ in
+ {
+ Liturgical_day.date;
+ rite = rite.Rite.id;
+ temporal;
+ observed = resolution.Precedence.observed.Precedence.cel;
+ commemorations =
+ List.map (fun (c, p) -> (c.Precedence.cel, p)) resolution.Precedence.commemorations;
+ transferred_in;
+ transferred_out;
+ omitted;
+ citations = [];
+ }
+
+let year (rite : ('s, 'r) Rite.t) (layer : 'r Layer.t) (y : int) :
+ ('s, 'r) Liturgical_day.t array =
+ let idx = Layer.index_by_date layer in
+ let start, stop = year_bounds rite y in
+ (* [max 0]: defends [Array.init] against a negative length, which would
+ otherwise arise for a rite whose [year_start] lands exactly on the
+ domain floor (start clamps to the same date, giving [stop] a day
+ before it). Not reachable through [day] -- see calendar.mli -- but
+ [year] is public, and a direct out-of-contract call must not raise
+ either. *)
+ let n = max 0 (Date.to_rata stop - Date.to_rata start + 1) in
+ let dates = Array.init n (fun i -> Date.add_days start i) in
+ let assignment, candidate_by_slug, out_of_range = place_transfers rite idx ~start ~stop dates in
+ let injected = injected_index_of_assignment assignment candidate_by_slug in
+ let transferred_out_of : (int, ('r Celebration.t * Date.t) list) Hashtbl.t = Hashtbl.create 16 in
+ Hashtbl.iter
+ (fun slug (origin, target) ->
+ let cel = (Hashtbl.find candidate_by_slug slug).Precedence.cel in
+ let key = Date.to_rata origin in
+ Hashtbl.replace transferred_out_of key
+ ((cel, target) :: (try Hashtbl.find transferred_out_of key with Not_found -> [])))
+ assignment;
+ (* Canonicalise each day's departures: the accumulation above walks
+ [assignment] via [Hashtbl.iter], whose bucket order is not guaranteed
+ stable across runs (OCaml's hash seed can be randomised via
+ OCAMLRUNPARAM=R), so a day with more than one departure -- RG 97-98's
+ coinciding-feasts case -- would otherwise report them in a
+ run-dependent order: an environment read, in a kernel whose invariants
+ forbid one. [Layer.index_by_date] guards against exactly this by
+ re-sorting each date bucket after building it (layer.ml); same fix,
+ same reason. Sorted by target date -- which, for a correctly-converged
+ year, is also RG 97-98's own order: the higher-precedence loser claims
+ the earlier admissible day -- ties (not expected, but not assumed
+ impossible) broken on slug. *)
+ let by_target_then_slug (c1, t1) (c2, t2) =
+ let dc = Date.compare t1 t2 in
+ if dc <> 0 then dc else Slug.compare c1.Celebration.slug c2.Celebration.slug
+ in
+ Hashtbl.iter
+ (fun k v -> Hashtbl.replace transferred_out_of k (List.sort by_target_then_slug v))
+ transferred_out_of;
+ Array.map (build_day rite idx assignment out_of_range injected transferred_out_of) dates
+
+let day (rite : ('s, 'r) Rite.t) (layer : 'r Layer.t) (date : Date.t) :
+ ('s, 'r) Liturgical_day.t =
+ let cy = Date.year date in
+ let y = if Date.compare date (rite.Rite.year_start cy) >= 0 then cy else cy - 1 in
+ let start, _ = year_bounds rite y in
+ (year rite layer y).(Date.to_rata date - Date.to_rata start)
diff --git a/lib/kernel/calendar.mli b/lib/kernel/calendar.mli
new file mode 100644
index 0000000..1c0b0ed
--- /dev/null
+++ b/lib/kernel/calendar.mli
@@ -0,0 +1,72 @@
+(** Resolution across a whole liturgical year (spec §2.4).
+
+ Transfers make per-date resolution impossible to do correctly: resolving
+ 25 March can push a feast onto 26 March, and RG 97-98 has coinciding
+ I-class feasts transfer in table order, which needs global knowledge of
+ the whole year. So [year] is the primitive -- it resolves every date in
+ one pass -- and [day] is derived: it finds the liturgical year containing
+ a date and indexes into it. Both are pure; neither caches.
+
+ Once every day's temporal-vs-sanctoral contest is resolved, [year] places
+ every deferred candidate (RG 96-98): a losing I-class candidate the
+ rite's rules send to [Precedence.Transfer] does not stay put -- it moves
+ to the next day [rite.transfer_target] names as admissible, and both
+ ends of the move are recorded: [transferred_in] on the day it arrives
+ (at most one -- RG 96 sends each departure to the next day that is not I
+ or II class, and the first to arrive occupies it), [transferred_out] on
+ the day it left (a list, not an option: RG 97-98 has coinciding I-class
+ feasts transfer "in order", so one day can lose more than one). Every
+ deferred candidate is accounted for exactly once: placed, or -- only if
+ the placement fixed point is not reached within the round guard (which
+ nothing in the 1962 calendar is expected to trigger), or the rite's own
+ [transfer_target] names a date outside this liturgical year's own range
+ (unproven to occur in the real EF calendar, but not ruled out by
+ construction) -- left in [Liturgical_day.omitted] with a reason that
+ says which, never silently dropped. See [calendar.ml]'s
+ [place_transfers] for the algorithm and its termination argument.
+
+ [Precedence.Repose]-disposed losers are gathered the same way
+ [Precedence.Transfer]-disposed ones are (Precedence folds both into
+ [deferred] as one case) and are routed through the same RG 96 search.
+ That is only correct for [Transfer]: [Repose] denotes RG 100-102's
+ *repositio*, a distinct rubric this module does not implement. Nothing
+ in the EF ruleset currently returns [Repose] (design spec §1.3:
+ "declared, not exercised" -- perpetual impediment arises from
+ proper/diocesan calendars, out of this plan's scope), so the gap is
+ latent rather than a live bug; documented here rather than given a
+ second mechanism for a disposition nothing emits. *)
+
+(** [year rite layer y] resolves every day of the liturgical year that opens
+ in civil year [y]: from [rite.year_start y] through the day before
+ [rite.year_start (y + 1)], inclusive of both ends.
+
+ Total over 1583..9999, including the boundary years, and beyond them too:
+ [y] is clamped to [1582, 9999] before either bound is computed (not just
+ guarded near the two edges independently -- see [year_bounds] in
+ [calendar.ml] for why that distinction matters), so [year] never raises
+ regardless of the [y] it is given, not only for values near the domain
+ edge.
+ - At [y] = 9999, [rite.year_start (y + 1)] would ask for civil year
+ 10000, out of {!Date}'s domain (this is the bug Plan 2 shipped in
+ [Validate] and later fixed). The end of the walk clamps to 31 December
+ 9999 instead of computing that call; the returned year comes back
+ truncated to whatever the rite's own temporal cycle covers between
+ [rite.year_start 9999] and the last day of that civil year, not
+ un-computable.
+ - Symmetrically, [y] < 1583 clamps the start of the walk to 1 January
+ 1583 instead of calling [rite.year_start y] on an out-of-domain civil
+ year. [year] is never called this way directly by anything in this
+ module; {!day} is the only caller that can reach [y] = 1582 (one below
+ the floor, never lower), when the date it was asked about sits in civil
+ year 1583 before that year's own [rite.year_start] -- i.e. the sliver
+ whose true liturgical year opened in civil year 1582, which the domain
+ cannot represent. Calling [year] with such a [y] directly is also safe:
+ it returns exactly that truncated sliver. *)
+val year : ('s, 'r) Rite.t -> 'r Layer.t -> int -> ('s, 'r) Liturgical_day.t array
+
+(** [day rite layer date] finds the liturgical year containing [date] -- the
+ year [y] with [rite.year_start y <= date < rite.year_start (y + 1)] --
+ and returns its slot for [date]. Recomputes that whole year on every
+ call: pure, no cache, no mutable state. Acceptable cost for the natural
+ usage (dump a year, sweep years for validation), which pays it once. *)
+val day : ('s, 'r) Rite.t -> 'r Layer.t -> Date.t -> ('s, 'r) Liturgical_day.t
diff --git a/lib/kernel/celebration.ml b/lib/kernel/celebration.ml
index 2963366..eb4249e 100644
--- a/lib/kernel/celebration.ml
+++ b/lib/kernel/celebration.ml
@@ -8,10 +8,17 @@ open Sexplib0.Sexp_conv
but would carry no information while forcing every consumer (Layer,
Overlay, and later Precedence and Calendar) to thread a variable that
means nothing. *)
+(* Whether this celebration can be the observed day at all. The 1960 reform
+ reduced many feasts to a bare commemoration; they retain a rank (RG 111 orders
+ admitted commemorations by dignity) but can never be observed. NOT a fifth
+ rank: RG 8 fixes the classes at four. *)
+type status = Feast | Commemoration_only [@@deriving sexp]
+
type 'r t = {
slug : Slug.t;
names : Names.t;
rank : 'r;
+ status : status;
colour : Colour.t;
subject : Subject.t;
citations : Citation.t list;
@@ -19,6 +26,6 @@ type 'r t = {
}
[@@deriving sexp]
-let make ~slug ?(names = Names.empty) ~rank ~colour ?(subject = Subject.Temporal)
- ?(citations = []) ~layer () =
- { slug; names; rank; colour; subject; citations; layer }
+let make ~slug ?(names = Names.empty) ~rank ?(status = Feast) ~colour
+ ?(subject = Subject.Temporal) ?(citations = []) ~layer () =
+ { slug; names; rank; status; colour; subject; citations; layer }
diff --git a/lib/kernel/celebration.mli b/lib/kernel/celebration.mli
index 1c84d35..a3c2960 100644
--- a/lib/kernel/celebration.mli
+++ b/lib/kernel/celebration.mli
@@ -1,8 +1,15 @@
+(** Whether this celebration can be the observed day at all. The 1960 reform
+ reduced many feasts to a bare commemoration; they retain a rank (RG 111
+ orders admitted commemorations by dignity) but can never be observed. NOT
+ a fifth rank: RG 8 fixes the classes at four. *)
+type status = Feast | Commemoration_only [@@deriving sexp]
+
(** A celebration. Parameterised by the rite's rank type only. *)
type 'r t = {
slug : Slug.t;
names : Names.t;
rank : 'r;
+ status : status;
colour : Colour.t;
subject : Subject.t;
citations : Citation.t list;
@@ -10,7 +17,8 @@ type 'r t = {
}
[@@deriving sexp]
-(** [subject] defaults to [Subject.Temporal], [names] to empty, [citations] to []. *)
+(** [status] defaults to [Feast], [subject] to [Subject.Temporal], [names] to
+ empty, [citations] to []. *)
val make :
- slug:Slug.t -> ?names:Names.t -> rank:'r -> colour:Colour.t ->
+ slug:Slug.t -> ?names:Names.t -> rank:'r -> ?status:status -> colour:Colour.t ->
?subject:Subject.t -> ?citations:Citation.t list -> layer:string -> unit -> 'r t
diff --git a/lib/kernel/liturgical_day.ml b/lib/kernel/liturgical_day.ml
new file mode 100644
index 0000000..bbb52b8
--- /dev/null
+++ b/lib/kernel/liturgical_day.ml
@@ -0,0 +1,27 @@
+open Sexplib0.Sexp_conv
+
+(* The single stable result schema (parent spec §2). *)
+type ('s, 'r) t = {
+ date : Date.t;
+ rite : string;
+ temporal : ('s, 'r) Temporal.t;
+ (** embedded, not flattened: it is already a coherent unit with its own
+ invariants, and re-listing season/week/weekday here would create two
+ places for them to disagree *)
+ observed : 'r Celebration.t;
+ commemorations : ('r Celebration.t * Precedence.privilege) list;
+ transferred_in : 'r Celebration.t option;
+ (** arrived here from an impeded day *)
+ transferred_out : ('r Celebration.t * Date.t) list;
+ (** celebrations that left this day, and where each one went. A list,
+ not an option: RG 97-98 has coinciding I-class feasts transfer
+ "in order" -- plural -- so a day can lose more than one. Asymmetric
+ with [transferred_in] deliberately: a day receives at most one
+ arrival, because RG 96 sends each departure to the next day that
+ is not I or II class, and the first to arrive occupies it. *)
+ omitted : ('r Celebration.t * string) list;
+ (** with the reason, never silent -- Task 12's no-celebration-lost
+ invariant reads this *)
+ citations : Citation.t list; (** always empty until Plan 4 *)
+}
+[@@deriving sexp]
diff --git a/lib/kernel/liturgical_day.mli b/lib/kernel/liturgical_day.mli
new file mode 100644
index 0000000..a109251
--- /dev/null
+++ b/lib/kernel/liturgical_day.mli
@@ -0,0 +1,25 @@
+(** The single stable result schema (parent spec §2). *)
+type ('s, 'r) t = {
+ date : Date.t;
+ rite : string;
+ temporal : ('s, 'r) Temporal.t;
+ (** embedded, not flattened: it is already a coherent unit with its own
+ invariants, and re-listing season/week/weekday here would create two
+ places for them to disagree *)
+ observed : 'r Celebration.t;
+ commemorations : ('r Celebration.t * Precedence.privilege) list;
+ transferred_in : 'r Celebration.t option;
+ (** arrived here from an impeded day *)
+ transferred_out : ('r Celebration.t * Date.t) list;
+ (** celebrations that left this day, and where each one went. A list,
+ not an option: RG 97-98 has coinciding I-class feasts transfer
+ "in order" -- plural -- so a day can lose more than one. Asymmetric
+ with [transferred_in] deliberately: a day receives at most one
+ arrival, because RG 96 sends each departure to the next day that
+ is not I or II class, and the first to arrive occupies it. *)
+ omitted : ('r Celebration.t * string) list;
+ (** with the reason, never silent -- Task 12's no-celebration-lost
+ invariant reads this *)
+ citations : Citation.t list; (** always empty until Plan 4 *)
+}
+[@@deriving sexp]
diff --git a/lib/kernel/precedence.ml b/lib/kernel/precedence.ml
new file mode 100644
index 0000000..05ad69f
--- /dev/null
+++ b/lib/kernel/precedence.ml
@@ -0,0 +1,69 @@
+(* The rite-parameterised resolver. RG 91 says who wins; RG 92-95 says what
+ happens to the loser; RG 108-111 says how many commemorations are admitted.
+ Three separate functions, because the loser's fate depends on the loser's own
+ rank, not the winner's. *)
+open Sexplib0.Sexp_conv
+
+type origin = Temporal | Sanctoral [@@deriving sexp]
+type privilege = Privileged | Ordinary [@@deriving sexp]
+type disposition = Omit | Commemorate of privilege | Transfer | Repose [@@deriving sexp]
+
+type 'r candidate = { cel : 'r Celebration.t; origin : origin } [@@deriving sexp]
+
+type 's context = { date : Date.t; season : 's; weekday : Date.weekday }
+
+type ('s, 'r) rules = {
+ band : 's context -> 'r candidate -> int;
+ disposition : winner:'r candidate -> loser:'r candidate -> disposition;
+ admit :
+ observed:'r candidate ->
+ ('r candidate * privilege) list ->
+ ('r candidate * privilege) list;
+}
+
+type 'r resolution = {
+ observed : 'r candidate;
+ commemorations : ('r candidate * privilege) list;
+ deferred : 'r candidate list;
+ omitted : ('r candidate * string) list;
+}
+
+(* Ties break on slug so the result never depends on input order. *)
+let compare_by rules ctx a b =
+ let ba = rules.band ctx a and bb = rules.band ctx b in
+ if ba <> bb then Int.compare ba bb
+ else Slug.compare a.cel.Celebration.slug b.cel.Celebration.slug
+
+let resolve rules ctx ~temporal ~sanctoral =
+ (* A commemoration-only entry can never be observed (see Celebration.status),
+ so it is held out of the contest entirely rather than relying on its band. *)
+ let eligible, forced_comm =
+ List.partition
+ (fun c -> c.cel.Celebration.status = Celebration.Feast)
+ sanctoral
+ in
+ let sorted = List.stable_sort (compare_by rules ctx) (temporal :: eligible) in
+ let observed = List.hd sorted in
+ let losers = List.tl sorted @ forced_comm in
+ let comms, deferred, omitted =
+ List.fold_left
+ (fun (comms, defs, omits) l ->
+ match rules.disposition ~winner:observed ~loser:l with
+ | Commemorate p -> ((l, p) :: comms, defs, omits)
+ | Transfer | Repose -> (comms, l :: defs, omits)
+ | Omit -> (comms, defs, (l, "omitted: yielded to a higher day") :: omits))
+ ([], [], []) losers
+ in
+ let comms = List.rev comms and deferred = List.rev deferred in
+ let admitted = rules.admit ~observed comms in
+ let dropped =
+ List.filter (fun c -> not (List.exists (fun a -> fst a == fst c) admitted)) comms
+ in
+ {
+ observed;
+ commemorations = admitted;
+ deferred;
+ omitted =
+ List.rev omitted
+ @ List.map (fun (c, _) -> (c, "omitted: admission limit reached")) dropped;
+ }
diff --git a/lib/kernel/precedence.mli b/lib/kernel/precedence.mli
new file mode 100644
index 0000000..ae054dd
--- /dev/null
+++ b/lib/kernel/precedence.mli
@@ -0,0 +1,78 @@
+(** The rite-parameterised resolver: RG 91 says who wins, RG 92-95 says what
+ happens to the loser, RG 108-111 says how many commemorations are admitted.
+ Three separate rite-supplied functions, because the loser's fate depends on
+ the loser's own rank, not the winner's -- conflating them would resist
+ extension to a second rite. *)
+
+(** Which of the day's two office streams a candidate came from. *)
+type origin = Temporal | Sanctoral [@@deriving sexp]
+
+(** RG 111: an admitted commemoration's own standing, distinct from its rank. *)
+type privilege = Privileged | Ordinary [@@deriving sexp]
+
+(** What becomes of a losing candidate. *)
+type disposition =
+ | Omit (** yields with no trace in the day's celebration *)
+ | Commemorate of privilege (** kept as a commemoration of the observed day *)
+ | Transfer (** moved to the next free day (RG 92-95) *)
+ | Repose (** kept only in a votive/private sense; not commemorated today *)
+[@@deriving sexp]
+
+(** A celebration together with the office stream it was drawn from. Parameterised
+ by the rite's rank type only, matching {!Celebration.t}. *)
+type 'r candidate = { cel : 'r Celebration.t; origin : origin } [@@deriving sexp]
+
+(** The day a resolution is computed for. Parameterised by the rite's season
+ type only -- a context has no rank of its own. *)
+type 's context = { date : Date.t; season : 's; weekday : Date.weekday }
+
+(** The rite's three resolution functions. *)
+type ('s, 'r) rules = {
+ band : 's context -> 'r candidate -> int;
+ (** RG 91: orders candidates for the day; lower wins. *)
+ disposition : winner:'r candidate -> loser:'r candidate -> disposition;
+ (** RG 92-95: the loser's fate, which depends on the loser's own rank. *)
+ admit :
+ observed:'r candidate ->
+ ('r candidate * privilege) list ->
+ ('r candidate * privilege) list;
+ (** RG 108-111: how many commemorations are admitted, and in what order;
+ anything filtered out here is recorded in {!resolution.omitted}, not
+ dropped.
+
+ OBLIGATION ON THE IMPLEMENTATION, not enforced by this type: every
+ candidate this function returns must be a value taken UNCHANGED
+ from its input list, never rebuilt (e.g. via a [{ c with ... }]
+ record update, even one that copies every field back unchanged).
+ {!resolve}'s own [omitted] accounting distinguishes an admitted
+ candidate from a dropped one by PHYSICAL equality ([==]) on the
+ candidate value, not structural equality -- a rebuilt record is
+ [=] to the original but not [==], so {!resolve} cannot match the
+ rebuilt copy against the original it was given. The celebration
+ then surfaces TWICE in the same day's result -- once in
+ {!resolution.commemorations} (the rebuilt copy, admitted) and once
+ in {!resolution.omitted} (the original, which nothing in the
+ admitted set matches). One admission, double-reported, silently
+ rather than raising. This obligation previously lived only in one rite's
+ own module documentation (Rite_ef.Precedence_ef.admit); stated
+ here because this signature -- not any one rite's implementation
+ of it -- is what an author of the next rite reads. *)
+}
+
+(** The outcome of resolving one day's candidates. *)
+type 'r resolution = {
+ observed : 'r candidate;
+ commemorations : ('r candidate * privilege) list;
+ deferred : 'r candidate list;
+ omitted : ('r candidate * string) list; (** each with a reason *)
+}
+
+(** Total: the temporal candidate is passed separately, so there is no
+ empty-candidate case. Ties break on slug, so the result never depends on
+ input order. A [Commemoration_only] celebration is held out of the contest
+ and can never be [observed]. Every input candidate appears exactly once in
+ [observed], [commemorations], [deferred] or [omitted] — nothing is dropped
+ silently. *)
+val resolve :
+ ('s, 'r) rules -> 's context -> temporal:'r candidate ->
+ sanctoral:'r candidate list -> 'r resolution
diff --git a/lib/kernel/rite.ml b/lib/kernel/rite.ml
new file mode 100644
index 0000000..89fceb6
--- /dev/null
+++ b/lib/kernel/rite.ml
@@ -0,0 +1,14 @@
+(* Everything a rite supplies, bundled. Passing these as loose arguments let a
+ caller pair one rite's vocab with another's temporal; bundling makes that
+ unrepresentable through the normal path. *)
+type ('s, 'r) t = {
+ id : string;
+ vocab : ('s, 'r) Vocab.t;
+ year_start : int -> Date.t;
+ temporal : Date.t -> ('s, 'r) Temporal.t;
+ anchors : int -> (string * Date.t) list;
+ rules : ('s, 'r) Precedence.rules;
+ season_runs : 's list;
+ transfer_target :
+ 'r Precedence.candidate -> Date.t -> (Date.t -> 'r Celebration.t) -> Date.t;
+}
diff --git a/lib/kernel/rite.mli b/lib/kernel/rite.mli
new file mode 100644
index 0000000..ffe9471
--- /dev/null
+++ b/lib/kernel/rite.mli
@@ -0,0 +1,62 @@
+(** Everything a rite supplies, bundled. Passing these as loose arguments let a
+ caller pair one rite's vocab with another's temporal; bundling makes that
+ unrepresentable through the normal path. Carries functions, so it has no
+ sexp form. *)
+type ('s, 'r) t = {
+ id : string;
+ vocab : ('s, 'r) Vocab.t;
+ year_start : int -> Date.t;
+ (** first day of the liturgical year opening in civil year y *)
+ temporal : Date.t -> ('s, 'r) Temporal.t;
+ anchors : int -> (string * Date.t) list;
+ (** Easter-derived days: (expected slug, date) *)
+ rules : ('s, 'r) Precedence.rules;
+ season_runs : 's list;
+ (** the expected run-length-compressed season sequence over one liturgical
+ year. NOT necessarily [vocab.seasons]: a rite may have one season
+ appear in two separate runs (the modern form's Ordinary Time does). *)
+ transfer_target :
+ 'r Precedence.candidate -> Date.t -> (Date.t -> 'r Celebration.t) -> Date.t;
+ (** RG 96: where an impeded I-class feast goes. Given the deferred
+ candidate, the date it was impeded on, and [occupant] -- a callback
+ exposing what {!Calendar} currently resolves as observed on any
+ given date -- returns the date to place it on.
+
+ Deliberately one rite-supplied function, not a generic search Calendar
+ drives itself: "not I or II class" is not derivable from [band] or
+ [disposition] alone. RG 91's own table would let a universal I-class
+ feast (entry 11) numerically outrank an ordinary Sunday (entry 15,
+ II class) in a raw occurrence contest -- entry 11 comes before entry
+ 15, and lower wins -- so testing "would the translated feast win
+ here" is not the same question as "is this day free to receive a
+ translation": RG 96 forbids landing on the Sunday regardless of
+ which one would structurally win. Only the rite knows which of its
+ own ranks are exempt from translation onto them. The rite also
+ owns the search's starting point, because RG 96's exception is
+ rite-specific too: the Annunciation does not search forward from
+ its own impeded date at all, it goes straight to the Monday after
+ Low Sunday (searching onward from there only if that day is itself
+ blocked). [occupant] is supplied rather than a raw layer/temporal
+ pair so the rite never has to re-implement occurrence resolution
+ just to answer "what sits here".
+
+ OBLIGATIONS (not enforced by the type, and {!Calendar}'s own
+ termination argument depends on both): the result must be
+ {b strictly later} than the [Date.t] argument (the date the
+ candidate was impeded on) -- {!Calendar}'s placement pass treats
+ [target = origin] or [target < origin] as a legitimate placement,
+ not an error, so a rite whose search can stand still or go
+ backward would silently loop candidates in place or resurrect an
+ already-superseded occupant rather than failing loudly. The call
+ must also {b terminate} on its own: {!Calendar}'s round guard
+ (calendar.ml's [max_transfer_rounds]) bounds how many ROUNDS the
+ whole-year placement pass takes, which is a distinct, outer thing
+ from whatever internal search a single call to this function runs
+ -- an implementation that walks forward day by day looking for an
+ admissible date, without its own bound, can hang the caller
+ outright on a rite/data shape it does not handle, never reaching
+ the round guard at all. See rite_ef/precedence_ef.ml's
+ [transfer_target] for a concrete termination argument (a
+ structural step bound, not an appeal to the real calendar's own
+ structure). *)
+}
diff --git a/lib/kernel/slug.ml b/lib/kernel/slug.ml
index 5139c99..25281f2 100644
--- a/lib/kernel/slug.ml
+++ b/lib/kernel/slug.ml
@@ -1,6 +1,10 @@
(* Stable celebration identifiers. Also the lectionary key: EF slugs are adopted
- verbatim from lectio so the Plan 3 lectionary bootstrap needs no mapping
- table (spec §4.4). *)
+ verbatim from lectio so the Plan 4 lectionary bootstrap needs no mapping
+ table (spec §4.4). CORRECTED (final fix wave, item 7): this comment said
+ "Plan 3" -- the SANCTORAL bootstrap (data/ef/sanctoral.sexp) is Plan 3 and
+ shipped in this branch; the LECTIONARY bootstrap (reading citations,
+ Liturgical_day.t's own [citations] field) is a separate, later Plan 4,
+ per that field's own doc comment ("always empty until Plan 4"). *)
type t = string
let valid_char c = (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9') || c = '-'
diff --git a/lib/kernel/validate.ml b/lib/kernel/validate.ml
index 7be3425..cc8bdce 100644
--- a/lib/kernel/validate.ml
+++ b/lib/kernel/validate.ml
@@ -20,7 +20,35 @@ let has_duplicate strings =
let rec go = function a :: (b :: _ as rest) -> a = b || go rest | _ -> false in
go sorted
-let run vocab ~year_start ~temporal ~anchors ~year =
+(* Like [has_duplicate], but names the offender(s) instead of only reporting
+ that one exists -- the ["slugs"] check below wants a useful failure
+ detail, not just a bool. *)
+let duplicates strings =
+ let sorted = List.sort String.compare strings in
+ let rec go acc = function
+ | a :: (b :: _ as rest) -> go (if a = b then a :: acc else acc) rest
+ | _ -> acc
+ in
+ List.sort_uniq String.compare (go [] sorted)
+
+(* Task 12's "unconverged" check has no structural signal to key off --
+ Calendar's placement pass records its round-guard reason as a plain
+ string in [Liturgical_day.omitted] (calendar.ml's own [unconverged_reason],
+ not exposed as a public constant), and [Liturgical_day.omitted]'s own doc
+ comment says exactly this check is meant to read it. A short, distinctive
+ substring rather than the full literal keeps the coupling to calendar.ml's
+ exact wording as loose as it can be while still being unambiguous: nothing
+ else this kernel emits into [omitted] talks about "converging". *)
+let contains_substring s ~needle =
+ let ls = String.length s and ln = String.length needle in
+ let rec at i = i + ln <= ls && (String.sub s i ln = needle || at (i + 1)) in
+ ln = 0 || at 0
+
+let run (rite : ('s, 'r) Rite.t) (layer : 'r Layer.t) ~year =
+ let vocab = rite.Rite.vocab in
+ let year_start = rite.Rite.year_start in
+ let temporal = rite.Rite.temporal in
+ let anchors = rite.Rite.anchors in
let start = year_start year in
let stop =
(* [year_start (year + 1)] needs a date in civil year (year+1); at
@@ -68,18 +96,16 @@ let run vocab ~year_start ~temporal ~anchors ~year =
(* Weekday agreement. *)
if t.Temporal.weekday <> Date.weekday date then
fail date "weekday" "temporal weekday disagrees with Date.weekday";
- (* Slug: three properties, none checked here, all delivered
- elsewhere. Well-formedness needs no check: [Slug.t] is a private
- string validated on every construction path ([of_string],
- [of_string_exn], [t_of_sexp]), and [to_string] is the identity,
- so round-tripping an existing [Slug.t] can never fail -- a check
- here would be structurally incapable of firing, which is worse
- than no check, since it would look like coverage that isn't
- there. Uniqueness *per date* needs no check either: [temporal]
- returns exactly one office by construction. Uniqueness *across
- the year* is deliberately NOT asserted -- a resumed Sunday
- reuses an earlier Epiphany key on purpose, so the check would be
- false. *)
+ (* Slug: three properties. Well-formedness needs no check: [Slug.t]
+ is a private string validated on every construction path
+ ([of_string], [of_string_exn], [t_of_sexp]), and [to_string] is
+ the identity, so round-tripping an existing [Slug.t] can never
+ fail -- a check here would be structurally incapable of firing,
+ which is worse than no check, since it would look like coverage
+ that isn't there. Uniqueness *per date* needs no check either:
+ [temporal] returns exactly one office by construction.
+ Uniqueness *across the year* IS asserted, below, once the whole
+ walk is in hand -- see the ["slugs"] check after this loop. *)
(* Vocabulary closure. *)
if not (List.exists (fun r -> vocab.Vocab.rank_to_string r
= vocab.Vocab.rank_to_string cel.Celebration.rank)
@@ -97,9 +123,28 @@ let run vocab ~year_start ~temporal ~anchors ~year =
| None -> fail date "determinism" "a second call to temporal raised where the first succeeded"))
days;
let observed = List.rev !observed in
+ (* Slug uniqueness across the year (Plan 2 carried item 4): moved into
+ [Validate] itself so every consumer gets it, not only a 200-sample
+ QCheck property scoped to one rite. Asserted OUTRIGHT, no exemption:
+ Plan 2 verified zero duplicate slugs domain-wide, across all 8 416
+ years, for the EF rite's own resumed-Sunday mechanism -- the exemption
+ the test property used to carry protected nothing real, because a
+ resumed Sunday only ever backfills a week number Septuagesima cut short
+ that same liturgical year (so it was never actually used that year to
+ begin with), never repeats one the year's own January Sundays already
+ used. If a future rite genuinely needs an exemption, it can supply one
+ then -- not speculatively here. *)
+ (match duplicates (List.map (fun (_, t) -> Slug.to_string t.Temporal.office.Celebration.slug) observed) with
+ | [] -> ()
+ | dups ->
+ fail start "slugs"
+ (Printf.sprintf "slug(s) sighted on more than one date this year: %s" (String.concat ", " dups)));
(* Season contiguity and completeness: the run-length-compressed sequence must
- equal vocab.seasons exactly -- all seasons, each in one unbroken run, in
- canonical order. No EF season can be empty in any year. *)
+ equal the rite's own [season_runs] exactly, in canonical order. This is
+ NOT necessarily [vocab.seasons] -- most rites have each season in one
+ unbroken run, but a rite may legitimately have one season appear in two
+ separate runs (the modern form's Ordinary Time does), so the expected
+ sequence is rite-supplied rather than derived from the vocabulary. *)
let compressed =
List.fold_left
(fun acc (_, t) ->
@@ -108,7 +153,7 @@ let run vocab ~year_start ~temporal ~anchors ~year =
[] observed
|> List.rev
in
- let expected = List.map vocab.Vocab.season_to_string vocab.Vocab.seasons in
+ let expected = List.map vocab.Vocab.season_to_string rite.Rite.season_runs in
if compressed <> expected then
fail start "seasons"
(Printf.sprintf "season runs %s; expected %s"
@@ -157,4 +202,121 @@ let run vocab ~year_start ~temporal ~anchors ~year =
if actual <> expected_slug then
fail date "anchor" (Printf.sprintf "expected slug %S, got %S" expected_slug actual))
anchor_pairs;
+ (* Resolution invariants (Task 12): everything above only ever asked
+ [rite.temporal] for a date's office in isolation. From here on the
+ LITURGICAL YEAR IS ACTUALLY RESOLVED against [layer] -- occurrence,
+ transfer placement, commemorations, the works (spec §2.4) -- and the
+ result checked for five further properties a temporal-only pass cannot
+ see at all. [days] (the walk built above) is reused rather than
+ recomputed: it names exactly the same [start, stop] span
+ {!Calendar.year} resolves for this [year]. *)
+ (match Calendar.year rite layer year with
+ | exception exn ->
+ (* The kernel contract forbids [run] itself from ever raising on
+ in-range input, and an exception escaping resolution is the most
+ total form of "silently lost" there is: nothing about this year's
+ sanctoral entries could be verified as accounted for at all. *)
+ fail start "lost"
+ (Printf.sprintf "resolving the year raised (%s); nothing could be verified as accounted for"
+ (Printexc.to_string exn))
+ | resolved ->
+ let idx = Layer.index_by_date layer in
+ let bump tbl slug = Hashtbl.replace tbl slug (1 + (try Hashtbl.find tbl slug with Not_found -> 0)) in
+ (* Expected: how many times each layer entry's own Date_spec resolves
+ within [start, stop]. Walking dates and querying [Layer.on_date]
+ (rather than resolving each entry's Date_spec against candidate
+ civil years directly) is what naturally counts a fixed late-
+ November date TWICE in the ~20% of liturgical years whose 371-day
+ span reaches it on both ends -- see validate.mli's own note on 30
+ November / St Andrew. *)
+ let expected : (string, int) Hashtbl.t = Hashtbl.create 64 in
+ List.iter
+ (fun date ->
+ Layer.on_date idx ~month:(Date.month date) ~day:(Date.day date)
+ |> List.iter (fun (e : 'r Layer.entry) ->
+ bump expected (Slug.to_string e.Layer.cel.Celebration.slug)))
+ days;
+ (* Actual: how many times each slug is actually sighted across the
+ resolved year. Deliberately [observed] + [commemorations] +
+ [omitted] only, NOT [transferred_out]: a successfully transferred
+ celebration is already counted once, via [observed] (+
+ [transferred_in]) on the day it lands; also counting
+ [transferred_out] at the day it left would double-book every clean
+ transfer, which is exactly what this check exists to catch, not
+ cause. *)
+ let actual : (string, int) Hashtbl.t = Hashtbl.create 64 in
+ let bump_cel tbl (c : 'r Celebration.t) = bump tbl (Slug.to_string c.Celebration.slug) in
+ Array.iter
+ (fun (d : ('s, 'r) Liturgical_day.t) ->
+ bump_cel actual d.Liturgical_day.observed;
+ List.iter (fun (c, _) -> bump_cel actual c) d.Liturgical_day.commemorations;
+ List.iter (fun (c, _) -> bump_cel actual c) d.Liturgical_day.omitted)
+ resolved;
+ Hashtbl.fold (fun slug exp acc -> (slug, exp) :: acc) expected []
+ |> List.sort compare (* stable failure order: Hashtbl.iter's own order is hash-seed-dependent *)
+ |> List.iter (fun (slug, exp) ->
+ let act = try Hashtbl.find actual slug with Not_found -> 0 in
+ if act < exp then
+ fail start "lost"
+ (Printf.sprintf "%s: sighted %d time(s) this year, but its own Date_spec resolves %d"
+ slug act exp)
+ else if act > exp then
+ fail start "duplicated"
+ (Printf.sprintf "%s: sighted %d time(s) this year, but its own Date_spec resolves only %d"
+ slug act exp));
+ Array.iter
+ (fun (d : ('s, 'r) Liturgical_day.t) ->
+ let date = d.Liturgical_day.date in
+ let observed_slug = Slug.to_string d.Liturgical_day.observed.Celebration.slug in
+ let has_slug (c, _) = Slug.to_string c.Celebration.slug = observed_slug in
+ (* "observed": the day's own winner must not ALSO be listed as one
+ of its own losers -- see validate.mli's own note on why this is
+ reachable (two distinct layer entries sharing a slug, one
+ transferred onto the other's natural date, the transferred one
+ winning) despite {!Precedence.resolve}'s fold never letting the
+ SAME candidate value appear as both winner and loser. *)
+ if List.exists has_slug d.Liturgical_day.commemorations
+ || List.exists has_slug d.Liturgical_day.omitted
+ then
+ fail date "observed"
+ (Printf.sprintf
+ "%s is this day's observed celebration and also appears among its own \
+ commemorations/omissions"
+ observed_slug);
+ (* "unconverged": see [contains_substring]'s own comment above. *)
+ if
+ List.exists
+ (fun (_, reason) -> contains_substring reason ~needle:"did not converge")
+ d.Liturgical_day.omitted
+ then
+ fail date "unconverged"
+ "transfer placement did not reach a fixed point within the round guard (RG 96-98)";
+ (* "admission": re-offer this day's own admitted commemorations
+ back to [rite.rules.admit] and require the exact same set back.
+ [origin] is reconstructed as [Sanctoral] uniformly:
+ {!Liturgical_day.t} does not retain a commemoration's original
+ origin, and the real EF [admit] (precedence_ef.ml) reads only
+ rank and slug from a candidate, never [origin], so this
+ reconstruction is exact for it; documented in validate.mli as
+ the one place a rite whose [admit] DOES consult [origin] could
+ see a false negative from this check. *)
+ let observed_candidate : 'r Precedence.candidate =
+ { Precedence.cel = d.Liturgical_day.observed; origin = Precedence.Sanctoral }
+ in
+ let as_candidates comms =
+ List.map (fun (c, p) -> ({ Precedence.cel = c; origin = Precedence.Sanctoral }, p)) comms
+ in
+ let offered = as_candidates d.Liturgical_day.commemorations in
+ let readmitted = rite.Rite.rules.Precedence.admit ~observed:observed_candidate offered in
+ let norm l =
+ List.map (fun (c, p) -> (Slug.to_string c.Precedence.cel.Celebration.slug, p)) l
+ |> List.sort compare
+ in
+ if norm readmitted <> norm offered then
+ fail date "admission"
+ (Printf.sprintf
+ "admit is not a fixed point on this day's own commemorations: re-offering %d \
+ admitted %d back"
+ (List.length offered) (List.length readmitted)))
+ resolved);
List.rev !failures
diff --git a/lib/kernel/validate.mli b/lib/kernel/validate.mli
index 709a711..5e55fc5 100644
--- a/lib/kernel/validate.mli
+++ b/lib/kernel/validate.mli
@@ -5,26 +5,71 @@ type failure = { year : int; date : string; check : string; detail : string }
val failure_to_string : failure -> string
-(** [run vocab ~year_start ~temporal ~anchors ~year] returns every invariant
- violation in the liturgical year opening in civil year [year]. An empty
- list means the year is clean.
+(** [run rite layer ~year] returns every invariant violation in the
+ liturgical year opening in civil year [year]. An empty list means the
+ year is clean.
- [anchors y] is the rite's own independent restatement of its fixed and
- Easter-derived named days for civil year [y], as (expected slug, date)
- pairs -- not derived from [temporal] itself, so a drift between the two
- is caught rather than invisible. [run] consults both [anchors year] and
- [anchors (year + 1)], since a liturgical year straddles two civil years,
- and checks only the pairs whose date actually falls within the year
- walked.
+ [rite.Rite.anchors y] is the rite's own independent restatement of its
+ fixed and Easter-derived named days for civil year [y], as (expected
+ slug, date) pairs -- not derived from [rite.Rite.temporal] itself, so a
+ drift between the two is caught rather than invisible. [run] consults
+ both [anchors year] and [anchors (year + 1)], since a liturgical year
+ straddles two civil years, and checks only the pairs whose date actually
+ falls within the year walked.
+
+ ["slugs"]: no two dates within the walked liturgical year may carry the
+ same office slug (Plan 2 carried item 4). Asserted outright, with no
+ exemption for the resumed-Sunday reuse a slug's own name might suggest:
+ a resumed Sunday only ever backfills a week number Septuagesima cut
+ short that same year, so by construction it never repeats a number that
+ year's own January Sundays actually used.
+
+ The season check compares the run-length-compressed season sequence
+ against [rite.Rite.season_runs], not [rite.Rite.vocab.seasons]: a rite may
+ have one season appear in two separate runs (the modern form's Ordinary
+ Time does), so the two are not necessarily the same list.
+
+ [layer] is resolved against [rite] via {!Calendar.year} (spec §2.4's
+ occurrence/transfer/commemoration pass), and the resulting fully-resolved
+ liturgical year is checked for five further invariants a temporal-only
+ pass cannot see (Task 12), each its own ["check"] label:
+ - ["observed"]: a day's [observed] celebration is never ALSO listed among
+ that same day's [commemorations] or [omitted] -- a day reports one
+ winner, not a winner that also lost to itself.
+ - ["lost"]: no sanctoral entry is silently dropped. Per slug, the number
+ of times it is actually sighted ([observed] + [commemorations] +
+ [omitted], summed over the whole year -- NOT [transferred_out], which
+ would double-count a successfully placed transfer against its own
+ arrival) must never fall below the number of times its own
+ {!Date_spec} resolves within the year's span (an entry with two
+ occurrences, e.g. 30 November in the nine liturgical years where the
+ 371-day span reaches it twice, must be sighted twice, not once). Also
+ fires if resolving the year raises at all -- an escaping exception is
+ the most total form of silent loss, and the kernel contract forbids
+ [run] itself from propagating it.
+ - ["duplicated"]: the same per-slug count must never EXCEED the number of
+ {!Date_spec} resolutions either. Deliberately NOT "no slug appears
+ twice in the year" -- a fixed date can legitimately resolve twice, per
+ ["lost"] above -- it is "resolutions and sightings agree", the property
+ that actually distinguishes a transfer that moved from one that
+ duplicated.
+ - ["unconverged"]: no day's [omitted] carries the reason {!Calendar}'s
+ placement pass records when its round guard (calendar.ml's
+ [max_transfer_rounds]) is hit before every deferred candidate reaches a
+ fixed point.
+ - ["admission"]: the rite's own [rules.admit] is a fixed point on what it
+ already admitted -- re-offering a day's [commemorations] back to
+ [admit] (reconstructed with {!Precedence.Sanctoral} origin; the real EF
+ admit reads only rank and slug, never origin, so this reconstruction is
+ exact for it) must return exactly that same set. A cap-enforcing
+ selector that is not idempotent on its own output has, by definition,
+ admitted something its own rule would not admit if asked again -- the
+ rite-agnostic form of "the admission limit was not exceeded" available
+ without embedding a rite's specific numeric caps (RG 111's, for EF)
+ into kernel code.
Total over the whole 1583..9999 domain, including [year] = 9999: the
liturgical year opening there continues into out-of-domain civil year
10000, so the walk is clamped to 31 December 9999 and the checks run
against that truncated final year rather than raising. *)
-val run :
- ('s, 'r) Vocab.t ->
- year_start:(int -> Date.t) ->
- temporal:(Date.t -> ('s, 'r) Temporal.t) ->
- anchors:(int -> (string * Date.t) list) ->
- year:int ->
- failure list
+val run : ('s, 'r) Rite.t -> 'r Layer.t -> year:int -> failure list
diff --git a/lib/kernel/vocab.ml b/lib/kernel/vocab.ml
index 78729bb..a4e61a3 100644
--- a/lib/kernel/vocab.ml
+++ b/lib/kernel/vocab.ml
@@ -7,13 +7,32 @@
parametric types natively. *)
type ('s, 'r) t = {
seasons : 's list;
- (** canonical liturgical-year order; Validate's contiguity check reads this *)
+ (** canonical liturgical-year order. CORRECTED (final fix wave, item
+ 7): this used to say "Validate's contiguity check reads this" --
+ false since validate.ml's own "seasons" check switched to
+ {!Colitur_kernel.Rite.t}.season_runs in this branch (Plan 2
+ carried item 1: EF has each season in one run, but the modern
+ form's Ordinary Time does not, so the expected run sequence had
+ to become rite-supplied rather than derived from this field).
+ For EF specifically [Rite_ef.rite] sets season_runs to
+ this very list, so the two happen to agree there, but Validate
+ itself no longer reads [seasons] to build its expectation. *)
season_to_string : 's -> string;
season_of_string : string -> 's option;
ranks : 'r list;
(** documentation order, highest first. Plan 2 uses it only for the
- closure check -- it is not a precedence relation until Plan 3
- defines one. *)
+ closure check. CORRECTED (final fix wave, item 7): this used to
+ say "it is not a precedence relation until Plan 3 defines one" --
+ Plan 3 did define one (RG 111's dignity ordering, Rite_ef.
+ Precedence_ef.dignity/compare_dignity), but as its OWN small,
+ separately-hardcoded function, not one derived from this field:
+ [admit] needs Vocab_ef.rank's dignity as plain data (RG 8's four
+ classes), and reusing this field's own [int list] position would
+ couple that meaning to documentation order the way {!band} is
+ explicitly NOT allowed to (precedence_ef.ml's own file comment).
+ This field therefore still carries no precedence relation of its
+ own; a rite that wanted one derived from it would have to build
+ it itself. *)
rank_to_string : 'r -> string;
rank_of_string : string -> 'r option;
}
diff --git a/lib/kernel/vocab.mli b/lib/kernel/vocab.mli
index 78729bb..a4e61a3 100644
--- a/lib/kernel/vocab.mli
+++ b/lib/kernel/vocab.mli
@@ -7,13 +7,32 @@
parametric types natively. *)
type ('s, 'r) t = {
seasons : 's list;
- (** canonical liturgical-year order; Validate's contiguity check reads this *)
+ (** canonical liturgical-year order. CORRECTED (final fix wave, item
+ 7): this used to say "Validate's contiguity check reads this" --
+ false since validate.ml's own "seasons" check switched to
+ {!Colitur_kernel.Rite.t}.season_runs in this branch (Plan 2
+ carried item 1: EF has each season in one run, but the modern
+ form's Ordinary Time does not, so the expected run sequence had
+ to become rite-supplied rather than derived from this field).
+ For EF specifically [Rite_ef.rite] sets season_runs to
+ this very list, so the two happen to agree there, but Validate
+ itself no longer reads [seasons] to build its expectation. *)
season_to_string : 's -> string;
season_of_string : string -> 's option;
ranks : 'r list;
(** documentation order, highest first. Plan 2 uses it only for the
- closure check -- it is not a precedence relation until Plan 3
- defines one. *)
+ closure check. CORRECTED (final fix wave, item 7): this used to
+ say "it is not a precedence relation until Plan 3 defines one" --
+ Plan 3 did define one (RG 111's dignity ordering, Rite_ef.
+ Precedence_ef.dignity/compare_dignity), but as its OWN small,
+ separately-hardcoded function, not one derived from this field:
+ [admit] needs Vocab_ef.rank's dignity as plain data (RG 8's four
+ classes), and reusing this field's own [int list] position would
+ couple that meaning to documentation order the way {!band} is
+ explicitly NOT allowed to (precedence_ef.ml's own file comment).
+ This field therefore still carries no precedence relation of its
+ own; a rite that wanted one derived from it would have to build
+ it itself. *)
rank_to_string : 'r -> string;
rank_of_string : string -> 'r option;
}
diff --git a/lib/rites/rite_ef/precedence_ef.ml b/lib/rites/rite_ef/precedence_ef.ml
new file mode 100644
index 0000000..db7e708
--- /dev/null
+++ b/lib/rites/rite_ef/precedence_ef.ml
@@ -0,0 +1,893 @@
+(* RG 91's Table of Precedence (docs/research/rules-register.md §4). Each
+ branch below is one of the table's 28 entries, checked in the table's own
+ numeric order -- lower wins, and because occasional entries are true
+ exceptions to a later, broader one (RG 91 entry 18's Ember days are an
+ exception carved out of entry 22's Lent ferias; entry 21/26's vigils are
+ an exception carved out of the generic Class2/Class3 sanctoral-feast
+ entries that would otherwise also match), checking in table order and
+ returning on the first match is what makes the exception actually win
+ without a separate exclusion for every later entry it pre-empts.
+
+ Two kinds of evidence decide an entry:
+ - The temporal cycle's own office (Nativity, a Sunday, a feria, All Souls)
+ is identified structurally, from the context's date/season/weekday and
+ the day's Easter offset -- never from its slug, which is just a label.
+ [origin = Temporal] gates every such entry so a sanctoral candidate that
+ happens to share a date (Immaculate Conception can never coincide with
+ the movable cycle, but nothing stops a future rite bug from producing
+ one) cannot be mistaken for the office itself. All Souls (entry 8, the
+ one non-temporal-origin member of this group) additionally reads the
+ context's weekday for its own register-stated exception -- see entry 8
+ below.
+ - A sanctoral feast's entry is decided by its [rank], and -- except at
+ entry 14 (see its own comment below, where the register draws no such
+ line) -- per the brief's structural insight, also by its
+ {!Celebration.t}.layer: a celebration whose layer is not the universal
+ base is an overlay, hence "proper" or "indult" rather than the
+ universal entry (11-13 I class; 16/19/20 II class; 23/24 III class; see
+ precedence_ef.mli). [origin = Sanctoral] gates these for the same
+ reason: temporal-origin celebrations carry the literal layer id
+ "temporal" (rite_ef/temporal_ef.ml's [build]), which is not
+ [universal_layer] either, and would otherwise be misread as "proper" by
+ the layer test alone.
+
+ Vigils (21, 26) are the one shape neither of those two kinds fully
+ describes on their own: a II/III-class vigil can be temporal-origin (the
+ Ascension Vigil, produced by temporal_ef today) or sanctoral-origin (a
+ saint's vigil, not yet loaded by any task), so its entry cannot be gated
+ on [origin] at all. Nothing in the day's other fields marks "this is a
+ vigil, not an ordinary office of the same rank" either, so this reads it
+ off the temporal cycle's own slug convention (a "-vigil" suffix -- see
+ [named] in temporal_ef.ml) rather than guessing a new one. *)
+
+open Colitur_kernel
+
+(* Not an RG citation -- RG 91 ranks proper and indult feasts, it does not
+ encode how a computer tells them apart. See precedence_ef.mli. *)
+let universal_layer = "ef-universal"
+let indult_prefix = "indult:"
+let unclassified = max_int
+
+let is_indult layer = String.starts_with ~prefix:indult_prefix layer
+let is_universal layer = String.equal layer universal_layer
+
+(* Not an RG citation either -- see [universal_layer] above. Nothing in
+ {!Celebration.t} otherwise marks "this is a vigil, not an ordinary office
+ of the same rank" (see the file's top comment), so entries 21/26 read it
+ off the temporal cycle's own slug suffix (rite_ef/temporal_ef.ml's
+ [named], e.g. "ef-ascension-vigil"). *)
+let vigil_suffix = "-vigil"
+
+(* Not an RG citation -- see [universal_layer]. Task 10's sanctoral bootstrap
+ turned out to name its four real vigils with lectio's OWN convention, a
+ "vigil-of-X" PREFIX (data/ef/sanctoral.sexp: vigil-of-st-lawrence,
+ vigil-of-sts-peter-paul, vigil-of-the-assumption, vigil-of-the-nativity-
+ of-st-john-the-baptist), not [vigil_suffix] -- exactly the mismatch Task
+ 7's review predicted when it asked for [vigil_suffix] to be exposed.
+ [is_vigil] below checks both conventions, so a celebration is a "vigil"
+ for RG 91/33's purposes regardless of which layer (temporal or sanctoral)
+ produced it. *)
+let vigil_prefix = "vigil-of-"
+
+let is_vigil slug =
+ String.ends_with ~suffix:vigil_suffix slug || String.starts_with ~prefix:vigil_prefix slug
+
+(* Not an RG citation -- see [universal_layer]. Entry 18's Ember days are
+ identified by the temporal cycle's own slug convention (rite_ef/
+ temporal_ef.ml's [ember]: "ef-<set>-ember-<day>"), not re-derived here:
+ the September anchor in particular is one of the more contested dates in
+ the 1962 calendar (temporal_ef.ml's own comment on
+ [third_sunday_of_september]), and re-deriving it a second time would only
+ create a second place for that same uncertainty to drift. Only the
+ Advent, Lent and September sets are listed: RG 91 entry 18 names exactly
+ those three; the Whitsun (Pentecost) set is I class and falls inside the
+ Pentecost octave, entry 10, matched below before this is ever reached.
+ Exposed for the same reason as [vigil_suffix]: a rename of temporal_ef's
+ format has somewhere to be caught other than a silently-wrong entry 18.
+
+ [september_ember_prefix] is broken out as its own name (rather than an
+ anonymous list literal) because Task 9's [privilege_of] needs to test the
+ September set alone: RG 109(e)'s three named seasons (Advent, Lent,
+ Passiontide, §4 "Commemorations") never include September, which sits
+ entirely in time after Pentecost under any reading -- so September Ember
+ days need their own separate privilege category, (d), regardless of how
+ (e) itself is read. CORRECTED (fix round 1, F1/F2): this comment
+ previously justified the split the other way round, claiming RG 109(e)
+ privileges September specifically "while leaving the Advent and Lent
+ sets ordinary" -- WRONG; see [privilege_of]'s own (e) comment below for
+ the full argument. The Advent and Lent Ember sets ARE privileged under
+ (e), the same as any other Advent/Lent feria; building [ember_prefixes]
+ from this constant rather than duplicating the literal keeps the two
+ from silently drifting apart. *)
+let advent_ember_prefix = "ef-advent-ember-"
+let lent_ember_prefix = "ef-lent-ember-"
+let september_ember_prefix = "ef-september-ember-"
+let ember_prefixes = [ advent_ember_prefix; lent_ember_prefix; september_ember_prefix ]
+
+let is_ember_18 slug = List.exists (fun prefix -> String.starts_with ~prefix slug) ember_prefixes
+
+let band (ctx : Vocab_ef.season Precedence.context) (c : Vocab_ef.rank Precedence.candidate) :
+ int =
+ let cel = c.Precedence.cel in
+ let rank = cel.Celebration.rank in
+ let subject = cel.Celebration.subject in
+ let layer = cel.Celebration.layer in
+ let slug = Slug.to_string cel.Celebration.slug in
+ let is_temporal = c.Precedence.origin = Precedence.Temporal in
+ let is_vigil = is_vigil slug in
+ let date = ctx.Precedence.date in
+ let season = ctx.Precedence.season in
+ let weekday = ctx.Precedence.weekday in
+ let is_sunday = weekday = Date.Sun in
+ let m = Date.month date and d = Date.day date in
+ (* Easter offset, the same convention as temporal_ef.ml's [days_between
+ easter d]: 0 is Easter itself, negative before, positive after. *)
+ let off = Date.to_rata date - Date.to_rata (Computus.gregorian_easter (Date.year date)) in
+ (* Named so entry 8's Sunday exception below can read "one worse than the
+ Sunday it must yield to" rather than a bare integer that happens to
+ equal entry 15's own value; entry 15's own branch returns this same
+ binding, not a second literal, so the two can never drift apart. *)
+ let entry_15_band = 15 in
+ let open Vocab_ef in
+ (* 1: Nativity, Easter Sunday, Pentecost Sunday (I class w/ octave). *)
+ if is_temporal && rank = Class1 && ((m = 12 && d = 25) || off = 0 || off = 49) then 1
+ (* 2: Sacred Triduum (Thu-Sat of Holy Week). *)
+ else if is_temporal && rank = Class1 && off >= -3 && off <= -1 then 2
+ (* 3: Epiphany, Ascension, Holy Trinity, Corpus Christi, Sacred Heart,
+ Christ the King. *)
+ else if is_temporal && rank = Class1
+ && ((m = 1 && d = 6) (* Epiphany *)
+ || off = 39 (* Ascension *) || off = 56 (* Trinity *)
+ || off = 60 (* Corpus Christi *) || off = 68 (* Sacred Heart *)
+ || Date.compare date (Temporal_ef.christ_the_king (Date.year date)) = 0)
+ then 3
+ (* 4: Immaculate Conception, Assumption BVM. *)
+ else if (not is_temporal) && rank = Class1 && ((m = 12 && d = 8) || (m = 8 && d = 15)) then 4
+ (* 5: Vigil & Octave day of the Nativity. *)
+ else if is_temporal && rank = Class1 && ((m = 12 && d = 24) || (m = 1 && d = 1)) then 5
+ (* 6: Sundays of Advent, Lent, Passiontide, and Low Sunday. *)
+ else if is_temporal && rank = Class1 && is_sunday
+ && (season = Advent || season = Lent || season = Passiontide || off = 7)
+ then 6
+ (* 7: I-class ferias not above -- Ash Wednesday; Mon/Tue/Wed of Holy Week.
+ Thu-Sat of Holy Week are the Triduum, entry 2 above, not this entry. *)
+ else if is_temporal && rank = Class1 && (off = -46 || (off >= -6 && off <= -4)) then 7
+ (* 8: All Souls -- RG 91 entry 8's own text (§4) carries a qualifier this
+ transcription must honour: "yields to an occurring Sunday". 2 November
+ is always Time_after_pentecost (well clear of Advent/Lent/Passiontide
+ and of every other entry's own Easter-relative or fixed date), so a
+ Sunday landing on it is always an ordinary entry-15 II-class Sunday --
+ the one and only rival this exception ever has to lose to. On such a
+ Sunday this returns [entry_15_band + 1]: strictly worse than 15 (an
+ exact tie would fall to Precedence.resolve's slug tie-break, which
+ for "ef-all-souls" against a "ef-time-after-pentecost-sunday-*" slug
+ would make All Souls WIN -- the precise bug this guards against), but
+ otherwise not a citation to any other RG 91 row -- nothing else can
+ ever occur on 2 November to be confused with it. Entry 8's own [rank]
+ is untouched by this, so Task 8's disposition (RG 95: only I-class
+ feasts transfer) still sees the true I-class candidate it needs to
+ move to 3 November. *)
+ else if (not is_temporal) && rank = Class1 && m = 11 && d = 2 then
+ if is_sunday then entry_15_band + 1 else 8
+ (* 9: Vigil of Pentecost. *)
+ else if is_temporal && rank = Class1 && off = 48 then 9
+ (* 10: Days within the Octaves of Easter and Pentecost. *)
+ else if is_temporal && rank = Class1 && ((off >= 1 && off <= 6) || (off >= 50 && off <= 55))
+ then 10
+ (* 11: I-class feasts of the universal Church not above. *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class1 && is_universal layer then 11
+ (* 12: Proper I-class feasts. *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class1 && not (is_indult layer) then 12
+ (* 13: Indult I-class feasts. By elimination once 11 and 12 have failed:
+ not the universal layer (11), and marked as an indult overlay (12's
+ "not indult" test having just failed). *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class1 then 13
+ (* 14: Feasts of the Lord, II class -- RG 91 entry 14, deliberately
+ UNQUALIFIED (contrast entry 16, which explicitly says "not
+ of the Lord"; RG 37c (§4, "Sundays") speaks of "II-class feasts of
+ the Lord" replacing an occurring II-class Sunday with no universal
+ qualifier either). No layer test here, unlike 11/12/13 and 16/19/20:
+ the register does not split this entry into universal/proper/indult,
+ so a proper or indult feast of the Lord still bands 14, not 19/20. *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class2 && subject = Subject.Lord then 14
+ (* 15: Sundays, II class (every Sunday not already named at 6). *)
+ else if is_temporal && rank = Class2 && is_sunday then entry_15_band
+ (* 16: II-class feasts of the universal Church, not of the Lord. *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class2 && is_universal layer then 16
+ (* 17: Days within the Octave of the Nativity (26-28 Dec are Stephen,
+ John, the Innocents -- sanctoral, not this entry). *)
+ else if is_temporal && rank = Class2 && m = 12 && (d = 29 || d = 30 || d = 31) then 17
+ (* 18: II-class ferias -- Advent 17-23 Dec; Ember days of Advent, Lent,
+ September. *)
+ else if is_temporal && rank = Class2
+ && ((season = Advent && m = 12 && d >= 17 && d <= 23) || is_ember_18 slug)
+ then 18
+ (* 19: Proper II-class feasts. *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class2 && not (is_indult layer) then 19
+ (* 20: Indult II-class feasts. By elimination, as at 13. *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class2 then 20
+ (* 21: II-class vigils (Ascension, Assumption, John Baptist, Peter & Paul
+ -- can be temporal- or sanctoral-origin, see the file comment above). *)
+ else if rank = Class2 && is_vigil then 21
+ (* 22: Ferias of Lent and Passiontide (Thursday after Ash Wednesday to the
+ Saturday before Palm Sunday), except the Ember days (18 above). *)
+ else if is_temporal && rank = Class3 && (season = Lent || season = Passiontide) then 22
+ (* 23: III-class feasts in particular calendars. Unlike 11/12 and 14/16
+ above, the universal entry (24) is the HIGHER number here -- RG 91's
+ own table ranks a particular-calendar III-class feast ahead of a
+ universal one, the reverse of the I/II-class ordering. Transcribed as
+ the register states it, not "corrected" into the other classes'
+ pattern. RG 91 has no indult sub-rank at III class, so every non-base
+ layer lands here, not split further. *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class3 && not (is_universal layer) then 23
+ (* 24: III-class feasts in the universal calendar. *)
+ else if (not is_temporal) && (not is_vigil) && rank = Class3 then 24
+ (* 25: Ferias of Advent to 16 Dec, except the Ember days (18 above). *)
+ else if is_temporal && rank = Class3 && season = Advent then 25
+ (* 26: III-class vigils (St Lawrence). *)
+ else if rank = Class3 && is_vigil then 26
+ (* 27: Office of the BVM on Saturday -- every otherwise-unoccupied IV-class
+ Saturday, per the historical default that fills it; ordinary Mass
+ propers still make Rogation Mon/Tue/Wed proper without changing the
+ Office (RG 88, see temporal_ef.ml's [temporal]), so those never carry
+ this entry unless they happen to fall on the Saturday itself. Excludes
+ vigils for the same reason 11-13/14/16/19/20/23/24 do: RG 91 has no
+ IV-class vigil at all (RG 91's own vigil list, §4 "Vigils",
+ stops at III class), so one would be an anomaly, not this entry. *)
+ else if is_temporal && (not is_vigil) && rank = Class4 && weekday = Date.Sat then 27
+ (* 28: IV-class ferias -- the unqualified catch-all (temporal_ef.ml's own
+ comment on [ferial_rank] cites the same primary text, "Feriae IV
+ classis"). Excludes vigils for the same reason as 27 above: a IV-class
+ "feria" that is also a vigil is not a feria RG 91 describes. *)
+ else if (not is_vigil) && rank = Class4 then 28
+ else unclassified
+
+(* Task 8: what happens to the day's LOSING candidate (docs/research/
+ rules-register.md §4, "Occurrence" RG 92-95 and "Vigils" RG 33, plus RG
+ 94). [band] above decides who wins; this decides the loser's fate, which
+ turns on the LOSER's own rank and status (RG 95), except RG 33's vigil
+ omission, which also has to read the winner. Nothing here ever returns
+ [Precedence.Repose]: that disposition denotes RG 100-102's *repositio*
+ (perpetual impediment from a proper/diocesan calendar), out of this
+ plan's scope -- see calendar.mli's own note that nothing in the EF
+ ruleset currently emits it. *)
+
+(* RG 33 -- CORRECTED 2026-08-12 (Task 16, primary-source-verified against
+ docs/research/1962-06-23,_SS_Ioannes_XXIII,_Missale_Romanum,_LT.pdf, the
+ General Rubrics' own Chapter XI "De Vigiliis"). The register previously
+ transcribed this as "a I/II-class vigil is entirely omitted"; the
+ PRIMARY TEXT reads the other way round:
+
+ "33. Vigilia II aut III classis penitus omittitur, si occurrat in
+ dominica quavis, aut in festo I classis, vel si festum cui
+ præmittitur in alium diem transferri aut ad commemorationem reduci
+ contingat."
+
+ -- "A vigil of the II OR III class is entirely omitted, if it occurs on
+ ANY Sunday whatsoever, or on a feast of the I class, or if the feast it
+ precedes happens to be transferred to another day or reduced to a
+ commemoration." I-class vigils (Nativity, Pentecost, RG 30) are outside
+ this rule entirely -- RG 30's own text says they "festis quibuslibet
+ præferunt, et nullam admittunt commemorationem" (are preferred to ANY
+ feast whatsoever, and admit no commemoration at all), i.e. they can never
+ lose in the first place: {!band} entries 1/5/9 already rank Nativity Eve
+ and the Pentecost Vigil above every Sunday and every other I-class row
+ that could coincide with their fixed/Easter-relative dates (verified: no
+ date collision is even representable), so no I-class vigil can ever reach
+ this function as a [loser] -- the branch below never needs to test for
+ [Class1] and, before this fix, its stray inclusion of [Class1] here was
+ simply dead code, not a second bug (see the task report for the
+ argument). The bug was the OTHER half: [Class3] (the sole III-class
+ vigil, St Lawrence, RG 32) was MISSING from this branch, so it fell
+ through to the generic "commemorated or omitted" branch below instead of
+ RG 33's mandatory omission -- confirmed wrong for real data: 9 August
+ 2026 is a Sunday, and before this fix "vigil-of-st-lawrence" competed for
+ (and could in principle win) that Sunday's single commemoration slot,
+ when RG 33 says it must not even be a candidate. The oracle comparison
+ (missalemeum, Task 16) independently confirms: 9 Aug 2026 shows no trace
+ of the vigil surviving as a commemoration.
+
+ The third omission trigger in RG 33's own text -- "or if the feast it
+ precedes is transferred to another day or reduced to a commemoration" --
+ is NOT implemented: no II/III-class vigil's own feast (Ascension,
+ Assumption, John Baptist, Sts Peter & Paul, Lawrence) is ever
+ transferred or reduced to a commemoration anywhere in this codebase's
+ current data (all fixed I-class, none coincide with anything of equal or
+ higher rank within any year this project has sampled), so no witness
+ exists to build or test this clause against; flagged in the register
+ (§6) rather than guessed. *)
+let is_omissible_vigil (rank : Vocab_ef.rank) = rank = Vocab_ef.Class2 || rank = Vocab_ef.Class3
+
+(* Every Sunday slug this rite's temporal cycle produces -- named
+ (temporal_ef.ml's [named], e.g. "ef-easter-sunday") or the generic
+ "ef-<season>-sunday-<n>" fallback ([sunday_slug]) -- contains this
+ marker; nothing else [band] classifies does. Not an RG citation itself --
+ see [universal_layer]'s note on this file's own naming conventions --
+ exposed for the same reason as {!vigil_suffix}: a future rename of
+ temporal_ef's Sunday-slug format has somewhere to be caught other than a
+ silently-wrong RG 33 disposition. *)
+let sunday_marker = "-sunday"
+
+let contains_substring s ~needle =
+ let ls = String.length s and ln = String.length needle in
+ let rec at i = i + ln <= ls && (String.sub s i ln = needle || at (i + 1)) in
+ ln = 0 || at 0
+
+let is_sunday_slug slug = contains_substring slug ~needle:sunday_marker
+
+(* RG 33's own two conditions, taken directly from its text ("any Sunday or
+ a I-class feast") -- NOT derived from anything about which RG 91 entries
+ can numerically outrank a vigil. [rank = Class1] is the "I-class feast"
+ half. [is_sunday_slug] is the "any Sunday" half, and it is not redundant
+ with the rank check: RG 91 entries 14 and 16-20 (Feasts of the Lord II
+ class, universal/proper/indult II-class feasts, days within the Nativity
+ octave) are all [Class2], all outrank a II-class vigil (entry 21), and
+ none of them is a Sunday -- a winner of that shape satisfies neither
+ condition here, so [impedes_vigil] correctly returns [false] and such a
+ vigil falls through to RG 95's ordinary commemorate-or-omit branch
+ instead of RG 33's omission, exactly as the rubric requires. *)
+let impedes_vigil (winner : Vocab_ef.rank Precedence.candidate) =
+ let cel = winner.Precedence.cel in
+ cel.Celebration.rank = Vocab_ef.Class1
+ || is_sunday_slug (Slug.to_string cel.Celebration.slug)
+
+(* RG 91 entry 17's own slug convention (rite_ef/temporal_ef.ml's [named]:
+ "ef-nativity-octave-day-%d" for 29-31 Dec -- 26-28 Dec are Stephen, John,
+ the Innocents, sanctoral, and never carry this prefix, see [band]'s entry
+ 17 comment). Not an RG citation itself -- see [universal_layer] -- reused
+ below by [privilege_of] for RG 109(c). *)
+let nativity_octave_prefix = "ef-nativity-octave-day-"
+
+(* RG 109's own three named seasons for (e), "of ferias of Advent, Lent and
+ Passiontide" (§4, "Commemorations") -- temporal_ef.ml's generic
+ <season>-<week>-<weekday> ferial fallback slugs, whose season word is
+ [season_slug_word]'s output for exactly these three (vocab_ef.ml: Advent
+ and Passiontide are unmodified [season_to_string]; Lent likewise). Also
+ matches the Lent "after Ashes" sub-case ("ef-lent-after-ashes-<weekday>",
+ temporal_ef.ml's own [christmastide_feria_slug]-adjacent branch), which
+ is still a Lent feria under this same prefix. Not an RG citation -- see
+ [universal_layer] -- private: nothing outside [privilege_of] needs it. *)
+let alp_feria_prefixes = [ "ef-advent-"; "ef-lent-"; "ef-passiontide-" ]
+
+(* RG 109 (docs/research/rules-register.md §4, "Commemorations"): the
+ closed list of privileged commemorations, checked in the register's own
+ lettered order. A candidate matching none of (a)-(f) is ordinary, per the
+ register's own closing sentence, "All others are ordinary." Read entirely
+ off the candidate's own fields (rank, slug, origin) -- no [context]
+ (date/season/weekday) is available or needed: every category names a
+ property of the commemorated OFFICE ITSELF ("a commemoration OF a
+ Sunday", "OF a I-class day", ...), not of the day it happens to fall on,
+ and each of (a)-(e) already has a candidate-only marker this file's own
+ conventions establish ([sunday_marker], rank, [nativity_octave_prefix],
+ [september_ember_prefix]/[alp_feria_prefixes]) -- see the task report for
+ the full reasoning.
+
+ [disposition] below is this function's only caller, at both of its
+ [Commemorate] sites -- replacing Task 8's [interim_privilege] placeholder,
+ which always returned [Ordinary] regardless of the loser's real shape.
+ [admit] (RG 108-111's admission counts, below) trusts the privilege value
+ [disposition] has already attached rather than recomputing it here a
+ second time. *)
+let privilege_of (c : Vocab_ef.rank Precedence.candidate) : Precedence.privilege =
+ let cel = c.Precedence.cel in
+ let rank = cel.Celebration.rank in
+ let slug = Slug.to_string cel.Celebration.slug in
+ let is_temporal = c.Precedence.origin = Precedence.Temporal in
+ let open Vocab_ef in
+ (* (a) RG 109(a) (§4): "of a Sunday" -- the same slug marker RG 33's
+ [impedes_vigil] already reads to answer "is this candidate a Sunday". *)
+ if is_sunday_slug slug then Precedence.Privileged
+ (* (b) RG 109(b) (§4): "of a I-class day" -- the candidate's own
+ rank. In this codebase's current disposition rules the ONLY way a
+ [Class1] candidate ever reaches [Commemorate] at all is via
+ [Celebration.status = Commemoration_only] (a plain [Feast]-status
+ [Class1] loser always [Transfer]s instead, RG 95, below) -- so this
+ branch is real but its only reachable witness today is that shape; see
+ the task report. *)
+ else if rank = Class1 then Precedence.Privileged
+ (* (c) RG 109(c) (§4): "of days within the Octave of the Nativity". *)
+ else if is_temporal && String.starts_with ~prefix:nativity_octave_prefix slug then
+ Precedence.Privileged
+ (* (d) RG 109(d) (§4): "of September Ember days" -- named on its
+ own because September falls entirely outside (e)'s three seasons
+ (Advent/Lent/Passiontide) under ANY reading, not because it needs
+ excluding FROM (e) the way review round 1's F1/F2 finding corrected
+ the Advent/Lent Ember sets below to no longer need. *)
+ else if is_temporal && String.starts_with ~prefix:september_ember_prefix slug then
+ Precedence.Privileged
+ (* (e) RG 109(e) (§4): "of ferias of Advent, Lent and Passiontide" --
+ CORRECTED, fix round 1 (F1/F2): this branch previously excluded the
+ Advent and Lent Ember sets via [not (is_ember_18 slug)], reading RG
+ 109(e)'s bare "feriis Adventus, Quadragesimae" as tacitly narrower than
+ the ordinary ferias of those seasons, on the theory that (d)'s separate
+ September carve-out implied Ember days needed excluding from (e) too.
+ That reading does not survive comparing (e)'s text against RG 91's own
+ TABLE entries for the same seasons (register §4, "Ferias of Lent and
+ Passiontide... EXCEPTIS feriis Quatuor Temporum" at entry 22; "Ferias
+ of Advent... EXCEPTIS feriis Quatuor Temporum" at entry 25): the table
+ needs an explicit "exceptis" to keep Ember days from being double-
+ listed at both their own entry 18 AND entries 22/25 -- and an explicit
+ exception is only necessary because, ABSENT one, "feriae Adventus"/
+ "feriae Quadragesimae" already DO include their Ember sub-days by
+ default (an unnecessary exception is not how a rubrical text is
+ drafted). RG 109(e) carries no such "exceptis" clause, so its bare
+ "feriis Adventus, Quadragesimae" is read at that same default,
+ INCLUSIVE scope: the Advent and Lent Ember ferias ARE "ferias of
+ Advent"/"of Lent" in RG 109(e)'s sense, hence privileged, not merely
+ ordinary. (d)'s own separate existence is unaffected by this reading
+ either way -- September Ember days sit in "time after Pentecost",
+ never within Advent/Lent/Passiontide under any reading, so (d) remains
+ necessary regardless; it is not evidence for excluding Advent/Lent
+ Ember from (e), only for including September at all.) Consequently
+ [is_ember_18] is no longer tested here -- an Advent/Lent Ember slug
+ matches this branch exactly like an ordinary Advent/Lent feria slug
+ does, via the same [alp_feria_prefixes] prefix test; only a September
+ Ember slug is structurally excluded, because "ef-september-ember-*"
+ never starts with any of [alp_feria_prefixes] ("ef-advent-"/"ef-lent-"/
+ "ef-passiontide-") in the first place -- (d) above already privileges
+ it under its own name. *)
+ else if is_temporal && List.exists (fun p -> String.starts_with ~prefix:p slug) alp_feria_prefixes then
+ Precedence.Privileged
+ (* (f) RG 109(f) (§4): "of the Major Rogations, in Mass" -- the
+ Major Litanies (25 April, RG 80) are STILL not computed anywhere in
+ this codebase (temporal_ef.ml's own comment on [temporal]'s Rogation
+ branch, CORRECTED final fix wave item 7: they did not, in fact,
+ "arrive with Plan 3's sanctoral" -- Plan 3 shipped without them,
+ register §6 tracks this as an open item with no plan yet committed to
+ build it), so no candidate this engine can currently construct
+ represents one. There is no existing slug
+ convention to anchor a check to, and guessing one risks silently
+ misclassifying whatever a future task does name it -- a wrong citation
+ is worse than a missing one, so this is left unimplemented and flagged
+ in the task report rather than guessed. Deliberately NOT matched by
+ anything above: the Minor Litanies/Rogations ("ef-rogation-monday"/
+ "-tuesday", RG 87) temporal_ef.ml DOES compute are a different
+ observance RG 109(f) does not name (RG 88: the Minor Rogations change
+ nothing in the Office at all), so they correctly fall through to
+ "ordinary" below, not this category. *)
+ else Precedence.Ordinary
+
+let disposition ~(winner : Vocab_ef.rank Precedence.candidate)
+ ~(loser : Vocab_ef.rank Precedence.candidate) : Precedence.disposition =
+ let open Vocab_ef in
+ let cel = loser.Precedence.cel in
+ let is_temporal = loser.Precedence.origin = Precedence.Temporal in
+ if cel.Celebration.status = Celebration.Commemoration_only then
+ (* Always -- checked before RG 33's omission and RG 95's transfer so
+ neither can override it: a Commemoration_only entry can never win
+ (Precedence.resolve holds it out of the band contest entirely, see
+ that module's [resolve]) and, per the brief, can never transfer
+ either. Its privilege is [privilege_of loser] like every other
+ [Commemorate] below -- Commemoration_only carries a real [rank] for
+ exactly this purpose (Celebration.mli: "RG 111 orders admitted
+ commemorations by dignity"), so RG 109(b) applies to it precisely as
+ it would to any other candidate. *)
+ Precedence.Commemorate (privilege_of loser)
+ else if
+ is_omissible_vigil cel.Celebration.rank
+ && is_vigil (Slug.to_string cel.Celebration.slug)
+ && impedes_vigil winner
+ then
+ (* RG 33, corrected (see {!is_omissible_vigil}'s own comment): II- or
+ III-class vigils only -- a real I-class vigil can never reach this
+ function as a loser at all (see that comment), so this branch would
+ never have fired for [Class1] even before the fix; what changed is
+ that [Class3] (St Lawrence) now correctly reaches RG 33's omission
+ instead of falling through to the generic "commemorated or omitted"
+ branch below. *)
+ Precedence.Omit
+ else if
+ cel.Celebration.rank = Class1
+ && not (is_sunday_slug (Slug.to_string cel.Celebration.slug))
+ then
+ (* RG 95 (§4, "Occurrence" and "Transfer/translation"): only I-class FEASTS have the right
+ of translation -- RG 91's own table lists Sundays as a separate row
+ (entry 6) from feasts (entries 11-13), so a Sunday is never a "feast" in RG 95's sense, and
+ [is_sunday_slug] (the same marker RG 33's [impedes_vigil] and RG
+ 109(a)'s [privilege_of] already use) excludes it here. This is the
+ branch that completes Task 7's All Souls fix (RG
+ 91 entry 8): All Souls is I class, not a vigil, and not a Sunday
+ slug, so once it loses to an occurring Sunday it still reaches here
+ and transfers -- to 3 November, now DIRECTLY authorised by RG 96
+ Attamen (b) (primary-source-verified 2026-08-12): "Commemoratio
+ omnium Fidelium defunctorum, quando occurrit cum dominica,
+ transfertur, tamquam in sedem propriam, in feriam II sequentem" --
+ when it coincides with a Sunday, transferred, as to its own proper
+ seat, to the following Monday. Previously this rested only on entry
+ 8's own parenthetical plus the general RG 96 walk, which happened to
+ produce the right date; WHERE it lands either way is
+ Rite.transfer_target's job, not this function's -- disposition only
+ says THAT it moves. *)
+ Precedence.Transfer
+ else if
+ is_temporal
+ && (not (is_vigil (Slug.to_string cel.Celebration.slug)))
+ && cel.Celebration.rank = Class4
+ then
+ (* CORRECTED, fix round 1 (F1/F2 -- both real, the second the direct
+ cause of the first): the branch this replaces gated on
+ [privilege_of loser = Ordinary], justified by treating RG 109 as an
+ "exhaustive, closed list of the only temporal-origin circumstances
+ that ever generate a commemoration". That justification does not
+ survive reading RG 109 itself: it is headed "Commemorationes
+ PRIVILEGIATAE sunt commemorationes" and closes "Omnes aliae
+ commemorationes sunt commemorationes ORDINARIAE" -- it sorts
+ commemorations that ALREADY exist into two HONOUR classes
+ (privileged vs ordinary, RG 108's differing liturgical hours), and
+ says nothing about which offices have the RIGHT to be commemorated
+ in the first place. Testing [privilege_of = Ordinary] as an
+ ELIGIBILITY gate therefore happened to reach the right answer for
+ IV-class ferias (they are never commemorated, but for a reason
+ RG 109 does not state) and the WRONG answer for II- and III-class
+ ferias impeded during a season RG 109(e) does not privilege by name
+ (Advent 17-23 Dec's own ordinary-non-Ember ferias were fine, already
+ matching (e)'s slug prefix; the Advent and Lent EMBER ferias were
+ not, since the pre-fix (e) excluded them -- see [privilege_of]'s own
+ fix-round-1 comment above, which independently corrects THAT half
+ too). Confirmed wrong by direct reproduction (fix-round-1 review):
+ 1900-12-21 (an Advent Ember Friday, RG 91 entry 18, II class) lost
+ its own commemoration entirely under the pre-fix code, while an
+ ORDINARY (non-Ember, lower-solemnity) Advent feria the same week
+ kept its commemoration -- backwards on any reading.
+
+ The actual rule is Caput IV, "De feriis" (RG 21-27), which the
+ original Task 16 pass never opened -- a FERIAL-CLASS-keyed rule,
+ entirely separate from RG 109's HONOUR-class one:
+ - RG 23 (I-class ferias -- Ash Wednesday, Holy Week): "nullam
+ admittunt commemorationem, nisi unam privilegiatam" -- admit no
+ commemoration except one privileged one. Never actually reaches
+ this function as a loser (these ferias structurally always
+ outrank anything that could coincide with their dates -- {!band}
+ entries 2/7, see that function's own file comment and the Task 11
+ Easter-window invariant), so this clause has no live witness, the
+ same as before.
+ - RG 24 (II-class ferias -- Advent 17-23 Dec, the Advent/Lent/
+ September Ember ferias, RG 91 entry 18): "si vero impediuntur,
+ COMMEMORARI DEBENT" -- if indeed impeded, they MUST be
+ commemorated. Not optional, not conditioned on RG 109's list.
+ - RG 25 (III-class ferias -- ordinary Lent/Passiontide ferias, RG 91
+ entry 22; ordinary Advent ferias to 16 Dec, entry 25): "Hae
+ feriae, si impediuntur, commemorari debent" -- same mandate.
+ - RG 26: "Omnes feriae, numeris 23-25 non nominatae, sunt feriae IV
+ classis; quae NUNQUAM COMMEMORANTUR" -- every feria not named in
+ 23-25 is IV class, and IV-class ferias are NEVER commemorated.
+ This is [ferial_rank]'s own unqualified IV-class catch-all
+ (temporal_ef.ml), covering the ordinary green-season ferias of
+ Time after Epiphany/Pentecost, Septuagesima, Paschaltide outside
+ its privileged octave, and the Minor Rogation days (RG 87/88 --
+ they change nothing in the Office, so they take their season's
+ plain ferial class, which for Paschaltide-adjacent dates is
+ IV, not a special one).
+
+ So this branch is now gated directly on RG 26's own condition
+ ([rank = Class4]), which is the ONLY ferial class RG 21-27 excludes
+ from commemoration -- Class1 is structurally unreachable here (RG
+ 23, above); Class2 and Class3 both fall through to the final
+ [Commemorate] branch below (RG 24/25's mandate), tagged with
+ whatever HONOUR class [privilege_of] separately computes for them
+ under RG 109 -- a question this branch no longer conflates with
+ eligibility. SANCTORAL losers are entirely unaffected (the
+ [is_temporal] guard): Caput IV governs FERIAE, RG 21's own opening
+ definition ("Nomine feriae intelleguntur singuli dies hebdomadae,
+ praeter dominicam"), never a saint's day; RG 111(c)/(d) admit an
+ "ordinary" commemoration of a losing SAINT freely, with no such
+ class-keyed gate.
+
+ Empirically confirmed against the missalemeum oracle (Task 16,
+ 2026-2027, both years): every one of ~190 days where a saint's feast
+ impedes an ordinary (IV-class, non-privileged) temporal feria shows
+ ZERO commemorations in the oracle (e.g. "St. Marcellus I" impeding
+ the plain "Friday after Epiphany"), and the SAME rank-4 gate,
+ independently, correctly still omits the Minor Rogation days (RG 87)
+ losing to a saint -- both consequences of RG 26 alone now, not of a
+ reading of RG 109 that RG 109's own text does not support.
+
+ [is_vigil] is EXCLUDED from this branch for the same reason as
+ before, restated under the corrected citation: a II/III-class vigil
+ is temporal-origin too (the Ascension/Pentecost-adjacent case
+ {!of_temporal} produces) and typically Class2, so it would already
+ fall through this branch's [rank = Class4] test harmlessly on its
+ own -- RG 91 has no IV-class vigil at all (this file's own entry-27/
+ 28 comments), so [is_vigil && rank = Class4] should never occur on
+ real data. Kept as an explicit, defensive guard (not load-bearing
+ for real data, but total over every candidate {!Precedence.resolve}
+ or {!Calendar} can construct, including shapes RG 91's table itself
+ does not describe) rather than relying on that absence silently: a
+ vigil, per RG 31 (II class, "si impediuntur, commemorantur") / RG 32
+ (III class, "si impeditur, commemoratur"), is ALWAYS commemorated
+ once RG 33 does not omit it outright, regardless of ferial class --
+ a rule Caput IV does not speak to at all (vigils are Caput V, RG
+ 28-34, not "feriae"). RG 32's own full sentence, primary-source-
+ verified (final fix wave): "Vigilia III classis est vigilia S.
+ Laurentii. Haec vigilia praefertur diebus liturgicis IV classis; et,
+ si impeditur, commemoratur, iuxta rubricas" -- confirmed word for
+ word against the scan, not constructed by analogy with RG 31 (the
+ register's own §4 "Vigils" entry states RG 32 only as "same pattern
+ [as RG 31]", not verbatim -- now closed here). *)
+ Precedence.Omit
+ else
+ (* RG 95's other branch: "aut commemorantur aut penitus omittuntur" --
+ commemorated or wholly omitted. Reached by every SANCTORAL loser
+ below I class (RG 111(c)/(d)'s "ordinary" commemoration, no closed
+ list the way the temporal branch above has), AND by an impeded
+ I-class Sunday (excluded from the [Transfer] branch above, and from
+ the temporal Class4 [Omit] branch above because a Sunday is never
+ IV class -- RG 11-12/91 entry 6/15 make every Sunday I or II class,
+ never a "feria" at all in Caput IV's own sense, RG 21): RG 109(a)
+ (§4) lists "of a Sunday" as a privileged commemoration
+ category, which presupposes an impeded Sunday stays put rather than
+ moving to another day the way a feast does -- [privilege_of] tags it
+ [Privileged] via the same [is_sunday_slug] marker, with no further
+ code needed here. Which of commemorate/omit survives is RG 108-111's
+ admission count ([admit], below), not this function's decision; this
+ only opens the commemoration, tagged with its real RG 109 privilege
+ via [privilege_of].
+
+ RG 94 (a fixed-day commemoration is not carried along with a
+ transferred feast) needs no code here: [Precedence.resolve] calls
+ this function once per loser, always against the day's actual
+ [observed] winner -- never against a fellow loser that itself
+ transferred away -- so no mechanism exists by which a commemoration
+ could ride along with a departing feast in the first place; there is
+ nothing to suppress. *)
+ Precedence.Commemorate (privilege_of loser)
+
+(* Task 9: how many of the day's commemorations RG 111 admits, and which
+ (docs/research/rules-register.md §4, "Commemorations",
+ RG 111). [band] decides who wins the day; [disposition] decides who is
+ even eligible to be commemorated, and tags each with its RG 109 privilege
+ via [privilege_of]; this decides how many of THOSE survive.
+
+ RG 111 keys its four admission rules off the CLASS OF THE DAY ("diebus I
+ classis", "dominicis II classis", "aliis diebus II classis", "diebus III
+ et IV classis") -- read here off [observed]'s own [rank] and, for the
+ Sunday/non-Sunday II-class split, the same slug marker [privilege_of] and
+ RG 33's [impedes_vigil] already use ([is_sunday_slug]). No [context]
+ (date/season/weekday) is available to [admit] (see precedence.mli's
+ [rules.admit]) or needed: [observed] IS the day's own celebration, so its
+ rank and slug already carry everything RG 111's own four categories test. *)
+
+(* RG 8's four-class dignity order, Class1 highest. Deliberately NOT [band]
+ (RG 91's much finer 28-entry table): [band] needs a [context] [admit]
+ does not have (see above), and Celebration.mli's own comment on [status]
+ -- "RG 111 orders admitted commemorations by dignity" -- names [rank]
+ itself as that dignity, not the finer occurrence-table entry. *)
+let dignity = function
+ | Vocab_ef.Class1 -> 1
+ | Vocab_ef.Class2 -> 2
+ | Vocab_ef.Class3 -> 3
+ | Vocab_ef.Class4 -> 4
+
+(* Deterministic selection order for RG 111: dignity first, then slug --
+ the same tie-break {!Precedence.compare_by} uses for [band] itself (the
+ brief: "break ties on slug"), so which candidate wins a shared rank never
+ depends on the order [comms] arrives in. *)
+let compare_dignity (a, _) (b, _) =
+ let da = dignity a.Precedence.cel.Celebration.rank
+ and db = dignity b.Precedence.cel.Celebration.rank in
+ if da <> db then Int.compare da db
+ else Slug.compare a.Precedence.cel.Celebration.slug b.Precedence.cel.Celebration.slug
+
+let rec take n = function
+ | [] -> []
+ | x :: xs -> if n <= 0 then [] else x :: take (n - 1) xs
+
+let admit ~(observed : Vocab_ef.rank Precedence.candidate)
+ (comms : (Vocab_ef.rank Precedence.candidate * Precedence.privilege) list) :
+ (Vocab_ef.rank Precedence.candidate * Precedence.privilege) list =
+ (* Sorted once, by dignity then slug (see [compare_dignity]); every branch
+ below either takes a prefix of this list or filters it, so the RESULT
+ is always a sub-list of [comms] with its elements untouched -- never
+ rebuilt -- which matters beyond determinism: {!Precedence.resolve}'s
+ own [dropped] computation tells an admitted candidate from a dropped
+ one by physical equality (==) on the candidate value (Task 2's own
+ deferred note: "assuming admit returns the same candidate values rather
+ than rebuilt ones; undocumented for rite authors" -- documented here,
+ now that this is the function that note was about). Building a fresh
+ [{ c with ... }] record anywhere below would silently defeat that
+ accounting: the original would then match nothing in [admitted], so the
+ celebration would surface TWICE in the same day -- once in
+ [commemorations] (the rebuilt copy) and once in [omitted] (the original,
+ which nothing admitted matches). One admission, double-reported, and no
+ crash to announce it, which is exactly why this comment exists. *)
+ let sorted = List.stable_sort compare_dignity comms in
+ let is_privileged (_, p) = p = Precedence.Privileged in
+ let observed_rank = observed.Precedence.cel.Celebration.rank in
+ let observed_is_sunday =
+ is_sunday_slug (Slug.to_string observed.Precedence.cel.Celebration.slug)
+ in
+ let open Vocab_ef in
+ match (observed_rank, observed_is_sunday) with
+ | Class1, _ ->
+ (* RG 111: "I class: none save one privileged." Ordinary commemorations
+ never get a slot at all on a I-class day, no matter how many are
+ due; at most one privileged one does, the highest-dignity one if
+ several are. *)
+ (match List.filter is_privileged sorted with [] -> [] | best :: _ -> [ best ])
+ | Class2, true ->
+ (* RG 111(b), primary text, RE-VERIFIED word for word against the scan
+ (final fix wave; this sentence is the sole textual basis for the
+ shipped rank-floor fix below, and the register's own §4 "RG 111"
+ entry previously carried only the fragment "de festo II classis",
+ not the full sentence -- now added there too): "in dominicis II
+ classis, una tantum admittitur commemoratio, SCILICET DE FESTO II
+ CLASSIS, quæ tamen omittitur si commemoratio privilegiata facienda
+ sit" -- "on Sundays of the II class, only ONE commemoration is
+ admitted, NAMELY OF A FEAST OF THE II CLASS, which however is
+ dropped if a privileged commemoration is due." Two clauses, not
+ one: (i) a privileged
+ commemoration, whenever due, categorically takes the day's one slot
+ -- not by comparing its dignity against the ordinary contender's,
+ so an ordinary commemoration that would otherwise win on raw
+ dignity is still dropped once any privileged one is also due (the
+ asymmetric clause the brief and task report flag as deliberate, not
+ present at "other II class" below); (ii) failing that, the slot is
+ reserved SPECIFICALLY for a [Class2] candidate -- "de festo II
+ classis" is a RANK restriction, not merely "whichever ordinary
+ candidate has the best dignity": a III- or IV-class ordinary loser
+ (a plain commemoration-only saint with no privilege of its own) has
+ NO standing for this slot at all and must be entirely omitted, even
+ when it is the only candidate present.
+
+ Fix, Task 16 (primary-source-verified + missalemeum-confirmed):
+ previously this fell back to "the best of [sorted], whatever its
+ rank" once no privileged candidate was due, silently admitting a
+ III/IV-class ordinary saint that RG 111(b)'s own wording excludes.
+ Confirmed wrong for real data by the oracle comparison: e.g. 11 Jan
+ 2026 (Holy Family, a II-class Sunday) has St Hyginus (Class3,
+ commemoration-only) as its only competing candidate -- missalemeum
+ shows him "displaced" (omitted), never commemorated; the
+ pre-fix code admitted him regardless. *)
+ (match List.filter is_privileged sorted with
+ | best :: _ -> [ best ]
+ | [] -> (
+ match List.filter (fun (c, _) -> c.Precedence.cel.Celebration.rank = Class2) sorted with
+ | [] -> []
+ | best :: _ -> [ best ]))
+ | Class2, false ->
+ (* RG 111: "other II class: one" -- no privilege-override clause here,
+ unlike the Sunday case immediately above, so the day's one slot
+ goes to whichever candidate outranks the rest by dignity alone,
+ privileged or not. *)
+ (match sorted with [] -> [] | best :: _ -> [ best ])
+ | (Class3 | Class4), _ ->
+ (* RG 111: "III-IV class: at most two" -- by dignity, same as the
+ non-Sunday II-class case, just with room for two. *)
+ take 2 sorted
+
+(* Task 11: RG 96 -- where an impeded I-class feast lands (docs/research/
+ rules-register.md §4, "Transfer/translation"). [band] decides who is
+ impeded; [disposition] decides that an impeded I-class FEAST (not a
+ Sunday, not omitted by RG 33) is [Transfer]-disposed; this is the third
+ and final question RG 96 poses -- WHERE the translation lands -- and is
+ {!Rite.t.transfer_target} itself, called by {!Calendar}'s placement pass
+ once per deferred candidate, never re-run once a target is accepted
+ (calendar.ml's own comment on [~start ~stop]).
+
+ RG 96's own text, register-transcribed: "the next following day that is
+ not I or II class." [is_blocking] reads that off [Vocab_ef.rank] --
+ RG 96 speaks of the day's CLASS (RG 8's four-way dignity), not [band]'s
+ finer 28-entry occurrence-table row, the same distinction {!admit} above
+ already draws for RG 111 ({!dignity}, not [band]). *)
+let is_blocking (rank : Vocab_ef.rank) = rank = Vocab_ef.Class1 || rank = Vocab_ef.Class2
+
+(* RG 96's own named exception (docs/research/rules-register.md §4,
+ "Transfer/translation", RG 96 Attamen (a) -- primary-source-verified
+ 2026-08-12, corrected from an earlier unconditional transcription; see
+ the register's own correction note). Verbatim: "festum Annuntiationis
+ B. Mariae Virg., quando est transferendum post Pascha, transfertur,
+ tamquam in sedem propriam, in feriam II post dominicam in albis" -- when
+ [the feast] is to be transferred PAST EASTER, [it] is transferred, as to
+ its own proper seat, to the Monday after Low Sunday. The exception is
+ CONDITIONAL on that "past Easter" clause -- {!transfer_target} tests it
+ by comparing the GENERAL RG 96 target against Easter itself, not by
+ testing the date here. Identified by slug -- the same convention this
+ file already uses to pick out one specific celebration from a rank/
+ status shape shared by many others ({!nativity_octave_prefix},
+ [is_ember_18]'s date anchors) -- not an RG citation itself: RG 96 does
+ not encode how a computer recognises "the Annunciation", only what
+ happens to it once recognised. data/ef/sanctoral.sexp's own bootstrapped
+ slug (Task 10), reused verbatim rather than guessed. *)
+let annunciation_slug = "annunciation-of-the-blessed-virgin-mary"
+
+(* Not an RG citation -- a defensive engineering ceiling, the same role
+ Calendar's own [max_transfer_rounds] plays for the OUTER round loop
+ (calendar.ml). That guard bounds how many ROUNDS the whole-year placement
+ pass takes; it does nothing for the walk a single call to this function
+ makes internally, which is this module's own responsibility (rite.mli
+ documents the obligation this constant exists to satisfy). Comfortably
+ longer than the longest real run of consecutive I/II-class days the 1962
+ calendar produces -- 24 Dec to 1 Jan (the Nativity vigil through the
+ Circumcision, both I class, with the intervening octave days II class) is
+ 9 days; Easter through Low Sunday (the Easter octave, I class, entry 10)
+ is 8 -- RG 91 entry 28's own unqualified IV-class catch-all guarantees a
+ non-blocking feria follows any such run in real data. Not tuned to that
+ bound any more than 64 is tuned to RG 97-98's real collision count: a
+ ceiling nothing in the 1962 calendar comes close to, so a rite/data shape
+ this module has not anticipated fails FINITELY (see [search_from]) rather
+ than hanging the CLI. *)
+let max_search_days = 400
+
+(* The domain's own ceiling ({!Date.make}'s documented 1583..9999 bound,
+ also duplicated by calendar.ml's own [domain_max_date] for the same
+ reason: neither module exposes it to the other, and this is a three-line
+ constant, not worth a new signature just to share it). [search_from]
+ below must never call [occupant] on a date past this: [occupant] chains
+ through the rite's own [temporal] (calendar.ml's [resolve_with_injected]),
+ which for the real EF rite calls [Computus.gregorian_easter], which is
+ NOT total outside 1583..9999 -- it constructs a [Date.t] via [Date.make]
+ and [failwith]s on [Error]. [Date.add_days] itself has no such limit (it
+ is documented "unbounded total arithmetic"), so [search_from] CAN walk
+ [d] past 31 December 9999 without raising by itself -- the raise would
+ only happen on the NEXT [occupant d] call, which is exactly the bug this
+ guards against: an I-class feast impeded late enough in civil year 9999
+ that every remaining day of the year is also I or II class (reachable
+ through the project's own overlay mechanism, confirmed by review: an
+ Add-ed I-class feast on 25 December leaves only Class2 Nativity-octave
+ days for the rest of 9999, so the unguarded walk reached 1 January 10000
+ and crashed there). *)
+let domain_max_date =
+ match Date.make ~year:9999 ~month:12 ~day:31 with Ok d -> d | Error e -> failwith e
+
+(* Walks forward from [d], returning the first date [occupant] reports as
+ NOT [is_blocking]. [steps] is a strictly increasing structural bound on
+ the recursion, capped at [max_search_days]: the function decreases
+ [max_search_days - steps] by exactly one on every call and returns as
+ soon as that reaches zero (whether or not an admissible day was ever
+ found), so THIS loop terminates by construction, regardless of what
+ [occupant] reports -- it does not rely on the real EF calendar's own
+ structure to guarantee termination the way the comment above explains
+ why the bound is never actually reached in practice. Also stops, without
+ calling [occupant] again, once [d] passes {!domain_max_date} -- see that
+ constant's own comment for why probing [occupant] beyond it can raise.
+ Either way the last date visited is returned WITHOUT a further
+ [occupant] probe -- one more finite (not necessarily admissible) date,
+ not a further search -- because the value the caller ([transfer_target])
+ is still owed is "a date", never an exception; {!Calendar}'s own
+ [~start ~stop] bound (calendar.ml's [place_transfers]) is what turns an
+ implausible non-terminating real search into a recorded [omitted], not
+ this function pretending to have found something admissible. *)
+let rec search_from (occupant : Date.t -> Vocab_ef.rank Celebration.t) (steps : int) (d : Date.t) :
+ Date.t =
+ if steps >= max_search_days || Date.compare d domain_max_date > 0 then d
+ else if is_blocking (occupant d).Celebration.rank then search_from occupant (steps + 1) (Date.add_days d 1)
+ else d
+
+(* [transfer_target]'s contract (rite.mli): total, terminating, and its
+ result is always strictly after [origin]. Terminating: [search_from]'s
+ own structural bound, above. Strictly after [origin]: the general branch
+ is exactly [search_from]'s own result starting at [Date.add_days origin
+ 1], which only ever advances forward from there, so it is always >=
+ origin + 1. The Annunciation branch, when it fires, instead searches from
+ the Monday after Low Sunday for [origin]'s own civil year -- NOT provably
+ later than [origin] by the code alone, but true of every representable
+ year: the Annunciation's [origin] is always 25 March (Date_spec.Fixed in
+ data/ef/sanctoral.sexp), Easter always falls within that SAME civil year
+ in [22 March, 25 April] (Computus's own documented range, register §0),
+ so Low Sunday (Easter + 7) falls in [29 March, 2 May] and the Monday
+ after it in [30 March, 3 May] -- always after 25 March.
+
+ RG 96 Attamen (a) (see {!annunciation_slug}'s own comment) makes the
+ Annunciation exception CONDITIONAL on the general walk carrying the
+ feast past Easter -- so the general target is always computed FIRST,
+ for every candidate, and only overridden for the Annunciation when that
+ target itself falls after Easter Sunday. A version of this function that
+ tested the DATE of [origin] instead (e.g. "is 25 March within some fixed
+ window of Easter") would be re-deriving the register's own "quando est
+ transferendum post Pascha" condition from first principles, exactly the
+ kind of guess this project's "a wrong citation is worse than a missing
+ one" rule warns against; comparing the general target against Easter
+ directly tests the rubric's own words. *)
+let transfer_target (c : Vocab_ef.rank Precedence.candidate) (origin : Date.t)
+ (occupant : Date.t -> Vocab_ef.rank Celebration.t) : Date.t =
+ let general_target = search_from occupant 0 (Date.add_days origin 1) in
+ let is_annunciation = Slug.to_string c.Precedence.cel.Celebration.slug = annunciation_slug in
+ let easter = Computus.gregorian_easter (Date.year origin) in
+ if is_annunciation && Date.compare general_target easter > 0 then
+ (* Low Sunday = Easter + 7 (register §0, temporal_ef.ml's [off 7]); the
+ Monday after it = Easter + 8. Searched onward from there exactly
+ like the general case searches from [origin + 1] -- "only if that
+ day is itself blocked" (rite.mli) is [search_from]'s ordinary
+ behaviour, not a second mechanism. *)
+ search_from occupant 0 (Date.add_days easter 8)
+ else general_target
diff --git a/lib/rites/rite_ef/precedence_ef.mli b/lib/rites/rite_ef/precedence_ef.mli
new file mode 100644
index 0000000..55f947e
--- /dev/null
+++ b/lib/rites/rite_ef/precedence_ef.mli
@@ -0,0 +1,260 @@
+(** RG 91's Table of Precedence for the EF (1962) rite: ranks any candidate
+ for a given day by its RG 91 entry number. See
+ docs/research/rules-register.md §4, whose 28-entry transcription this
+ module follows line by line. *)
+
+open Colitur_kernel
+
+(** The universal (base) sanctoral layer's {!Celebration.t}.layer id. A
+ Sanctoral-origin candidate whose layer is anything else is an overlay:
+ "proper" (RG 91 entries 12, 19, 23) unless its layer id also carries
+ {!indult_prefix} ("indult", entries 13, 20). This id and the prefix are
+ colitur's own data-modelling convention, not an RG citation -- RG 91
+ prescribes the ranking, not a machine encoding for it. Whichever task
+ loads the real EF sanctoral base layer and its overlays must either
+ reuse these two constants or this classifier will misfile them. *)
+val universal_layer : string
+
+(** See {!universal_layer}. *)
+val indult_prefix : string
+
+(** Slug suffix marking a celebration as a vigil (RG 91 entries 21, 26),
+ e.g. "ef-ascension-vigil" -- colitur's own temporal-cycle convention
+ (rite_ef/temporal_ef.ml's [named]). Also colitur's own convention, not
+ an RG citation, exposed for the same reason as {!universal_layer}. See
+ {!vigil_prefix} for the sanctoral data's own, different convention: a
+ vigil can arrive named either way, and {!band}/{!disposition} must
+ recognise both. *)
+val vigil_suffix : string
+
+(** Slug prefix marking a celebration as a vigil, e.g. "vigil-of-st-lawrence"
+ -- the sanctoral data's own convention (data/ef/sanctoral.sexp, adopted
+ verbatim from lectio's naming, per spec §4.4's "slugs are lectionary keys,
+ not re-derived"). Also colitur's own convention, not an RG citation --
+ see {!universal_layer}. Task 10 bootstrapped four real sanctoral vigils
+ named this way (St Lawrence 08-09, Sts Peter & Paul 06-28, the Assumption
+ 08-14, the Nativity of St John the Baptist 06-23; a fifth, Christmas, is
+ suppressed as a duplicate of the temporal cycle's own "ef-nativity-vigil"
+ -- see data/ef/adjustments.sexp), none of which end in {!vigil_suffix}:
+ without this prefix also being checked, {!band} would misfile all four at
+ 16/24 (an ordinary feast of the same rank) instead of RG 91's 21/26, and
+ RG 33's vigil omission ({!disposition}'s [is_vigil] test, the same
+ predicate) would never fire for them either -- two rubrics silently
+ broken for four celebrations, exactly what Task 7's review predicted
+ when it asked for {!vigil_suffix} to be exposed. *)
+val vigil_prefix : string
+
+(** Slug prefixes marking a celebration as one of RG 91 entry 18's three
+ Ember-day sets (Advent, Lent, September -- the Pentecost/Whitsun set is
+ I class and matched by entry 10 before this is ever consulted). Also
+ colitur's own convention mirroring rite_ef/temporal_ef.ml's own "ef-<set>
+ -ember-<day>" slug format, not re-derived from first principles; exposed
+ so a rename of that format has somewhere to be caught other than a
+ silently-wrong entry 18. *)
+val ember_prefixes : string list
+
+(** Returned for a candidate shape RG 91's 28-entry table has no row for --
+ e.g. a [Class1] vigil that is not the Nativity or Pentecost (entries 5,
+ 9 are the only I-class vigils the table names), or a [Class4] candidate
+ also marked as a vigil. Deliberately outside 1..28 and larger than any
+ real entry, so an unclassified candidate can never win an occurrence
+ contest by accident; a caller that sees it back knows the shape needs a
+ new rule, not a silently wrong one. *)
+val unclassified : int
+
+(** [band ctx c]: RG 91's Table of Precedence. Returns the table's own entry
+ number -- I class 1-13, II class 14-21, III class 22-26, IV class 27-28;
+ lower wins (see {!Precedence.rules.band}) -- EXCEPT where the table's own
+ text states an exception: entry 8 (All Souls) reads "yields to an
+ occurring Sunday", so on a Sunday this returns a value that
+ loses to entry 15 rather than the literal integer 8 (see the comment on
+ entry 8 in precedence_ef.ml for the exact value and why). Total over
+ every candidate {!Precedence.resolve} or {!Calendar} can construct,
+ including shapes the 1962 table itself does not describe (see
+ {!unclassified}). *)
+val band : Vocab_ef.season Precedence.context -> Vocab_ef.rank Precedence.candidate -> int
+
+(** RG 33's marker: every Sunday slug this rite's temporal cycle produces
+ (temporal_ef.ml's [named] and [sunday_slug]) contains this substring;
+ nothing else {!band} classifies does. Also colitur's own convention, not
+ an RG citation -- see {!universal_layer} -- exposed for the same reason
+ as {!vigil_suffix}: a rename of temporal_ef's Sunday-slug format has
+ somewhere to be caught other than a silently-wrong RG 33 disposition. *)
+val sunday_marker : string
+
+(** [disposition ~winner ~loser]: RG 92-95, 33, 21-27, 94 (docs/research/
+ rules-register.md §4, "Occurrence", "Vigils" and "Caput IV, 'De
+ feriis'"). What becomes of a losing candidate, decided by the LOSER's
+ own rank and status (RG 95), except RG 33's vigil omission, which also
+ reads the winner:
+ - a {!Celebration.status} of [Commemoration_only] is always
+ [Commemorate] (checked first: it can never win -- see
+ {!Precedence.resolve} -- and, by that same status's own definition,
+ already denotes an office with nothing left to translate, so it never
+ transfers either; not itself a further RG citation beyond RG 93's
+ general four-mechanism statement above);
+ - a [Class2] or [Class3] loser whose slug marks it a vigil
+ ({!vigil_suffix} OR {!vigil_prefix} -- both conventions this
+ codebase's data uses, see {!vigil_prefix}'s own comment) is [Omit]
+ when the winner is any Sunday ({!sunday_marker}) or itself [Class1]
+ (RG 33 -- entirely omitted, not merely commemorated). A [Class1]
+ vigil (Nativity, Pentecost) is outside RG 33 entirely -- RG 30 makes
+ it preferred to any feast whatsoever, so a real one can never reach
+ this function as a [loser] in the first place (see the .ml's own
+ comment on [is_omissible_vigil] for the full argument);
+ - any other [Class1] loser that is NOT a Sunday ({!sunday_marker}) is
+ [Transfer] (RG 95 -- only I-class FEASTS have the right of
+ translation; RG 91's own table lists Sundays as a separate row, entry
+ 6, from feasts, entries 11-13, so a Sunday is never a "feast" in RG
+ 95's sense and does not transfer even when impeded by a higher
+ I-class day. This is also what moves All Souls, RG 91 entry 8, once
+ it loses to an occurring Sunday -- WHERE it lands is
+ {!Rite.t.transfer_target}'s job, not this function's);
+ - a TEMPORAL-origin, non-vigil loser of [Class4] is [Omit] (RG 26,
+ "Caput IV, De feriis" -- "every feria not named in [RG 23-25] is IV
+ class ... and IV-class ferias are NEVER commemorated." A SEPARATE
+ rule from RG 109's honour-class one immediately below, keyed on
+ ferial CLASS rather than on RG 109's privilege letters: RG 109 sorts
+ commemorations that already exist into honour classes (RG 108's
+ differing liturgical hours), it does not itself decide which offices
+ have the right to be commemorated at all -- that is Caput IV's own
+ business. A SANCTORAL loser of the same rank is unaffected by this
+ branch (the [is_temporal] guard): RG 21 defines "feria" as any
+ weekday, never a saint's day, and RG 111(c)/(d) admit an "ordinary"
+ commemoration of a losing SAINT freely, with no such class-keyed
+ gate);
+ - everything else -- including an impeded I-class Sunday, and a
+ SANCTORAL loser of any rank below I class -- is [Commemorate],
+ carrying its real RG 109 privilege (see {!admit} below); RG 109(a)
+ lists "of a Sunday" as a privileged commemoration category precisely
+ because an impeded Sunday stays put rather than moving to another
+ day, and RG 24/25 make a losing II- or III-class FERIA's own
+ commemoration mandatory when impeded, not merely eligible.
+
+ Total over every winner/loser pair {!Precedence.resolve} or {!Calendar}
+ can construct: [Vocab_ef.rank] (RG 8) and {!Celebration.status} are both
+ closed variants, and the five cases above -- an if/else-if chain ending
+ in the unconditional [Commemorate] catch-all -- exhaust every value
+ those two fields can take between them; there is no sixth,
+ "unclassified" case the way {!band} needs one, because this function's
+ own return type has no such slot to fall into by accident. *)
+val disposition :
+ winner:Vocab_ef.rank Precedence.candidate ->
+ loser:Vocab_ef.rank Precedence.candidate ->
+ Precedence.disposition
+
+(** Slug prefix marking a celebration as one of RG 91 entry 17's days within
+ the Octave of the Nativity (29-31 Dec -- 26-28 Dec are Stephen, John, the
+ Innocents, sanctoral, never this prefix). Also colitur's own convention
+ mirroring rite_ef/temporal_ef.ml's own "ef-nativity-octave-day-%d" slug
+ format, not an RG citation -- see {!universal_layer} -- exposed for the
+ same reason as {!vigil_suffix}: a rename of that format has somewhere to
+ be caught other than a silently-wrong RG 109(c) privilege. *)
+val nativity_octave_prefix : string
+
+(** The September set of {!ember_prefixes}, broken out on its own because RG
+ 109(d) (§4, "Commemorations") privileges September Ember days under its
+ own name, and September sits outside RG 109(e)'s three named seasons
+ (Advent, Lent, Passiontide) under any reading of that clause -- NOT
+ because the Advent and Lent Ember sets need excluding from (e), which
+ they do not: (e)'s own bare text privileges them too, the same as any
+ other Advent/Lent feria (see {!Precedence_ef.privilege_of}'s own (e)
+ comment in the .ml for the full argument, corrected fix round 1).
+ {!ember_prefixes} is built from this constant, not a duplicated literal,
+ so the two cannot silently drift apart. *)
+val september_ember_prefix : string
+
+(** [admit ~observed comms]: RG 108-111 (docs/research/rules-register.md §4,
+ "Commemorations"). How many of [comms] -- each already tagged with its
+ real RG 109 privilege by {!disposition} -- RG 111 admits, and which,
+ given the day actually observed:
+ - [observed] a [Class1] day: none, except at most one privileged
+ commemoration (the highest-dignity one, if several are due) -- an
+ ordinary one is never admitted here, no matter how many are due;
+ - [observed] a [Class2] Sunday (its slug carries {!sunday_marker}): one,
+ subject to TWO conditions, not one -- (i) a privileged commemoration,
+ whenever due, categorically takes the day's one slot over any
+ ordinary one, not by comparing dignity, so an ordinary commemoration
+ that would otherwise win on dignity is still dropped; (ii) failing
+ that, the slot is reserved for a [Class2] candidate SPECIFICALLY
+ ("de festo II classis", RG 111(b)'s own wording -- a RANK FLOOR, not
+ "whichever ordinary candidate has the best dignity"): a III- or
+ IV-class ordinary loser has no standing for this slot at all and is
+ admitted nothing, even when it is the only candidate due;
+ - [observed] any other [Class2] day: one, by dignity alone -- no
+ privilege override and no rank floor, unlike the Sunday case
+ immediately above;
+ - [observed] a [Class3] or [Class4] day: at most two, by dignity alone.
+
+ "Dignity" here is [Vocab_ef.rank] (RG 8's four classes), NOT {!band}'s
+ finer RG 91 entry number -- {!band} needs a [context] (date/season/
+ weekday) this function does not receive (see {!Precedence.rules.admit}).
+ Ties break on slug, matching {!Precedence.compare_by}, so the result
+ never depends on the order [comms] arrives in.
+
+ Every candidate this returns is a value taken unchanged from [comms],
+ never rebuilt: {!Precedence.resolve}'s own [dropped]/[omitted]
+ accounting tells an admitted candidate from a dropped one by physical
+ equality on the candidate value, so anything this function admitted
+ stays admitted, and anything it did not is reported in
+ {!Precedence.resolution.omitted}, never silently lost. Total: every
+ [Vocab_ef.rank] is one of the four cases above, and every branch is
+ itself total over an empty or arbitrarily long [comms]. *)
+val admit :
+ observed:Vocab_ef.rank Precedence.candidate ->
+ (Vocab_ef.rank Precedence.candidate * Precedence.privilege) list ->
+ (Vocab_ef.rank Precedence.candidate * Precedence.privilege) list
+
+(** The Annunciation's own bootstrapped slug (data/ef/sanctoral.sexp, Task
+ 10), reused verbatim by {!transfer_target} to recognise RG 96's named
+ exception. Not an RG citation -- see {!universal_layer} -- exposed so a
+ future re-bootstrap that renames the slug has somewhere to be caught
+ other than a silently-wrong transfer target. *)
+val annunciation_slug : string
+
+(** [transfer_target c origin occupant]: RG 96 (docs/research/rules-register
+ .md §4, "Transfer/translation") -- where an impeded I-class feast, once
+ {!disposition} has decided it is [Transfer]-disposed, is placed. This
+ *is* {!Colitur_kernel.Rite.t}.transfer_target; see that field's own
+ fuller rationale for why the search has to be rite-supplied at all.
+
+ RG 96's own rule: the next following day whose currently-resolved
+ occupant is not I or II class (read off [Vocab_ef.rank], RG 8's dignity
+ -- not {!band}'s finer occurrence-table entry, the same distinction
+ {!admit} draws for RG 111). This general target is computed for EVERY
+ candidate, always, first.
+
+ RG 96's own named exception (Attamen (a), primary-source-verified --
+ see {!annunciation_slug}'s comment for the Latin and the register's own
+ correction note): for the Annunciation specifically, IF that general
+ target would fall after Easter Sunday itself ("quando est transferendum
+ post Pascha" -- when it is to be transferred past Easter), the
+ Annunciation is placed instead at the Monday after Low Sunday (its
+ [sedes propria]), searching onward from there only if that day is
+ itself occupied by a blocking class. The exception is CONDITIONAL, not
+ unconditional: an Annunciation impeded for a reason that resolves
+ BEFORE Easter (e.g. an ordinary Lent Sunday with a free feria the next
+ day) takes the general target like any other I-class feast. Operationally
+ the condition holds exactly when 25 March falls close enough to Easter
+ that the general walk crosses it -- concretely, when 25 March itself
+ falls within Holy Week or Easter Week.
+
+ Total, terminating, and its result is always strictly later than
+ [origin] -- {!Colitur_kernel.Rite.t}.transfer_target's own obligations,
+ which {!Colitur_kernel.Calendar}'s placement pass relies on and its own
+ round guard does not itself enforce (calendar.ml's [place_transfers]
+ bounds ROUNDS across a whole year, not one call's internal walk).
+ Terminating by a structural bound on the internal walk (max 400 days,
+ an engineering ceiling, not an RG citation -- see the .ml) AND a guard
+ at {!Colitur_kernel.Date}'s own domain ceiling (31 December 9999,
+ beyond which probing [occupant] can itself raise -- see the .ml's
+ [domain_max_date]), not by an argument about the real 1962 calendar's
+ own structure, so a rite/data shape this function has not anticipated
+ fails FINITELY rather than hanging or crashing the caller. Strictly
+ later than [origin]: the general search starts at [origin + 1] and only
+ ever advances forward from there; the Annunciation's own alternate
+ starting point is provably later than 25 March for every representable
+ year (Easter's documented range, register §0) -- see the .ml for the
+ full argument. *)
+val transfer_target :
+ Vocab_ef.rank Precedence.candidate -> Date.t -> (Date.t -> Vocab_ef.rank Celebration.t) -> Date.t
diff --git a/lib/rites/rite_ef/rite_ef.ml b/lib/rites/rite_ef/rite_ef.ml
new file mode 100644
index 0000000..7a29421
--- /dev/null
+++ b/lib/rites/rite_ef/rite_ef.ml
@@ -0,0 +1,24 @@
+(* This module's name matches the library's own name ("rite_ef"), so dune
+ treats it as the library's top-level module instead of generating one
+ automatically -- every sibling module this library defines must be
+ re-exported here explicitly, or external references to e.g.
+ [Rite_ef.Temporal_ef] (bin/main.ml, every test/ file that opens this
+ rite) stop resolving. *)
+module Vocab_ef = Vocab_ef
+module Temporal_ef = Temporal_ef
+module Precedence_ef = Precedence_ef
+
+open Colitur_kernel
+
+let context : (Vocab_ef.season, Vocab_ef.rank) Rite.t =
+ { Rite.id = Temporal_ef.id;
+ vocab = Vocab_ef.vocab;
+ year_start = Temporal_ef.year_start;
+ temporal = Temporal_ef.temporal;
+ anchors = Temporal_ef.anchors;
+ rules =
+ { Precedence.band = Precedence_ef.band;
+ disposition = Precedence_ef.disposition;
+ admit = Precedence_ef.admit };
+ season_runs = Vocab_ef.seasons;
+ transfer_target = Precedence_ef.transfer_target }
diff --git a/lib/rites/rite_ef/rite_ef.mli b/lib/rites/rite_ef/rite_ef.mli
new file mode 100644
index 0000000..e2b3e6d
--- /dev/null
+++ b/lib/rites/rite_ef/rite_ef.mli
@@ -0,0 +1,35 @@
+(** The EF (1962) rite module: this library's top-level module (its filename
+ matches the library's own name "rite_ef", so dune uses it as the
+ library's entry point directly rather than generating one -- see the
+ .ml's own comment). Re-exports every sibling module this library
+ defines, so [Rite_ef.Vocab_ef], [Rite_ef.Temporal_ef] and
+ [Rite_ef.Precedence_ef] keep resolving exactly as they did before this
+ module existed. *)
+
+module Vocab_ef = Vocab_ef
+module Temporal_ef = Temporal_ef
+module Precedence_ef = Precedence_ef
+
+(** The EF rite, bundled (design spec's [RITE] signature, realised as a
+ {!Colitur_kernel.Rite.t} value rather than a functor -- see rite.mli):
+ - [id], [vocab], [year_start], [temporal], [anchors]: {!Temporal_ef}
+ unchanged (RG 71-77 seasons, RG 91's named movable days).
+ - [rules]: {!Precedence_ef}'s three RG 91/92-95/108-111 functions,
+ wrapped as one {!Colitur_kernel.Precedence.rules} record.
+ - [season_runs]: {!Vocab_ef.seasons} itself -- the EF liturgical year
+ visits each of its eight seasons exactly once, in that same order
+ (Advent-anchored, matching [year_start]), so the expected
+ run-length-compressed sequence {!Colitur_kernel.Rite.t.season_runs}
+ wants IS the vocabulary's own canonical list, not a separate one.
+ - [transfer_target]: {!Precedence_ef.transfer_target}, RG 96 (see that
+ value's own documentation for the termination and forward-progress
+ argument {!Colitur_kernel.Rite.t.transfer_target}'s contract requires).
+
+ Deliberately carries no [sanctoral]/[lectionary] fields the way the
+ original design-doc sketch of [RITE] does: {!Colitur_kernel.Rite.t} (the
+ type actually shipped, Plan 2) keeps the sanctoral {!Colitur_kernel.Layer.t}
+ a separate argument to {!Colitur_kernel.Calendar.year}/[day] rather than
+ embedding it here, so a caller can load data/ef/sanctoral.sexp (plus
+ data/ef/adjustments.sexp's overlay) however suits it -- bin/main.ml's
+ [load_ef_layer] is the one this module ships with. *)
+val context : (Vocab_ef.season, Vocab_ef.rank) Colitur_kernel.Rite.t
diff --git a/lib/rites/rite_ef/temporal_ef.ml b/lib/rites/rite_ef/temporal_ef.ml
index 52a9adb..7782876 100644
--- a/lib/rites/rite_ef/temporal_ef.ml
+++ b/lib/rites/rite_ef/temporal_ef.ml
@@ -17,9 +17,17 @@ let weekday_index d =
(* The Sunday on or before [d]. *)
let sunday_on_or_before d = Date.add_days d (-(weekday_index d))
-(* RG 71: Advent I is the Sunday nearest 30 November -- equivalently the fourth
- Sunday before Christmas, i.e. three weeks before the last Sunday on or before
- 24 December. *)
+(* RG 20 (Caput III, "De Dominicis"), primary-source-verified (final fix
+ wave): "Dominica I Adventus ea est, quae cadit die 30 novembris vel est
+ ipsi proximior" -- Advent I Sunday is that which falls on 30 November or
+ is nearest to it. CORRECTED citation: this comment previously cited RG
+ 71 for this placement rule -- WRONG, RG 71 (cited on [season] below)
+ states only Advent's own season BOUNDARY ("a I Vesperis dominicae I
+ Adventus..."), not which Sunday opens it; the register's own RG 71 entry
+ is a boundary citation, and the only "nearest 30 November" text there
+ before this fix was UNLYC nn. 39-42, the MODERN form's rule, not this
+ one's. Equivalently the fourth Sunday before Christmas, i.e. three weeks
+ before the last Sunday on or before 24 December. *)
let advent_start y = Date.add_days (sunday_on_or_before (mk y 12 24)) (-21)
let year_start = advent_start
@@ -47,8 +55,13 @@ let season d =
else if Date.compare d paschal_end <= 0 then Paschaltide (* RG 76 *)
else Time_after_pentecost (* RG 77 *)
-(* Last Sunday of October, per the 1960 calendar -- NOT the OF's last Sunday
- before Advent. Register §6 flags this for primary-source confirmation. *)
+(* RG 17(d) (Caput III, "De Dominicis"), PRIMARY-SOURCE-VERIFIED (final fix
+ wave, closing the item register §6 previously carried as "oracle-backed,
+ not yet primary-verified"): "festum D. N. Iesu Christi Regis, celebrandum
+ dominica ultima mensis octobris" -- the feast of Our Lord Jesus Christ
+ the King is to be celebrated on the LAST SUNDAY OF OCTOBER. NOT the OF's
+ last Sunday before Advent -- a genuine EF/OF divergence, not merely a
+ citation gap. *)
let christ_the_king y = sunday_on_or_before (mk y 10 31)
let same a b = Date.compare a b = 0
@@ -77,7 +90,10 @@ let named d =
if m = 12 && dd = 25 then Some (Christmastide, "ef-nativity", Colour.White, Class1)
else if m = 12 && dd = 24 then
(* RG 91 entry 5: the Vigil of the Nativity is I class. lectio has no slug
- for it, so this key has no lectionary entry until Plan 3 fills it. *)
+ for it, so this key has no lectionary entry until Plan 4 fills it
+ (CORRECTED, final fix wave, item 7 -- this is the lectionary/reading-
+ citations bootstrap, Plan 4, not the sanctoral one, Plan 3, which
+ already shipped in this branch). *)
Some (Advent, "ef-nativity-vigil", Colour.Violet, Class1)
else if m = 12 && (dd = 29 || dd = 30 || dd = 31) then
(* Days within the Octave of the Nativity; 26-28 Dec are Stephen, John and
@@ -98,9 +114,15 @@ let named d =
else if same d (off 7) then
Some (Paschaltide, "ef-low-sunday", Colour.White, Class1) (* RG 91 entry 6 *)
else if same d (off 38) then
- (* RG 91 entry 21: II-class vigil. It is also Rogation Wednesday; with no
- precedence framework until Plan 3, temporal emits the higher-ranked
- vigil and the Rogation commemoration waits for RG 108-111. *)
+ (* RG 91 entry 21: II-class vigil. It is also Rogation Wednesday; [named]
+ emits the higher-ranked vigil (entry 21 outranks any Rogation-day
+ ferial rank). CORRECTED (final fix wave, item 7): this comment
+ previously said the Rogation commemoration itself "waits for RG
+ 108-111" -- the precedence framework and RG 108-111 both exist now
+ (this branch), but no candidate for the Rogation Wednesday's own
+ observance is constructed here or anywhere else, so there is nothing
+ for RG 108-111 to admit; see the fuller comment on the Rogation
+ branch further down in [temporal] for the current, still-real gap. *)
Some (Paschaltide, "ef-ascension-vigil", Colour.White, Class2)
else if same d (off 39) then Some (Paschaltide, "ef-ascension", Colour.White, Class1)
else if same d (off 48) then Some (Paschaltide, "ef-pentecost-vigil", Colour.Red, Class1) (* RG 91 entry 9 *)
@@ -170,8 +192,10 @@ let week d =
this to "ef-christmas-0-<weekday>", indistinguishable from the stretch
above in lectio's own data. colitur cannot preserve a distinction lectio
doesn't make, so this becomes "ef-christmas-1-<weekday>" -- a
- colitur-only key and a lectionary gap for the Plan 3 bootstrap to fill,
- exactly like the Nativity vigil and octave-day keys above.
+ colitur-only key and a lectionary gap for the Plan 4 bootstrap to fill
+ (CORRECTED, final fix wave, item 7: the lectionary bootstrap is Plan 4,
+ not Plan 3 -- see Slug.ml's own corrected comment), exactly like the
+ Nativity vigil and octave-day keys above.
- 7-13 Jan, split in two by the *actual* first-Sunday-after-Epiphany
origin ([week_origin Time_after_epiphany], which by construction always
falls somewhere in this window -- see that function's own comment):
@@ -253,18 +277,30 @@ let id = "ef"
(* The third Sunday of September: the Ember week's anchor.
- This specific date-derivation rule is one of the more contested points in
- the 1962 calendar: pre-1955 practice tied the September Ember days to the
- week following the Exaltation of the Holy Cross (14 Sept) instead. The two
- rules only disagree when 1 September is a Monday -- 2025 is such a year --
- and the primary-source scan available to this project does not contain an
- explicit numbered-paragraph statement of either rule (searched; see
- register §3 "Ember days"), so this citation is deliberately left at the
- rank rules only (RG 91 entries 18/22, cited on [ember] below), not the
- date-derivation rule itself: a wrong citation is worse than none.
- Empirically: for 2025 this rule gives 24/26/27 September, confirmed
- against an independent oracle; the Holy-Cross rule would give 17/19/20
- September instead. See register §3 for the full note. *)
+ [cited] PRIMARY-SOURCE-VERIFIED (register §3a): MR1962, "De anno et eius
+ partibus", under the heading "Quatuor Tempora" (not a numbered RG
+ paragraph, which is why an earlier paragraph-number search missed it):
+
+ "Quatuor Tempora celebrantur quarta et sexta feria ac sabbato post
+ tertiam dominicam Adventus, post primam dominicam Quadragesimae, post
+ dominicam Pentecostes, post dominicam tertiam septembris."
+
+ -- the Ember Days are kept on the Wednesday, Friday and Saturday after
+ Advent III, after Lent I, after Pentecost, [and] after the third Sunday
+ of September -- confirming all four of this module's anchors, including
+ this specific contested one. This specific date-derivation rule was one
+ of the more contested points in the 1962 calendar: pre-1955 practice
+ tied the September Ember days to the week following the Exaltation of
+ the Holy Cross (14 Sept) instead. The two rules only disagree when 1
+ September is a Monday -- 2025 is such a year, and confirms the
+ third-Sunday reading empirically too (24/26/27 September against an
+ independent oracle, vs the Holy-Cross rule's 17/19/20). An earlier
+ version of this comment said the scan contained no numbered-paragraph
+ statement of either rule and left the citation at the rank rules only
+ (RG 91 entries 18/22) -- WRONG, corrected once the nominative heading
+ "Quatuor Tempora" was found rather than the genitive "Quatuor Temporum"
+ the original search used; register §3a records the correction, because a
+ false "not in the source" note is worse than no note. *)
let third_sunday_of_september y =
let sep1 = mk y 9 1 in
let first_sunday = Date.add_days sep1 ((7 - weekday_index sep1) mod 7) in
@@ -278,8 +314,10 @@ let third_sunday_of_september y =
The September and Advent sets match lectio's own Ember slugs. The Lent and
Whitsun (Pentecost) sets do not -- lectio has no Ember slug for either, so
"ef-lent-ember-*" and "ef-pentecost-ember-*" are colitur-only keys and a
- lectionary gap for the Plan 3 bootstrap to fill (spec §4.4), the same
- status as the Nativity vigil and the Rogation days below. *)
+ lectionary gap for the Plan 4 bootstrap to fill (spec §4.4; CORRECTED,
+ final fix wave, item 7 -- Plan 4, not Plan 3, is the lectionary
+ bootstrap), the same status as the Nativity vigil and the Rogation days
+ below. *)
let ember d =
let y = Date.year d in
let easter = Computus.gregorian_easter y in
@@ -302,25 +340,38 @@ let ember d =
(* RG 91 entry 7: Ash Wednesday (named above) and Monday-Wednesday of Holy
Week are I-class ferias -- the primary text reads "feria IV cinerum et II,
- III et IV Hebdomadae sanctae", i.e. explicitly stops at Wednesday. Thursday
- to Saturday of Holy Week are the Sacred Triduum, RG 91 entry 2 -- ranked
- even above entry 7, not a mere feria -- but their own named offices are a
- Plan 3 sanctoral addition; until then this gives them the same I-class rank
- via the generic ferial path. RG 91 entry 10: the weekdays within the
- privileged Octaves of Easter and Pentecost are I class too. *)
+ III et IV Hebdomadae sanctae", i.e. explicitly stops at Wednesday
+ (PRIMARY-SOURCE-VERIFIED, final fix wave: confirmed word for word
+ against the scan). Thursday to Saturday of Holy Week are the Sacred
+ Triduum, RG 91 entry 2 -- ranked even above entry 7, not a mere feria --
+ but the Sacred Triduum has NO PROPER OFFICE of its own in this codebase
+ (CORRECTED, final fix wave, item 7: this comment previously said their
+ "own named offices are a Plan 3 sanctoral addition"; WRONG on two
+ counts -- Plan 3 shipped, in this branch, without adding them, AND a
+ proper office for I-class FERIAS was never a sanctoral matter to begin
+ with, RG 21's own definition of "feria" excludes Sundays/feasts, not the
+ other way round). `Temporal_ef.temporal 2026-04-02/03/04` (Holy
+ Thursday/Good Friday/Holy Saturday) still resolve today to the ordinary
+ Passiontide ferial fallback's own generic slugs,
+ "ef-passiontide-2-{thursday,friday,saturday}" -- register §6 records
+ this as its own open item now. This gives them the same I-class rank
+ via the generic ferial path regardless. RG 91 entry 10: the weekdays
+ within the privileged Octaves of Easter and Pentecost are I class too. *)
let privileged_feria d =
let easter = Computus.gregorian_easter (Date.year d) in
let n = days_between easter d in
(n >= -6 && n <= -1) || (n >= 1 && n <= 6) || (n >= 50 && n <= 55)
(* RG 117 enumerates the five colours (white, red, green, violet, black);
- RG 127 assigns green and RG 128 violet to the seasons de Tempore below.
- White's own specific paragraph (the "B) De colore albo" section, between
- 117 and 123) was not pinned by the primary-source search available here --
- left uncited rather than guessed; see register §3 "Colours". *)
+ RG 127 assigns green and RG 128 violet to the seasons de Tempore below. RG
+ 119 (register §3b, primary-source-verified 2026-08-11 -- this comment was
+ stale until Task 16 noticed the correction had not been copied down here):
+ white "a festo Nativitatis Domini usque ad expletum tempus Epiphaniae"
+ and "a Missa Vigiliae paschalis usque ad Missam vigiliae Pentecostis
+ exclusive" -- exactly Christmastide and Paschaltide below. *)
let season_colour = function
| Advent | Septuagesima | Lent | Passiontide -> Colour.Violet (* RG 128 *)
- | Christmastide | Paschaltide -> Colour.White
+ | Christmastide | Paschaltide -> Colour.White (* RG 119 *)
| Time_after_epiphany | Time_after_pentecost -> Colour.Green (* RG 127 *)
(* Gaudete (Advent III) and Laetare (Lent IV) are rose: RG 131, "may be used...
@@ -365,16 +416,27 @@ let temporal d =
| None -> (
(* Rogations (the Minor Litanies only -- RG 87, Monday and Tuesday
before Ascension). The Major Litanies (25 April, RG 80) are a fixed
- date and are not yet computed; they arrive with Plan 3's sanctoral
- (register §6). The Wednesday here is the Ascension vigil (see Task
- 11). RG 88: "de Litaniis minoribus nihil fit in Officio" -- the
- Office (hence the day's rank) is unchanged by the Rogation; only the
- Mass is proper. No RG 91 table entry elevates these days, so they
+ date and are STILL not computed (CORRECTED, final fix wave, item 7:
+ this comment previously said "they arrive with Plan 3's sanctoral"
+ -- Plan 3 shipped, in this branch, without them; register §6 tracks
+ this as a plain open item, with no plan committed to build it yet).
+ The Wednesday here is the Ascension vigil (see Task 11), which
+ happens to also fall on Rogation Wednesday -- the vigil (higher
+ RG 91 entry) is what [named] emits for that date; the Rogation
+ Wednesday's own commemoration is not separately constructed (a real
+ gap, not a forward dependency: the precedence framework and RG
+ 108-111 both exist now, but nothing wires a Rogation-Wednesday
+ candidate into the contest for this specific date the way Monday
+ and Tuesday get one below). RG 88: "de Litaniis minoribus nihil fit
+ in Officio" -- the Office (hence the day's rank) is unchanged by
+ the Rogation; only the Mass is proper. No RG 91 table entry
+ elevates these days, so they
take the ordinary ferial rank of their season via [ferial_rank]
rather than a fixed class. lectio has no Rogation slug at all, so
"ef-rogation-monday"/"-tuesday" are colitur-only keys and a
- lectionary gap for Plan 3, like the Ember and Nativity-vigil keys
- above. *)
+ lectionary gap for Plan 4 (CORRECTED, final fix wave, item 7 --
+ the lectionary bootstrap is Plan 4, not Plan 3), like the Ember
+ and Nativity-vigil keys above. *)
let rogation = days_between easter d in
if rogation = 36 || rogation = 37 then
build ~season:s
@@ -411,6 +473,34 @@ let temporal d =
let colour =
(* The Pentecost octave weekdays are red, not Paschaltide's white. *)
if days_between easter d >= 50 && days_between easter d <= 55 then Colour.Red
+ (* RG 128(b) (docs/research/rules-register.md §3b), primary
+ text: "...a dominica in Septuagesima usque ad Vigiliam
+ paschalem, EXCEPTIS: ... MISSA SIVE CHRISMATIS SIVE IN
+ CENA DOMINI FERIA V HEBDOMADAE SANCTAE; ..." -- violet
+ runs Septuagesima to the Easter Vigil EXCEPT (among
+ others) "the Mass, whether of the Chrism or in Cena
+ Domini [Holy Thursday], on Thursday of Holy Week" --
+ named as a WHOLE-MASS exception (unlike Palm Sunday's
+ "blessing and procession of palms", which the SAME
+ sentence carves out as only PART of that day, register
+ §3b's own RG126 note on the not-yet-modelled per-action
+ nuance), so this is a clean whole-day colour fact, not
+ a per-action one the day/colour model cannot express.
+ RG 122, fix round 1 (F9), states the same fact
+ affirmatively rather than as an exception to RG 128's
+ violet: "Demum adhibetur color albus, feria V
+ Hebdomadae sanctae, in Missa Chrismatis et in Missa in
+ Cena Domini" -- white is used, finally [among the
+ White section's own list], on Thursday of Holy Week,
+ in the Mass of Chrism and in the Mass in Cena Domini.
+ Task 16, found via the missalemeum oracle comparison:
+ every other Triduum day's oracle colour SET includes
+ violet as one option (Good Friday "bv", Holy Saturday
+ "vw" -- RG 132's black is a separate, ALREADY-flagged
+ gap, register §3b, not touched here), but Holy
+ Thursday's is white ALONE -- confirming this specific
+ day, and only this one, needs the exception coded. *)
+ else if days_between easter d = -3 then Colour.White
else season_colour s
in
let week_n = week d in
diff --git a/lib/rites/rite_ef/vocab_ef.ml b/lib/rites/rite_ef/vocab_ef.ml
index 13e7309..e5726e8 100644
--- a/lib/rites/rite_ef/vocab_ef.ml
+++ b/lib/rites/rite_ef/vocab_ef.ml
@@ -45,7 +45,10 @@ let season_of_string = function
(* Deliberately NOT season_to_string: slugs are lectionary keys adopted verbatim
from lectio, which names these two seasons differently. Changing these words
- would silently break the Plan 3 lectionary bootstrap. *)
+ would silently break the Plan 4 lectionary bootstrap (CORRECTED, final fix
+ wave, item 7 -- see Slug.ml's own corrected comment for the Plan 3/4
+ distinction: the sanctoral bootstrap these slugs already serve is Plan 3
+ and shipped; the lectionary/reading-citations bootstrap is Plan 4). *)
let season_slug_word = function
| Christmastide -> "christmas"
| Paschaltide -> "easter"
diff --git a/test/cli.t b/test/cli.t
index feb7c49..5a646a4 100644
--- a/test/cli.t
+++ b/test/cli.t
@@ -17,7 +17,7 @@ A year outside the supported domain is rejected (exit 2):
No/garbage arguments give a usage error (exit 2):
$ colitur
- colitur: usage: colitur easter <year> | colitur temporal <year>
+ colitur: usage: colitur easter <year> | colitur temporal <year> | colitur day <year>
[2]
The EF temporal cycle for a year, one line per day:
@@ -41,3 +41,81 @@ A year outside the supported domain is rejected (exit 2):
$ colitur temporal 1000
colitur: year 1000 out of range 1583..9999
[2]
+
+The resolved EF calendar for a year (Task 11) -- temporal AND sanctoral,
+occurrence and transfers applied: one line per civil-year day,
+"YYYY-MM-DD weekday season week slug rank colour [+commemoration-slug]...".
+
+ $ colitur day 2026 | wc -l
+ 365
+
+Easter is the observed day exactly once, and carries no commemoration (an
+impeded I class day admits at most one PRIVILEGED commemoration, RG 111, and
+nothing outranks Easter to be impeded by it in the first place):
+
+ $ colitur day 2026 | grep -c '^2026-04-05 '
+ 1
+ $ colitur day 2026 | grep '^2026-04-05 '
+ 2026-04-05 sunday paschaltide 1 ef-easter-sunday class-1 white
+
+Ash Wednesday: I class (RG 91 entry 7), violet, no numbered week (it falls 4
+days before Lent I's own origin -- rite_ef/temporal_ef.ml's [week]):
+
+ $ colitur day 2026 | grep '^2026-02-18 '
+ 2026-02-18 wednesday lent - ef-ash-wednesday class-1 violet
+
+Christmas: I class, white (RG 91 entry 1):
+
+ $ colitur day 2026 | grep '^2026-12-25 '
+ 2026-12-25 friday christmastide - ef-nativity class-1 white
+
+All Souls (2 Nov, RG 91 entry 8) end to end: 2 Nov 2025 is a Sunday (verified
+independently -- 1 Jan 2025 is a Wednesday, day-of-year 306, (3+305) mod 7 =
+0 = Sunday), so entry 8 yields to it (still an ordinary II-class Sunday,
+"sunday" in season time-after-pentecost, colour green -- the week number
+itself is not re-asserted here, already covered by test_temporal_ef.ml); RG
+95 then transfers All Souls (I class, not a Sunday, not a vigil) and RG 96
+places it on 3 Nov, the next day that is not I or II class:
+
+ $ colitur day 2025 | grep -c 'commemoration-of-all-souls'
+ 1
+ $ colitur day 2025 | grep '^2025-11-02 ' | sed -E 's/ [0-9]+ ef-time-after-pentecost-sunday-[0-9]+ / <week> ef-time-after-pentecost-sunday-<n> /'
+ 2025-11-02 sunday time-after-pentecost <week> ef-time-after-pentecost-sunday-<n> class-2 green
+ $ colitur day 2025 | grep '^2025-11-03 '
+ 2025-11-03 monday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+
+(week 21: Pentecost 2025 is 8 June (colitur easter 2025); 8 Jun - 3 Nov is
+148 days, floor_div(148, 7) = 21 -- rite_ef/temporal_ef.ml's own [week]
+formula, hand-verified before promoting this line, not merely printed and
+trusted.)
+
+All Souls observed directly on 2 Nov in a year where it does not fall on a
+Sunday: 2 Nov 2026 is a Monday (1 Jan 2026 is a Thursday, same day-of-year
+306 offset, (4+305) mod 7 = 1 = Monday):
+
+ $ colitur day 2026 | grep -c 'commemoration-of-all-souls'
+ 1
+ $ colitur day 2026 | grep '^2026-11-02 '
+ 2026-11-02 monday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+
+(week 23: Pentecost 2026 is 24 May (colitur easter 2026); 24 May - 2 Nov is
+162 days, floor_div(162, 7) = 23 -- same formula, same independent check.)
+
+RG 96's Annunciation exception (25 March) is CONDITIONAL, not unconditional
+-- fix round 1, coordinator review, register corrected 2026-08-12. In 2057,
+25 March is Lent III Sunday (I class, impedes it); 26 March is an ordinary
+Lent feria (III class, well before Easter, 22 April 2057), so the GENERAL
+RG 96 target -- not the Monday after Low Sunday -- is what governs, since
+the general walk never crosses Easter. Before this fix the unconditional
+reading sent it to 30 April (Easter + 8) instead:
+
+ $ colitur day 2057 | grep '^2057-03-26 '
+ 2057-03-26 monday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white +ef-lent-3-monday
+ $ colitur day 2057 | grep -c 'annunciation-of-the-blessed-virgin-mary'
+ 1
+
+A year outside the supported domain is rejected (exit 2):
+
+ $ colitur day 1000
+ colitur: year 1000 out of range 1583..9999
+ [2]
diff --git a/test/dune b/test/dune
index 07a4aae..714ffb2 100644
--- a/test/dune
+++ b/test/dune
@@ -1,8 +1,15 @@
(test
(name test_colitur)
(libraries colitur_kernel rite_ef alcotest qcheck qcheck-alcotest sexplib)
+ (deps
+ ../data/ef/sanctoral.sexp
+ ../data/ef/adjustments.sexp
+ ../data/ef/expected-divergences.sexp
+ ../data/ef/expected-divergences-missalemeum.sexp
+ fixtures/lectio-ef-2005-2050.txt
+ fixtures/missalemeum-ef-2026-2027.txt)
(preprocess
(pps ppx_sexp_conv)))
(cram
- (deps %{bin:colitur}))
+ (deps %{bin:colitur} ../data/ef/sanctoral.sexp ../data/ef/adjustments.sexp))
diff --git a/test/fixtures/lectio-ef-2005-2050.provenance b/test/fixtures/lectio-ef-2005-2050.provenance
new file mode 100644
index 0000000..872517b
--- /dev/null
+++ b/test/fixtures/lectio-ef-2005-2050.provenance
@@ -0,0 +1,29 @@
+Fixture: lectio-ef-2005-2050.txt
+Task: 2026-08-11-colitur-plan3-resolution-engine, Task 15 (differential harness)
+
+Produced by the sibling project ~/git/projects/lectio at commit:
+ 2386a45 cmd(lectio-ef-dump): new EF calendar dumper for colitur's differential oracle
+ (branch polish-ui-and-calendar at the time; see that repo's own log)
+
+SHA-256: 2ca3eeeda4e7a0406c4d004c1b2003fc0df671aca9af18a1b506543a721c8bac
+(same digest as [fixture_sha256] in test/test_differential.ml, ASSERTED by
+that suite's own "fixture SHA-256 matches its provenance note" test -- this
+line documents the pin for a reader who never runs the suite; that test is
+what actually enforces it. Regenerate both together, deliberately, after
+re-running the exact command below -- never by copying a mismatch's actual
+value back in, which would defeat the pin's purpose.)
+
+Exact command:
+ cd ~/git/projects/lectio && go run ./cmd/lectio-ef-dump 2005 2050
+
+Output: one line per civil day, 2005-01-01 through 2050-12-31 inclusive
+(16801 lines = 46*365 + 11 leap days), in lectio's OWN vocabulary --
+season/slug/rank/colour spellings are lectio's, not translated to colitur's.
+See cmd/lectio-ef-dump/main.go's own doc comment for the exact column
+format and the caveats this repo's comparator (test/test_differential.ml)
+relies on: the trailing "+other-slug" tokens are LOSING candidates (lectio
+has no RG 111 admission logic), and lectio's own EF oracle test asserts
+season only, for 2025-2026 only (rank/colour are logged, not asserted).
+
+Regenerate with the same command if lectio's EF calendar logic changes and
+the fixture needs updating; do not hand-edit this file.
diff --git a/test/fixtures/lectio-ef-2005-2050.txt b/test/fixtures/lectio-ef-2005-2050.txt
new file mode 100644
index 0000000..40f5c9d
--- /dev/null
+++ b/test/fixtures/lectio-ef-2005-2050.txt
@@ -0,0 +1,16801 @@
+2005-01-01 saturday christmas - ef-circumcision class-1 white
+2005-01-02 sunday christmas - ef-christmas-sunday-0 class-2 white
+2005-01-03 monday christmas - ef-christmas-0-monday class-4 white
+2005-01-04 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2005-01-05 wednesday christmas - ef-christmas-0-wednesday class-4 white +telesphorus-pope-and-martyr
+2005-01-06 thursday time-after-epiphany - ef-epiphany class-1 white
+2005-01-07 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2005-01-08 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2005-01-09 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2005-01-10 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2005-01-11 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green +hyginus-pope-and-martyr
+2005-01-12 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2005-01-13 thursday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2005-01-14 friday time-after-epiphany 2 hilary class-3 white +felicis
+2005-01-15 saturday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2005-01-16 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +marcellus-i
+2005-01-17 monday time-after-epiphany 2 anthony class-3 white
+2005-01-18 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +prisca
+2005-01-19 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2005-01-20 thursday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2005-01-21 friday time-after-epiphany 3 agnes class-3 red
+2005-01-22 saturday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2005-01-23 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +raymond-of-pe-afort +emerentiana
+2005-01-24 monday septuagesima 1 timothy class-3 red
+2005-01-25 tuesday septuagesima 1 conversion-of-st-paul class-3 white +peter
+2005-01-26 wednesday septuagesima 1 polycarp class-3 red
+2005-01-27 thursday septuagesima 1 john-chrysostom class-3 white
+2005-01-28 friday septuagesima 1 peter-nolasco class-3 white
+2005-01-29 saturday septuagesima 1 francis-de-sales class-3 white
+2005-01-30 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +martina
+2005-01-31 monday septuagesima 2 john-bosco class-3 white
+2005-02-01 tuesday septuagesima 2 ignatius-of-antioch class-3 red
+2005-02-02 wednesday septuagesima 2 purification-of-the-blessed-virgin-mary class-2 white
+2005-02-03 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet +blaise
+2005-02-04 friday septuagesima 2 andrew-corsini class-3 white
+2005-02-05 saturday septuagesima 2 agatha class-3 red
+2005-02-06 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +titus +dorothy
+2005-02-07 monday septuagesima 3 romuald class-3 white
+2005-02-08 tuesday septuagesima 3 john-of-matha class-3 white
+2005-02-09 wednesday lent - ef-ash-wednesday class-1 violet +cyril-of-alexandria +appollonia
+2005-02-10 thursday lent - ef-lent-after-ashes-thursday class-3 violet +scholastica
+2005-02-11 friday lent - ef-lent-after-ashes-friday class-3 violet +our-lady-of-lourdes
+2005-02-12 saturday lent - ef-lent-after-ashes-saturday class-3 violet +seven-holy-servite-founders
+2005-02-13 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2005-02-14 monday lent 1 ef-lent-1-monday class-3 violet +valentine
+2005-02-15 tuesday lent 1 ef-lent-1-tuesday class-3 violet +sts-faustinus-jovita
+2005-02-16 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2005-02-17 thursday lent 1 ef-lent-1-thursday class-3 violet
+2005-02-18 friday lent 1 ef-lent-1-friday class-3 violet +simeon
+2005-02-19 saturday lent 1 ef-lent-1-saturday class-3 violet
+2005-02-20 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2005-02-21 monday lent 2 ef-lent-2-monday class-3 violet
+2005-02-22 tuesday lent 2 chair-of-st-peter class-2 white +paul
+2005-02-23 wednesday lent 2 ef-lent-2-wednesday class-3 violet +peter-damien
+2005-02-24 thursday lent 2 matthias class-2 red
+2005-02-25 friday lent 2 ef-lent-2-friday class-3 violet
+2005-02-26 saturday lent 2 ef-lent-2-saturday class-3 violet
+2005-02-27 sunday lent 3 ef-lent-sunday-3 class-2 violet +gabriel-of-our-lady-of-sorrows
+2005-02-28 monday lent 3 ef-lent-3-monday class-3 violet
+2005-03-01 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2005-03-02 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2005-03-03 thursday lent 3 ef-lent-3-thursday class-3 violet
+2005-03-04 friday lent 3 ef-lent-3-friday class-3 violet +casimir +lucius
+2005-03-05 saturday lent 3 ef-lent-3-saturday class-3 violet
+2005-03-06 sunday lent 4 ef-lent-sunday-4 class-2 violet +sts-felicitas-perpetua
+2005-03-07 monday lent 4 ef-lent-4-monday class-3 violet +thomas-aquinas
+2005-03-08 tuesday lent 4 ef-lent-4-tuesday class-3 violet +john-of-god
+2005-03-09 wednesday lent 4 ef-lent-4-wednesday class-3 violet +frances-rome
+2005-03-10 thursday lent 4 ef-lent-4-thursday class-3 violet +forty-holy-martyrs-of-sebaste
+2005-03-11 friday lent 4 ef-lent-4-friday class-3 violet
+2005-03-12 saturday lent 4 ef-lent-4-saturday class-3 violet +gregory-the-great
+2005-03-13 sunday passiontide 1 ef-passion-sunday class-1 violet
+2005-03-14 monday passiontide - ef-passiontide-0-monday class-3 violet
+2005-03-15 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2005-03-16 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2005-03-17 thursday passiontide - ef-passiontide-0-thursday class-3 violet +patrick
+2005-03-18 friday passiontide - ef-passiontide-0-friday class-3 violet +cyril-of-jerusalem
+2005-03-19 saturday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2005-03-20 sunday passiontide 2 ef-palm-sunday class-1 violet
+2005-03-21 monday passiontide - ef-passiontide-0-monday class-1 violet +benedict
+2005-03-22 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2005-03-23 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2005-03-24 thursday passiontide - ef-passiontide-0-thursday class-1 violet +gabriel-the-archangel
+2005-03-25 friday passiontide - ef-passiontide-0-friday class-1 violet
+2005-03-26 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2005-03-27 sunday easter 1 ef-easter-sunday class-1 white +john-damascene
+2005-03-28 monday easter 1 ef-easter-1-monday class-1 white +john-of-capistrano
+2005-03-29 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2005-03-30 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2005-03-31 thursday easter 1 ef-easter-1-thursday class-1 white
+2005-04-01 friday easter 1 ef-easter-1-friday class-1 white
+2005-04-02 saturday easter 1 ef-easter-1-saturday class-1 white +francis-of-paola
+2005-04-03 sunday easter 2 ef-low-sunday class-1 white
+2005-04-04 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white +isidore-of-seville
+2005-04-05 tuesday easter 2 ef-easter-2-tuesday class-4 white +vincent-ferrer
+2005-04-06 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2005-04-07 thursday easter 2 ef-easter-2-thursday class-4 white
+2005-04-08 friday easter 2 ef-easter-2-friday class-4 white
+2005-04-09 saturday easter 2 ef-easter-2-saturday class-4 white
+2005-04-10 sunday easter 3 ef-easter-sunday-3 class-2 white
+2005-04-11 monday easter 3 leo-the-great class-3 white
+2005-04-12 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2005-04-13 wednesday easter 3 hermenegild class-3 red
+2005-04-14 thursday easter 3 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2005-04-15 friday easter 3 ef-easter-3-friday class-4 white
+2005-04-16 saturday easter 3 ef-easter-3-saturday class-4 white
+2005-04-17 sunday easter 4 ef-easter-sunday-4 class-2 white +anicetus
+2005-04-18 monday easter 4 ef-easter-4-monday class-4 white
+2005-04-19 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2005-04-20 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2005-04-21 thursday easter 4 anselm class-3 white
+2005-04-22 friday easter 4 sts-soter-caius class-3 red
+2005-04-23 saturday easter 4 ef-easter-4-saturday class-4 white +george
+2005-04-24 sunday easter 5 ef-easter-sunday-5 class-2 white +fidelis-of-sigmaringen
+2005-04-25 monday easter 5 mark class-2 red
+2005-04-26 tuesday easter 5 sts-cletus-marcellinus class-3 red
+2005-04-27 wednesday easter 5 peter-canisius class-3 white
+2005-04-28 thursday easter 5 paul-of-the-cross class-3 white
+2005-04-29 friday easter 5 peter-of-verona class-3 red
+2005-04-30 saturday easter 5 catherine-of-siena class-3 white
+2005-05-01 sunday easter 6 joseph-the-workman class-1 white
+2005-05-02 monday easter 6 athanasius class-3 white
+2005-05-03 tuesday easter 6 ef-easter-6-tuesday class-4 white +sts-alexander-companions
+2005-05-04 wednesday easter - ef-ascension-vigil class-2 white +monica
+2005-05-05 thursday easter - ef-ascension class-1 white +pius-v
+2005-05-06 friday easter 6 ef-easter-6-friday class-4 white
+2005-05-07 saturday easter 6 stanislaus class-3 red
+2005-05-08 sunday easter 7 ef-easter-sunday-7 class-2 white
+2005-05-09 monday easter 7 gregory-of-nazianzen class-3 white
+2005-05-10 tuesday easter 7 antoninus class-3 white +gordiano-and-epimacho
+2005-05-11 wednesday easter 7 sts-philip-james class-2 red
+2005-05-12 thursday easter 7 sts-nereus-achilleus-domitilla-pancras class-3 red
+2005-05-13 friday easter 7 robert-bellarmine class-3 white
+2005-05-14 saturday easter - ef-pentecost-vigil class-1 red
+2005-05-15 sunday easter - ef-pentecost class-1 red +john-baptist-de-la-salle
+2005-05-16 monday easter 8 ef-easter-8-monday class-1 red +ubaldus
+2005-05-17 tuesday easter 8 ef-easter-8-tuesday class-1 red +paschal-baylon
+2005-05-18 wednesday easter 8 ef-easter-8-wednesday class-1 red +venantius
+2005-05-19 thursday easter 8 ef-easter-8-thursday class-1 red +peter-celestine +pudentiana-virginis
+2005-05-20 friday easter 8 ef-easter-8-friday class-1 red +bernardine-of-siena
+2005-05-21 saturday easter 8 ef-easter-8-saturday class-1 red
+2005-05-22 sunday time-after-pentecost 1 ef-trinity class-1 white
+2005-05-23 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2005-05-24 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green
+2005-05-25 wednesday time-after-pentecost 1 gregory-vii class-3 white +urban-pope-and-martyr
+2005-05-26 thursday time-after-pentecost - ef-corpus-christi class-1 white +philip-neri +eleutherius
+2005-05-27 friday time-after-pentecost 1 bede-the-venerable class-3 white +john-i
+2005-05-28 saturday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2005-05-29 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +mary-magdalene-de-pazzi
+2005-05-30 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green +felix-i
+2005-05-31 tuesday time-after-pentecost 2 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2005-06-01 wednesday time-after-pentecost 2 angela-merici class-3 white
+2005-06-02 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green +sts-marcellinus-peter-erasmus
+2005-06-03 friday time-after-pentecost - ef-sacred-heart class-1 white
+2005-06-04 saturday time-after-pentecost 2 francis-caracciolo class-3 white
+2005-06-05 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +boniface
+2005-06-06 monday time-after-pentecost 3 norbert class-3 white
+2005-06-07 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2005-06-08 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green
+2005-06-09 thursday time-after-pentecost 3 ef-time-after-pentecost-3-thursday class-4 green +sts-primus-felicianus
+2005-06-10 friday time-after-pentecost 3 margaret-of-scotland class-3 white
+2005-06-11 saturday time-after-pentecost 3 barnabas class-3 red
+2005-06-12 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +john-of-san-fecundo +basilidus
+2005-06-13 monday time-after-pentecost 4 anthony-of-padua class-3 white
+2005-06-14 tuesday time-after-pentecost 4 basil-the-great class-3 white
+2005-06-15 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green +vitus
+2005-06-16 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green
+2005-06-17 friday time-after-pentecost 4 gregory-barbarigo class-3 white
+2005-06-18 saturday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2005-06-19 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +julia-of-falconieri +sts-gervasius-and-protasius
+2005-06-20 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green +silverius
+2005-06-21 tuesday time-after-pentecost 5 aloysius-gongzaga class-3 white
+2005-06-22 wednesday time-after-pentecost 5 paulinus-of-nola class-3 white
+2005-06-23 thursday time-after-pentecost 5 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2005-06-24 friday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2005-06-25 saturday time-after-pentecost 5 william class-3 white
+2005-06-26 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +sts-john-paul
+2005-06-27 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2005-06-28 tuesday time-after-pentecost 6 vigil-of-sts-peter-paul class-2 violet
+2005-06-29 wednesday time-after-pentecost 6 sts-peter-paul class-1 red
+2005-06-30 thursday time-after-pentecost 6 in-commemoratione-sancti-pauli-apostoli class-3 red
+2005-07-01 friday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2005-07-02 saturday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2005-07-03 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +irenaeus
+2005-07-04 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2005-07-05 tuesday time-after-pentecost 7 anthony-mary-zaccariah class-3 white
+2005-07-06 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green
+2005-07-07 thursday time-after-pentecost 7 sts-cyril-methodius class-3 white
+2005-07-08 friday time-after-pentecost 7 elizabeth-of-portugal class-3 white
+2005-07-09 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green
+2005-07-10 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +seven-holy-brothers-and-sts-rufina-secunda
+2005-07-11 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +pius-i
+2005-07-12 tuesday time-after-pentecost 8 john-gualbert class-3 red +naboris-et-felicis
+2005-07-13 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green
+2005-07-14 thursday time-after-pentecost 8 bonaventure class-3 white
+2005-07-15 friday time-after-pentecost 8 henry-the-emperor class-3 white
+2005-07-16 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +our-lady-of-mt-carmel
+2005-07-17 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +alexis
+2005-07-18 monday time-after-pentecost 9 camillus-de-lellis class-3 red +symphorosa-and-sons
+2005-07-19 tuesday time-after-pentecost 9 vincent-de-paul class-3 white
+2005-07-20 wednesday time-after-pentecost 9 jerome-emiliani class-3 red +margaret
+2005-07-21 thursday time-after-pentecost 9 laurence-of-brindisi class-3 white +praxedis-virginis
+2005-07-22 friday time-after-pentecost 9 mary-magdalene class-3 white
+2005-07-23 saturday time-after-pentecost 9 apollinaris class-3 white +liborii
+2005-07-24 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +christina
+2005-07-25 monday time-after-pentecost 10 james-the-greater class-2 red +christopher
+2005-07-26 tuesday time-after-pentecost 10 anne-mother-of-the-blessed-virgin class-2 white
+2005-07-27 wednesday time-after-pentecost 10 ef-time-after-pentecost-10-wednesday class-4 green +pantaleon
+2005-07-28 thursday time-after-pentecost 10 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2005-07-29 friday time-after-pentecost 10 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2005-07-30 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green +sts-abdon-sennen
+2005-07-31 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +ignatius-loyola
+2005-08-01 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +holy-machabees
+2005-08-02 tuesday time-after-pentecost 11 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2005-08-03 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green
+2005-08-04 thursday time-after-pentecost 11 dominic class-3 white
+2005-08-05 friday time-after-pentecost 11 dedication-of-the-basilica-of-st-mary-major class-3 white
+2005-08-06 saturday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2005-08-07 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +cajetan +donatus
+2005-08-08 monday time-after-pentecost 12 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2005-08-09 tuesday time-after-pentecost 12 vigil-of-st-lawrence class-3 red +romanus
+2005-08-10 wednesday time-after-pentecost 12 lawrence class-2 red
+2005-08-11 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green +sts-tiburtius-susanna
+2005-08-12 friday time-after-pentecost 12 clare class-3 white
+2005-08-13 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +sts-hippolytus-cassian
+2005-08-14 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +vigil-of-the-assumption
+2005-08-15 monday time-after-pentecost 13 assumption-of-the-blessed-virgin-mary class-1 white
+2005-08-16 tuesday time-after-pentecost 13 joachim-father-of-the-blessed-virgin class-2 white
+2005-08-17 wednesday time-after-pentecost 13 hyacinth class-3 white
+2005-08-18 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +agapitus
+2005-08-19 friday time-after-pentecost 13 john-eudes class-3 white
+2005-08-20 saturday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2005-08-21 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +jane-frances-de-chantal
+2005-08-22 monday time-after-pentecost 14 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2005-08-23 tuesday time-after-pentecost 14 philip-benizi class-3 white
+2005-08-24 wednesday time-after-pentecost 14 bartholomew class-2 red
+2005-08-25 thursday time-after-pentecost 14 louis-ix class-3 white
+2005-08-26 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green +zephyrinus
+2005-08-27 saturday time-after-pentecost 14 joseph-calasance class-3 white
+2005-08-28 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +augustine +hermes
+2005-08-29 monday time-after-pentecost 15 beheading-of-st-john-the-baptist class-3 red +sabina
+2005-08-30 tuesday time-after-pentecost 15 rose-of-lima class-3 red +sts-felix-and-adauctus
+2005-08-31 wednesday time-after-pentecost 15 raymond-nonnatus class-3 white
+2005-09-01 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +giles +twelve-holy-brothers-martyrs
+2005-09-02 friday time-after-pentecost 15 stephen-of-hungary class-3 white
+2005-09-03 saturday time-after-pentecost 15 pius-x class-3 white
+2005-09-04 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2005-09-05 monday time-after-pentecost 16 lawrence-justinian class-3 white
+2005-09-06 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green
+2005-09-07 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green
+2005-09-08 thursday time-after-pentecost 16 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2005-09-09 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green +gorgonius
+2005-09-10 saturday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2005-09-11 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-protus-hyacinth
+2005-09-12 monday time-after-pentecost 17 most-holy-name-of-mary class-3 white
+2005-09-13 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green
+2005-09-14 wednesday time-after-pentecost 17 exaltation-of-the-holy-cross class-2 red
+2005-09-15 thursday time-after-pentecost 17 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2005-09-16 friday time-after-pentecost 17 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2005-09-17 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green +stigmata-of-st-francis
+2005-09-18 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +joseph-of-cupertino
+2005-09-19 monday time-after-pentecost 18 januarius-companions class-3 red
+2005-09-20 tuesday time-after-pentecost 18 ef-time-after-pentecost-18-tuesday class-4 green +sts-eustace-companions
+2005-09-21 wednesday time-after-pentecost 18 ef-september-ember-wed class-2 violet +matthew
+2005-09-22 thursday time-after-pentecost 18 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2005-09-23 friday time-after-pentecost 18 ef-september-ember-fri class-2 violet +linus +thecla
+2005-09-24 saturday time-after-pentecost 18 ef-september-ember-sat class-2 violet +our-lady-of-ransom
+2005-09-25 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green
+2005-09-26 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +sts-cyprian-justina
+2005-09-27 tuesday time-after-pentecost 19 sts-cosmas-damian class-3 red
+2005-09-28 wednesday time-after-pentecost 19 wenceslaus class-3 red
+2005-09-29 thursday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2005-09-30 friday time-after-pentecost 19 jerome class-3 white
+2005-10-01 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +remigius
+2005-10-02 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +holy-guardian-angels
+2005-10-03 monday time-after-pentecost 20 theresa-of-the-infant-jesus class-3 white
+2005-10-04 tuesday time-after-pentecost 20 francis-of-assisi class-3 white
+2005-10-05 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green +placid-companions
+2005-10-06 thursday time-after-pentecost 20 bruno class-3 white
+2005-10-07 friday time-after-pentecost 20 our-lady-of-the-rosary class-2 white +mark-i
+2005-10-08 saturday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2005-10-09 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +john-leonardi +dionysius-and-companions
+2005-10-10 monday time-after-pentecost 21 francis-borgia class-3 white
+2005-10-11 tuesday time-after-pentecost 21 maternity-of-the-blessed-virgin-mary class-2 white
+2005-10-12 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2005-10-13 thursday time-after-pentecost 21 edward class-3 white
+2005-10-14 friday time-after-pentecost 21 callistus-i class-3 red
+2005-10-15 saturday time-after-pentecost 21 teresa-of-avila class-3 white
+2005-10-16 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +hedwig
+2005-10-17 monday time-after-pentecost 22 margaret-mary-alacoque class-3 white
+2005-10-18 tuesday time-after-pentecost 22 luke-the-evangelist class-2 red
+2005-10-19 wednesday time-after-pentecost 22 peter-of-alcantara class-3 white
+2005-10-20 thursday time-after-pentecost 22 john-cantius class-3 white
+2005-10-21 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green +hilarion +ursula-and-companions
+2005-10-22 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2005-10-23 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +anthony-mary-claret
+2005-10-24 monday time-after-pentecost 23 raphael-the-archangel class-3 white
+2005-10-25 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green +sts-chrysanthus-daria
+2005-10-26 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2005-10-27 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2005-10-28 friday time-after-pentecost 23 sts-simon-jude class-2 red
+2005-10-29 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2005-10-30 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2005-10-31 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green
+2005-11-01 tuesday time-after-pentecost 24 all-saints class-1 white
+2005-11-02 wednesday time-after-pentecost 24 commemoration-of-all-souls class-1 black
+2005-11-03 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2005-11-04 friday time-after-pentecost 24 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2005-11-05 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green
+2005-11-06 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green
+2005-11-07 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green
+2005-11-08 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green +four-holy-crowned-martyrs
+2005-11-09 wednesday time-after-pentecost 25 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2005-11-10 thursday time-after-pentecost 25 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2005-11-11 friday time-after-pentecost 25 martin-of-tours class-3 white +menna
+2005-11-12 saturday time-after-pentecost 25 martin-i class-3 red
+2005-11-13 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +didacus
+2005-11-14 monday time-after-pentecost 26 josaphat class-3 white
+2005-11-15 tuesday time-after-pentecost 26 albert-the-great class-3 white
+2005-11-16 wednesday time-after-pentecost 26 gertrude-the-great class-3 white
+2005-11-17 thursday time-after-pentecost 26 gregory-the-wonderworker class-3 white
+2005-11-18 friday time-after-pentecost 26 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2005-11-19 saturday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2005-11-20 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +felix-of-valois
+2005-11-21 monday time-after-pentecost 27 presentation-of-the-blessed-virgin-mary class-3 white
+2005-11-22 tuesday time-after-pentecost 27 cecilia class-3 red
+2005-11-23 wednesday time-after-pentecost 27 clement-i class-3 red +felicity
+2005-11-24 thursday time-after-pentecost 27 john-of-the-cross class-3 white +chrysogonus
+2005-11-25 friday time-after-pentecost 27 catherine-of-alexandria class-3 red
+2005-11-26 saturday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2005-11-27 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2005-11-28 monday advent 1 ef-advent-1-monday class-3 violet
+2005-11-29 tuesday advent 1 ef-advent-1-tuesday class-3 violet +saturninus
+2005-11-30 wednesday advent 1 andrew class-2 red
+2005-12-01 thursday advent 1 ef-advent-1-thursday class-3 violet
+2005-12-02 friday advent 1 vivian class-3 red
+2005-12-03 saturday advent 1 francis-xavier class-3 white
+2005-12-04 sunday advent 2 ef-advent-sunday-2 class-2 violet +peter-chrysologus
+2005-12-05 monday advent 2 ef-advent-2-monday class-3 violet +sabbas
+2005-12-06 tuesday advent 2 nicholas class-3 white
+2005-12-07 wednesday advent 2 ambrose class-3 white
+2005-12-08 thursday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2005-12-09 friday advent 2 ef-advent-2-friday class-3 violet
+2005-12-10 saturday advent 2 ef-advent-2-saturday class-3 violet +melchiades
+2005-12-11 sunday advent 3 ef-advent-sunday-3 class-2 violet +damasus-i
+2005-12-12 monday advent 3 ef-advent-3-monday class-3 violet
+2005-12-13 tuesday advent 3 lucy class-3 red
+2005-12-14 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2005-12-15 thursday advent 3 ef-advent-3-thursday class-3 violet
+2005-12-16 friday advent 3 ef-advent-ember-fri class-2 violet +eusebius
+2005-12-17 saturday advent 3 ef-advent-ember-sat class-2 violet
+2005-12-18 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2005-12-19 monday advent 4 ef-advent-4-monday class-3 violet
+2005-12-20 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2005-12-21 wednesday advent 4 thomas class-2 red
+2005-12-22 thursday advent 4 ef-advent-4-thursday class-3 violet
+2005-12-23 friday advent 4 ef-advent-4-friday class-3 violet
+2005-12-24 saturday advent 4 vigil-of-christmas class-1 violet
+2005-12-25 sunday christmas - ef-nativity class-1 white
+2005-12-26 monday christmas - stephen class-2 red
+2005-12-27 tuesday christmas - john-the-evangelist class-2 white
+2005-12-28 wednesday christmas - holy-innocents class-2 red
+2005-12-29 thursday christmas - ef-christmas-0-thursday class-4 white +thomas-becket
+2005-12-30 friday christmas - ef-christmas-0-friday class-4 white
+2005-12-31 saturday christmas - ef-christmas-0-saturday class-4 white +silvester
+2006-01-01 sunday christmas - ef-circumcision class-1 white
+2006-01-02 monday christmas - ef-christmas-0-monday class-4 white
+2006-01-03 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2006-01-04 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2006-01-05 thursday christmas - ef-christmas-0-thursday class-4 white +telesphorus-pope-and-martyr
+2006-01-06 friday time-after-epiphany - ef-epiphany class-1 white
+2006-01-07 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2006-01-08 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2006-01-09 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2006-01-10 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2006-01-11 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green +hyginus-pope-and-martyr
+2006-01-12 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2006-01-13 friday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2006-01-14 saturday time-after-epiphany 2 hilary class-3 white +felicis
+2006-01-15 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +paul-the-first-hermit +maur-abbot
+2006-01-16 monday time-after-epiphany 2 marcellus-i class-3 red
+2006-01-17 tuesday time-after-epiphany 2 anthony class-3 white
+2006-01-18 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +prisca
+2006-01-19 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2006-01-20 friday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2006-01-21 saturday time-after-epiphany 3 agnes class-3 red
+2006-01-22 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-vincent-anastasius
+2006-01-23 monday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2006-01-24 tuesday time-after-epiphany 3 timothy class-3 red
+2006-01-25 wednesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2006-01-26 thursday time-after-epiphany 3 polycarp class-3 red
+2006-01-27 friday time-after-epiphany 4 john-chrysostom class-3 white
+2006-01-28 saturday time-after-epiphany 4 peter-nolasco class-3 white
+2006-01-29 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +francis-de-sales
+2006-01-30 monday time-after-epiphany 4 martina class-3 red
+2006-01-31 tuesday time-after-epiphany 4 john-bosco class-3 white
+2006-02-01 wednesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2006-02-02 thursday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2006-02-03 friday time-after-epiphany 5 ef-time-after-epiphany-5-friday class-4 green +blaise
+2006-02-04 saturday time-after-epiphany 5 andrew-corsini class-3 white
+2006-02-05 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +agatha
+2006-02-06 monday time-after-epiphany 5 titus class-3 white +dorothy
+2006-02-07 tuesday time-after-epiphany 5 romuald class-3 white
+2006-02-08 wednesday time-after-epiphany 5 john-of-matha class-3 white
+2006-02-09 thursday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2006-02-10 friday time-after-epiphany 6 scholastica class-3 white
+2006-02-11 saturday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2006-02-12 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +seven-holy-servite-founders
+2006-02-13 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet
+2006-02-14 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +valentine
+2006-02-15 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet +sts-faustinus-jovita
+2006-02-16 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2006-02-17 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2006-02-18 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet +simeon
+2006-02-19 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2006-02-20 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2006-02-21 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2006-02-22 wednesday septuagesima 2 chair-of-st-peter class-2 white +paul
+2006-02-23 thursday septuagesima 2 peter-damien class-3 white
+2006-02-24 friday septuagesima 2 matthias class-2 red
+2006-02-25 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2006-02-26 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2006-02-27 monday septuagesima 3 gabriel-of-our-lady-of-sorrows class-3 white
+2006-02-28 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2006-03-01 wednesday lent - ef-ash-wednesday class-1 violet
+2006-03-02 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2006-03-03 friday lent - ef-lent-after-ashes-friday class-3 violet
+2006-03-04 saturday lent - ef-lent-after-ashes-saturday class-3 violet +casimir +lucius
+2006-03-05 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2006-03-06 monday lent 1 ef-lent-1-monday class-3 violet +sts-felicitas-perpetua
+2006-03-07 tuesday lent 1 ef-lent-1-tuesday class-3 violet +thomas-aquinas
+2006-03-08 wednesday lent 1 ef-lent-1-wednesday class-3 violet +john-of-god
+2006-03-09 thursday lent 1 ef-lent-1-thursday class-3 violet +frances-rome
+2006-03-10 friday lent 1 ef-lent-1-friday class-3 violet +forty-holy-martyrs-of-sebaste
+2006-03-11 saturday lent 1 ef-lent-1-saturday class-3 violet
+2006-03-12 sunday lent 2 ef-lent-sunday-2 class-2 violet +gregory-the-great
+2006-03-13 monday lent 2 ef-lent-2-monday class-3 violet
+2006-03-14 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2006-03-15 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2006-03-16 thursday lent 2 ef-lent-2-thursday class-3 violet
+2006-03-17 friday lent 2 ef-lent-2-friday class-3 violet +patrick
+2006-03-18 saturday lent 2 ef-lent-2-saturday class-3 violet +cyril-of-jerusalem
+2006-03-19 sunday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2006-03-20 monday lent 3 ef-lent-3-monday class-3 violet
+2006-03-21 tuesday lent 3 ef-lent-3-tuesday class-3 violet +benedict
+2006-03-22 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2006-03-23 thursday lent 3 ef-lent-3-thursday class-3 violet
+2006-03-24 friday lent 3 ef-lent-3-friday class-3 violet +gabriel-the-archangel
+2006-03-25 saturday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2006-03-26 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2006-03-27 monday lent 4 ef-lent-4-monday class-3 violet +john-damascene
+2006-03-28 tuesday lent 4 ef-lent-4-tuesday class-3 violet +john-of-capistrano
+2006-03-29 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2006-03-30 thursday lent 4 ef-lent-4-thursday class-3 violet
+2006-03-31 friday lent 4 ef-lent-4-friday class-3 violet
+2006-04-01 saturday lent 4 ef-lent-4-saturday class-3 violet
+2006-04-02 sunday passiontide 1 ef-passion-sunday class-1 violet +francis-of-paola
+2006-04-03 monday passiontide - ef-passiontide-0-monday class-3 violet
+2006-04-04 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +isidore-of-seville
+2006-04-05 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +vincent-ferrer
+2006-04-06 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2006-04-07 friday passiontide - ef-passiontide-0-friday class-3 violet
+2006-04-08 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2006-04-09 sunday passiontide 2 ef-palm-sunday class-1 violet
+2006-04-10 monday passiontide - ef-passiontide-0-monday class-1 violet
+2006-04-11 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +leo-the-great
+2006-04-12 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2006-04-13 thursday passiontide - ef-passiontide-0-thursday class-1 violet +hermenegild
+2006-04-14 friday passiontide - ef-passiontide-0-friday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2006-04-15 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2006-04-16 sunday easter 1 ef-easter-sunday class-1 white
+2006-04-17 monday easter 1 ef-easter-1-monday class-1 white +anicetus
+2006-04-18 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2006-04-19 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2006-04-20 thursday easter 1 ef-easter-1-thursday class-1 white
+2006-04-21 friday easter 1 ef-easter-1-friday class-1 white +anselm
+2006-04-22 saturday easter 1 ef-easter-1-saturday class-1 white +sts-soter-caius
+2006-04-23 sunday easter 2 ef-low-sunday class-1 white +george
+2006-04-24 monday easter 2 fidelis-of-sigmaringen class-3 red
+2006-04-25 tuesday easter 2 mark class-2 red
+2006-04-26 wednesday easter 2 sts-cletus-marcellinus class-3 red
+2006-04-27 thursday easter 2 peter-canisius class-3 white
+2006-04-28 friday easter 2 paul-of-the-cross class-3 white
+2006-04-29 saturday easter 2 peter-of-verona class-3 red
+2006-04-30 sunday easter 3 ef-easter-sunday-3 class-2 white +catherine-of-siena
+2006-05-01 monday easter 3 joseph-the-workman class-1 white
+2006-05-02 tuesday easter 3 athanasius class-3 white
+2006-05-03 wednesday easter 3 ef-easter-3-wednesday class-4 white +sts-alexander-companions
+2006-05-04 thursday easter 3 monica class-3 white
+2006-05-05 friday easter 3 pius-v class-3 white
+2006-05-06 saturday easter 3 ef-easter-3-saturday class-4 white
+2006-05-07 sunday easter 4 ef-easter-sunday-4 class-2 white +stanislaus
+2006-05-08 monday easter 4 ef-easter-4-monday class-4 white
+2006-05-09 tuesday easter 4 gregory-of-nazianzen class-3 white
+2006-05-10 wednesday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2006-05-11 thursday easter 4 sts-philip-james class-2 red
+2006-05-12 friday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2006-05-13 saturday easter 4 robert-bellarmine class-3 white
+2006-05-14 sunday easter 5 ef-easter-sunday-5 class-2 white
+2006-05-15 monday easter 5 john-baptist-de-la-salle class-3 white
+2006-05-16 tuesday easter 5 ef-easter-5-tuesday class-4 white +ubaldus
+2006-05-17 wednesday easter 5 paschal-baylon class-3 white
+2006-05-18 thursday easter 5 venantius class-3 red
+2006-05-19 friday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2006-05-20 saturday easter 5 bernardine-of-siena class-3 white
+2006-05-21 sunday easter 6 ef-easter-sunday-6 class-2 white
+2006-05-22 monday easter 6 ef-easter-6-monday class-4 white
+2006-05-23 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2006-05-24 wednesday easter - ef-ascension-vigil class-2 white
+2006-05-25 thursday easter - ef-ascension class-1 white +gregory-vii +urban-pope-and-martyr
+2006-05-26 friday easter 6 philip-neri class-3 white +eleutherius
+2006-05-27 saturday easter 6 bede-the-venerable class-3 white +john-i
+2006-05-28 sunday easter 7 ef-easter-sunday-7 class-2 white +augustine-of-canterbury
+2006-05-29 monday easter 7 mary-magdalene-de-pazzi class-3 white
+2006-05-30 tuesday easter 7 ef-easter-7-tuesday class-4 white +felix-i
+2006-05-31 wednesday easter 7 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2006-06-01 thursday easter 7 angela-merici class-3 white
+2006-06-02 friday easter 7 ef-easter-7-friday class-4 white +sts-marcellinus-peter-erasmus
+2006-06-03 saturday easter - ef-pentecost-vigil class-1 red
+2006-06-04 sunday easter - ef-pentecost class-1 red +francis-caracciolo
+2006-06-05 monday easter 8 ef-easter-8-monday class-1 red +boniface
+2006-06-06 tuesday easter 8 ef-easter-8-tuesday class-1 red +norbert
+2006-06-07 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2006-06-08 thursday easter 8 ef-easter-8-thursday class-1 red
+2006-06-09 friday easter 8 ef-easter-8-friday class-1 red +sts-primus-felicianus
+2006-06-10 saturday easter 8 ef-easter-8-saturday class-1 red +margaret-of-scotland
+2006-06-11 sunday time-after-pentecost 1 ef-trinity class-1 white +barnabas
+2006-06-12 monday time-after-pentecost 1 john-of-san-fecundo class-3 red +basilidus
+2006-06-13 tuesday time-after-pentecost 1 anthony-of-padua class-3 white
+2006-06-14 wednesday time-after-pentecost 1 basil-the-great class-3 white
+2006-06-15 thursday time-after-pentecost - ef-corpus-christi class-1 white +vitus
+2006-06-16 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green
+2006-06-17 saturday time-after-pentecost 1 gregory-barbarigo class-3 white
+2006-06-18 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +ephrem-of-syria +marcus-and-marcellianus
+2006-06-19 monday time-after-pentecost 2 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2006-06-20 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green +silverius
+2006-06-21 wednesday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2006-06-22 thursday time-after-pentecost 2 paulinus-of-nola class-3 white
+2006-06-23 friday time-after-pentecost - ef-sacred-heart class-1 white +vigil-of-the-nativity-of-st-john-the-baptist
+2006-06-24 saturday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2006-06-25 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +william
+2006-06-26 monday time-after-pentecost 3 sts-john-paul class-3 red
+2006-06-27 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2006-06-28 wednesday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2006-06-29 thursday time-after-pentecost 3 sts-peter-paul class-1 red
+2006-06-30 friday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2006-07-01 saturday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2006-07-02 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +visitation-of-the-blessed-virgin-mary +processus-and-martinian
+2006-07-03 monday time-after-pentecost 4 irenaeus class-3 red
+2006-07-04 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2006-07-05 wednesday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2006-07-06 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green
+2006-07-07 friday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2006-07-08 saturday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2006-07-09 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2006-07-10 monday time-after-pentecost 5 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2006-07-11 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green +pius-i
+2006-07-12 wednesday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2006-07-13 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2006-07-14 friday time-after-pentecost 5 bonaventure class-3 white
+2006-07-15 saturday time-after-pentecost 5 henry-the-emperor class-3 white
+2006-07-16 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +our-lady-of-mt-carmel
+2006-07-17 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green +alexis
+2006-07-18 tuesday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2006-07-19 wednesday time-after-pentecost 6 vincent-de-paul class-3 white
+2006-07-20 thursday time-after-pentecost 6 jerome-emiliani class-3 red +margaret
+2006-07-21 friday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2006-07-22 saturday time-after-pentecost 6 mary-magdalene class-3 white
+2006-07-23 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +apollinaris +liborii
+2006-07-24 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +christina
+2006-07-25 tuesday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2006-07-26 wednesday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2006-07-27 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +pantaleon
+2006-07-28 friday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2006-07-29 saturday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2006-07-30 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +sts-abdon-sennen
+2006-07-31 monday time-after-pentecost 8 ignatius-loyola class-3 white
+2006-08-01 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +holy-machabees
+2006-08-02 wednesday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2006-08-03 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green
+2006-08-04 friday time-after-pentecost 8 dominic class-3 white
+2006-08-05 saturday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2006-08-06 sunday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2006-08-07 monday time-after-pentecost 9 cajetan class-3 white +donatus
+2006-08-08 tuesday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2006-08-09 wednesday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2006-08-10 thursday time-after-pentecost 9 lawrence class-2 red
+2006-08-11 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +sts-tiburtius-susanna
+2006-08-12 saturday time-after-pentecost 9 clare class-3 white
+2006-08-13 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +sts-hippolytus-cassian
+2006-08-14 monday time-after-pentecost 10 vigil-of-the-assumption class-2 white
+2006-08-15 tuesday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2006-08-16 wednesday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2006-08-17 thursday time-after-pentecost 10 hyacinth class-3 white
+2006-08-18 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +agapitus
+2006-08-19 saturday time-after-pentecost 10 john-eudes class-3 white
+2006-08-20 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +bernard-of-clairvaux
+2006-08-21 monday time-after-pentecost 11 jane-frances-de-chantal class-3 white
+2006-08-22 tuesday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2006-08-23 wednesday time-after-pentecost 11 philip-benizi class-3 white
+2006-08-24 thursday time-after-pentecost 11 bartholomew class-2 red
+2006-08-25 friday time-after-pentecost 11 louis-ix class-3 white
+2006-08-26 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green +zephyrinus
+2006-08-27 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +joseph-calasance
+2006-08-28 monday time-after-pentecost 12 augustine class-3 red +hermes
+2006-08-29 tuesday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2006-08-30 wednesday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2006-08-31 thursday time-after-pentecost 12 raymond-nonnatus class-3 white
+2006-09-01 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green +giles +twelve-holy-brothers-martyrs
+2006-09-02 saturday time-after-pentecost 12 stephen-of-hungary class-3 white
+2006-09-03 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +pius-x
+2006-09-04 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green
+2006-09-05 tuesday time-after-pentecost 13 lawrence-justinian class-3 white
+2006-09-06 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green
+2006-09-07 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green
+2006-09-08 friday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2006-09-09 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +gorgonius
+2006-09-10 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +nicholas-of-tolentino
+2006-09-11 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +sts-protus-hyacinth
+2006-09-12 tuesday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2006-09-13 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green
+2006-09-14 thursday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2006-09-15 friday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2006-09-16 saturday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2006-09-17 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +stigmata-of-st-francis
+2006-09-18 monday time-after-pentecost 15 joseph-of-cupertino class-3 white
+2006-09-19 tuesday time-after-pentecost 15 januarius-companions class-3 red
+2006-09-20 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +sts-eustace-companions
+2006-09-21 thursday time-after-pentecost 15 matthew class-2 red
+2006-09-22 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2006-09-23 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +linus +thecla
+2006-09-24 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +our-lady-of-ransom
+2006-09-25 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green
+2006-09-26 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +sts-cyprian-justina
+2006-09-27 wednesday time-after-pentecost 16 sts-cosmas-damian class-3 red
+2006-09-28 thursday time-after-pentecost 16 wenceslaus class-3 red
+2006-09-29 friday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2006-09-30 saturday time-after-pentecost 16 jerome class-3 white
+2006-10-01 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +remigius
+2006-10-02 monday time-after-pentecost 17 holy-guardian-angels class-3 white
+2006-10-03 tuesday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2006-10-04 wednesday time-after-pentecost 17 francis-of-assisi class-3 white
+2006-10-05 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +placid-companions
+2006-10-06 friday time-after-pentecost 17 bruno class-3 white
+2006-10-07 saturday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2006-10-08 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +bridget-of-sweden +sergio-baccho-marcello-and-apulejo-martyrs
+2006-10-09 monday time-after-pentecost 18 john-leonardi class-3 white +dionysius-and-companions
+2006-10-10 tuesday time-after-pentecost 18 francis-borgia class-3 white
+2006-10-11 wednesday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2006-10-12 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green
+2006-10-13 friday time-after-pentecost 18 edward class-3 white
+2006-10-14 saturday time-after-pentecost 18 callistus-i class-3 red
+2006-10-15 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +teresa-of-avila
+2006-10-16 monday time-after-pentecost 19 hedwig class-3 white
+2006-10-17 tuesday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2006-10-18 wednesday time-after-pentecost 19 luke-the-evangelist class-2 red
+2006-10-19 thursday time-after-pentecost 19 peter-of-alcantara class-3 white
+2006-10-20 friday time-after-pentecost 19 john-cantius class-3 white
+2006-10-21 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +hilarion +ursula-and-companions
+2006-10-22 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green
+2006-10-23 monday time-after-pentecost 20 anthony-mary-claret class-3 white
+2006-10-24 tuesday time-after-pentecost 20 raphael-the-archangel class-3 white
+2006-10-25 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green +sts-chrysanthus-daria
+2006-10-26 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2006-10-27 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2006-10-28 saturday time-after-pentecost 20 sts-simon-jude class-2 red
+2006-10-29 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2006-10-30 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2006-10-31 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2006-11-01 wednesday time-after-pentecost 21 all-saints class-1 white
+2006-11-02 thursday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2006-11-03 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2006-11-04 saturday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2006-11-05 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2006-11-06 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2006-11-07 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2006-11-08 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green +four-holy-crowned-martyrs
+2006-11-09 thursday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2006-11-10 friday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2006-11-11 saturday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2006-11-12 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +martin-i
+2006-11-13 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green +didacus
+2006-11-14 tuesday time-after-pentecost 23 josaphat class-3 white
+2006-11-15 wednesday time-after-pentecost 23 albert-the-great class-3 white
+2006-11-16 thursday time-after-pentecost 23 gertrude-the-great class-3 white
+2006-11-17 friday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2006-11-18 saturday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2006-11-19 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +elizabeth-of-hungary +pontian
+2006-11-20 monday time-after-pentecost 24 felix-of-valois class-3 white
+2006-11-21 tuesday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2006-11-22 wednesday time-after-pentecost 24 cecilia class-3 red
+2006-11-23 thursday time-after-pentecost 24 clement-i class-3 red +felicity
+2006-11-24 friday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2006-11-25 saturday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2006-11-26 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +sylvester +peter-of-alexandria
+2006-11-27 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green
+2006-11-28 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green
+2006-11-29 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green +saturninus
+2006-11-30 thursday time-after-pentecost 25 andrew class-2 red
+2006-12-01 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green
+2006-12-02 saturday time-after-pentecost 25 vivian class-3 red
+2006-12-03 sunday advent 1 ef-advent-sunday-1 class-1 violet +francis-xavier
+2006-12-04 monday advent 1 peter-chrysologus class-3 white
+2006-12-05 tuesday advent 1 ef-advent-1-tuesday class-3 violet +sabbas
+2006-12-06 wednesday advent 1 nicholas class-3 white
+2006-12-07 thursday advent 1 ambrose class-3 white
+2006-12-08 friday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2006-12-09 saturday advent 1 ef-advent-1-saturday class-3 violet
+2006-12-10 sunday advent 2 ef-advent-sunday-2 class-2 violet +melchiades
+2006-12-11 monday advent 2 damasus-i class-3 white
+2006-12-12 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2006-12-13 wednesday advent 2 lucy class-3 red
+2006-12-14 thursday advent 2 ef-advent-2-thursday class-3 violet
+2006-12-15 friday advent 2 ef-advent-2-friday class-3 violet
+2006-12-16 saturday advent 2 eusebius class-3 red
+2006-12-17 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2006-12-18 monday advent 3 ef-advent-3-monday class-3 violet
+2006-12-19 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2006-12-20 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2006-12-21 thursday advent 3 thomas class-2 red
+2006-12-22 friday advent 3 ef-advent-ember-fri class-2 violet
+2006-12-23 saturday advent 3 ef-advent-ember-sat class-2 violet
+2006-12-24 sunday advent 4 vigil-of-christmas class-1 violet
+2006-12-25 monday christmas - ef-nativity class-1 white
+2006-12-26 tuesday christmas - stephen class-2 red
+2006-12-27 wednesday christmas - john-the-evangelist class-2 white
+2006-12-28 thursday christmas - holy-innocents class-2 red
+2006-12-29 friday christmas - ef-christmas-0-friday class-4 white +thomas-becket
+2006-12-30 saturday christmas - ef-christmas-0-saturday class-4 white
+2006-12-31 sunday christmas - ef-christmas-sunday-0 class-2 white +silvester
+2007-01-01 monday christmas - ef-circumcision class-1 white
+2007-01-02 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2007-01-03 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2007-01-04 thursday christmas - ef-christmas-0-thursday class-4 white
+2007-01-05 friday christmas - ef-christmas-0-friday class-4 white +telesphorus-pope-and-martyr
+2007-01-06 saturday time-after-epiphany - ef-epiphany class-1 white
+2007-01-07 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2007-01-08 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2007-01-09 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2007-01-10 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2007-01-11 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green +hyginus-pope-and-martyr
+2007-01-12 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2007-01-13 saturday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2007-01-14 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +hilary +felicis
+2007-01-15 monday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2007-01-16 tuesday time-after-epiphany 2 marcellus-i class-3 red
+2007-01-17 wednesday time-after-epiphany 2 anthony class-3 white
+2007-01-18 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +prisca
+2007-01-19 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2007-01-20 saturday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2007-01-21 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +agnes
+2007-01-22 monday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2007-01-23 tuesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2007-01-24 wednesday time-after-epiphany 3 timothy class-3 red
+2007-01-25 thursday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2007-01-26 friday time-after-epiphany 3 polycarp class-3 red
+2007-01-27 saturday time-after-epiphany 4 john-chrysostom class-3 white
+2007-01-28 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +peter-nolasco
+2007-01-29 monday time-after-epiphany 4 francis-de-sales class-3 white
+2007-01-30 tuesday time-after-epiphany 4 martina class-3 red
+2007-01-31 wednesday time-after-epiphany 4 john-bosco class-3 white
+2007-02-01 thursday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2007-02-02 friday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2007-02-03 saturday time-after-epiphany 5 ef-time-after-epiphany-5-saturday class-4 green +blaise
+2007-02-04 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +andrew-corsini
+2007-02-05 monday septuagesima 1 agatha class-3 red
+2007-02-06 tuesday septuagesima 1 titus class-3 white +dorothy
+2007-02-07 wednesday septuagesima 1 romuald class-3 white
+2007-02-08 thursday septuagesima 1 john-of-matha class-3 white
+2007-02-09 friday septuagesima 1 cyril-of-alexandria class-3 white +appollonia
+2007-02-10 saturday septuagesima 1 scholastica class-3 white
+2007-02-11 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +our-lady-of-lourdes
+2007-02-12 monday septuagesima 2 seven-holy-servite-founders class-3 white
+2007-02-13 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2007-02-14 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet +valentine
+2007-02-15 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet +sts-faustinus-jovita
+2007-02-16 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2007-02-17 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2007-02-18 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +simeon
+2007-02-19 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2007-02-20 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2007-02-21 wednesday lent - ef-ash-wednesday class-1 violet
+2007-02-22 thursday lent - chair-of-st-peter class-2 white +paul
+2007-02-23 friday lent - ef-lent-after-ashes-friday class-3 violet +peter-damien
+2007-02-24 saturday lent - matthias class-2 red
+2007-02-25 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2007-02-26 monday lent 1 ef-lent-1-monday class-3 violet
+2007-02-27 tuesday lent 1 ef-lent-1-tuesday class-3 violet +gabriel-of-our-lady-of-sorrows
+2007-02-28 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2007-03-01 thursday lent 1 ef-lent-1-thursday class-3 violet
+2007-03-02 friday lent 1 ef-lent-1-friday class-3 violet
+2007-03-03 saturday lent 1 ef-lent-1-saturday class-3 violet
+2007-03-04 sunday lent 2 ef-lent-sunday-2 class-2 violet +casimir +lucius
+2007-03-05 monday lent 2 ef-lent-2-monday class-3 violet
+2007-03-06 tuesday lent 2 ef-lent-2-tuesday class-3 violet +sts-felicitas-perpetua
+2007-03-07 wednesday lent 2 ef-lent-2-wednesday class-3 violet +thomas-aquinas
+2007-03-08 thursday lent 2 ef-lent-2-thursday class-3 violet +john-of-god
+2007-03-09 friday lent 2 ef-lent-2-friday class-3 violet +frances-rome
+2007-03-10 saturday lent 2 ef-lent-2-saturday class-3 violet +forty-holy-martyrs-of-sebaste
+2007-03-11 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2007-03-12 monday lent 3 ef-lent-3-monday class-3 violet +gregory-the-great
+2007-03-13 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2007-03-14 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2007-03-15 thursday lent 3 ef-lent-3-thursday class-3 violet
+2007-03-16 friday lent 3 ef-lent-3-friday class-3 violet
+2007-03-17 saturday lent 3 ef-lent-3-saturday class-3 violet +patrick
+2007-03-18 sunday lent 4 ef-lent-sunday-4 class-2 violet +cyril-of-jerusalem
+2007-03-19 monday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2007-03-20 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2007-03-21 wednesday lent 4 ef-lent-4-wednesday class-3 violet +benedict
+2007-03-22 thursday lent 4 ef-lent-4-thursday class-3 violet
+2007-03-23 friday lent 4 ef-lent-4-friday class-3 violet
+2007-03-24 saturday lent 4 ef-lent-4-saturday class-3 violet +gabriel-the-archangel
+2007-03-25 sunday passiontide 1 ef-passion-sunday class-1 violet
+2007-03-26 monday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2007-03-27 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +john-damascene
+2007-03-28 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +john-of-capistrano
+2007-03-29 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2007-03-30 friday passiontide - ef-passiontide-0-friday class-3 violet
+2007-03-31 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2007-04-01 sunday passiontide 2 ef-palm-sunday class-1 violet
+2007-04-02 monday passiontide - ef-passiontide-0-monday class-1 violet +francis-of-paola
+2007-04-03 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2007-04-04 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +isidore-of-seville
+2007-04-05 thursday passiontide - ef-passiontide-0-thursday class-1 violet +vincent-ferrer
+2007-04-06 friday passiontide - ef-passiontide-0-friday class-1 violet
+2007-04-07 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2007-04-08 sunday easter 1 ef-easter-sunday class-1 white
+2007-04-09 monday easter 1 ef-easter-1-monday class-1 white
+2007-04-10 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2007-04-11 wednesday easter 1 ef-easter-1-wednesday class-1 white +leo-the-great
+2007-04-12 thursday easter 1 ef-easter-1-thursday class-1 white
+2007-04-13 friday easter 1 ef-easter-1-friday class-1 white +hermenegild
+2007-04-14 saturday easter 1 ef-easter-1-saturday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2007-04-15 sunday easter 2 ef-low-sunday class-1 white
+2007-04-16 monday easter 2 ef-easter-2-monday class-4 white
+2007-04-17 tuesday easter 2 ef-easter-2-tuesday class-4 white +anicetus
+2007-04-18 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2007-04-19 thursday easter 2 ef-easter-2-thursday class-4 white
+2007-04-20 friday easter 2 ef-easter-2-friday class-4 white
+2007-04-21 saturday easter 2 anselm class-3 white
+2007-04-22 sunday easter 3 ef-easter-sunday-3 class-2 white +sts-soter-caius
+2007-04-23 monday easter 3 ef-easter-3-monday class-4 white +george
+2007-04-24 tuesday easter 3 fidelis-of-sigmaringen class-3 red
+2007-04-25 wednesday easter 3 mark class-2 red
+2007-04-26 thursday easter 3 sts-cletus-marcellinus class-3 red
+2007-04-27 friday easter 3 peter-canisius class-3 white
+2007-04-28 saturday easter 3 paul-of-the-cross class-3 white
+2007-04-29 sunday easter 4 ef-easter-sunday-4 class-2 white +peter-of-verona
+2007-04-30 monday easter 4 catherine-of-siena class-3 white
+2007-05-01 tuesday easter 4 joseph-the-workman class-1 white
+2007-05-02 wednesday easter 4 athanasius class-3 white
+2007-05-03 thursday easter 4 ef-easter-4-thursday class-4 white +sts-alexander-companions
+2007-05-04 friday easter 4 monica class-3 white
+2007-05-05 saturday easter 4 pius-v class-3 white
+2007-05-06 sunday easter 5 ef-easter-sunday-5 class-2 white
+2007-05-07 monday easter 5 stanislaus class-3 red
+2007-05-08 tuesday easter 5 ef-easter-5-tuesday class-4 white
+2007-05-09 wednesday easter 5 gregory-of-nazianzen class-3 white
+2007-05-10 thursday easter 5 antoninus class-3 white +gordiano-and-epimacho
+2007-05-11 friday easter 5 sts-philip-james class-2 red
+2007-05-12 saturday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2007-05-13 sunday easter 6 ef-easter-sunday-6 class-2 white +robert-bellarmine
+2007-05-14 monday easter 6 ef-easter-6-monday class-4 white
+2007-05-15 tuesday easter 6 john-baptist-de-la-salle class-3 white
+2007-05-16 wednesday easter - ef-ascension-vigil class-2 white +ubaldus
+2007-05-17 thursday easter - ef-ascension class-1 white +paschal-baylon
+2007-05-18 friday easter 6 venantius class-3 red
+2007-05-19 saturday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2007-05-20 sunday easter 7 ef-easter-sunday-7 class-2 white +bernardine-of-siena
+2007-05-21 monday easter 7 ef-easter-7-monday class-4 white
+2007-05-22 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2007-05-23 wednesday easter 7 ef-easter-7-wednesday class-4 white
+2007-05-24 thursday easter 7 ef-easter-7-thursday class-4 white
+2007-05-25 friday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2007-05-26 saturday easter - ef-pentecost-vigil class-1 red +philip-neri +eleutherius
+2007-05-27 sunday easter - ef-pentecost class-1 red +bede-the-venerable +john-i
+2007-05-28 monday easter 8 ef-easter-8-monday class-1 red +augustine-of-canterbury
+2007-05-29 tuesday easter 8 ef-easter-8-tuesday class-1 red +mary-magdalene-de-pazzi
+2007-05-30 wednesday easter 8 ef-easter-8-wednesday class-1 red +felix-i
+2007-05-31 thursday easter 8 ef-easter-8-thursday class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2007-06-01 friday easter 8 ef-easter-8-friday class-1 red +angela-merici
+2007-06-02 saturday easter 8 ef-easter-8-saturday class-1 red +sts-marcellinus-peter-erasmus
+2007-06-03 sunday time-after-pentecost 1 ef-trinity class-1 white
+2007-06-04 monday time-after-pentecost 1 francis-caracciolo class-3 white
+2007-06-05 tuesday time-after-pentecost 1 boniface class-3 red
+2007-06-06 wednesday time-after-pentecost 1 norbert class-3 white
+2007-06-07 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2007-06-08 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green
+2007-06-09 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green +sts-primus-felicianus
+2007-06-10 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +margaret-of-scotland
+2007-06-11 monday time-after-pentecost 2 barnabas class-3 red
+2007-06-12 tuesday time-after-pentecost 2 john-of-san-fecundo class-3 red +basilidus
+2007-06-13 wednesday time-after-pentecost 2 anthony-of-padua class-3 white
+2007-06-14 thursday time-after-pentecost 2 basil-the-great class-3 white
+2007-06-15 friday time-after-pentecost - ef-sacred-heart class-1 white +vitus
+2007-06-16 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green
+2007-06-17 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +gregory-barbarigo
+2007-06-18 monday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2007-06-19 tuesday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2007-06-20 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green +silverius
+2007-06-21 thursday time-after-pentecost 3 aloysius-gongzaga class-3 white
+2007-06-22 friday time-after-pentecost 3 paulinus-of-nola class-3 white
+2007-06-23 saturday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2007-06-24 sunday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2007-06-25 monday time-after-pentecost 4 william class-3 white
+2007-06-26 tuesday time-after-pentecost 4 sts-john-paul class-3 red
+2007-06-27 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2007-06-28 thursday time-after-pentecost 4 vigil-of-sts-peter-paul class-2 violet
+2007-06-29 friday time-after-pentecost 4 sts-peter-paul class-1 red
+2007-06-30 saturday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2007-07-01 sunday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2007-07-02 monday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2007-07-03 tuesday time-after-pentecost 5 irenaeus class-3 red
+2007-07-04 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2007-07-05 thursday time-after-pentecost 5 anthony-mary-zaccariah class-3 white
+2007-07-06 friday time-after-pentecost 5 ef-time-after-pentecost-5-friday class-4 green
+2007-07-07 saturday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2007-07-08 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +elizabeth-of-portugal
+2007-07-09 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2007-07-10 tuesday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2007-07-11 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +pius-i
+2007-07-12 thursday time-after-pentecost 6 john-gualbert class-3 red +naboris-et-felicis
+2007-07-13 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green
+2007-07-14 saturday time-after-pentecost 6 bonaventure class-3 white
+2007-07-15 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +henry-the-emperor
+2007-07-16 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +our-lady-of-mt-carmel
+2007-07-17 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green +alexis
+2007-07-18 wednesday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2007-07-19 thursday time-after-pentecost 7 vincent-de-paul class-3 white
+2007-07-20 friday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2007-07-21 saturday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2007-07-22 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +mary-magdalene
+2007-07-23 monday time-after-pentecost 8 apollinaris class-3 white +liborii
+2007-07-24 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +christina
+2007-07-25 wednesday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2007-07-26 thursday time-after-pentecost 8 anne-mother-of-the-blessed-virgin class-2 white
+2007-07-27 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +pantaleon
+2007-07-28 saturday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2007-07-29 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +martha +felicis-simplicii-faustini-et-beatricis
+2007-07-30 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +sts-abdon-sennen
+2007-07-31 tuesday time-after-pentecost 9 ignatius-loyola class-3 white
+2007-08-01 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +holy-machabees
+2007-08-02 thursday time-after-pentecost 9 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2007-08-03 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green
+2007-08-04 saturday time-after-pentecost 9 dominic class-3 white
+2007-08-05 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +dedication-of-the-basilica-of-st-mary-major
+2007-08-06 monday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2007-08-07 tuesday time-after-pentecost 10 cajetan class-3 white +donatus
+2007-08-08 wednesday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2007-08-09 thursday time-after-pentecost 10 vigil-of-st-lawrence class-3 red +romanus
+2007-08-10 friday time-after-pentecost 10 lawrence class-2 red
+2007-08-11 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green +sts-tiburtius-susanna
+2007-08-12 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +clare
+2007-08-13 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +sts-hippolytus-cassian
+2007-08-14 tuesday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2007-08-15 wednesday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2007-08-16 thursday time-after-pentecost 11 joachim-father-of-the-blessed-virgin class-2 white
+2007-08-17 friday time-after-pentecost 11 hyacinth class-3 white
+2007-08-18 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green +agapitus
+2007-08-19 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +john-eudes
+2007-08-20 monday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2007-08-21 tuesday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2007-08-22 wednesday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2007-08-23 thursday time-after-pentecost 12 philip-benizi class-3 white
+2007-08-24 friday time-after-pentecost 12 bartholomew class-2 red
+2007-08-25 saturday time-after-pentecost 12 louis-ix class-3 white
+2007-08-26 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +zephyrinus
+2007-08-27 monday time-after-pentecost 13 joseph-calasance class-3 white
+2007-08-28 tuesday time-after-pentecost 13 augustine class-3 red +hermes
+2007-08-29 wednesday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2007-08-30 thursday time-after-pentecost 13 rose-of-lima class-3 red +sts-felix-and-adauctus
+2007-08-31 friday time-after-pentecost 13 raymond-nonnatus class-3 white
+2007-09-01 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +giles +twelve-holy-brothers-martyrs
+2007-09-02 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +stephen-of-hungary
+2007-09-03 monday time-after-pentecost 14 pius-x class-3 white
+2007-09-04 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green
+2007-09-05 wednesday time-after-pentecost 14 lawrence-justinian class-3 white
+2007-09-06 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green
+2007-09-07 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green
+2007-09-08 saturday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2007-09-09 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +gorgonius
+2007-09-10 monday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2007-09-11 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +sts-protus-hyacinth
+2007-09-12 wednesday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2007-09-13 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green
+2007-09-14 friday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2007-09-15 saturday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2007-09-16 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +sts-cornelius-cyprian +sts-euphemia-lucy-and-geminianus
+2007-09-17 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green +stigmata-of-st-francis
+2007-09-18 tuesday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2007-09-19 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +januarius-companions
+2007-09-20 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +sts-eustace-companions
+2007-09-21 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +matthew
+2007-09-22 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2007-09-23 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +linus +thecla
+2007-09-24 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +our-lady-of-ransom
+2007-09-25 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green
+2007-09-26 wednesday time-after-pentecost 17 ef-time-after-pentecost-17-wednesday class-4 green +sts-cyprian-justina
+2007-09-27 thursday time-after-pentecost 17 sts-cosmas-damian class-3 red
+2007-09-28 friday time-after-pentecost 17 wenceslaus class-3 red
+2007-09-29 saturday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2007-09-30 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +jerome
+2007-10-01 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +remigius
+2007-10-02 tuesday time-after-pentecost 18 holy-guardian-angels class-3 white
+2007-10-03 wednesday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2007-10-04 thursday time-after-pentecost 18 francis-of-assisi class-3 white
+2007-10-05 friday time-after-pentecost 18 ef-time-after-pentecost-18-friday class-4 green +placid-companions
+2007-10-06 saturday time-after-pentecost 18 bruno class-3 white
+2007-10-07 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +our-lady-of-the-rosary +mark-i
+2007-10-08 monday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2007-10-09 tuesday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2007-10-10 wednesday time-after-pentecost 19 francis-borgia class-3 white
+2007-10-11 thursday time-after-pentecost 19 maternity-of-the-blessed-virgin-mary class-2 white
+2007-10-12 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green
+2007-10-13 saturday time-after-pentecost 19 edward class-3 white
+2007-10-14 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +callistus-i
+2007-10-15 monday time-after-pentecost 20 teresa-of-avila class-3 white
+2007-10-16 tuesday time-after-pentecost 20 hedwig class-3 white
+2007-10-17 wednesday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2007-10-18 thursday time-after-pentecost 20 luke-the-evangelist class-2 red
+2007-10-19 friday time-after-pentecost 20 peter-of-alcantara class-3 white
+2007-10-20 saturday time-after-pentecost 20 john-cantius class-3 white
+2007-10-21 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +hilarion +ursula-and-companions
+2007-10-22 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2007-10-23 tuesday time-after-pentecost 21 anthony-mary-claret class-3 white
+2007-10-24 wednesday time-after-pentecost 21 raphael-the-archangel class-3 white
+2007-10-25 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green +sts-chrysanthus-daria
+2007-10-26 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2007-10-27 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2007-10-28 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-simon-jude
+2007-10-29 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2007-10-30 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2007-10-31 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green
+2007-11-01 thursday time-after-pentecost 22 all-saints class-1 white
+2007-11-02 friday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2007-11-03 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2007-11-04 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +charles-borromeo +sts-vitalis-and-agricola-martyrs
+2007-11-05 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2007-11-06 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2007-11-07 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2007-11-08 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green +four-holy-crowned-martyrs
+2007-11-09 friday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2007-11-10 saturday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2007-11-11 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-of-tours +menna
+2007-11-12 monday time-after-pentecost 24 martin-i class-3 red
+2007-11-13 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green +didacus
+2007-11-14 wednesday time-after-pentecost 24 josaphat class-3 white
+2007-11-15 thursday time-after-pentecost 24 albert-the-great class-3 white
+2007-11-16 friday time-after-pentecost 24 gertrude-the-great class-3 white
+2007-11-17 saturday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2007-11-18 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +dedication-of-the-basilicas-of-sts-peter-paul
+2007-11-19 monday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2007-11-20 tuesday time-after-pentecost 25 felix-of-valois class-3 white
+2007-11-21 wednesday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2007-11-22 thursday time-after-pentecost 25 cecilia class-3 red
+2007-11-23 friday time-after-pentecost 25 clement-i class-3 red +felicity
+2007-11-24 saturday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2007-11-25 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +catherine-of-alexandria
+2007-11-26 monday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2007-11-27 tuesday time-after-pentecost 26 ef-time-after-pentecost-26-tuesday class-4 green
+2007-11-28 wednesday time-after-pentecost 26 ef-time-after-pentecost-26-wednesday class-4 green
+2007-11-29 thursday time-after-pentecost 26 ef-time-after-pentecost-26-thursday class-4 green +saturninus
+2007-11-30 friday time-after-pentecost 26 andrew class-2 red
+2007-12-01 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green
+2007-12-02 sunday advent 1 ef-advent-sunday-1 class-1 violet +vivian
+2007-12-03 monday advent 1 francis-xavier class-3 white
+2007-12-04 tuesday advent 1 peter-chrysologus class-3 white
+2007-12-05 wednesday advent 1 ef-advent-1-wednesday class-3 violet +sabbas
+2007-12-06 thursday advent 1 nicholas class-3 white
+2007-12-07 friday advent 1 ambrose class-3 white
+2007-12-08 saturday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2007-12-09 sunday advent 2 ef-advent-sunday-2 class-2 violet
+2007-12-10 monday advent 2 ef-advent-2-monday class-3 violet +melchiades
+2007-12-11 tuesday advent 2 damasus-i class-3 white
+2007-12-12 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2007-12-13 thursday advent 2 lucy class-3 red
+2007-12-14 friday advent 2 ef-advent-2-friday class-3 violet
+2007-12-15 saturday advent 2 ef-advent-2-saturday class-3 violet
+2007-12-16 sunday advent 3 ef-advent-sunday-3 class-2 violet +eusebius
+2007-12-17 monday advent 3 ef-advent-3-monday class-3 violet
+2007-12-18 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2007-12-19 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2007-12-20 thursday advent 3 ef-advent-3-thursday class-3 violet
+2007-12-21 friday advent 3 ef-advent-ember-fri class-2 violet +thomas
+2007-12-22 saturday advent 3 ef-advent-ember-sat class-2 violet
+2007-12-23 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2007-12-24 monday advent 4 vigil-of-christmas class-1 violet
+2007-12-25 tuesday christmas - ef-nativity class-1 white
+2007-12-26 wednesday christmas - stephen class-2 red
+2007-12-27 thursday christmas - john-the-evangelist class-2 white
+2007-12-28 friday christmas - holy-innocents class-2 red
+2007-12-29 saturday christmas - ef-christmas-0-saturday class-4 white +thomas-becket
+2007-12-30 sunday christmas - ef-christmas-sunday-0 class-2 white
+2007-12-31 monday christmas - ef-christmas-0-monday class-4 white +silvester
+2008-01-01 tuesday christmas - ef-circumcision class-1 white
+2008-01-02 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2008-01-03 thursday christmas - ef-christmas-0-thursday class-4 white
+2008-01-04 friday christmas - ef-christmas-0-friday class-4 white
+2008-01-05 saturday christmas - ef-christmas-0-saturday class-4 white +telesphorus-pope-and-martyr
+2008-01-06 sunday time-after-epiphany - ef-epiphany class-1 white
+2008-01-07 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2008-01-08 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2008-01-09 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2008-01-10 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2008-01-11 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green +hyginus-pope-and-martyr
+2008-01-12 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2008-01-13 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +commemoration-of-the-baptism-of-the-lord
+2008-01-14 monday time-after-epiphany 2 hilary class-3 white +felicis
+2008-01-15 tuesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2008-01-16 wednesday time-after-epiphany 2 marcellus-i class-3 red
+2008-01-17 thursday time-after-epiphany 2 anthony class-3 white
+2008-01-18 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +prisca
+2008-01-19 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2008-01-20 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +sts-fabian-sebastian
+2008-01-21 monday septuagesima 1 agnes class-3 red
+2008-01-22 tuesday septuagesima 1 sts-vincent-anastasius class-3 red
+2008-01-23 wednesday septuagesima 1 raymond-of-pe-afort class-3 white +emerentiana
+2008-01-24 thursday septuagesima 1 timothy class-3 red
+2008-01-25 friday septuagesima 1 conversion-of-st-paul class-3 white +peter
+2008-01-26 saturday septuagesima 1 polycarp class-3 red
+2008-01-27 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +john-chrysostom
+2008-01-28 monday septuagesima 2 peter-nolasco class-3 white
+2008-01-29 tuesday septuagesima 2 francis-de-sales class-3 white
+2008-01-30 wednesday septuagesima 2 martina class-3 red
+2008-01-31 thursday septuagesima 2 john-bosco class-3 white
+2008-02-01 friday septuagesima 2 ignatius-of-antioch class-3 red
+2008-02-02 saturday septuagesima 2 purification-of-the-blessed-virgin-mary class-2 white
+2008-02-03 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +blaise
+2008-02-04 monday septuagesima 3 andrew-corsini class-3 white
+2008-02-05 tuesday septuagesima 3 agatha class-3 red
+2008-02-06 wednesday lent - ef-ash-wednesday class-1 violet +titus +dorothy
+2008-02-07 thursday lent - ef-lent-after-ashes-thursday class-3 violet +romuald
+2008-02-08 friday lent - ef-lent-after-ashes-friday class-3 violet +john-of-matha
+2008-02-09 saturday lent - ef-lent-after-ashes-saturday class-3 violet +cyril-of-alexandria +appollonia
+2008-02-10 sunday lent 1 ef-lent-sunday-1 class-2 violet +scholastica
+2008-02-11 monday lent 1 ef-lent-1-monday class-3 violet +our-lady-of-lourdes
+2008-02-12 tuesday lent 1 ef-lent-1-tuesday class-3 violet +seven-holy-servite-founders
+2008-02-13 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2008-02-14 thursday lent 1 ef-lent-1-thursday class-3 violet +valentine
+2008-02-15 friday lent 1 ef-lent-1-friday class-3 violet +sts-faustinus-jovita
+2008-02-16 saturday lent 1 ef-lent-1-saturday class-3 violet
+2008-02-17 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2008-02-18 monday lent 2 ef-lent-2-monday class-3 violet +simeon
+2008-02-19 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2008-02-20 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2008-02-21 thursday lent 2 ef-lent-2-thursday class-3 violet
+2008-02-22 friday lent 2 chair-of-st-peter class-2 white +paul
+2008-02-23 saturday lent 2 ef-lent-2-saturday class-3 violet +peter-damien
+2008-02-24 sunday lent 3 ef-lent-sunday-3 class-2 violet +matthias
+2008-02-25 monday lent 3 ef-lent-3-monday class-3 violet
+2008-02-26 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2008-02-27 wednesday lent 3 ef-lent-3-wednesday class-3 violet +gabriel-of-our-lady-of-sorrows
+2008-02-28 thursday lent 3 ef-lent-3-thursday class-3 violet
+2008-02-29 friday lent 3 ef-lent-3-friday class-3 violet
+2008-03-01 saturday lent 3 ef-lent-3-saturday class-3 violet
+2008-03-02 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2008-03-03 monday lent 4 ef-lent-4-monday class-3 violet
+2008-03-04 tuesday lent 4 ef-lent-4-tuesday class-3 violet +casimir +lucius
+2008-03-05 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2008-03-06 thursday lent 4 ef-lent-4-thursday class-3 violet +sts-felicitas-perpetua
+2008-03-07 friday lent 4 ef-lent-4-friday class-3 violet +thomas-aquinas
+2008-03-08 saturday lent 4 ef-lent-4-saturday class-3 violet +john-of-god
+2008-03-09 sunday passiontide 1 ef-passion-sunday class-1 violet +frances-rome
+2008-03-10 monday passiontide - ef-passiontide-0-monday class-3 violet +forty-holy-martyrs-of-sebaste
+2008-03-11 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2008-03-12 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +gregory-the-great
+2008-03-13 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2008-03-14 friday passiontide - ef-passiontide-0-friday class-3 violet
+2008-03-15 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2008-03-16 sunday passiontide 2 ef-palm-sunday class-1 violet
+2008-03-17 monday passiontide - ef-passiontide-0-monday class-1 violet +patrick
+2008-03-18 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +cyril-of-jerusalem
+2008-03-19 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2008-03-20 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2008-03-21 friday passiontide - ef-passiontide-0-friday class-1 violet +benedict
+2008-03-22 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2008-03-23 sunday easter 1 ef-easter-sunday class-1 white
+2008-03-24 monday easter 1 ef-easter-1-monday class-1 white +gabriel-the-archangel
+2008-03-25 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2008-03-26 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2008-03-27 thursday easter 1 ef-easter-1-thursday class-1 white +john-damascene
+2008-03-28 friday easter 1 ef-easter-1-friday class-1 white +john-of-capistrano
+2008-03-29 saturday easter 1 ef-easter-1-saturday class-1 white
+2008-03-30 sunday easter 2 ef-low-sunday class-1 white
+2008-03-31 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white +joseph-spouse-of-the-bl-virgin-mary
+2008-04-01 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2008-04-02 wednesday easter 2 ef-easter-2-wednesday class-4 white +francis-of-paola
+2008-04-03 thursday easter 2 ef-easter-2-thursday class-4 white
+2008-04-04 friday easter 2 ef-easter-2-friday class-4 white +isidore-of-seville
+2008-04-05 saturday easter 2 ef-easter-2-saturday class-4 white +vincent-ferrer
+2008-04-06 sunday easter 3 ef-easter-sunday-3 class-2 white
+2008-04-07 monday easter 3 ef-easter-3-monday class-4 white
+2008-04-08 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2008-04-09 wednesday easter 3 ef-easter-3-wednesday class-4 white
+2008-04-10 thursday easter 3 ef-easter-3-thursday class-4 white
+2008-04-11 friday easter 3 leo-the-great class-3 white
+2008-04-12 saturday easter 3 ef-easter-3-saturday class-4 white
+2008-04-13 sunday easter 4 ef-easter-sunday-4 class-2 white +hermenegild
+2008-04-14 monday easter 4 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2008-04-15 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2008-04-16 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2008-04-17 thursday easter 4 ef-easter-4-thursday class-4 white +anicetus
+2008-04-18 friday easter 4 ef-easter-4-friday class-4 white
+2008-04-19 saturday easter 4 ef-easter-4-saturday class-4 white
+2008-04-20 sunday easter 5 ef-easter-sunday-5 class-2 white
+2008-04-21 monday easter 5 anselm class-3 white
+2008-04-22 tuesday easter 5 sts-soter-caius class-3 red
+2008-04-23 wednesday easter 5 ef-easter-5-wednesday class-4 white +george
+2008-04-24 thursday easter 5 fidelis-of-sigmaringen class-3 red
+2008-04-25 friday easter 5 mark class-2 red
+2008-04-26 saturday easter 5 sts-cletus-marcellinus class-3 red
+2008-04-27 sunday easter 6 ef-easter-sunday-6 class-2 white +peter-canisius
+2008-04-28 monday easter 6 paul-of-the-cross class-3 white
+2008-04-29 tuesday easter 6 peter-of-verona class-3 red
+2008-04-30 wednesday easter - ef-ascension-vigil class-2 white +catherine-of-siena
+2008-05-01 thursday easter - ef-ascension class-1 white
+2008-05-02 friday easter 6 joseph-the-workman class-1 white +athanasius
+2008-05-03 saturday easter 6 ef-easter-6-saturday class-4 white +sts-alexander-companions
+2008-05-04 sunday easter 7 ef-easter-sunday-7 class-2 white +monica
+2008-05-05 monday easter 7 pius-v class-3 white
+2008-05-06 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2008-05-07 wednesday easter 7 stanislaus class-3 red
+2008-05-08 thursday easter 7 ef-easter-7-thursday class-4 white
+2008-05-09 friday easter 7 gregory-of-nazianzen class-3 white
+2008-05-10 saturday easter - ef-pentecost-vigil class-1 red +antoninus +gordiano-and-epimacho
+2008-05-11 sunday easter - ef-pentecost class-1 red +sts-philip-james
+2008-05-12 monday easter 8 ef-easter-8-monday class-1 red +sts-nereus-achilleus-domitilla-pancras
+2008-05-13 tuesday easter 8 ef-easter-8-tuesday class-1 red +robert-bellarmine
+2008-05-14 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2008-05-15 thursday easter 8 ef-easter-8-thursday class-1 red +john-baptist-de-la-salle
+2008-05-16 friday easter 8 ef-easter-8-friday class-1 red +ubaldus
+2008-05-17 saturday easter 8 ef-easter-8-saturday class-1 red +paschal-baylon
+2008-05-18 sunday time-after-pentecost 1 ef-trinity class-1 white +venantius
+2008-05-19 monday time-after-pentecost 1 peter-celestine class-3 white +pudentiana-virginis
+2008-05-20 tuesday time-after-pentecost 1 bernardine-of-siena class-3 white
+2008-05-21 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2008-05-22 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2008-05-23 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green
+2008-05-24 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green
+2008-05-25 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +gregory-vii +urban-pope-and-martyr
+2008-05-26 monday time-after-pentecost 2 philip-neri class-3 white +eleutherius
+2008-05-27 tuesday time-after-pentecost 2 bede-the-venerable class-3 white +john-i
+2008-05-28 wednesday time-after-pentecost 2 augustine-of-canterbury class-3 white
+2008-05-29 thursday time-after-pentecost 2 mary-magdalene-de-pazzi class-3 white
+2008-05-30 friday time-after-pentecost - ef-sacred-heart class-1 white +felix-i
+2008-05-31 saturday time-after-pentecost 2 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2008-06-01 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +angela-merici
+2008-06-02 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green +sts-marcellinus-peter-erasmus
+2008-06-03 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2008-06-04 wednesday time-after-pentecost 3 francis-caracciolo class-3 white
+2008-06-05 thursday time-after-pentecost 3 boniface class-3 red
+2008-06-06 friday time-after-pentecost 3 norbert class-3 white
+2008-06-07 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2008-06-08 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green
+2008-06-09 monday time-after-pentecost 4 ef-time-after-pentecost-4-monday class-4 green +sts-primus-felicianus
+2008-06-10 tuesday time-after-pentecost 4 margaret-of-scotland class-3 white
+2008-06-11 wednesday time-after-pentecost 4 barnabas class-3 red
+2008-06-12 thursday time-after-pentecost 4 john-of-san-fecundo class-3 red +basilidus
+2008-06-13 friday time-after-pentecost 4 anthony-of-padua class-3 white
+2008-06-14 saturday time-after-pentecost 4 basil-the-great class-3 white
+2008-06-15 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +vitus
+2008-06-16 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green
+2008-06-17 tuesday time-after-pentecost 5 gregory-barbarigo class-3 white
+2008-06-18 wednesday time-after-pentecost 5 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2008-06-19 thursday time-after-pentecost 5 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2008-06-20 friday time-after-pentecost 5 ef-time-after-pentecost-5-friday class-4 green +silverius
+2008-06-21 saturday time-after-pentecost 5 aloysius-gongzaga class-3 white
+2008-06-22 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +paulinus-of-nola
+2008-06-23 monday time-after-pentecost 6 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2008-06-24 tuesday time-after-pentecost 6 nativity-of-st-john-the-baptist class-1 white
+2008-06-25 wednesday time-after-pentecost 6 william class-3 white
+2008-06-26 thursday time-after-pentecost 6 sts-john-paul class-3 red
+2008-06-27 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green
+2008-06-28 saturday time-after-pentecost 6 vigil-of-sts-peter-paul class-2 violet
+2008-06-29 sunday time-after-pentecost 7 sts-peter-paul class-1 red
+2008-06-30 monday time-after-pentecost 7 in-commemoratione-sancti-pauli-apostoli class-3 red
+2008-07-01 tuesday time-after-pentecost 7 precious-blood-of-our-lord-jesus-christ class-1 red
+2008-07-02 wednesday time-after-pentecost 7 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2008-07-03 thursday time-after-pentecost 7 irenaeus class-3 red
+2008-07-04 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green
+2008-07-05 saturday time-after-pentecost 7 anthony-mary-zaccariah class-3 white
+2008-07-06 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green
+2008-07-07 monday time-after-pentecost 8 sts-cyril-methodius class-3 white
+2008-07-08 tuesday time-after-pentecost 8 elizabeth-of-portugal class-3 white
+2008-07-09 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green
+2008-07-10 thursday time-after-pentecost 8 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2008-07-11 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +pius-i
+2008-07-12 saturday time-after-pentecost 8 john-gualbert class-3 red +naboris-et-felicis
+2008-07-13 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green
+2008-07-14 monday time-after-pentecost 9 bonaventure class-3 white
+2008-07-15 tuesday time-after-pentecost 9 henry-the-emperor class-3 white
+2008-07-16 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +our-lady-of-mt-carmel
+2008-07-17 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +alexis
+2008-07-18 friday time-after-pentecost 9 camillus-de-lellis class-3 red +symphorosa-and-sons
+2008-07-19 saturday time-after-pentecost 9 vincent-de-paul class-3 white
+2008-07-20 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +jerome-emiliani +margaret
+2008-07-21 monday time-after-pentecost 10 laurence-of-brindisi class-3 white +praxedis-virginis
+2008-07-22 tuesday time-after-pentecost 10 mary-magdalene class-3 white
+2008-07-23 wednesday time-after-pentecost 10 apollinaris class-3 white +liborii
+2008-07-24 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +christina
+2008-07-25 friday time-after-pentecost 10 james-the-greater class-2 red +christopher
+2008-07-26 saturday time-after-pentecost 10 anne-mother-of-the-blessed-virgin class-2 white
+2008-07-27 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +pantaleon
+2008-07-28 monday time-after-pentecost 11 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2008-07-29 tuesday time-after-pentecost 11 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2008-07-30 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green +sts-abdon-sennen
+2008-07-31 thursday time-after-pentecost 11 ignatius-loyola class-3 white
+2008-08-01 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +holy-machabees
+2008-08-02 saturday time-after-pentecost 11 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2008-08-03 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green
+2008-08-04 monday time-after-pentecost 12 dominic class-3 white
+2008-08-05 tuesday time-after-pentecost 12 dedication-of-the-basilica-of-st-mary-major class-3 white
+2008-08-06 wednesday time-after-pentecost 12 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2008-08-07 thursday time-after-pentecost 12 cajetan class-3 white +donatus
+2008-08-08 friday time-after-pentecost 12 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2008-08-09 saturday time-after-pentecost 12 vigil-of-st-lawrence class-3 red +romanus
+2008-08-10 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +lawrence
+2008-08-11 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green +sts-tiburtius-susanna
+2008-08-12 tuesday time-after-pentecost 13 clare class-3 white
+2008-08-13 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +sts-hippolytus-cassian
+2008-08-14 thursday time-after-pentecost 13 vigil-of-the-assumption class-2 white
+2008-08-15 friday time-after-pentecost 13 assumption-of-the-blessed-virgin-mary class-1 white
+2008-08-16 saturday time-after-pentecost 13 joachim-father-of-the-blessed-virgin class-2 white
+2008-08-17 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +hyacinth
+2008-08-18 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +agapitus
+2008-08-19 tuesday time-after-pentecost 14 john-eudes class-3 white
+2008-08-20 wednesday time-after-pentecost 14 bernard-of-clairvaux class-3 white
+2008-08-21 thursday time-after-pentecost 14 jane-frances-de-chantal class-3 white
+2008-08-22 friday time-after-pentecost 14 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2008-08-23 saturday time-after-pentecost 14 philip-benizi class-3 white
+2008-08-24 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +bartholomew
+2008-08-25 monday time-after-pentecost 15 louis-ix class-3 white
+2008-08-26 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +zephyrinus
+2008-08-27 wednesday time-after-pentecost 15 joseph-calasance class-3 white
+2008-08-28 thursday time-after-pentecost 15 augustine class-3 red +hermes
+2008-08-29 friday time-after-pentecost 15 beheading-of-st-john-the-baptist class-3 red +sabina
+2008-08-30 saturday time-after-pentecost 15 rose-of-lima class-3 red +sts-felix-and-adauctus
+2008-08-31 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +raymond-nonnatus
+2008-09-01 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green +giles +twelve-holy-brothers-martyrs
+2008-09-02 tuesday time-after-pentecost 16 stephen-of-hungary class-3 white
+2008-09-03 wednesday time-after-pentecost 16 pius-x class-3 white
+2008-09-04 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green
+2008-09-05 friday time-after-pentecost 16 lawrence-justinian class-3 white
+2008-09-06 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green
+2008-09-07 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green
+2008-09-08 monday time-after-pentecost 17 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2008-09-09 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +gorgonius
+2008-09-10 wednesday time-after-pentecost 17 nicholas-of-tolentino class-3 white
+2008-09-11 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +sts-protus-hyacinth
+2008-09-12 friday time-after-pentecost 17 most-holy-name-of-mary class-3 white
+2008-09-13 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green
+2008-09-14 sunday time-after-pentecost 18 exaltation-of-the-holy-cross class-2 red
+2008-09-15 monday time-after-pentecost 18 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2008-09-16 tuesday time-after-pentecost 18 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2008-09-17 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green +stigmata-of-st-francis
+2008-09-18 thursday time-after-pentecost 18 joseph-of-cupertino class-3 white
+2008-09-19 friday time-after-pentecost 18 januarius-companions class-3 red
+2008-09-20 saturday time-after-pentecost 18 ef-time-after-pentecost-18-saturday class-4 green +sts-eustace-companions
+2008-09-21 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +matthew
+2008-09-22 monday time-after-pentecost 19 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2008-09-23 tuesday time-after-pentecost 19 linus class-3 red +thecla
+2008-09-24 wednesday time-after-pentecost 19 ef-september-ember-wed class-2 violet +our-lady-of-ransom
+2008-09-25 thursday time-after-pentecost 19 ef-time-after-pentecost-19-thursday class-4 green
+2008-09-26 friday time-after-pentecost 19 ef-september-ember-fri class-2 violet +sts-cyprian-justina
+2008-09-27 saturday time-after-pentecost 19 ef-september-ember-sat class-2 violet +sts-cosmas-damian
+2008-09-28 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +wenceslaus
+2008-09-29 monday time-after-pentecost 20 dedication-of-st-michael-the-archangel class-1 white
+2008-09-30 tuesday time-after-pentecost 20 jerome class-3 white
+2008-10-01 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green +remigius
+2008-10-02 thursday time-after-pentecost 20 holy-guardian-angels class-3 white
+2008-10-03 friday time-after-pentecost 20 theresa-of-the-infant-jesus class-3 white
+2008-10-04 saturday time-after-pentecost 20 francis-of-assisi class-3 white
+2008-10-05 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +placid-companions
+2008-10-06 monday time-after-pentecost 21 bruno class-3 white
+2008-10-07 tuesday time-after-pentecost 21 our-lady-of-the-rosary class-2 white +mark-i
+2008-10-08 wednesday time-after-pentecost 21 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2008-10-09 thursday time-after-pentecost 21 john-leonardi class-3 white +dionysius-and-companions
+2008-10-10 friday time-after-pentecost 21 francis-borgia class-3 white
+2008-10-11 saturday time-after-pentecost 21 maternity-of-the-blessed-virgin-mary class-2 white
+2008-10-12 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2008-10-13 monday time-after-pentecost 22 edward class-3 white
+2008-10-14 tuesday time-after-pentecost 22 callistus-i class-3 red
+2008-10-15 wednesday time-after-pentecost 22 teresa-of-avila class-3 white
+2008-10-16 thursday time-after-pentecost 22 hedwig class-3 white
+2008-10-17 friday time-after-pentecost 22 margaret-mary-alacoque class-3 white
+2008-10-18 saturday time-after-pentecost 22 luke-the-evangelist class-2 red
+2008-10-19 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +peter-of-alcantara
+2008-10-20 monday time-after-pentecost 23 john-cantius class-3 white
+2008-10-21 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green +hilarion +ursula-and-companions
+2008-10-22 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2008-10-23 thursday time-after-pentecost 23 anthony-mary-claret class-3 white
+2008-10-24 friday time-after-pentecost 23 raphael-the-archangel class-3 white
+2008-10-25 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green +sts-chrysanthus-daria
+2008-10-26 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2008-10-27 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green
+2008-10-28 tuesday time-after-pentecost 24 sts-simon-jude class-2 red
+2008-10-29 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2008-10-30 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2008-10-31 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green
+2008-11-01 saturday time-after-pentecost 24 all-saints class-1 white
+2008-11-02 sunday time-after-pentecost 4 ef-time-after-epiphany-sunday-4 class-2 green
+2008-11-03 monday time-after-pentecost 25 commemoration-of-all-souls class-1 black
+2008-11-04 tuesday time-after-pentecost 25 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2008-11-05 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green
+2008-11-06 thursday time-after-pentecost 25 ef-time-after-pentecost-25-thursday class-4 green
+2008-11-07 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green
+2008-11-08 saturday time-after-pentecost 25 ef-time-after-pentecost-25-saturday class-4 green +four-holy-crowned-martyrs
+2008-11-09 sunday time-after-pentecost 5 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2008-11-10 monday time-after-pentecost 26 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2008-11-11 tuesday time-after-pentecost 26 martin-of-tours class-3 white +menna
+2008-11-12 wednesday time-after-pentecost 26 martin-i class-3 red
+2008-11-13 thursday time-after-pentecost 26 ef-time-after-pentecost-26-thursday class-4 green +didacus
+2008-11-14 friday time-after-pentecost 26 josaphat class-3 white
+2008-11-15 saturday time-after-pentecost 26 albert-the-great class-3 white
+2008-11-16 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +gertrude-the-great
+2008-11-17 monday time-after-pentecost 27 gregory-the-wonderworker class-3 white
+2008-11-18 tuesday time-after-pentecost 27 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2008-11-19 wednesday time-after-pentecost 27 elizabeth-of-hungary class-3 white +pontian
+2008-11-20 thursday time-after-pentecost 27 felix-of-valois class-3 white
+2008-11-21 friday time-after-pentecost 27 presentation-of-the-blessed-virgin-mary class-3 white
+2008-11-22 saturday time-after-pentecost 27 cecilia class-3 red
+2008-11-23 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +clement-i +felicity
+2008-11-24 monday time-after-pentecost 28 john-of-the-cross class-3 white +chrysogonus
+2008-11-25 tuesday time-after-pentecost 28 catherine-of-alexandria class-3 red
+2008-11-26 wednesday time-after-pentecost 28 sylvester class-3 white +peter-of-alexandria
+2008-11-27 thursday time-after-pentecost 28 ef-time-after-pentecost-28-thursday class-4 green
+2008-11-28 friday time-after-pentecost 28 ef-time-after-pentecost-28-friday class-4 green
+2008-11-29 saturday time-after-pentecost 28 ef-time-after-pentecost-28-saturday class-4 green +saturninus
+2008-11-30 sunday advent 1 ef-advent-sunday-1 class-1 violet +andrew
+2008-12-01 monday advent 1 ef-advent-1-monday class-3 violet
+2008-12-02 tuesday advent 1 vivian class-3 red
+2008-12-03 wednesday advent 1 francis-xavier class-3 white
+2008-12-04 thursday advent 1 peter-chrysologus class-3 white
+2008-12-05 friday advent 1 ef-advent-1-friday class-3 violet +sabbas
+2008-12-06 saturday advent 1 nicholas class-3 white
+2008-12-07 sunday advent 2 ef-advent-sunday-2 class-2 violet +ambrose
+2008-12-08 monday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2008-12-09 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2008-12-10 wednesday advent 2 ef-advent-2-wednesday class-3 violet +melchiades
+2008-12-11 thursday advent 2 damasus-i class-3 white
+2008-12-12 friday advent 2 ef-advent-2-friday class-3 violet
+2008-12-13 saturday advent 2 lucy class-3 red
+2008-12-14 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2008-12-15 monday advent 3 ef-advent-3-monday class-3 violet
+2008-12-16 tuesday advent 3 eusebius class-3 red
+2008-12-17 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2008-12-18 thursday advent 3 ef-advent-3-thursday class-3 violet
+2008-12-19 friday advent 3 ef-advent-ember-fri class-2 violet
+2008-12-20 saturday advent 3 ef-advent-ember-sat class-2 violet
+2008-12-21 sunday advent 4 ef-advent-sunday-4 class-2 violet +thomas
+2008-12-22 monday advent 4 ef-advent-4-monday class-3 violet
+2008-12-23 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2008-12-24 wednesday advent 4 vigil-of-christmas class-1 violet
+2008-12-25 thursday christmas - ef-nativity class-1 white
+2008-12-26 friday christmas - stephen class-2 red
+2008-12-27 saturday christmas - john-the-evangelist class-2 white
+2008-12-28 sunday christmas - ef-christmas-sunday-0 class-2 white +holy-innocents
+2008-12-29 monday christmas - ef-christmas-0-monday class-4 white +thomas-becket
+2008-12-30 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2008-12-31 wednesday christmas - ef-christmas-0-wednesday class-4 white +silvester
+2009-01-01 thursday christmas - ef-circumcision class-1 white
+2009-01-02 friday christmas - ef-christmas-0-friday class-4 white
+2009-01-03 saturday christmas - ef-christmas-0-saturday class-4 white
+2009-01-04 sunday christmas - ef-christmas-sunday-0 class-2 white
+2009-01-05 monday christmas - ef-christmas-0-monday class-4 white +telesphorus-pope-and-martyr
+2009-01-06 tuesday time-after-epiphany - ef-epiphany class-1 white
+2009-01-07 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2009-01-08 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2009-01-09 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2009-01-10 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2009-01-11 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green +hyginus-pope-and-martyr
+2009-01-12 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2009-01-13 tuesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2009-01-14 wednesday time-after-epiphany 2 hilary class-3 white +felicis
+2009-01-15 thursday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2009-01-16 friday time-after-epiphany 2 marcellus-i class-3 red
+2009-01-17 saturday time-after-epiphany 2 anthony class-3 white
+2009-01-18 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +prisca
+2009-01-19 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2009-01-20 tuesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2009-01-21 wednesday time-after-epiphany 3 agnes class-3 red
+2009-01-22 thursday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2009-01-23 friday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2009-01-24 saturday time-after-epiphany 3 timothy class-3 red
+2009-01-25 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +conversion-of-st-paul +peter
+2009-01-26 monday time-after-epiphany 3 polycarp class-3 red
+2009-01-27 tuesday time-after-epiphany 4 john-chrysostom class-3 white
+2009-01-28 wednesday time-after-epiphany 4 peter-nolasco class-3 white
+2009-01-29 thursday time-after-epiphany 4 francis-de-sales class-3 white
+2009-01-30 friday time-after-epiphany 4 martina class-3 red
+2009-01-31 saturday time-after-epiphany 4 john-bosco class-3 white
+2009-02-01 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +ignatius-of-antioch
+2009-02-02 monday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2009-02-03 tuesday time-after-epiphany 5 ef-time-after-epiphany-5-tuesday class-4 green +blaise
+2009-02-04 wednesday time-after-epiphany 5 andrew-corsini class-3 white
+2009-02-05 thursday time-after-epiphany 5 agatha class-3 red
+2009-02-06 friday time-after-epiphany 5 titus class-3 white +dorothy
+2009-02-07 saturday time-after-epiphany 5 romuald class-3 white
+2009-02-08 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +john-of-matha
+2009-02-09 monday septuagesima 1 cyril-of-alexandria class-3 white +appollonia
+2009-02-10 tuesday septuagesima 1 scholastica class-3 white
+2009-02-11 wednesday septuagesima 1 our-lady-of-lourdes class-3 white
+2009-02-12 thursday septuagesima 1 seven-holy-servite-founders class-3 white
+2009-02-13 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2009-02-14 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet +valentine
+2009-02-15 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +sts-faustinus-jovita
+2009-02-16 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2009-02-17 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2009-02-18 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet +simeon
+2009-02-19 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2009-02-20 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2009-02-21 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2009-02-22 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +chair-of-st-peter +paul
+2009-02-23 monday septuagesima 3 peter-damien class-3 white
+2009-02-24 tuesday septuagesima 3 matthias class-2 red
+2009-02-25 wednesday lent - ef-ash-wednesday class-1 violet
+2009-02-26 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2009-02-27 friday lent - ef-lent-after-ashes-friday class-3 violet +gabriel-of-our-lady-of-sorrows
+2009-02-28 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2009-03-01 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2009-03-02 monday lent 1 ef-lent-1-monday class-3 violet
+2009-03-03 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2009-03-04 wednesday lent 1 ef-lent-1-wednesday class-3 violet +casimir +lucius
+2009-03-05 thursday lent 1 ef-lent-1-thursday class-3 violet
+2009-03-06 friday lent 1 ef-lent-1-friday class-3 violet +sts-felicitas-perpetua
+2009-03-07 saturday lent 1 ef-lent-1-saturday class-3 violet +thomas-aquinas
+2009-03-08 sunday lent 2 ef-lent-sunday-2 class-2 violet +john-of-god
+2009-03-09 monday lent 2 ef-lent-2-monday class-3 violet +frances-rome
+2009-03-10 tuesday lent 2 ef-lent-2-tuesday class-3 violet +forty-holy-martyrs-of-sebaste
+2009-03-11 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2009-03-12 thursday lent 2 ef-lent-2-thursday class-3 violet +gregory-the-great
+2009-03-13 friday lent 2 ef-lent-2-friday class-3 violet
+2009-03-14 saturday lent 2 ef-lent-2-saturday class-3 violet
+2009-03-15 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2009-03-16 monday lent 3 ef-lent-3-monday class-3 violet
+2009-03-17 tuesday lent 3 ef-lent-3-tuesday class-3 violet +patrick
+2009-03-18 wednesday lent 3 ef-lent-3-wednesday class-3 violet +cyril-of-jerusalem
+2009-03-19 thursday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2009-03-20 friday lent 3 ef-lent-3-friday class-3 violet
+2009-03-21 saturday lent 3 ef-lent-3-saturday class-3 violet +benedict
+2009-03-22 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2009-03-23 monday lent 4 ef-lent-4-monday class-3 violet
+2009-03-24 tuesday lent 4 ef-lent-4-tuesday class-3 violet +gabriel-the-archangel
+2009-03-25 wednesday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2009-03-26 thursday lent 4 ef-lent-4-thursday class-3 violet
+2009-03-27 friday lent 4 ef-lent-4-friday class-3 violet +john-damascene
+2009-03-28 saturday lent 4 ef-lent-4-saturday class-3 violet +john-of-capistrano
+2009-03-29 sunday passiontide 1 ef-passion-sunday class-1 violet
+2009-03-30 monday passiontide - ef-passiontide-0-monday class-3 violet
+2009-03-31 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2009-04-01 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2009-04-02 thursday passiontide - ef-passiontide-0-thursday class-3 violet +francis-of-paola
+2009-04-03 friday passiontide - ef-passiontide-0-friday class-3 violet
+2009-04-04 saturday passiontide - ef-passiontide-0-saturday class-3 violet +isidore-of-seville
+2009-04-05 sunday passiontide 2 ef-palm-sunday class-1 violet +vincent-ferrer
+2009-04-06 monday passiontide - ef-passiontide-0-monday class-1 violet
+2009-04-07 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2009-04-08 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2009-04-09 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2009-04-10 friday passiontide - ef-passiontide-0-friday class-1 violet
+2009-04-11 saturday passiontide - ef-passiontide-0-saturday class-1 violet +leo-the-great
+2009-04-12 sunday easter 1 ef-easter-sunday class-1 white
+2009-04-13 monday easter 1 ef-easter-1-monday class-1 white +hermenegild
+2009-04-14 tuesday easter 1 ef-easter-1-tuesday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2009-04-15 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2009-04-16 thursday easter 1 ef-easter-1-thursday class-1 white
+2009-04-17 friday easter 1 ef-easter-1-friday class-1 white +anicetus
+2009-04-18 saturday easter 1 ef-easter-1-saturday class-1 white
+2009-04-19 sunday easter 2 ef-low-sunday class-1 white
+2009-04-20 monday easter 2 ef-easter-2-monday class-4 white
+2009-04-21 tuesday easter 2 anselm class-3 white
+2009-04-22 wednesday easter 2 sts-soter-caius class-3 red
+2009-04-23 thursday easter 2 ef-easter-2-thursday class-4 white +george
+2009-04-24 friday easter 2 fidelis-of-sigmaringen class-3 red
+2009-04-25 saturday easter 2 mark class-2 red
+2009-04-26 sunday easter 3 ef-easter-sunday-3 class-2 white +sts-cletus-marcellinus
+2009-04-27 monday easter 3 peter-canisius class-3 white
+2009-04-28 tuesday easter 3 paul-of-the-cross class-3 white
+2009-04-29 wednesday easter 3 peter-of-verona class-3 red
+2009-04-30 thursday easter 3 catherine-of-siena class-3 white
+2009-05-01 friday easter 3 joseph-the-workman class-1 white
+2009-05-02 saturday easter 3 athanasius class-3 white
+2009-05-03 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-alexander-companions
+2009-05-04 monday easter 4 monica class-3 white
+2009-05-05 tuesday easter 4 pius-v class-3 white
+2009-05-06 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2009-05-07 thursday easter 4 stanislaus class-3 red
+2009-05-08 friday easter 4 ef-easter-4-friday class-4 white
+2009-05-09 saturday easter 4 gregory-of-nazianzen class-3 white
+2009-05-10 sunday easter 5 ef-easter-sunday-5 class-2 white +antoninus +gordiano-and-epimacho
+2009-05-11 monday easter 5 sts-philip-james class-2 red
+2009-05-12 tuesday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2009-05-13 wednesday easter 5 robert-bellarmine class-3 white
+2009-05-14 thursday easter 5 ef-easter-5-thursday class-4 white
+2009-05-15 friday easter 5 john-baptist-de-la-salle class-3 white
+2009-05-16 saturday easter 5 ef-easter-5-saturday class-4 white +ubaldus
+2009-05-17 sunday easter 6 ef-easter-sunday-6 class-2 white +paschal-baylon
+2009-05-18 monday easter 6 venantius class-3 red
+2009-05-19 tuesday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2009-05-20 wednesday easter - ef-ascension-vigil class-2 white +bernardine-of-siena
+2009-05-21 thursday easter - ef-ascension class-1 white
+2009-05-22 friday easter 6 ef-easter-6-friday class-4 white
+2009-05-23 saturday easter 6 ef-easter-6-saturday class-4 white
+2009-05-24 sunday easter 7 ef-easter-sunday-7 class-2 white
+2009-05-25 monday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2009-05-26 tuesday easter 7 philip-neri class-3 white +eleutherius
+2009-05-27 wednesday easter 7 bede-the-venerable class-3 white +john-i
+2009-05-28 thursday easter 7 augustine-of-canterbury class-3 white
+2009-05-29 friday easter 7 mary-magdalene-de-pazzi class-3 white
+2009-05-30 saturday easter - ef-pentecost-vigil class-1 red +felix-i
+2009-05-31 sunday easter - ef-pentecost class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2009-06-01 monday easter 8 ef-easter-8-monday class-1 red +angela-merici
+2009-06-02 tuesday easter 8 ef-easter-8-tuesday class-1 red +sts-marcellinus-peter-erasmus
+2009-06-03 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2009-06-04 thursday easter 8 ef-easter-8-thursday class-1 red +francis-caracciolo
+2009-06-05 friday easter 8 ef-easter-8-friday class-1 red +boniface
+2009-06-06 saturday easter 8 ef-easter-8-saturday class-1 red +norbert
+2009-06-07 sunday time-after-pentecost 1 ef-trinity class-1 white
+2009-06-08 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2009-06-09 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green +sts-primus-felicianus
+2009-06-10 wednesday time-after-pentecost 1 margaret-of-scotland class-3 white
+2009-06-11 thursday time-after-pentecost - ef-corpus-christi class-1 white +barnabas
+2009-06-12 friday time-after-pentecost 1 john-of-san-fecundo class-3 red +basilidus
+2009-06-13 saturday time-after-pentecost 1 anthony-of-padua class-3 white
+2009-06-14 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +basil-the-great
+2009-06-15 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green +vitus
+2009-06-16 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green
+2009-06-17 wednesday time-after-pentecost 2 gregory-barbarigo class-3 white
+2009-06-18 thursday time-after-pentecost 2 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2009-06-19 friday time-after-pentecost - ef-sacred-heart class-1 white +julia-of-falconieri +sts-gervasius-and-protasius
+2009-06-20 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green +silverius
+2009-06-21 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +aloysius-gongzaga
+2009-06-22 monday time-after-pentecost 3 paulinus-of-nola class-3 white
+2009-06-23 tuesday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2009-06-24 wednesday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2009-06-25 thursday time-after-pentecost 3 william class-3 white
+2009-06-26 friday time-after-pentecost 3 sts-john-paul class-3 red
+2009-06-27 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2009-06-28 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +vigil-of-sts-peter-paul
+2009-06-29 monday time-after-pentecost 4 sts-peter-paul class-1 red
+2009-06-30 tuesday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2009-07-01 wednesday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2009-07-02 thursday time-after-pentecost 4 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2009-07-03 friday time-after-pentecost 4 irenaeus class-3 red
+2009-07-04 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2009-07-05 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +anthony-mary-zaccariah
+2009-07-06 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green
+2009-07-07 tuesday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2009-07-08 wednesday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2009-07-09 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2009-07-10 friday time-after-pentecost 5 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2009-07-11 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green +pius-i
+2009-07-12 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +john-gualbert +naboris-et-felicis
+2009-07-13 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2009-07-14 tuesday time-after-pentecost 6 bonaventure class-3 white
+2009-07-15 wednesday time-after-pentecost 6 henry-the-emperor class-3 white
+2009-07-16 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green +our-lady-of-mt-carmel
+2009-07-17 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green +alexis
+2009-07-18 saturday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2009-07-19 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +vincent-de-paul
+2009-07-20 monday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2009-07-21 tuesday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2009-07-22 wednesday time-after-pentecost 7 mary-magdalene class-3 white
+2009-07-23 thursday time-after-pentecost 7 apollinaris class-3 white +liborii
+2009-07-24 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +christina
+2009-07-25 saturday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2009-07-26 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +anne-mother-of-the-blessed-virgin
+2009-07-27 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +pantaleon
+2009-07-28 tuesday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2009-07-29 wednesday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2009-07-30 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +sts-abdon-sennen
+2009-07-31 friday time-after-pentecost 8 ignatius-loyola class-3 white
+2009-08-01 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +holy-machabees
+2009-08-02 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +alphonsus-liguori +stephen-i-pope-and-martyr
+2009-08-03 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green
+2009-08-04 tuesday time-after-pentecost 9 dominic class-3 white
+2009-08-05 wednesday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2009-08-06 thursday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2009-08-07 friday time-after-pentecost 9 cajetan class-3 white +donatus
+2009-08-08 saturday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2009-08-09 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +vigil-of-st-lawrence +romanus
+2009-08-10 monday time-after-pentecost 10 lawrence class-2 red
+2009-08-11 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +sts-tiburtius-susanna
+2009-08-12 wednesday time-after-pentecost 10 clare class-3 white
+2009-08-13 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +sts-hippolytus-cassian
+2009-08-14 friday time-after-pentecost 10 vigil-of-the-assumption class-2 white
+2009-08-15 saturday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2009-08-16 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +joachim-father-of-the-blessed-virgin
+2009-08-17 monday time-after-pentecost 11 hyacinth class-3 white
+2009-08-18 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green +agapitus
+2009-08-19 wednesday time-after-pentecost 11 john-eudes class-3 white
+2009-08-20 thursday time-after-pentecost 11 bernard-of-clairvaux class-3 white
+2009-08-21 friday time-after-pentecost 11 jane-frances-de-chantal class-3 white
+2009-08-22 saturday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2009-08-23 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +philip-benizi
+2009-08-24 monday time-after-pentecost 12 bartholomew class-2 red
+2009-08-25 tuesday time-after-pentecost 12 louis-ix class-3 white
+2009-08-26 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green +zephyrinus
+2009-08-27 thursday time-after-pentecost 12 joseph-calasance class-3 white
+2009-08-28 friday time-after-pentecost 12 augustine class-3 red +hermes
+2009-08-29 saturday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2009-08-30 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +rose-of-lima +sts-felix-and-adauctus
+2009-08-31 monday time-after-pentecost 13 raymond-nonnatus class-3 white
+2009-09-01 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green +giles +twelve-holy-brothers-martyrs
+2009-09-02 wednesday time-after-pentecost 13 stephen-of-hungary class-3 white
+2009-09-03 thursday time-after-pentecost 13 pius-x class-3 white
+2009-09-04 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green
+2009-09-05 saturday time-after-pentecost 13 lawrence-justinian class-3 white
+2009-09-06 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green
+2009-09-07 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green
+2009-09-08 tuesday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2009-09-09 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green +gorgonius
+2009-09-10 thursday time-after-pentecost 14 nicholas-of-tolentino class-3 white
+2009-09-11 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green +sts-protus-hyacinth
+2009-09-12 saturday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2009-09-13 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green
+2009-09-14 monday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2009-09-15 tuesday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2009-09-16 wednesday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2009-09-17 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +stigmata-of-st-francis
+2009-09-18 friday time-after-pentecost 15 joseph-of-cupertino class-3 white
+2009-09-19 saturday time-after-pentecost 15 januarius-companions class-3 red
+2009-09-20 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +sts-eustace-companions
+2009-09-21 monday time-after-pentecost 16 matthew class-2 red
+2009-09-22 tuesday time-after-pentecost 16 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2009-09-23 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +linus +thecla
+2009-09-24 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +our-lady-of-ransom
+2009-09-25 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet
+2009-09-26 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +sts-cyprian-justina
+2009-09-27 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-cosmas-damian
+2009-09-28 monday time-after-pentecost 17 wenceslaus class-3 red
+2009-09-29 tuesday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2009-09-30 wednesday time-after-pentecost 17 jerome class-3 white
+2009-10-01 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +remigius
+2009-10-02 friday time-after-pentecost 17 holy-guardian-angels class-3 white
+2009-10-03 saturday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2009-10-04 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +francis-of-assisi
+2009-10-05 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +placid-companions
+2009-10-06 tuesday time-after-pentecost 18 bruno class-3 white
+2009-10-07 wednesday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2009-10-08 thursday time-after-pentecost 18 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2009-10-09 friday time-after-pentecost 18 john-leonardi class-3 white +dionysius-and-companions
+2009-10-10 saturday time-after-pentecost 18 francis-borgia class-3 white
+2009-10-11 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +maternity-of-the-blessed-virgin-mary
+2009-10-12 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green
+2009-10-13 tuesday time-after-pentecost 19 edward class-3 white
+2009-10-14 wednesday time-after-pentecost 19 callistus-i class-3 red
+2009-10-15 thursday time-after-pentecost 19 teresa-of-avila class-3 white
+2009-10-16 friday time-after-pentecost 19 hedwig class-3 white
+2009-10-17 saturday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2009-10-18 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +luke-the-evangelist
+2009-10-19 monday time-after-pentecost 20 peter-of-alcantara class-3 white
+2009-10-20 tuesday time-after-pentecost 20 john-cantius class-3 white
+2009-10-21 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green +hilarion +ursula-and-companions
+2009-10-22 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2009-10-23 friday time-after-pentecost 20 anthony-mary-claret class-3 white
+2009-10-24 saturday time-after-pentecost 20 raphael-the-archangel class-3 white
+2009-10-25 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-chrysanthus-daria
+2009-10-26 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2009-10-27 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2009-10-28 wednesday time-after-pentecost 21 sts-simon-jude class-2 red
+2009-10-29 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2009-10-30 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2009-10-31 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2009-11-01 sunday time-after-pentecost 22 all-saints class-1 white
+2009-11-02 monday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2009-11-03 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2009-11-04 wednesday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2009-11-05 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2009-11-06 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2009-11-07 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2009-11-08 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +four-holy-crowned-martyrs
+2009-11-09 monday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2009-11-10 tuesday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2009-11-11 wednesday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2009-11-12 thursday time-after-pentecost 23 martin-i class-3 red
+2009-11-13 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green +didacus
+2009-11-14 saturday time-after-pentecost 23 josaphat class-3 white
+2009-11-15 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +albert-the-great
+2009-11-16 monday time-after-pentecost 24 gertrude-the-great class-3 white
+2009-11-17 tuesday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2009-11-18 wednesday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2009-11-19 thursday time-after-pentecost 24 elizabeth-of-hungary class-3 white +pontian
+2009-11-20 friday time-after-pentecost 24 felix-of-valois class-3 white
+2009-11-21 saturday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2009-11-22 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +cecilia
+2009-11-23 monday time-after-pentecost 25 clement-i class-3 red +felicity
+2009-11-24 tuesday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2009-11-25 wednesday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2009-11-26 thursday time-after-pentecost 25 sylvester class-3 white +peter-of-alexandria
+2009-11-27 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green
+2009-11-28 saturday time-after-pentecost 25 ef-time-after-pentecost-25-saturday class-4 green
+2009-11-29 sunday advent 1 ef-advent-sunday-1 class-1 violet +saturninus
+2009-11-30 monday advent 1 andrew class-2 red
+2009-12-01 tuesday advent 1 ef-advent-1-tuesday class-3 violet
+2009-12-02 wednesday advent 1 vivian class-3 red
+2009-12-03 thursday advent 1 francis-xavier class-3 white
+2009-12-04 friday advent 1 peter-chrysologus class-3 white
+2009-12-05 saturday advent 1 ef-advent-1-saturday class-3 violet +sabbas
+2009-12-06 sunday advent 2 ef-advent-sunday-2 class-2 violet +nicholas
+2009-12-07 monday advent 2 ambrose class-3 white
+2009-12-08 tuesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2009-12-09 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2009-12-10 thursday advent 2 ef-advent-2-thursday class-3 violet +melchiades
+2009-12-11 friday advent 2 damasus-i class-3 white
+2009-12-12 saturday advent 2 ef-advent-2-saturday class-3 violet
+2009-12-13 sunday advent 3 ef-advent-sunday-3 class-2 violet +lucy
+2009-12-14 monday advent 3 ef-advent-3-monday class-3 violet
+2009-12-15 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2009-12-16 wednesday advent 3 ef-advent-ember-wed class-2 violet +eusebius
+2009-12-17 thursday advent 3 ef-advent-3-thursday class-3 violet
+2009-12-18 friday advent 3 ef-advent-ember-fri class-2 violet
+2009-12-19 saturday advent 3 ef-advent-ember-sat class-2 violet
+2009-12-20 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2009-12-21 monday advent 4 thomas class-2 red
+2009-12-22 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2009-12-23 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2009-12-24 thursday advent 4 vigil-of-christmas class-1 violet
+2009-12-25 friday christmas - ef-nativity class-1 white
+2009-12-26 saturday christmas - stephen class-2 red
+2009-12-27 sunday christmas - ef-christmas-sunday-0 class-2 white +john-the-evangelist
+2009-12-28 monday christmas - holy-innocents class-2 red
+2009-12-29 tuesday christmas - ef-christmas-0-tuesday class-4 white +thomas-becket
+2009-12-30 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2009-12-31 thursday christmas - ef-christmas-0-thursday class-4 white +silvester
+2010-01-01 friday christmas - ef-circumcision class-1 white
+2010-01-02 saturday christmas - ef-christmas-0-saturday class-4 white
+2010-01-03 sunday christmas - ef-christmas-sunday-0 class-2 white
+2010-01-04 monday christmas - ef-christmas-0-monday class-4 white
+2010-01-05 tuesday christmas - ef-christmas-0-tuesday class-4 white +telesphorus-pope-and-martyr
+2010-01-06 wednesday time-after-epiphany - ef-epiphany class-1 white
+2010-01-07 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2010-01-08 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2010-01-09 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2010-01-10 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2010-01-11 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green +hyginus-pope-and-martyr
+2010-01-12 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2010-01-13 wednesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2010-01-14 thursday time-after-epiphany 2 hilary class-3 white +felicis
+2010-01-15 friday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2010-01-16 saturday time-after-epiphany 2 marcellus-i class-3 red
+2010-01-17 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +anthony
+2010-01-18 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +prisca
+2010-01-19 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2010-01-20 wednesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2010-01-21 thursday time-after-epiphany 3 agnes class-3 red
+2010-01-22 friday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2010-01-23 saturday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2010-01-24 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +timothy
+2010-01-25 monday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2010-01-26 tuesday time-after-epiphany 3 polycarp class-3 red
+2010-01-27 wednesday time-after-epiphany 4 john-chrysostom class-3 white
+2010-01-28 thursday time-after-epiphany 4 peter-nolasco class-3 white
+2010-01-29 friday time-after-epiphany 4 francis-de-sales class-3 white
+2010-01-30 saturday time-after-epiphany 4 martina class-3 red
+2010-01-31 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +john-bosco
+2010-02-01 monday septuagesima 1 ignatius-of-antioch class-3 red
+2010-02-02 tuesday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2010-02-03 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet +blaise
+2010-02-04 thursday septuagesima 1 andrew-corsini class-3 white
+2010-02-05 friday septuagesima 1 agatha class-3 red
+2010-02-06 saturday septuagesima 1 titus class-3 white +dorothy
+2010-02-07 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +romuald
+2010-02-08 monday septuagesima 2 john-of-matha class-3 white
+2010-02-09 tuesday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2010-02-10 wednesday septuagesima 2 scholastica class-3 white
+2010-02-11 thursday septuagesima 2 our-lady-of-lourdes class-3 white
+2010-02-12 friday septuagesima 2 seven-holy-servite-founders class-3 white
+2010-02-13 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2010-02-14 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +valentine
+2010-02-15 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet +sts-faustinus-jovita
+2010-02-16 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2010-02-17 wednesday lent - ef-ash-wednesday class-1 violet
+2010-02-18 thursday lent - ef-lent-after-ashes-thursday class-3 violet +simeon
+2010-02-19 friday lent - ef-lent-after-ashes-friday class-3 violet
+2010-02-20 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2010-02-21 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2010-02-22 monday lent 1 chair-of-st-peter class-2 white +paul
+2010-02-23 tuesday lent 1 ef-lent-1-tuesday class-3 violet +peter-damien
+2010-02-24 wednesday lent 1 matthias class-2 red
+2010-02-25 thursday lent 1 ef-lent-1-thursday class-3 violet
+2010-02-26 friday lent 1 ef-lent-1-friday class-3 violet
+2010-02-27 saturday lent 1 ef-lent-1-saturday class-3 violet +gabriel-of-our-lady-of-sorrows
+2010-02-28 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2010-03-01 monday lent 2 ef-lent-2-monday class-3 violet
+2010-03-02 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2010-03-03 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2010-03-04 thursday lent 2 ef-lent-2-thursday class-3 violet +casimir +lucius
+2010-03-05 friday lent 2 ef-lent-2-friday class-3 violet
+2010-03-06 saturday lent 2 ef-lent-2-saturday class-3 violet +sts-felicitas-perpetua
+2010-03-07 sunday lent 3 ef-lent-sunday-3 class-2 violet +thomas-aquinas
+2010-03-08 monday lent 3 ef-lent-3-monday class-3 violet +john-of-god
+2010-03-09 tuesday lent 3 ef-lent-3-tuesday class-3 violet +frances-rome
+2010-03-10 wednesday lent 3 ef-lent-3-wednesday class-3 violet +forty-holy-martyrs-of-sebaste
+2010-03-11 thursday lent 3 ef-lent-3-thursday class-3 violet
+2010-03-12 friday lent 3 ef-lent-3-friday class-3 violet +gregory-the-great
+2010-03-13 saturday lent 3 ef-lent-3-saturday class-3 violet
+2010-03-14 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2010-03-15 monday lent 4 ef-lent-4-monday class-3 violet
+2010-03-16 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2010-03-17 wednesday lent 4 ef-lent-4-wednesday class-3 violet +patrick
+2010-03-18 thursday lent 4 ef-lent-4-thursday class-3 violet +cyril-of-jerusalem
+2010-03-19 friday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2010-03-20 saturday lent 4 ef-lent-4-saturday class-3 violet
+2010-03-21 sunday passiontide 1 ef-passion-sunday class-1 violet +benedict
+2010-03-22 monday passiontide - ef-passiontide-0-monday class-3 violet
+2010-03-23 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2010-03-24 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +gabriel-the-archangel
+2010-03-25 thursday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2010-03-26 friday passiontide - ef-passiontide-0-friday class-3 violet
+2010-03-27 saturday passiontide - ef-passiontide-0-saturday class-3 violet +john-damascene
+2010-03-28 sunday passiontide 2 ef-palm-sunday class-1 violet +john-of-capistrano
+2010-03-29 monday passiontide - ef-passiontide-0-monday class-1 violet
+2010-03-30 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2010-03-31 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2010-04-01 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2010-04-02 friday passiontide - ef-passiontide-0-friday class-1 violet +francis-of-paola
+2010-04-03 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2010-04-04 sunday easter 1 ef-easter-sunday class-1 white +isidore-of-seville
+2010-04-05 monday easter 1 ef-easter-1-monday class-1 white +vincent-ferrer
+2010-04-06 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2010-04-07 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2010-04-08 thursday easter 1 ef-easter-1-thursday class-1 white
+2010-04-09 friday easter 1 ef-easter-1-friday class-1 white
+2010-04-10 saturday easter 1 ef-easter-1-saturday class-1 white
+2010-04-11 sunday easter 2 ef-low-sunday class-1 white +leo-the-great
+2010-04-12 monday easter 2 ef-easter-2-monday class-4 white
+2010-04-13 tuesday easter 2 hermenegild class-3 red
+2010-04-14 wednesday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2010-04-15 thursday easter 2 ef-easter-2-thursday class-4 white
+2010-04-16 friday easter 2 ef-easter-2-friday class-4 white
+2010-04-17 saturday easter 2 ef-easter-2-saturday class-4 white +anicetus
+2010-04-18 sunday easter 3 ef-easter-sunday-3 class-2 white
+2010-04-19 monday easter 3 ef-easter-3-monday class-4 white
+2010-04-20 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2010-04-21 wednesday easter 3 anselm class-3 white
+2010-04-22 thursday easter 3 sts-soter-caius class-3 red
+2010-04-23 friday easter 3 ef-easter-3-friday class-4 white +george
+2010-04-24 saturday easter 3 fidelis-of-sigmaringen class-3 red
+2010-04-25 sunday easter 4 ef-easter-sunday-4 class-2 white +mark
+2010-04-26 monday easter 4 sts-cletus-marcellinus class-3 red
+2010-04-27 tuesday easter 4 peter-canisius class-3 white
+2010-04-28 wednesday easter 4 paul-of-the-cross class-3 white
+2010-04-29 thursday easter 4 peter-of-verona class-3 red
+2010-04-30 friday easter 4 catherine-of-siena class-3 white
+2010-05-01 saturday easter 4 joseph-the-workman class-1 white
+2010-05-02 sunday easter 5 ef-easter-sunday-5 class-2 white +athanasius
+2010-05-03 monday easter 5 ef-easter-5-monday class-4 white +sts-alexander-companions
+2010-05-04 tuesday easter 5 monica class-3 white
+2010-05-05 wednesday easter 5 pius-v class-3 white
+2010-05-06 thursday easter 5 ef-easter-5-thursday class-4 white
+2010-05-07 friday easter 5 stanislaus class-3 red
+2010-05-08 saturday easter 5 ef-easter-5-saturday class-4 white
+2010-05-09 sunday easter 6 ef-easter-sunday-6 class-2 white +gregory-of-nazianzen
+2010-05-10 monday easter 6 antoninus class-3 white +gordiano-and-epimacho
+2010-05-11 tuesday easter 6 sts-philip-james class-2 red
+2010-05-12 wednesday easter - ef-ascension-vigil class-2 white +sts-nereus-achilleus-domitilla-pancras
+2010-05-13 thursday easter - ef-ascension class-1 white +robert-bellarmine
+2010-05-14 friday easter 6 ef-easter-6-friday class-4 white
+2010-05-15 saturday easter 6 john-baptist-de-la-salle class-3 white
+2010-05-16 sunday easter 7 ef-easter-sunday-7 class-2 white +ubaldus
+2010-05-17 monday easter 7 paschal-baylon class-3 white
+2010-05-18 tuesday easter 7 venantius class-3 red
+2010-05-19 wednesday easter 7 peter-celestine class-3 white +pudentiana-virginis
+2010-05-20 thursday easter 7 bernardine-of-siena class-3 white
+2010-05-21 friday easter 7 ef-easter-7-friday class-4 white
+2010-05-22 saturday easter - ef-pentecost-vigil class-1 red
+2010-05-23 sunday easter - ef-pentecost class-1 red
+2010-05-24 monday easter 8 ef-easter-8-monday class-1 red
+2010-05-25 tuesday easter 8 ef-easter-8-tuesday class-1 red +gregory-vii +urban-pope-and-martyr
+2010-05-26 wednesday easter 8 ef-easter-8-wednesday class-1 red +philip-neri +eleutherius
+2010-05-27 thursday easter 8 ef-easter-8-thursday class-1 red +bede-the-venerable +john-i
+2010-05-28 friday easter 8 ef-easter-8-friday class-1 red +augustine-of-canterbury
+2010-05-29 saturday easter 8 ef-easter-8-saturday class-1 red +mary-magdalene-de-pazzi
+2010-05-30 sunday time-after-pentecost 1 ef-trinity class-1 white +felix-i
+2010-05-31 monday time-after-pentecost 1 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2010-06-01 tuesday time-after-pentecost 1 angela-merici class-3 white
+2010-06-02 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green +sts-marcellinus-peter-erasmus
+2010-06-03 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2010-06-04 friday time-after-pentecost 1 francis-caracciolo class-3 white
+2010-06-05 saturday time-after-pentecost 1 boniface class-3 red
+2010-06-06 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +norbert
+2010-06-07 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2010-06-08 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green
+2010-06-09 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green +sts-primus-felicianus
+2010-06-10 thursday time-after-pentecost 2 margaret-of-scotland class-3 white
+2010-06-11 friday time-after-pentecost - ef-sacred-heart class-1 white +barnabas
+2010-06-12 saturday time-after-pentecost 2 john-of-san-fecundo class-3 red +basilidus
+2010-06-13 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +anthony-of-padua
+2010-06-14 monday time-after-pentecost 3 basil-the-great class-3 white
+2010-06-15 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green +vitus
+2010-06-16 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green
+2010-06-17 thursday time-after-pentecost 3 gregory-barbarigo class-3 white
+2010-06-18 friday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2010-06-19 saturday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2010-06-20 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +silverius
+2010-06-21 monday time-after-pentecost 4 aloysius-gongzaga class-3 white
+2010-06-22 tuesday time-after-pentecost 4 paulinus-of-nola class-3 white
+2010-06-23 wednesday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2010-06-24 thursday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2010-06-25 friday time-after-pentecost 4 william class-3 white
+2010-06-26 saturday time-after-pentecost 4 sts-john-paul class-3 red
+2010-06-27 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2010-06-28 monday time-after-pentecost 5 vigil-of-sts-peter-paul class-2 violet
+2010-06-29 tuesday time-after-pentecost 5 sts-peter-paul class-1 red
+2010-06-30 wednesday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2010-07-01 thursday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2010-07-02 friday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2010-07-03 saturday time-after-pentecost 5 irenaeus class-3 red
+2010-07-04 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2010-07-05 monday time-after-pentecost 6 anthony-mary-zaccariah class-3 white
+2010-07-06 tuesday time-after-pentecost 6 ef-time-after-pentecost-6-tuesday class-4 green
+2010-07-07 wednesday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2010-07-08 thursday time-after-pentecost 6 elizabeth-of-portugal class-3 white
+2010-07-09 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green
+2010-07-10 saturday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2010-07-11 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +pius-i
+2010-07-12 monday time-after-pentecost 7 john-gualbert class-3 red +naboris-et-felicis
+2010-07-13 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green
+2010-07-14 wednesday time-after-pentecost 7 bonaventure class-3 white
+2010-07-15 thursday time-after-pentecost 7 henry-the-emperor class-3 white
+2010-07-16 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +our-lady-of-mt-carmel
+2010-07-17 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green +alexis
+2010-07-18 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +camillus-de-lellis +symphorosa-and-sons
+2010-07-19 monday time-after-pentecost 8 vincent-de-paul class-3 white
+2010-07-20 tuesday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2010-07-21 wednesday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2010-07-22 thursday time-after-pentecost 8 mary-magdalene class-3 white
+2010-07-23 friday time-after-pentecost 8 apollinaris class-3 white +liborii
+2010-07-24 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +christina
+2010-07-25 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +james-the-greater +christopher
+2010-07-26 monday time-after-pentecost 9 anne-mother-of-the-blessed-virgin class-2 white
+2010-07-27 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +pantaleon
+2010-07-28 wednesday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2010-07-29 thursday time-after-pentecost 9 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2010-07-30 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +sts-abdon-sennen
+2010-07-31 saturday time-after-pentecost 9 ignatius-loyola class-3 white
+2010-08-01 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +holy-machabees
+2010-08-02 monday time-after-pentecost 10 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2010-08-03 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green
+2010-08-04 wednesday time-after-pentecost 10 dominic class-3 white
+2010-08-05 thursday time-after-pentecost 10 dedication-of-the-basilica-of-st-mary-major class-3 white
+2010-08-06 friday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2010-08-07 saturday time-after-pentecost 10 cajetan class-3 white +donatus
+2010-08-08 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +john-mary-vianney +cyriacus-largus-and-smaragdus-martyrs
+2010-08-09 monday time-after-pentecost 11 vigil-of-st-lawrence class-3 red +romanus
+2010-08-10 tuesday time-after-pentecost 11 lawrence class-2 red
+2010-08-11 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green +sts-tiburtius-susanna
+2010-08-12 thursday time-after-pentecost 11 clare class-3 white
+2010-08-13 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +sts-hippolytus-cassian
+2010-08-14 saturday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2010-08-15 sunday time-after-pentecost 12 assumption-of-the-blessed-virgin-mary class-1 white
+2010-08-16 monday time-after-pentecost 12 joachim-father-of-the-blessed-virgin class-2 white
+2010-08-17 tuesday time-after-pentecost 12 hyacinth class-3 white
+2010-08-18 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green +agapitus
+2010-08-19 thursday time-after-pentecost 12 john-eudes class-3 white
+2010-08-20 friday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2010-08-21 saturday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2010-08-22 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +immaculate-heart-of-mary +sts-timothy-hippolytus-and-symphorianus-martyrs
+2010-08-23 monday time-after-pentecost 13 philip-benizi class-3 white
+2010-08-24 tuesday time-after-pentecost 13 bartholomew class-2 red
+2010-08-25 wednesday time-after-pentecost 13 louis-ix class-3 white
+2010-08-26 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +zephyrinus
+2010-08-27 friday time-after-pentecost 13 joseph-calasance class-3 white
+2010-08-28 saturday time-after-pentecost 13 augustine class-3 red +hermes
+2010-08-29 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +beheading-of-st-john-the-baptist +sabina
+2010-08-30 monday time-after-pentecost 14 rose-of-lima class-3 red +sts-felix-and-adauctus
+2010-08-31 tuesday time-after-pentecost 14 raymond-nonnatus class-3 white
+2010-09-01 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green +giles +twelve-holy-brothers-martyrs
+2010-09-02 thursday time-after-pentecost 14 stephen-of-hungary class-3 white
+2010-09-03 friday time-after-pentecost 14 pius-x class-3 white
+2010-09-04 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green
+2010-09-05 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +lawrence-justinian
+2010-09-06 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green
+2010-09-07 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green
+2010-09-08 wednesday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2010-09-09 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +gorgonius
+2010-09-10 friday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2010-09-11 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +sts-protus-hyacinth
+2010-09-12 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +most-holy-name-of-mary
+2010-09-13 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green
+2010-09-14 tuesday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2010-09-15 wednesday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2010-09-16 thursday time-after-pentecost 16 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2010-09-17 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green +stigmata-of-st-francis
+2010-09-18 saturday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2010-09-19 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +januarius-companions
+2010-09-20 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +sts-eustace-companions
+2010-09-21 tuesday time-after-pentecost 17 matthew class-2 red
+2010-09-22 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2010-09-23 thursday time-after-pentecost 17 linus class-3 red +thecla
+2010-09-24 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet +our-lady-of-ransom
+2010-09-25 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet
+2010-09-26 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-cyprian-justina
+2010-09-27 monday time-after-pentecost 18 sts-cosmas-damian class-3 red
+2010-09-28 tuesday time-after-pentecost 18 wenceslaus class-3 red
+2010-09-29 wednesday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2010-09-30 thursday time-after-pentecost 18 jerome class-3 white
+2010-10-01 friday time-after-pentecost 18 ef-time-after-pentecost-18-friday class-4 green +remigius
+2010-10-02 saturday time-after-pentecost 18 holy-guardian-angels class-3 white
+2010-10-03 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +theresa-of-the-infant-jesus
+2010-10-04 monday time-after-pentecost 19 francis-of-assisi class-3 white
+2010-10-05 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green +placid-companions
+2010-10-06 wednesday time-after-pentecost 19 bruno class-3 white
+2010-10-07 thursday time-after-pentecost 19 our-lady-of-the-rosary class-2 white +mark-i
+2010-10-08 friday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2010-10-09 saturday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2010-10-10 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +francis-borgia
+2010-10-11 monday time-after-pentecost 20 maternity-of-the-blessed-virgin-mary class-2 white
+2010-10-12 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green
+2010-10-13 wednesday time-after-pentecost 20 edward class-3 white
+2010-10-14 thursday time-after-pentecost 20 callistus-i class-3 red
+2010-10-15 friday time-after-pentecost 20 teresa-of-avila class-3 white
+2010-10-16 saturday time-after-pentecost 20 hedwig class-3 white
+2010-10-17 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +margaret-mary-alacoque
+2010-10-18 monday time-after-pentecost 21 luke-the-evangelist class-2 red
+2010-10-19 tuesday time-after-pentecost 21 peter-of-alcantara class-3 white
+2010-10-20 wednesday time-after-pentecost 21 john-cantius class-3 white
+2010-10-21 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green +hilarion +ursula-and-companions
+2010-10-22 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2010-10-23 saturday time-after-pentecost 21 anthony-mary-claret class-3 white
+2010-10-24 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +raphael-the-archangel
+2010-10-25 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green +sts-chrysanthus-daria
+2010-10-26 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2010-10-27 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green
+2010-10-28 thursday time-after-pentecost 22 sts-simon-jude class-2 red
+2010-10-29 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2010-10-30 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2010-10-31 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2010-11-01 monday time-after-pentecost 23 all-saints class-1 white
+2010-11-02 tuesday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2010-11-03 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2010-11-04 thursday time-after-pentecost 23 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2010-11-05 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2010-11-06 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2010-11-07 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green
+2010-11-08 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green +four-holy-crowned-martyrs
+2010-11-09 tuesday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2010-11-10 wednesday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2010-11-11 thursday time-after-pentecost 24 martin-of-tours class-3 white +menna
+2010-11-12 friday time-after-pentecost 24 martin-i class-3 red
+2010-11-13 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green +didacus
+2010-11-14 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +josaphat
+2010-11-15 monday time-after-pentecost 25 albert-the-great class-3 white
+2010-11-16 tuesday time-after-pentecost 25 gertrude-the-great class-3 white
+2010-11-17 wednesday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2010-11-18 thursday time-after-pentecost 25 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2010-11-19 friday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2010-11-20 saturday time-after-pentecost 25 felix-of-valois class-3 white
+2010-11-21 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +presentation-of-the-blessed-virgin-mary
+2010-11-22 monday time-after-pentecost 26 cecilia class-3 red
+2010-11-23 tuesday time-after-pentecost 26 clement-i class-3 red +felicity
+2010-11-24 wednesday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2010-11-25 thursday time-after-pentecost 26 catherine-of-alexandria class-3 red
+2010-11-26 friday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2010-11-27 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green
+2010-11-28 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2010-11-29 monday advent 1 ef-advent-1-monday class-3 violet +saturninus
+2010-11-30 tuesday advent 1 andrew class-2 red
+2010-12-01 wednesday advent 1 ef-advent-1-wednesday class-3 violet
+2010-12-02 thursday advent 1 vivian class-3 red
+2010-12-03 friday advent 1 francis-xavier class-3 white
+2010-12-04 saturday advent 1 peter-chrysologus class-3 white
+2010-12-05 sunday advent 2 ef-advent-sunday-2 class-2 violet +sabbas
+2010-12-06 monday advent 2 nicholas class-3 white
+2010-12-07 tuesday advent 2 ambrose class-3 white
+2010-12-08 wednesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2010-12-09 thursday advent 2 ef-advent-2-thursday class-3 violet
+2010-12-10 friday advent 2 ef-advent-2-friday class-3 violet +melchiades
+2010-12-11 saturday advent 2 damasus-i class-3 white
+2010-12-12 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2010-12-13 monday advent 3 lucy class-3 red
+2010-12-14 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2010-12-15 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2010-12-16 thursday advent 3 eusebius class-3 red
+2010-12-17 friday advent 3 ef-advent-ember-fri class-2 violet
+2010-12-18 saturday advent 3 ef-advent-ember-sat class-2 violet
+2010-12-19 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2010-12-20 monday advent 4 ef-advent-4-monday class-3 violet
+2010-12-21 tuesday advent 4 thomas class-2 red
+2010-12-22 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2010-12-23 thursday advent 4 ef-advent-4-thursday class-3 violet
+2010-12-24 friday advent 4 vigil-of-christmas class-1 violet
+2010-12-25 saturday christmas - ef-nativity class-1 white
+2010-12-26 sunday christmas - ef-christmas-sunday-0 class-2 white +stephen
+2010-12-27 monday christmas - john-the-evangelist class-2 white
+2010-12-28 tuesday christmas - holy-innocents class-2 red
+2010-12-29 wednesday christmas - ef-christmas-0-wednesday class-4 white +thomas-becket
+2010-12-30 thursday christmas - ef-christmas-0-thursday class-4 white
+2010-12-31 friday christmas - ef-christmas-0-friday class-4 white +silvester
+2011-01-01 saturday christmas - ef-circumcision class-1 white
+2011-01-02 sunday christmas - ef-christmas-sunday-0 class-2 white
+2011-01-03 monday christmas - ef-christmas-0-monday class-4 white
+2011-01-04 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2011-01-05 wednesday christmas - ef-christmas-0-wednesday class-4 white +telesphorus-pope-and-martyr
+2011-01-06 thursday time-after-epiphany - ef-epiphany class-1 white
+2011-01-07 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2011-01-08 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2011-01-09 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2011-01-10 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2011-01-11 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green +hyginus-pope-and-martyr
+2011-01-12 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2011-01-13 thursday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2011-01-14 friday time-after-epiphany 2 hilary class-3 white +felicis
+2011-01-15 saturday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2011-01-16 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +marcellus-i
+2011-01-17 monday time-after-epiphany 2 anthony class-3 white
+2011-01-18 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +prisca
+2011-01-19 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2011-01-20 thursday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2011-01-21 friday time-after-epiphany 3 agnes class-3 red
+2011-01-22 saturday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2011-01-23 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +raymond-of-pe-afort +emerentiana
+2011-01-24 monday time-after-epiphany 3 timothy class-3 red
+2011-01-25 tuesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2011-01-26 wednesday time-after-epiphany 3 polycarp class-3 red
+2011-01-27 thursday time-after-epiphany 4 john-chrysostom class-3 white
+2011-01-28 friday time-after-epiphany 4 peter-nolasco class-3 white
+2011-01-29 saturday time-after-epiphany 4 francis-de-sales class-3 white
+2011-01-30 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +martina
+2011-01-31 monday time-after-epiphany 4 john-bosco class-3 white
+2011-02-01 tuesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2011-02-02 wednesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2011-02-03 thursday time-after-epiphany 5 ef-time-after-epiphany-5-thursday class-4 green +blaise
+2011-02-04 friday time-after-epiphany 5 andrew-corsini class-3 white
+2011-02-05 saturday time-after-epiphany 5 agatha class-3 red
+2011-02-06 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +titus +dorothy
+2011-02-07 monday time-after-epiphany 5 romuald class-3 white
+2011-02-08 tuesday time-after-epiphany 5 john-of-matha class-3 white
+2011-02-09 wednesday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2011-02-10 thursday time-after-epiphany 6 scholastica class-3 white
+2011-02-11 friday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2011-02-12 saturday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2011-02-13 sunday time-after-epiphany 6 ef-time-after-epiphany-sunday-6 class-2 green
+2011-02-14 monday time-after-epiphany 6 ef-time-after-epiphany-6-monday class-4 green +valentine
+2011-02-15 tuesday time-after-epiphany 6 ef-time-after-epiphany-6-tuesday class-4 green +sts-faustinus-jovita
+2011-02-16 wednesday time-after-epiphany 6 ef-time-after-epiphany-6-wednesday class-4 green
+2011-02-17 thursday time-after-epiphany 7 ef-time-after-epiphany-7-thursday class-4 green
+2011-02-18 friday time-after-epiphany 7 ef-time-after-epiphany-7-friday class-4 green +simeon
+2011-02-19 saturday time-after-epiphany 7 ef-time-after-epiphany-7-saturday class-4 green
+2011-02-20 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2011-02-21 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet
+2011-02-22 tuesday septuagesima 1 chair-of-st-peter class-2 white +paul
+2011-02-23 wednesday septuagesima 1 peter-damien class-3 white
+2011-02-24 thursday septuagesima 1 matthias class-2 red
+2011-02-25 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2011-02-26 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet
+2011-02-27 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +gabriel-of-our-lady-of-sorrows
+2011-02-28 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2011-03-01 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2011-03-02 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2011-03-03 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2011-03-04 friday septuagesima 2 casimir class-3 white +lucius
+2011-03-05 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2011-03-06 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +sts-felicitas-perpetua
+2011-03-07 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet +thomas-aquinas
+2011-03-08 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet +john-of-god
+2011-03-09 wednesday lent - ef-ash-wednesday class-1 violet +frances-rome
+2011-03-10 thursday lent - ef-lent-after-ashes-thursday class-3 violet +forty-holy-martyrs-of-sebaste
+2011-03-11 friday lent - ef-lent-after-ashes-friday class-3 violet
+2011-03-12 saturday lent - ef-lent-after-ashes-saturday class-3 violet +gregory-the-great
+2011-03-13 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2011-03-14 monday lent 1 ef-lent-1-monday class-3 violet
+2011-03-15 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2011-03-16 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2011-03-17 thursday lent 1 ef-lent-1-thursday class-3 violet +patrick
+2011-03-18 friday lent 1 ef-lent-1-friday class-3 violet +cyril-of-jerusalem
+2011-03-19 saturday lent 1 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2011-03-20 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2011-03-21 monday lent 2 ef-lent-2-monday class-3 violet +benedict
+2011-03-22 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2011-03-23 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2011-03-24 thursday lent 2 ef-lent-2-thursday class-3 violet +gabriel-the-archangel
+2011-03-25 friday lent 2 annunciation-of-the-blessed-virgin-mary class-1 white
+2011-03-26 saturday lent 2 ef-lent-2-saturday class-3 violet
+2011-03-27 sunday lent 3 ef-lent-sunday-3 class-2 violet +john-damascene
+2011-03-28 monday lent 3 ef-lent-3-monday class-3 violet +john-of-capistrano
+2011-03-29 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2011-03-30 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2011-03-31 thursday lent 3 ef-lent-3-thursday class-3 violet
+2011-04-01 friday lent 3 ef-lent-3-friday class-3 violet
+2011-04-02 saturday lent 3 ef-lent-3-saturday class-3 violet +francis-of-paola
+2011-04-03 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2011-04-04 monday lent 4 ef-lent-4-monday class-3 violet +isidore-of-seville
+2011-04-05 tuesday lent 4 ef-lent-4-tuesday class-3 violet +vincent-ferrer
+2011-04-06 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2011-04-07 thursday lent 4 ef-lent-4-thursday class-3 violet
+2011-04-08 friday lent 4 ef-lent-4-friday class-3 violet
+2011-04-09 saturday lent 4 ef-lent-4-saturday class-3 violet
+2011-04-10 sunday passiontide 1 ef-passion-sunday class-1 violet
+2011-04-11 monday passiontide - ef-passiontide-0-monday class-3 violet +leo-the-great
+2011-04-12 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2011-04-13 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +hermenegild
+2011-04-14 thursday passiontide - ef-passiontide-0-thursday class-3 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2011-04-15 friday passiontide - ef-passiontide-0-friday class-3 violet
+2011-04-16 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2011-04-17 sunday passiontide 2 ef-palm-sunday class-1 violet +anicetus
+2011-04-18 monday passiontide - ef-passiontide-0-monday class-1 violet
+2011-04-19 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2011-04-20 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2011-04-21 thursday passiontide - ef-passiontide-0-thursday class-1 violet +anselm
+2011-04-22 friday passiontide - ef-passiontide-0-friday class-1 violet +sts-soter-caius
+2011-04-23 saturday passiontide - ef-passiontide-0-saturday class-1 violet +george
+2011-04-24 sunday easter 1 ef-easter-sunday class-1 white +fidelis-of-sigmaringen
+2011-04-25 monday easter 1 ef-easter-1-monday class-1 white +mark
+2011-04-26 tuesday easter 1 ef-easter-1-tuesday class-1 white +sts-cletus-marcellinus
+2011-04-27 wednesday easter 1 ef-easter-1-wednesday class-1 white +peter-canisius
+2011-04-28 thursday easter 1 ef-easter-1-thursday class-1 white +paul-of-the-cross
+2011-04-29 friday easter 1 ef-easter-1-friday class-1 white +peter-of-verona
+2011-04-30 saturday easter 1 ef-easter-1-saturday class-1 white +catherine-of-siena
+2011-05-01 sunday easter 2 ef-low-sunday class-1 white
+2011-05-02 monday easter 2 joseph-the-workman class-1 white +athanasius
+2011-05-03 tuesday easter 2 ef-easter-2-tuesday class-4 white +sts-alexander-companions
+2011-05-04 wednesday easter 2 monica class-3 white
+2011-05-05 thursday easter 2 pius-v class-3 white
+2011-05-06 friday easter 2 ef-easter-2-friday class-4 white
+2011-05-07 saturday easter 2 stanislaus class-3 red
+2011-05-08 sunday easter 3 ef-easter-sunday-3 class-2 white
+2011-05-09 monday easter 3 gregory-of-nazianzen class-3 white
+2011-05-10 tuesday easter 3 antoninus class-3 white +gordiano-and-epimacho
+2011-05-11 wednesday easter 3 sts-philip-james class-2 red
+2011-05-12 thursday easter 3 sts-nereus-achilleus-domitilla-pancras class-3 red
+2011-05-13 friday easter 3 robert-bellarmine class-3 white
+2011-05-14 saturday easter 3 ef-easter-3-saturday class-4 white
+2011-05-15 sunday easter 4 ef-easter-sunday-4 class-2 white +john-baptist-de-la-salle
+2011-05-16 monday easter 4 ef-easter-4-monday class-4 white +ubaldus
+2011-05-17 tuesday easter 4 paschal-baylon class-3 white
+2011-05-18 wednesday easter 4 venantius class-3 red
+2011-05-19 thursday easter 4 peter-celestine class-3 white +pudentiana-virginis
+2011-05-20 friday easter 4 bernardine-of-siena class-3 white
+2011-05-21 saturday easter 4 ef-easter-4-saturday class-4 white
+2011-05-22 sunday easter 5 ef-easter-sunday-5 class-2 white
+2011-05-23 monday easter 5 ef-easter-5-monday class-4 white
+2011-05-24 tuesday easter 5 ef-easter-5-tuesday class-4 white
+2011-05-25 wednesday easter 5 gregory-vii class-3 white +urban-pope-and-martyr
+2011-05-26 thursday easter 5 philip-neri class-3 white +eleutherius
+2011-05-27 friday easter 5 bede-the-venerable class-3 white +john-i
+2011-05-28 saturday easter 5 augustine-of-canterbury class-3 white
+2011-05-29 sunday easter 6 ef-easter-sunday-6 class-2 white +mary-magdalene-de-pazzi
+2011-05-30 monday easter 6 ef-easter-6-monday class-4 white +felix-i
+2011-05-31 tuesday easter 6 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2011-06-01 wednesday easter - ef-ascension-vigil class-2 white +angela-merici
+2011-06-02 thursday easter - ef-ascension class-1 white +sts-marcellinus-peter-erasmus
+2011-06-03 friday easter 6 ef-easter-6-friday class-4 white
+2011-06-04 saturday easter 6 francis-caracciolo class-3 white
+2011-06-05 sunday easter 7 ef-easter-sunday-7 class-2 white +boniface
+2011-06-06 monday easter 7 norbert class-3 white
+2011-06-07 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2011-06-08 wednesday easter 7 ef-easter-7-wednesday class-4 white
+2011-06-09 thursday easter 7 ef-easter-7-thursday class-4 white +sts-primus-felicianus
+2011-06-10 friday easter 7 margaret-of-scotland class-3 white
+2011-06-11 saturday easter - ef-pentecost-vigil class-1 red +barnabas
+2011-06-12 sunday easter - ef-pentecost class-1 red +john-of-san-fecundo +basilidus
+2011-06-13 monday easter 8 ef-easter-8-monday class-1 red +anthony-of-padua
+2011-06-14 tuesday easter 8 ef-easter-8-tuesday class-1 red +basil-the-great
+2011-06-15 wednesday easter 8 ef-easter-8-wednesday class-1 red +vitus
+2011-06-16 thursday easter 8 ef-easter-8-thursday class-1 red
+2011-06-17 friday easter 8 ef-easter-8-friday class-1 red +gregory-barbarigo
+2011-06-18 saturday easter 8 ef-easter-8-saturday class-1 red +ephrem-of-syria +marcus-and-marcellianus
+2011-06-19 sunday time-after-pentecost 1 ef-trinity class-1 white +julia-of-falconieri +sts-gervasius-and-protasius
+2011-06-20 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green +silverius
+2011-06-21 tuesday time-after-pentecost 1 aloysius-gongzaga class-3 white
+2011-06-22 wednesday time-after-pentecost 1 paulinus-of-nola class-3 white
+2011-06-23 thursday time-after-pentecost - ef-corpus-christi class-1 white +vigil-of-the-nativity-of-st-john-the-baptist
+2011-06-24 friday time-after-pentecost 1 nativity-of-st-john-the-baptist class-1 white
+2011-06-25 saturday time-after-pentecost 1 william class-3 white
+2011-06-26 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +sts-john-paul
+2011-06-27 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2011-06-28 tuesday time-after-pentecost 2 vigil-of-sts-peter-paul class-2 violet
+2011-06-29 wednesday time-after-pentecost 2 sts-peter-paul class-1 red
+2011-06-30 thursday time-after-pentecost 2 in-commemoratione-sancti-pauli-apostoli class-3 red
+2011-07-01 friday time-after-pentecost - ef-sacred-heart class-1 white
+2011-07-02 saturday time-after-pentecost 2 precious-blood-of-our-lord-jesus-christ class-1 red +visitation-of-the-blessed-virgin-mary +processus-and-martinian
+2011-07-03 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +irenaeus
+2011-07-04 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green
+2011-07-05 tuesday time-after-pentecost 3 anthony-mary-zaccariah class-3 white
+2011-07-06 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green
+2011-07-07 thursday time-after-pentecost 3 sts-cyril-methodius class-3 white
+2011-07-08 friday time-after-pentecost 3 elizabeth-of-portugal class-3 white
+2011-07-09 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2011-07-10 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +seven-holy-brothers-and-sts-rufina-secunda
+2011-07-11 monday time-after-pentecost 4 ef-time-after-pentecost-4-monday class-4 green +pius-i
+2011-07-12 tuesday time-after-pentecost 4 john-gualbert class-3 red +naboris-et-felicis
+2011-07-13 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2011-07-14 thursday time-after-pentecost 4 bonaventure class-3 white
+2011-07-15 friday time-after-pentecost 4 henry-the-emperor class-3 white
+2011-07-16 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green +our-lady-of-mt-carmel
+2011-07-17 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +alexis
+2011-07-18 monday time-after-pentecost 5 camillus-de-lellis class-3 red +symphorosa-and-sons
+2011-07-19 tuesday time-after-pentecost 5 vincent-de-paul class-3 white
+2011-07-20 wednesday time-after-pentecost 5 jerome-emiliani class-3 red +margaret
+2011-07-21 thursday time-after-pentecost 5 laurence-of-brindisi class-3 white +praxedis-virginis
+2011-07-22 friday time-after-pentecost 5 mary-magdalene class-3 white
+2011-07-23 saturday time-after-pentecost 5 apollinaris class-3 white +liborii
+2011-07-24 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +christina
+2011-07-25 monday time-after-pentecost 6 james-the-greater class-2 red +christopher
+2011-07-26 tuesday time-after-pentecost 6 anne-mother-of-the-blessed-virgin class-2 white
+2011-07-27 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +pantaleon
+2011-07-28 thursday time-after-pentecost 6 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2011-07-29 friday time-after-pentecost 6 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2011-07-30 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +sts-abdon-sennen
+2011-07-31 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +ignatius-loyola
+2011-08-01 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +holy-machabees
+2011-08-02 tuesday time-after-pentecost 7 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2011-08-03 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green
+2011-08-04 thursday time-after-pentecost 7 dominic class-3 white
+2011-08-05 friday time-after-pentecost 7 dedication-of-the-basilica-of-st-mary-major class-3 white
+2011-08-06 saturday time-after-pentecost 7 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2011-08-07 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +cajetan +donatus
+2011-08-08 monday time-after-pentecost 8 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2011-08-09 tuesday time-after-pentecost 8 vigil-of-st-lawrence class-3 red +romanus
+2011-08-10 wednesday time-after-pentecost 8 lawrence class-2 red
+2011-08-11 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +sts-tiburtius-susanna
+2011-08-12 friday time-after-pentecost 8 clare class-3 white
+2011-08-13 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +sts-hippolytus-cassian
+2011-08-14 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +vigil-of-the-assumption
+2011-08-15 monday time-after-pentecost 9 assumption-of-the-blessed-virgin-mary class-1 white
+2011-08-16 tuesday time-after-pentecost 9 joachim-father-of-the-blessed-virgin class-2 white
+2011-08-17 wednesday time-after-pentecost 9 hyacinth class-3 white
+2011-08-18 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +agapitus
+2011-08-19 friday time-after-pentecost 9 john-eudes class-3 white
+2011-08-20 saturday time-after-pentecost 9 bernard-of-clairvaux class-3 white
+2011-08-21 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +jane-frances-de-chantal
+2011-08-22 monday time-after-pentecost 10 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2011-08-23 tuesday time-after-pentecost 10 philip-benizi class-3 white
+2011-08-24 wednesday time-after-pentecost 10 bartholomew class-2 red
+2011-08-25 thursday time-after-pentecost 10 louis-ix class-3 white
+2011-08-26 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +zephyrinus
+2011-08-27 saturday time-after-pentecost 10 joseph-calasance class-3 white
+2011-08-28 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +augustine +hermes
+2011-08-29 monday time-after-pentecost 11 beheading-of-st-john-the-baptist class-3 red +sabina
+2011-08-30 tuesday time-after-pentecost 11 rose-of-lima class-3 red +sts-felix-and-adauctus
+2011-08-31 wednesday time-after-pentecost 11 raymond-nonnatus class-3 white
+2011-09-01 thursday time-after-pentecost 11 ef-time-after-pentecost-11-thursday class-4 green +giles +twelve-holy-brothers-martyrs
+2011-09-02 friday time-after-pentecost 11 stephen-of-hungary class-3 white
+2011-09-03 saturday time-after-pentecost 11 pius-x class-3 white
+2011-09-04 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green
+2011-09-05 monday time-after-pentecost 12 lawrence-justinian class-3 white
+2011-09-06 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green
+2011-09-07 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green
+2011-09-08 thursday time-after-pentecost 12 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2011-09-09 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green +gorgonius
+2011-09-10 saturday time-after-pentecost 12 nicholas-of-tolentino class-3 white
+2011-09-11 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +sts-protus-hyacinth
+2011-09-12 monday time-after-pentecost 13 most-holy-name-of-mary class-3 white
+2011-09-13 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green
+2011-09-14 wednesday time-after-pentecost 13 exaltation-of-the-holy-cross class-2 red
+2011-09-15 thursday time-after-pentecost 13 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2011-09-16 friday time-after-pentecost 13 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2011-09-17 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +stigmata-of-st-francis
+2011-09-18 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +joseph-of-cupertino
+2011-09-19 monday time-after-pentecost 14 januarius-companions class-3 red
+2011-09-20 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +sts-eustace-companions
+2011-09-21 wednesday time-after-pentecost 14 ef-september-ember-wed class-2 violet +matthew
+2011-09-22 thursday time-after-pentecost 14 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2011-09-23 friday time-after-pentecost 14 ef-september-ember-fri class-2 violet +linus +thecla
+2011-09-24 saturday time-after-pentecost 14 ef-september-ember-sat class-2 violet +our-lady-of-ransom
+2011-09-25 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green
+2011-09-26 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green +sts-cyprian-justina
+2011-09-27 tuesday time-after-pentecost 15 sts-cosmas-damian class-3 red
+2011-09-28 wednesday time-after-pentecost 15 wenceslaus class-3 red
+2011-09-29 thursday time-after-pentecost 15 dedication-of-st-michael-the-archangel class-1 white
+2011-09-30 friday time-after-pentecost 15 jerome class-3 white
+2011-10-01 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +remigius
+2011-10-02 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +holy-guardian-angels
+2011-10-03 monday time-after-pentecost 16 theresa-of-the-infant-jesus class-3 white
+2011-10-04 tuesday time-after-pentecost 16 francis-of-assisi class-3 white
+2011-10-05 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green +placid-companions
+2011-10-06 thursday time-after-pentecost 16 bruno class-3 white
+2011-10-07 friday time-after-pentecost 16 our-lady-of-the-rosary class-2 white +mark-i
+2011-10-08 saturday time-after-pentecost 16 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2011-10-09 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +john-leonardi +dionysius-and-companions
+2011-10-10 monday time-after-pentecost 17 francis-borgia class-3 white
+2011-10-11 tuesday time-after-pentecost 17 maternity-of-the-blessed-virgin-mary class-2 white
+2011-10-12 wednesday time-after-pentecost 17 ef-time-after-pentecost-17-wednesday class-4 green
+2011-10-13 thursday time-after-pentecost 17 edward class-3 white
+2011-10-14 friday time-after-pentecost 17 callistus-i class-3 red
+2011-10-15 saturday time-after-pentecost 17 teresa-of-avila class-3 white
+2011-10-16 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +hedwig
+2011-10-17 monday time-after-pentecost 18 margaret-mary-alacoque class-3 white
+2011-10-18 tuesday time-after-pentecost 18 luke-the-evangelist class-2 red
+2011-10-19 wednesday time-after-pentecost 18 peter-of-alcantara class-3 white
+2011-10-20 thursday time-after-pentecost 18 john-cantius class-3 white
+2011-10-21 friday time-after-pentecost 18 ef-time-after-pentecost-18-friday class-4 green +hilarion +ursula-and-companions
+2011-10-22 saturday time-after-pentecost 18 ef-time-after-pentecost-18-saturday class-4 green
+2011-10-23 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +anthony-mary-claret
+2011-10-24 monday time-after-pentecost 19 raphael-the-archangel class-3 white
+2011-10-25 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green +sts-chrysanthus-daria
+2011-10-26 wednesday time-after-pentecost 19 ef-time-after-pentecost-19-wednesday class-4 green
+2011-10-27 thursday time-after-pentecost 19 ef-time-after-pentecost-19-thursday class-4 green
+2011-10-28 friday time-after-pentecost 19 sts-simon-jude class-2 red
+2011-10-29 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green
+2011-10-30 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2011-10-31 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green
+2011-11-01 tuesday time-after-pentecost 20 all-saints class-1 white
+2011-11-02 wednesday time-after-pentecost 20 commemoration-of-all-souls class-1 black
+2011-11-03 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2011-11-04 friday time-after-pentecost 20 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2011-11-05 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2011-11-06 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2011-11-07 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2011-11-08 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green +four-holy-crowned-martyrs
+2011-11-09 wednesday time-after-pentecost 21 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2011-11-10 thursday time-after-pentecost 21 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2011-11-11 friday time-after-pentecost 21 martin-of-tours class-3 white +menna
+2011-11-12 saturday time-after-pentecost 21 martin-i class-3 red
+2011-11-13 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +didacus
+2011-11-14 monday time-after-pentecost 22 josaphat class-3 white
+2011-11-15 tuesday time-after-pentecost 22 albert-the-great class-3 white
+2011-11-16 wednesday time-after-pentecost 22 gertrude-the-great class-3 white
+2011-11-17 thursday time-after-pentecost 22 gregory-the-wonderworker class-3 white
+2011-11-18 friday time-after-pentecost 22 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2011-11-19 saturday time-after-pentecost 22 elizabeth-of-hungary class-3 white +pontian
+2011-11-20 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +felix-of-valois
+2011-11-21 monday time-after-pentecost 23 presentation-of-the-blessed-virgin-mary class-3 white
+2011-11-22 tuesday time-after-pentecost 23 cecilia class-3 red
+2011-11-23 wednesday time-after-pentecost 23 clement-i class-3 red +felicity
+2011-11-24 thursday time-after-pentecost 23 john-of-the-cross class-3 white +chrysogonus
+2011-11-25 friday time-after-pentecost 23 catherine-of-alexandria class-3 red
+2011-11-26 saturday time-after-pentecost 23 sylvester class-3 white +peter-of-alexandria
+2011-11-27 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2011-11-28 monday advent 1 ef-advent-1-monday class-3 violet
+2011-11-29 tuesday advent 1 ef-advent-1-tuesday class-3 violet +saturninus
+2011-11-30 wednesday advent 1 andrew class-2 red
+2011-12-01 thursday advent 1 ef-advent-1-thursday class-3 violet
+2011-12-02 friday advent 1 vivian class-3 red
+2011-12-03 saturday advent 1 francis-xavier class-3 white
+2011-12-04 sunday advent 2 ef-advent-sunday-2 class-2 violet +peter-chrysologus
+2011-12-05 monday advent 2 ef-advent-2-monday class-3 violet +sabbas
+2011-12-06 tuesday advent 2 nicholas class-3 white
+2011-12-07 wednesday advent 2 ambrose class-3 white
+2011-12-08 thursday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2011-12-09 friday advent 2 ef-advent-2-friday class-3 violet
+2011-12-10 saturday advent 2 ef-advent-2-saturday class-3 violet +melchiades
+2011-12-11 sunday advent 3 ef-advent-sunday-3 class-2 violet +damasus-i
+2011-12-12 monday advent 3 ef-advent-3-monday class-3 violet
+2011-12-13 tuesday advent 3 lucy class-3 red
+2011-12-14 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2011-12-15 thursday advent 3 ef-advent-3-thursday class-3 violet
+2011-12-16 friday advent 3 ef-advent-ember-fri class-2 violet +eusebius
+2011-12-17 saturday advent 3 ef-advent-ember-sat class-2 violet
+2011-12-18 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2011-12-19 monday advent 4 ef-advent-4-monday class-3 violet
+2011-12-20 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2011-12-21 wednesday advent 4 thomas class-2 red
+2011-12-22 thursday advent 4 ef-advent-4-thursday class-3 violet
+2011-12-23 friday advent 4 ef-advent-4-friday class-3 violet
+2011-12-24 saturday advent 4 vigil-of-christmas class-1 violet
+2011-12-25 sunday christmas - ef-nativity class-1 white
+2011-12-26 monday christmas - stephen class-2 red
+2011-12-27 tuesday christmas - john-the-evangelist class-2 white
+2011-12-28 wednesday christmas - holy-innocents class-2 red
+2011-12-29 thursday christmas - ef-christmas-0-thursday class-4 white +thomas-becket
+2011-12-30 friday christmas - ef-christmas-0-friday class-4 white
+2011-12-31 saturday christmas - ef-christmas-0-saturday class-4 white +silvester
+2012-01-01 sunday christmas - ef-circumcision class-1 white
+2012-01-02 monday christmas - ef-christmas-0-monday class-4 white
+2012-01-03 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2012-01-04 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2012-01-05 thursday christmas - ef-christmas-0-thursday class-4 white +telesphorus-pope-and-martyr
+2012-01-06 friday time-after-epiphany - ef-epiphany class-1 white
+2012-01-07 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2012-01-08 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2012-01-09 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2012-01-10 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2012-01-11 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green +hyginus-pope-and-martyr
+2012-01-12 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2012-01-13 friday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2012-01-14 saturday time-after-epiphany 2 hilary class-3 white +felicis
+2012-01-15 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +paul-the-first-hermit +maur-abbot
+2012-01-16 monday time-after-epiphany 2 marcellus-i class-3 red
+2012-01-17 tuesday time-after-epiphany 2 anthony class-3 white
+2012-01-18 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +prisca
+2012-01-19 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2012-01-20 friday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2012-01-21 saturday time-after-epiphany 3 agnes class-3 red
+2012-01-22 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-vincent-anastasius
+2012-01-23 monday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2012-01-24 tuesday time-after-epiphany 3 timothy class-3 red
+2012-01-25 wednesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2012-01-26 thursday time-after-epiphany 3 polycarp class-3 red
+2012-01-27 friday time-after-epiphany 4 john-chrysostom class-3 white
+2012-01-28 saturday time-after-epiphany 4 peter-nolasco class-3 white
+2012-01-29 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +francis-de-sales
+2012-01-30 monday time-after-epiphany 4 martina class-3 red
+2012-01-31 tuesday time-after-epiphany 4 john-bosco class-3 white
+2012-02-01 wednesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2012-02-02 thursday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2012-02-03 friday time-after-epiphany 5 ef-time-after-epiphany-5-friday class-4 green +blaise
+2012-02-04 saturday time-after-epiphany 5 andrew-corsini class-3 white
+2012-02-05 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +agatha
+2012-02-06 monday septuagesima 1 titus class-3 white +dorothy
+2012-02-07 tuesday septuagesima 1 romuald class-3 white
+2012-02-08 wednesday septuagesima 1 john-of-matha class-3 white
+2012-02-09 thursday septuagesima 1 cyril-of-alexandria class-3 white +appollonia
+2012-02-10 friday septuagesima 1 scholastica class-3 white
+2012-02-11 saturday septuagesima 1 our-lady-of-lourdes class-3 white
+2012-02-12 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +seven-holy-servite-founders
+2012-02-13 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2012-02-14 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +valentine
+2012-02-15 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet +sts-faustinus-jovita
+2012-02-16 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2012-02-17 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2012-02-18 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +simeon
+2012-02-19 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2012-02-20 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2012-02-21 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2012-02-22 wednesday lent - ef-ash-wednesday class-1 violet +chair-of-st-peter +paul
+2012-02-23 thursday lent - ef-lent-after-ashes-thursday class-3 violet +peter-damien
+2012-02-24 friday lent - matthias class-2 red
+2012-02-25 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2012-02-26 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2012-02-27 monday lent 1 ef-lent-1-monday class-3 violet +gabriel-of-our-lady-of-sorrows
+2012-02-28 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2012-02-29 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2012-03-01 thursday lent 1 ef-lent-1-thursday class-3 violet
+2012-03-02 friday lent 1 ef-lent-1-friday class-3 violet
+2012-03-03 saturday lent 1 ef-lent-1-saturday class-3 violet
+2012-03-04 sunday lent 2 ef-lent-sunday-2 class-2 violet +casimir +lucius
+2012-03-05 monday lent 2 ef-lent-2-monday class-3 violet
+2012-03-06 tuesday lent 2 ef-lent-2-tuesday class-3 violet +sts-felicitas-perpetua
+2012-03-07 wednesday lent 2 ef-lent-2-wednesday class-3 violet +thomas-aquinas
+2012-03-08 thursday lent 2 ef-lent-2-thursday class-3 violet +john-of-god
+2012-03-09 friday lent 2 ef-lent-2-friday class-3 violet +frances-rome
+2012-03-10 saturday lent 2 ef-lent-2-saturday class-3 violet +forty-holy-martyrs-of-sebaste
+2012-03-11 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2012-03-12 monday lent 3 ef-lent-3-monday class-3 violet +gregory-the-great
+2012-03-13 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2012-03-14 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2012-03-15 thursday lent 3 ef-lent-3-thursday class-3 violet
+2012-03-16 friday lent 3 ef-lent-3-friday class-3 violet
+2012-03-17 saturday lent 3 ef-lent-3-saturday class-3 violet +patrick
+2012-03-18 sunday lent 4 ef-lent-sunday-4 class-2 violet +cyril-of-jerusalem
+2012-03-19 monday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2012-03-20 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2012-03-21 wednesday lent 4 ef-lent-4-wednesday class-3 violet +benedict
+2012-03-22 thursday lent 4 ef-lent-4-thursday class-3 violet
+2012-03-23 friday lent 4 ef-lent-4-friday class-3 violet
+2012-03-24 saturday lent 4 ef-lent-4-saturday class-3 violet +gabriel-the-archangel
+2012-03-25 sunday passiontide 1 ef-passion-sunday class-1 violet
+2012-03-26 monday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2012-03-27 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +john-damascene
+2012-03-28 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +john-of-capistrano
+2012-03-29 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2012-03-30 friday passiontide - ef-passiontide-0-friday class-3 violet
+2012-03-31 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2012-04-01 sunday passiontide 2 ef-palm-sunday class-1 violet
+2012-04-02 monday passiontide - ef-passiontide-0-monday class-1 violet +francis-of-paola
+2012-04-03 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2012-04-04 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +isidore-of-seville
+2012-04-05 thursday passiontide - ef-passiontide-0-thursday class-1 violet +vincent-ferrer
+2012-04-06 friday passiontide - ef-passiontide-0-friday class-1 violet
+2012-04-07 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2012-04-08 sunday easter 1 ef-easter-sunday class-1 white
+2012-04-09 monday easter 1 ef-easter-1-monday class-1 white
+2012-04-10 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2012-04-11 wednesday easter 1 ef-easter-1-wednesday class-1 white +leo-the-great
+2012-04-12 thursday easter 1 ef-easter-1-thursday class-1 white
+2012-04-13 friday easter 1 ef-easter-1-friday class-1 white +hermenegild
+2012-04-14 saturday easter 1 ef-easter-1-saturday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2012-04-15 sunday easter 2 ef-low-sunday class-1 white
+2012-04-16 monday easter 2 ef-easter-2-monday class-4 white
+2012-04-17 tuesday easter 2 ef-easter-2-tuesday class-4 white +anicetus
+2012-04-18 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2012-04-19 thursday easter 2 ef-easter-2-thursday class-4 white
+2012-04-20 friday easter 2 ef-easter-2-friday class-4 white
+2012-04-21 saturday easter 2 anselm class-3 white
+2012-04-22 sunday easter 3 ef-easter-sunday-3 class-2 white +sts-soter-caius
+2012-04-23 monday easter 3 ef-easter-3-monday class-4 white +george
+2012-04-24 tuesday easter 3 fidelis-of-sigmaringen class-3 red
+2012-04-25 wednesday easter 3 mark class-2 red
+2012-04-26 thursday easter 3 sts-cletus-marcellinus class-3 red
+2012-04-27 friday easter 3 peter-canisius class-3 white
+2012-04-28 saturday easter 3 paul-of-the-cross class-3 white
+2012-04-29 sunday easter 4 ef-easter-sunday-4 class-2 white +peter-of-verona
+2012-04-30 monday easter 4 catherine-of-siena class-3 white
+2012-05-01 tuesday easter 4 joseph-the-workman class-1 white
+2012-05-02 wednesday easter 4 athanasius class-3 white
+2012-05-03 thursday easter 4 ef-easter-4-thursday class-4 white +sts-alexander-companions
+2012-05-04 friday easter 4 monica class-3 white
+2012-05-05 saturday easter 4 pius-v class-3 white
+2012-05-06 sunday easter 5 ef-easter-sunday-5 class-2 white
+2012-05-07 monday easter 5 stanislaus class-3 red
+2012-05-08 tuesday easter 5 ef-easter-5-tuesday class-4 white
+2012-05-09 wednesday easter 5 gregory-of-nazianzen class-3 white
+2012-05-10 thursday easter 5 antoninus class-3 white +gordiano-and-epimacho
+2012-05-11 friday easter 5 sts-philip-james class-2 red
+2012-05-12 saturday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2012-05-13 sunday easter 6 ef-easter-sunday-6 class-2 white +robert-bellarmine
+2012-05-14 monday easter 6 ef-easter-6-monday class-4 white
+2012-05-15 tuesday easter 6 john-baptist-de-la-salle class-3 white
+2012-05-16 wednesday easter - ef-ascension-vigil class-2 white +ubaldus
+2012-05-17 thursday easter - ef-ascension class-1 white +paschal-baylon
+2012-05-18 friday easter 6 venantius class-3 red
+2012-05-19 saturday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2012-05-20 sunday easter 7 ef-easter-sunday-7 class-2 white +bernardine-of-siena
+2012-05-21 monday easter 7 ef-easter-7-monday class-4 white
+2012-05-22 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2012-05-23 wednesday easter 7 ef-easter-7-wednesday class-4 white
+2012-05-24 thursday easter 7 ef-easter-7-thursday class-4 white
+2012-05-25 friday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2012-05-26 saturday easter - ef-pentecost-vigil class-1 red +philip-neri +eleutherius
+2012-05-27 sunday easter - ef-pentecost class-1 red +bede-the-venerable +john-i
+2012-05-28 monday easter 8 ef-easter-8-monday class-1 red +augustine-of-canterbury
+2012-05-29 tuesday easter 8 ef-easter-8-tuesday class-1 red +mary-magdalene-de-pazzi
+2012-05-30 wednesday easter 8 ef-easter-8-wednesday class-1 red +felix-i
+2012-05-31 thursday easter 8 ef-easter-8-thursday class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2012-06-01 friday easter 8 ef-easter-8-friday class-1 red +angela-merici
+2012-06-02 saturday easter 8 ef-easter-8-saturday class-1 red +sts-marcellinus-peter-erasmus
+2012-06-03 sunday time-after-pentecost 1 ef-trinity class-1 white
+2012-06-04 monday time-after-pentecost 1 francis-caracciolo class-3 white
+2012-06-05 tuesday time-after-pentecost 1 boniface class-3 red
+2012-06-06 wednesday time-after-pentecost 1 norbert class-3 white
+2012-06-07 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2012-06-08 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green
+2012-06-09 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green +sts-primus-felicianus
+2012-06-10 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +margaret-of-scotland
+2012-06-11 monday time-after-pentecost 2 barnabas class-3 red
+2012-06-12 tuesday time-after-pentecost 2 john-of-san-fecundo class-3 red +basilidus
+2012-06-13 wednesday time-after-pentecost 2 anthony-of-padua class-3 white
+2012-06-14 thursday time-after-pentecost 2 basil-the-great class-3 white
+2012-06-15 friday time-after-pentecost - ef-sacred-heart class-1 white +vitus
+2012-06-16 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green
+2012-06-17 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +gregory-barbarigo
+2012-06-18 monday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2012-06-19 tuesday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2012-06-20 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green +silverius
+2012-06-21 thursday time-after-pentecost 3 aloysius-gongzaga class-3 white
+2012-06-22 friday time-after-pentecost 3 paulinus-of-nola class-3 white
+2012-06-23 saturday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2012-06-24 sunday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2012-06-25 monday time-after-pentecost 4 william class-3 white
+2012-06-26 tuesday time-after-pentecost 4 sts-john-paul class-3 red
+2012-06-27 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2012-06-28 thursday time-after-pentecost 4 vigil-of-sts-peter-paul class-2 violet
+2012-06-29 friday time-after-pentecost 4 sts-peter-paul class-1 red
+2012-06-30 saturday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2012-07-01 sunday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2012-07-02 monday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2012-07-03 tuesday time-after-pentecost 5 irenaeus class-3 red
+2012-07-04 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2012-07-05 thursday time-after-pentecost 5 anthony-mary-zaccariah class-3 white
+2012-07-06 friday time-after-pentecost 5 ef-time-after-pentecost-5-friday class-4 green
+2012-07-07 saturday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2012-07-08 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +elizabeth-of-portugal
+2012-07-09 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2012-07-10 tuesday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2012-07-11 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +pius-i
+2012-07-12 thursday time-after-pentecost 6 john-gualbert class-3 red +naboris-et-felicis
+2012-07-13 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green
+2012-07-14 saturday time-after-pentecost 6 bonaventure class-3 white
+2012-07-15 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +henry-the-emperor
+2012-07-16 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +our-lady-of-mt-carmel
+2012-07-17 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green +alexis
+2012-07-18 wednesday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2012-07-19 thursday time-after-pentecost 7 vincent-de-paul class-3 white
+2012-07-20 friday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2012-07-21 saturday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2012-07-22 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +mary-magdalene
+2012-07-23 monday time-after-pentecost 8 apollinaris class-3 white +liborii
+2012-07-24 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +christina
+2012-07-25 wednesday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2012-07-26 thursday time-after-pentecost 8 anne-mother-of-the-blessed-virgin class-2 white
+2012-07-27 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +pantaleon
+2012-07-28 saturday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2012-07-29 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +martha +felicis-simplicii-faustini-et-beatricis
+2012-07-30 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +sts-abdon-sennen
+2012-07-31 tuesday time-after-pentecost 9 ignatius-loyola class-3 white
+2012-08-01 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +holy-machabees
+2012-08-02 thursday time-after-pentecost 9 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2012-08-03 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green
+2012-08-04 saturday time-after-pentecost 9 dominic class-3 white
+2012-08-05 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +dedication-of-the-basilica-of-st-mary-major
+2012-08-06 monday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2012-08-07 tuesday time-after-pentecost 10 cajetan class-3 white +donatus
+2012-08-08 wednesday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2012-08-09 thursday time-after-pentecost 10 vigil-of-st-lawrence class-3 red +romanus
+2012-08-10 friday time-after-pentecost 10 lawrence class-2 red
+2012-08-11 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green +sts-tiburtius-susanna
+2012-08-12 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +clare
+2012-08-13 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +sts-hippolytus-cassian
+2012-08-14 tuesday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2012-08-15 wednesday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2012-08-16 thursday time-after-pentecost 11 joachim-father-of-the-blessed-virgin class-2 white
+2012-08-17 friday time-after-pentecost 11 hyacinth class-3 white
+2012-08-18 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green +agapitus
+2012-08-19 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +john-eudes
+2012-08-20 monday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2012-08-21 tuesday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2012-08-22 wednesday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2012-08-23 thursday time-after-pentecost 12 philip-benizi class-3 white
+2012-08-24 friday time-after-pentecost 12 bartholomew class-2 red
+2012-08-25 saturday time-after-pentecost 12 louis-ix class-3 white
+2012-08-26 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +zephyrinus
+2012-08-27 monday time-after-pentecost 13 joseph-calasance class-3 white
+2012-08-28 tuesday time-after-pentecost 13 augustine class-3 red +hermes
+2012-08-29 wednesday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2012-08-30 thursday time-after-pentecost 13 rose-of-lima class-3 red +sts-felix-and-adauctus
+2012-08-31 friday time-after-pentecost 13 raymond-nonnatus class-3 white
+2012-09-01 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +giles +twelve-holy-brothers-martyrs
+2012-09-02 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +stephen-of-hungary
+2012-09-03 monday time-after-pentecost 14 pius-x class-3 white
+2012-09-04 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green
+2012-09-05 wednesday time-after-pentecost 14 lawrence-justinian class-3 white
+2012-09-06 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green
+2012-09-07 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green
+2012-09-08 saturday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2012-09-09 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +gorgonius
+2012-09-10 monday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2012-09-11 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +sts-protus-hyacinth
+2012-09-12 wednesday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2012-09-13 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green
+2012-09-14 friday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2012-09-15 saturday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2012-09-16 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +sts-cornelius-cyprian +sts-euphemia-lucy-and-geminianus
+2012-09-17 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green +stigmata-of-st-francis
+2012-09-18 tuesday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2012-09-19 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +januarius-companions
+2012-09-20 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +sts-eustace-companions
+2012-09-21 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +matthew
+2012-09-22 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2012-09-23 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +linus +thecla
+2012-09-24 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +our-lady-of-ransom
+2012-09-25 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green
+2012-09-26 wednesday time-after-pentecost 17 ef-time-after-pentecost-17-wednesday class-4 green +sts-cyprian-justina
+2012-09-27 thursday time-after-pentecost 17 sts-cosmas-damian class-3 red
+2012-09-28 friday time-after-pentecost 17 wenceslaus class-3 red
+2012-09-29 saturday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2012-09-30 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +jerome
+2012-10-01 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +remigius
+2012-10-02 tuesday time-after-pentecost 18 holy-guardian-angels class-3 white
+2012-10-03 wednesday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2012-10-04 thursday time-after-pentecost 18 francis-of-assisi class-3 white
+2012-10-05 friday time-after-pentecost 18 ef-time-after-pentecost-18-friday class-4 green +placid-companions
+2012-10-06 saturday time-after-pentecost 18 bruno class-3 white
+2012-10-07 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +our-lady-of-the-rosary +mark-i
+2012-10-08 monday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2012-10-09 tuesday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2012-10-10 wednesday time-after-pentecost 19 francis-borgia class-3 white
+2012-10-11 thursday time-after-pentecost 19 maternity-of-the-blessed-virgin-mary class-2 white
+2012-10-12 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green
+2012-10-13 saturday time-after-pentecost 19 edward class-3 white
+2012-10-14 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +callistus-i
+2012-10-15 monday time-after-pentecost 20 teresa-of-avila class-3 white
+2012-10-16 tuesday time-after-pentecost 20 hedwig class-3 white
+2012-10-17 wednesday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2012-10-18 thursday time-after-pentecost 20 luke-the-evangelist class-2 red
+2012-10-19 friday time-after-pentecost 20 peter-of-alcantara class-3 white
+2012-10-20 saturday time-after-pentecost 20 john-cantius class-3 white
+2012-10-21 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +hilarion +ursula-and-companions
+2012-10-22 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2012-10-23 tuesday time-after-pentecost 21 anthony-mary-claret class-3 white
+2012-10-24 wednesday time-after-pentecost 21 raphael-the-archangel class-3 white
+2012-10-25 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green +sts-chrysanthus-daria
+2012-10-26 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2012-10-27 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2012-10-28 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-simon-jude
+2012-10-29 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2012-10-30 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2012-10-31 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green
+2012-11-01 thursday time-after-pentecost 22 all-saints class-1 white
+2012-11-02 friday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2012-11-03 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2012-11-04 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +charles-borromeo +sts-vitalis-and-agricola-martyrs
+2012-11-05 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2012-11-06 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2012-11-07 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2012-11-08 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green +four-holy-crowned-martyrs
+2012-11-09 friday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2012-11-10 saturday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2012-11-11 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-of-tours +menna
+2012-11-12 monday time-after-pentecost 24 martin-i class-3 red
+2012-11-13 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green +didacus
+2012-11-14 wednesday time-after-pentecost 24 josaphat class-3 white
+2012-11-15 thursday time-after-pentecost 24 albert-the-great class-3 white
+2012-11-16 friday time-after-pentecost 24 gertrude-the-great class-3 white
+2012-11-17 saturday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2012-11-18 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +dedication-of-the-basilicas-of-sts-peter-paul
+2012-11-19 monday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2012-11-20 tuesday time-after-pentecost 25 felix-of-valois class-3 white
+2012-11-21 wednesday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2012-11-22 thursday time-after-pentecost 25 cecilia class-3 red
+2012-11-23 friday time-after-pentecost 25 clement-i class-3 red +felicity
+2012-11-24 saturday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2012-11-25 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +catherine-of-alexandria
+2012-11-26 monday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2012-11-27 tuesday time-after-pentecost 26 ef-time-after-pentecost-26-tuesday class-4 green
+2012-11-28 wednesday time-after-pentecost 26 ef-time-after-pentecost-26-wednesday class-4 green
+2012-11-29 thursday time-after-pentecost 26 ef-time-after-pentecost-26-thursday class-4 green +saturninus
+2012-11-30 friday time-after-pentecost 26 andrew class-2 red
+2012-12-01 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green
+2012-12-02 sunday advent 1 ef-advent-sunday-1 class-1 violet +vivian
+2012-12-03 monday advent 1 francis-xavier class-3 white
+2012-12-04 tuesday advent 1 peter-chrysologus class-3 white
+2012-12-05 wednesday advent 1 ef-advent-1-wednesday class-3 violet +sabbas
+2012-12-06 thursday advent 1 nicholas class-3 white
+2012-12-07 friday advent 1 ambrose class-3 white
+2012-12-08 saturday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2012-12-09 sunday advent 2 ef-advent-sunday-2 class-2 violet
+2012-12-10 monday advent 2 ef-advent-2-monday class-3 violet +melchiades
+2012-12-11 tuesday advent 2 damasus-i class-3 white
+2012-12-12 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2012-12-13 thursday advent 2 lucy class-3 red
+2012-12-14 friday advent 2 ef-advent-2-friday class-3 violet
+2012-12-15 saturday advent 2 ef-advent-2-saturday class-3 violet
+2012-12-16 sunday advent 3 ef-advent-sunday-3 class-2 violet +eusebius
+2012-12-17 monday advent 3 ef-advent-3-monday class-3 violet
+2012-12-18 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2012-12-19 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2012-12-20 thursday advent 3 ef-advent-3-thursday class-3 violet
+2012-12-21 friday advent 3 ef-advent-ember-fri class-2 violet +thomas
+2012-12-22 saturday advent 3 ef-advent-ember-sat class-2 violet
+2012-12-23 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2012-12-24 monday advent 4 vigil-of-christmas class-1 violet
+2012-12-25 tuesday christmas - ef-nativity class-1 white
+2012-12-26 wednesday christmas - stephen class-2 red
+2012-12-27 thursday christmas - john-the-evangelist class-2 white
+2012-12-28 friday christmas - holy-innocents class-2 red
+2012-12-29 saturday christmas - ef-christmas-0-saturday class-4 white +thomas-becket
+2012-12-30 sunday christmas - ef-christmas-sunday-0 class-2 white
+2012-12-31 monday christmas - ef-christmas-0-monday class-4 white +silvester
+2013-01-01 tuesday christmas - ef-circumcision class-1 white
+2013-01-02 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2013-01-03 thursday christmas - ef-christmas-0-thursday class-4 white
+2013-01-04 friday christmas - ef-christmas-0-friday class-4 white
+2013-01-05 saturday christmas - ef-christmas-0-saturday class-4 white +telesphorus-pope-and-martyr
+2013-01-06 sunday time-after-epiphany - ef-epiphany class-1 white
+2013-01-07 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2013-01-08 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2013-01-09 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2013-01-10 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2013-01-11 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green +hyginus-pope-and-martyr
+2013-01-12 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2013-01-13 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +commemoration-of-the-baptism-of-the-lord
+2013-01-14 monday time-after-epiphany 2 hilary class-3 white +felicis
+2013-01-15 tuesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2013-01-16 wednesday time-after-epiphany 2 marcellus-i class-3 red
+2013-01-17 thursday time-after-epiphany 2 anthony class-3 white
+2013-01-18 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +prisca
+2013-01-19 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2013-01-20 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-fabian-sebastian
+2013-01-21 monday time-after-epiphany 3 agnes class-3 red
+2013-01-22 tuesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2013-01-23 wednesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2013-01-24 thursday time-after-epiphany 3 timothy class-3 red
+2013-01-25 friday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2013-01-26 saturday time-after-epiphany 3 polycarp class-3 red
+2013-01-27 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +john-chrysostom
+2013-01-28 monday septuagesima 1 peter-nolasco class-3 white
+2013-01-29 tuesday septuagesima 1 francis-de-sales class-3 white
+2013-01-30 wednesday septuagesima 1 martina class-3 red
+2013-01-31 thursday septuagesima 1 john-bosco class-3 white
+2013-02-01 friday septuagesima 1 ignatius-of-antioch class-3 red
+2013-02-02 saturday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2013-02-03 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +blaise
+2013-02-04 monday septuagesima 2 andrew-corsini class-3 white
+2013-02-05 tuesday septuagesima 2 agatha class-3 red
+2013-02-06 wednesday septuagesima 2 titus class-3 white +dorothy
+2013-02-07 thursday septuagesima 2 romuald class-3 white
+2013-02-08 friday septuagesima 2 john-of-matha class-3 white
+2013-02-09 saturday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2013-02-10 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +scholastica
+2013-02-11 monday septuagesima 3 our-lady-of-lourdes class-3 white
+2013-02-12 tuesday septuagesima 3 seven-holy-servite-founders class-3 white
+2013-02-13 wednesday lent - ef-ash-wednesday class-1 violet
+2013-02-14 thursday lent - ef-lent-after-ashes-thursday class-3 violet +valentine
+2013-02-15 friday lent - ef-lent-after-ashes-friday class-3 violet +sts-faustinus-jovita
+2013-02-16 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2013-02-17 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2013-02-18 monday lent 1 ef-lent-1-monday class-3 violet +simeon
+2013-02-19 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2013-02-20 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2013-02-21 thursday lent 1 ef-lent-1-thursday class-3 violet
+2013-02-22 friday lent 1 chair-of-st-peter class-2 white +paul
+2013-02-23 saturday lent 1 ef-lent-1-saturday class-3 violet +peter-damien
+2013-02-24 sunday lent 2 ef-lent-sunday-2 class-2 violet +matthias
+2013-02-25 monday lent 2 ef-lent-2-monday class-3 violet
+2013-02-26 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2013-02-27 wednesday lent 2 ef-lent-2-wednesday class-3 violet +gabriel-of-our-lady-of-sorrows
+2013-02-28 thursday lent 2 ef-lent-2-thursday class-3 violet
+2013-03-01 friday lent 2 ef-lent-2-friday class-3 violet
+2013-03-02 saturday lent 2 ef-lent-2-saturday class-3 violet
+2013-03-03 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2013-03-04 monday lent 3 ef-lent-3-monday class-3 violet +casimir +lucius
+2013-03-05 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2013-03-06 wednesday lent 3 ef-lent-3-wednesday class-3 violet +sts-felicitas-perpetua
+2013-03-07 thursday lent 3 ef-lent-3-thursday class-3 violet +thomas-aquinas
+2013-03-08 friday lent 3 ef-lent-3-friday class-3 violet +john-of-god
+2013-03-09 saturday lent 3 ef-lent-3-saturday class-3 violet +frances-rome
+2013-03-10 sunday lent 4 ef-lent-sunday-4 class-2 violet +forty-holy-martyrs-of-sebaste
+2013-03-11 monday lent 4 ef-lent-4-monday class-3 violet
+2013-03-12 tuesday lent 4 ef-lent-4-tuesday class-3 violet +gregory-the-great
+2013-03-13 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2013-03-14 thursday lent 4 ef-lent-4-thursday class-3 violet
+2013-03-15 friday lent 4 ef-lent-4-friday class-3 violet
+2013-03-16 saturday lent 4 ef-lent-4-saturday class-3 violet
+2013-03-17 sunday passiontide 1 ef-passion-sunday class-1 violet +patrick
+2013-03-18 monday passiontide - ef-passiontide-0-monday class-3 violet +cyril-of-jerusalem
+2013-03-19 tuesday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2013-03-20 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2013-03-21 thursday passiontide - ef-passiontide-0-thursday class-3 violet +benedict
+2013-03-22 friday passiontide - ef-passiontide-0-friday class-3 violet
+2013-03-23 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2013-03-24 sunday passiontide 2 ef-palm-sunday class-1 violet +gabriel-the-archangel
+2013-03-25 monday passiontide - ef-passiontide-0-monday class-1 violet
+2013-03-26 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2013-03-27 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +john-damascene
+2013-03-28 thursday passiontide - ef-passiontide-0-thursday class-1 violet +john-of-capistrano
+2013-03-29 friday passiontide - ef-passiontide-0-friday class-1 violet
+2013-03-30 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2013-03-31 sunday easter 1 ef-easter-sunday class-1 white
+2013-04-01 monday easter 1 ef-easter-1-monday class-1 white
+2013-04-02 tuesday easter 1 ef-easter-1-tuesday class-1 white +francis-of-paola
+2013-04-03 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2013-04-04 thursday easter 1 ef-easter-1-thursday class-1 white +isidore-of-seville
+2013-04-05 friday easter 1 ef-easter-1-friday class-1 white +vincent-ferrer
+2013-04-06 saturday easter 1 ef-easter-1-saturday class-1 white
+2013-04-07 sunday easter 2 ef-low-sunday class-1 white
+2013-04-08 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white
+2013-04-09 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2013-04-10 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2013-04-11 thursday easter 2 leo-the-great class-3 white
+2013-04-12 friday easter 2 ef-easter-2-friday class-4 white
+2013-04-13 saturday easter 2 hermenegild class-3 red
+2013-04-14 sunday easter 3 ef-easter-sunday-3 class-2 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2013-04-15 monday easter 3 ef-easter-3-monday class-4 white
+2013-04-16 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2013-04-17 wednesday easter 3 ef-easter-3-wednesday class-4 white +anicetus
+2013-04-18 thursday easter 3 ef-easter-3-thursday class-4 white
+2013-04-19 friday easter 3 ef-easter-3-friday class-4 white
+2013-04-20 saturday easter 3 ef-easter-3-saturday class-4 white
+2013-04-21 sunday easter 4 ef-easter-sunday-4 class-2 white +anselm
+2013-04-22 monday easter 4 sts-soter-caius class-3 red
+2013-04-23 tuesday easter 4 ef-easter-4-tuesday class-4 white +george
+2013-04-24 wednesday easter 4 fidelis-of-sigmaringen class-3 red
+2013-04-25 thursday easter 4 mark class-2 red
+2013-04-26 friday easter 4 sts-cletus-marcellinus class-3 red
+2013-04-27 saturday easter 4 peter-canisius class-3 white
+2013-04-28 sunday easter 5 ef-easter-sunday-5 class-2 white +paul-of-the-cross
+2013-04-29 monday easter 5 peter-of-verona class-3 red
+2013-04-30 tuesday easter 5 catherine-of-siena class-3 white
+2013-05-01 wednesday easter 5 joseph-the-workman class-1 white
+2013-05-02 thursday easter 5 athanasius class-3 white
+2013-05-03 friday easter 5 ef-easter-5-friday class-4 white +sts-alexander-companions
+2013-05-04 saturday easter 5 monica class-3 white
+2013-05-05 sunday easter 6 ef-easter-sunday-6 class-2 white +pius-v
+2013-05-06 monday easter 6 ef-easter-6-monday class-4 white
+2013-05-07 tuesday easter 6 stanislaus class-3 red
+2013-05-08 wednesday easter - ef-ascension-vigil class-2 white
+2013-05-09 thursday easter - ef-ascension class-1 white +gregory-of-nazianzen
+2013-05-10 friday easter 6 antoninus class-3 white +gordiano-and-epimacho
+2013-05-11 saturday easter 6 sts-philip-james class-2 red
+2013-05-12 sunday easter 7 ef-easter-sunday-7 class-2 white +sts-nereus-achilleus-domitilla-pancras
+2013-05-13 monday easter 7 robert-bellarmine class-3 white
+2013-05-14 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2013-05-15 wednesday easter 7 john-baptist-de-la-salle class-3 white
+2013-05-16 thursday easter 7 ef-easter-7-thursday class-4 white +ubaldus
+2013-05-17 friday easter 7 paschal-baylon class-3 white
+2013-05-18 saturday easter - ef-pentecost-vigil class-1 red +venantius
+2013-05-19 sunday easter - ef-pentecost class-1 red +peter-celestine +pudentiana-virginis
+2013-05-20 monday easter 8 ef-easter-8-monday class-1 red +bernardine-of-siena
+2013-05-21 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2013-05-22 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2013-05-23 thursday easter 8 ef-easter-8-thursday class-1 red
+2013-05-24 friday easter 8 ef-easter-8-friday class-1 red
+2013-05-25 saturday easter 8 ef-easter-8-saturday class-1 red +gregory-vii +urban-pope-and-martyr
+2013-05-26 sunday time-after-pentecost 1 ef-trinity class-1 white +philip-neri +eleutherius
+2013-05-27 monday time-after-pentecost 1 bede-the-venerable class-3 white +john-i
+2013-05-28 tuesday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2013-05-29 wednesday time-after-pentecost 1 mary-magdalene-de-pazzi class-3 white
+2013-05-30 thursday time-after-pentecost - ef-corpus-christi class-1 white +felix-i
+2013-05-31 friday time-after-pentecost 1 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2013-06-01 saturday time-after-pentecost 1 angela-merici class-3 white
+2013-06-02 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +sts-marcellinus-peter-erasmus
+2013-06-03 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2013-06-04 tuesday time-after-pentecost 2 francis-caracciolo class-3 white
+2013-06-05 wednesday time-after-pentecost 2 boniface class-3 red
+2013-06-06 thursday time-after-pentecost 2 norbert class-3 white
+2013-06-07 friday time-after-pentecost - ef-sacred-heart class-1 white
+2013-06-08 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green
+2013-06-09 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +sts-primus-felicianus
+2013-06-10 monday time-after-pentecost 3 margaret-of-scotland class-3 white
+2013-06-11 tuesday time-after-pentecost 3 barnabas class-3 red
+2013-06-12 wednesday time-after-pentecost 3 john-of-san-fecundo class-3 red +basilidus
+2013-06-13 thursday time-after-pentecost 3 anthony-of-padua class-3 white
+2013-06-14 friday time-after-pentecost 3 basil-the-great class-3 white
+2013-06-15 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green +vitus
+2013-06-16 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green
+2013-06-17 monday time-after-pentecost 4 gregory-barbarigo class-3 white
+2013-06-18 tuesday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2013-06-19 wednesday time-after-pentecost 4 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2013-06-20 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green +silverius
+2013-06-21 friday time-after-pentecost 4 aloysius-gongzaga class-3 white
+2013-06-22 saturday time-after-pentecost 4 paulinus-of-nola class-3 white
+2013-06-23 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +vigil-of-the-nativity-of-st-john-the-baptist
+2013-06-24 monday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2013-06-25 tuesday time-after-pentecost 5 william class-3 white
+2013-06-26 wednesday time-after-pentecost 5 sts-john-paul class-3 red
+2013-06-27 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2013-06-28 friday time-after-pentecost 5 vigil-of-sts-peter-paul class-2 violet
+2013-06-29 saturday time-after-pentecost 5 sts-peter-paul class-1 red
+2013-06-30 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +in-commemoratione-sancti-pauli-apostoli
+2013-07-01 monday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2013-07-02 tuesday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2013-07-03 wednesday time-after-pentecost 6 irenaeus class-3 red
+2013-07-04 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2013-07-05 friday time-after-pentecost 6 anthony-mary-zaccariah class-3 white
+2013-07-06 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green
+2013-07-07 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +sts-cyril-methodius
+2013-07-08 monday time-after-pentecost 7 elizabeth-of-portugal class-3 white
+2013-07-09 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green
+2013-07-10 wednesday time-after-pentecost 7 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2013-07-11 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +pius-i
+2013-07-12 friday time-after-pentecost 7 john-gualbert class-3 red +naboris-et-felicis
+2013-07-13 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green
+2013-07-14 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +bonaventure
+2013-07-15 monday time-after-pentecost 8 henry-the-emperor class-3 white
+2013-07-16 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +our-lady-of-mt-carmel
+2013-07-17 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +alexis
+2013-07-18 thursday time-after-pentecost 8 camillus-de-lellis class-3 red +symphorosa-and-sons
+2013-07-19 friday time-after-pentecost 8 vincent-de-paul class-3 white
+2013-07-20 saturday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2013-07-21 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +laurence-of-brindisi +praxedis-virginis
+2013-07-22 monday time-after-pentecost 9 mary-magdalene class-3 white
+2013-07-23 tuesday time-after-pentecost 9 apollinaris class-3 white +liborii
+2013-07-24 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +christina
+2013-07-25 thursday time-after-pentecost 9 james-the-greater class-2 red +christopher
+2013-07-26 friday time-after-pentecost 9 anne-mother-of-the-blessed-virgin class-2 white
+2013-07-27 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +pantaleon
+2013-07-28 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +sts-nazarius-celsus-st-victor-i-st-innocent-i
+2013-07-29 monday time-after-pentecost 10 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2013-07-30 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +sts-abdon-sennen
+2013-07-31 wednesday time-after-pentecost 10 ignatius-loyola class-3 white
+2013-08-01 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +holy-machabees
+2013-08-02 friday time-after-pentecost 10 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2013-08-03 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green
+2013-08-04 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +dominic
+2013-08-05 monday time-after-pentecost 11 dedication-of-the-basilica-of-st-mary-major class-3 white
+2013-08-06 tuesday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2013-08-07 wednesday time-after-pentecost 11 cajetan class-3 white +donatus
+2013-08-08 thursday time-after-pentecost 11 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2013-08-09 friday time-after-pentecost 11 vigil-of-st-lawrence class-3 red +romanus
+2013-08-10 saturday time-after-pentecost 11 lawrence class-2 red
+2013-08-11 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +sts-tiburtius-susanna
+2013-08-12 monday time-after-pentecost 12 clare class-3 white
+2013-08-13 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +sts-hippolytus-cassian
+2013-08-14 wednesday time-after-pentecost 12 vigil-of-the-assumption class-2 white
+2013-08-15 thursday time-after-pentecost 12 assumption-of-the-blessed-virgin-mary class-1 white
+2013-08-16 friday time-after-pentecost 12 joachim-father-of-the-blessed-virgin class-2 white
+2013-08-17 saturday time-after-pentecost 12 hyacinth class-3 white
+2013-08-18 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +agapitus
+2013-08-19 monday time-after-pentecost 13 john-eudes class-3 white
+2013-08-20 tuesday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2013-08-21 wednesday time-after-pentecost 13 jane-frances-de-chantal class-3 white
+2013-08-22 thursday time-after-pentecost 13 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2013-08-23 friday time-after-pentecost 13 philip-benizi class-3 white
+2013-08-24 saturday time-after-pentecost 13 bartholomew class-2 red
+2013-08-25 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +louis-ix
+2013-08-26 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +zephyrinus
+2013-08-27 tuesday time-after-pentecost 14 joseph-calasance class-3 white
+2013-08-28 wednesday time-after-pentecost 14 augustine class-3 red +hermes
+2013-08-29 thursday time-after-pentecost 14 beheading-of-st-john-the-baptist class-3 red +sabina
+2013-08-30 friday time-after-pentecost 14 rose-of-lima class-3 red +sts-felix-and-adauctus
+2013-08-31 saturday time-after-pentecost 14 raymond-nonnatus class-3 white
+2013-09-01 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +giles +twelve-holy-brothers-martyrs
+2013-09-02 monday time-after-pentecost 15 stephen-of-hungary class-3 white
+2013-09-03 tuesday time-after-pentecost 15 pius-x class-3 white
+2013-09-04 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green
+2013-09-05 thursday time-after-pentecost 15 lawrence-justinian class-3 white
+2013-09-06 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green
+2013-09-07 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green
+2013-09-08 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +nativity-of-the-blessed-virgin-mary +hadriani
+2013-09-09 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green +gorgonius
+2013-09-10 tuesday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2013-09-11 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green +sts-protus-hyacinth
+2013-09-12 thursday time-after-pentecost 16 most-holy-name-of-mary class-3 white
+2013-09-13 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green
+2013-09-14 saturday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2013-09-15 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +seven-sorrows-of-the-blessed-virgin-mary +nicomedes
+2013-09-16 monday time-after-pentecost 17 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2013-09-17 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +stigmata-of-st-francis
+2013-09-18 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +joseph-of-cupertino
+2013-09-19 thursday time-after-pentecost 17 januarius-companions class-3 red
+2013-09-20 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet +sts-eustace-companions
+2013-09-21 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +matthew
+2013-09-22 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +thomas-of-villanova +maurice-and-companions-martyrs
+2013-09-23 monday time-after-pentecost 18 linus class-3 red +thecla
+2013-09-24 tuesday time-after-pentecost 18 ef-time-after-pentecost-18-tuesday class-4 green +our-lady-of-ransom
+2013-09-25 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green
+2013-09-26 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +sts-cyprian-justina
+2013-09-27 friday time-after-pentecost 18 sts-cosmas-damian class-3 red
+2013-09-28 saturday time-after-pentecost 18 wenceslaus class-3 red
+2013-09-29 sunday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2013-09-30 monday time-after-pentecost 19 jerome class-3 white
+2013-10-01 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green +remigius
+2013-10-02 wednesday time-after-pentecost 19 holy-guardian-angels class-3 white
+2013-10-03 thursday time-after-pentecost 19 theresa-of-the-infant-jesus class-3 white
+2013-10-04 friday time-after-pentecost 19 francis-of-assisi class-3 white
+2013-10-05 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +placid-companions
+2013-10-06 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +bruno
+2013-10-07 monday time-after-pentecost 20 our-lady-of-the-rosary class-2 white +mark-i
+2013-10-08 tuesday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2013-10-09 wednesday time-after-pentecost 20 john-leonardi class-3 white +dionysius-and-companions
+2013-10-10 thursday time-after-pentecost 20 francis-borgia class-3 white
+2013-10-11 friday time-after-pentecost 20 maternity-of-the-blessed-virgin-mary class-2 white
+2013-10-12 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2013-10-13 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +edward
+2013-10-14 monday time-after-pentecost 21 callistus-i class-3 red
+2013-10-15 tuesday time-after-pentecost 21 teresa-of-avila class-3 white
+2013-10-16 wednesday time-after-pentecost 21 hedwig class-3 white
+2013-10-17 thursday time-after-pentecost 21 margaret-mary-alacoque class-3 white
+2013-10-18 friday time-after-pentecost 21 luke-the-evangelist class-2 red
+2013-10-19 saturday time-after-pentecost 21 peter-of-alcantara class-3 white
+2013-10-20 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +john-cantius
+2013-10-21 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green +hilarion +ursula-and-companions
+2013-10-22 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2013-10-23 wednesday time-after-pentecost 22 anthony-mary-claret class-3 white
+2013-10-24 thursday time-after-pentecost 22 raphael-the-archangel class-3 white
+2013-10-25 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green +sts-chrysanthus-daria
+2013-10-26 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2013-10-27 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2013-10-28 monday time-after-pentecost 23 sts-simon-jude class-2 red
+2013-10-29 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2013-10-30 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2013-10-31 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2013-11-01 friday time-after-pentecost 23 all-saints class-1 white
+2013-11-02 saturday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2013-11-03 sunday time-after-pentecost 4 ef-time-after-epiphany-sunday-4 class-2 green
+2013-11-04 monday time-after-pentecost 24 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2013-11-05 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green
+2013-11-06 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2013-11-07 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2013-11-08 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +four-holy-crowned-martyrs
+2013-11-09 saturday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2013-11-10 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +andrew-avellino +sts-tryphonis-respicii-et-nymphae
+2013-11-11 monday time-after-pentecost 25 martin-of-tours class-3 white +menna
+2013-11-12 tuesday time-after-pentecost 25 martin-i class-3 red
+2013-11-13 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green +didacus
+2013-11-14 thursday time-after-pentecost 25 josaphat class-3 white
+2013-11-15 friday time-after-pentecost 25 albert-the-great class-3 white
+2013-11-16 saturday time-after-pentecost 25 gertrude-the-great class-3 white
+2013-11-17 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +gregory-the-wonderworker
+2013-11-18 monday time-after-pentecost 26 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2013-11-19 tuesday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2013-11-20 wednesday time-after-pentecost 26 felix-of-valois class-3 white
+2013-11-21 thursday time-after-pentecost 26 presentation-of-the-blessed-virgin-mary class-3 white
+2013-11-22 friday time-after-pentecost 26 cecilia class-3 red
+2013-11-23 saturday time-after-pentecost 26 clement-i class-3 red +felicity
+2013-11-24 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +john-of-the-cross +chrysogonus
+2013-11-25 monday time-after-pentecost 27 catherine-of-alexandria class-3 red
+2013-11-26 tuesday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2013-11-27 wednesday time-after-pentecost 27 ef-time-after-pentecost-27-wednesday class-4 green
+2013-11-28 thursday time-after-pentecost 27 ef-time-after-pentecost-27-thursday class-4 green
+2013-11-29 friday time-after-pentecost 27 ef-time-after-pentecost-27-friday class-4 green +saturninus
+2013-11-30 saturday time-after-pentecost 27 andrew class-2 red
+2013-12-01 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2013-12-02 monday advent 1 vivian class-3 red
+2013-12-03 tuesday advent 1 francis-xavier class-3 white
+2013-12-04 wednesday advent 1 peter-chrysologus class-3 white
+2013-12-05 thursday advent 1 ef-advent-1-thursday class-3 violet +sabbas
+2013-12-06 friday advent 1 nicholas class-3 white
+2013-12-07 saturday advent 1 ambrose class-3 white
+2013-12-08 sunday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2013-12-09 monday advent 2 ef-advent-2-monday class-3 violet
+2013-12-10 tuesday advent 2 ef-advent-2-tuesday class-3 violet +melchiades
+2013-12-11 wednesday advent 2 damasus-i class-3 white
+2013-12-12 thursday advent 2 ef-advent-2-thursday class-3 violet
+2013-12-13 friday advent 2 lucy class-3 red
+2013-12-14 saturday advent 2 ef-advent-2-saturday class-3 violet
+2013-12-15 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2013-12-16 monday advent 3 eusebius class-3 red
+2013-12-17 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2013-12-18 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2013-12-19 thursday advent 3 ef-advent-3-thursday class-3 violet
+2013-12-20 friday advent 3 ef-advent-ember-fri class-2 violet
+2013-12-21 saturday advent 3 ef-advent-ember-sat class-2 violet +thomas
+2013-12-22 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2013-12-23 monday advent 4 ef-advent-4-monday class-3 violet
+2013-12-24 tuesday advent 4 vigil-of-christmas class-1 violet
+2013-12-25 wednesday christmas - ef-nativity class-1 white
+2013-12-26 thursday christmas - stephen class-2 red
+2013-12-27 friday christmas - john-the-evangelist class-2 white
+2013-12-28 saturday christmas - holy-innocents class-2 red
+2013-12-29 sunday christmas - ef-christmas-sunday-0 class-2 white +thomas-becket
+2013-12-30 monday christmas - ef-christmas-0-monday class-4 white
+2013-12-31 tuesday christmas - ef-christmas-0-tuesday class-4 white +silvester
+2014-01-01 wednesday christmas - ef-circumcision class-1 white
+2014-01-02 thursday christmas - ef-christmas-0-thursday class-4 white
+2014-01-03 friday christmas - ef-christmas-0-friday class-4 white
+2014-01-04 saturday christmas - ef-christmas-0-saturday class-4 white
+2014-01-05 sunday christmas - ef-christmas-sunday-0 class-2 white +telesphorus-pope-and-martyr
+2014-01-06 monday time-after-epiphany - ef-epiphany class-1 white
+2014-01-07 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2014-01-08 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2014-01-09 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2014-01-10 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2014-01-11 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green +hyginus-pope-and-martyr
+2014-01-12 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2014-01-13 monday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2014-01-14 tuesday time-after-epiphany 2 hilary class-3 white +felicis
+2014-01-15 wednesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2014-01-16 thursday time-after-epiphany 2 marcellus-i class-3 red
+2014-01-17 friday time-after-epiphany 2 anthony class-3 white
+2014-01-18 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +prisca
+2014-01-19 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +canute-martyr +sts-marius-martha-audifax-abachum
+2014-01-20 monday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2014-01-21 tuesday time-after-epiphany 3 agnes class-3 red
+2014-01-22 wednesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2014-01-23 thursday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2014-01-24 friday time-after-epiphany 3 timothy class-3 red
+2014-01-25 saturday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2014-01-26 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +polycarp
+2014-01-27 monday time-after-epiphany 4 john-chrysostom class-3 white
+2014-01-28 tuesday time-after-epiphany 4 peter-nolasco class-3 white
+2014-01-29 wednesday time-after-epiphany 4 francis-de-sales class-3 white
+2014-01-30 thursday time-after-epiphany 4 martina class-3 red
+2014-01-31 friday time-after-epiphany 4 john-bosco class-3 white
+2014-02-01 saturday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2014-02-02 sunday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2014-02-03 monday time-after-epiphany 5 ef-time-after-epiphany-5-monday class-4 green +blaise
+2014-02-04 tuesday time-after-epiphany 5 andrew-corsini class-3 white
+2014-02-05 wednesday time-after-epiphany 5 agatha class-3 red
+2014-02-06 thursday time-after-epiphany 5 titus class-3 white +dorothy
+2014-02-07 friday time-after-epiphany 5 romuald class-3 white
+2014-02-08 saturday time-after-epiphany 5 john-of-matha class-3 white
+2014-02-09 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +cyril-of-alexandria +appollonia
+2014-02-10 monday time-after-epiphany 6 scholastica class-3 white
+2014-02-11 tuesday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2014-02-12 wednesday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2014-02-13 thursday time-after-epiphany 6 ef-time-after-epiphany-6-thursday class-4 green
+2014-02-14 friday time-after-epiphany 6 ef-time-after-epiphany-6-friday class-4 green +valentine
+2014-02-15 saturday time-after-epiphany 6 ef-time-after-epiphany-6-saturday class-4 green +sts-faustinus-jovita
+2014-02-16 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2014-02-17 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet
+2014-02-18 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +simeon
+2014-02-19 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2014-02-20 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2014-02-21 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2014-02-22 saturday septuagesima 1 chair-of-st-peter class-2 white +paul
+2014-02-23 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +peter-damien
+2014-02-24 monday septuagesima 2 matthias class-2 red
+2014-02-25 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2014-02-26 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2014-02-27 thursday septuagesima 2 gabriel-of-our-lady-of-sorrows class-3 white
+2014-02-28 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2014-03-01 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2014-03-02 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2014-03-03 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2014-03-04 tuesday septuagesima 3 casimir class-3 white +lucius
+2014-03-05 wednesday lent - ef-ash-wednesday class-1 violet
+2014-03-06 thursday lent - ef-lent-after-ashes-thursday class-3 violet +sts-felicitas-perpetua
+2014-03-07 friday lent - ef-lent-after-ashes-friday class-3 violet +thomas-aquinas
+2014-03-08 saturday lent - ef-lent-after-ashes-saturday class-3 violet +john-of-god
+2014-03-09 sunday lent 1 ef-lent-sunday-1 class-2 violet +frances-rome
+2014-03-10 monday lent 1 ef-lent-1-monday class-3 violet +forty-holy-martyrs-of-sebaste
+2014-03-11 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2014-03-12 wednesday lent 1 ef-lent-1-wednesday class-3 violet +gregory-the-great
+2014-03-13 thursday lent 1 ef-lent-1-thursday class-3 violet
+2014-03-14 friday lent 1 ef-lent-1-friday class-3 violet
+2014-03-15 saturday lent 1 ef-lent-1-saturday class-3 violet
+2014-03-16 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2014-03-17 monday lent 2 ef-lent-2-monday class-3 violet +patrick
+2014-03-18 tuesday lent 2 ef-lent-2-tuesday class-3 violet +cyril-of-jerusalem
+2014-03-19 wednesday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2014-03-20 thursday lent 2 ef-lent-2-thursday class-3 violet
+2014-03-21 friday lent 2 ef-lent-2-friday class-3 violet +benedict
+2014-03-22 saturday lent 2 ef-lent-2-saturday class-3 violet
+2014-03-23 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2014-03-24 monday lent 3 ef-lent-3-monday class-3 violet +gabriel-the-archangel
+2014-03-25 tuesday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2014-03-26 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2014-03-27 thursday lent 3 ef-lent-3-thursday class-3 violet +john-damascene
+2014-03-28 friday lent 3 ef-lent-3-friday class-3 violet +john-of-capistrano
+2014-03-29 saturday lent 3 ef-lent-3-saturday class-3 violet
+2014-03-30 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2014-03-31 monday lent 4 ef-lent-4-monday class-3 violet
+2014-04-01 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2014-04-02 wednesday lent 4 ef-lent-4-wednesday class-3 violet +francis-of-paola
+2014-04-03 thursday lent 4 ef-lent-4-thursday class-3 violet
+2014-04-04 friday lent 4 ef-lent-4-friday class-3 violet +isidore-of-seville
+2014-04-05 saturday lent 4 ef-lent-4-saturday class-3 violet +vincent-ferrer
+2014-04-06 sunday passiontide 1 ef-passion-sunday class-1 violet
+2014-04-07 monday passiontide - ef-passiontide-0-monday class-3 violet
+2014-04-08 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2014-04-09 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2014-04-10 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2014-04-11 friday passiontide - ef-passiontide-0-friday class-3 violet +leo-the-great
+2014-04-12 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2014-04-13 sunday passiontide 2 ef-palm-sunday class-1 violet +hermenegild
+2014-04-14 monday passiontide - ef-passiontide-0-monday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2014-04-15 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2014-04-16 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2014-04-17 thursday passiontide - ef-passiontide-0-thursday class-1 violet +anicetus
+2014-04-18 friday passiontide - ef-passiontide-0-friday class-1 violet
+2014-04-19 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2014-04-20 sunday easter 1 ef-easter-sunday class-1 white
+2014-04-21 monday easter 1 ef-easter-1-monday class-1 white +anselm
+2014-04-22 tuesday easter 1 ef-easter-1-tuesday class-1 white +sts-soter-caius
+2014-04-23 wednesday easter 1 ef-easter-1-wednesday class-1 white +george
+2014-04-24 thursday easter 1 ef-easter-1-thursday class-1 white +fidelis-of-sigmaringen
+2014-04-25 friday easter 1 ef-easter-1-friday class-1 white +mark
+2014-04-26 saturday easter 1 ef-easter-1-saturday class-1 white +sts-cletus-marcellinus
+2014-04-27 sunday easter 2 ef-low-sunday class-1 white +peter-canisius
+2014-04-28 monday easter 2 paul-of-the-cross class-3 white
+2014-04-29 tuesday easter 2 peter-of-verona class-3 red
+2014-04-30 wednesday easter 2 catherine-of-siena class-3 white
+2014-05-01 thursday easter 2 joseph-the-workman class-1 white
+2014-05-02 friday easter 2 athanasius class-3 white
+2014-05-03 saturday easter 2 ef-easter-2-saturday class-4 white +sts-alexander-companions
+2014-05-04 sunday easter 3 ef-easter-sunday-3 class-2 white +monica
+2014-05-05 monday easter 3 pius-v class-3 white
+2014-05-06 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2014-05-07 wednesday easter 3 stanislaus class-3 red
+2014-05-08 thursday easter 3 ef-easter-3-thursday class-4 white
+2014-05-09 friday easter 3 gregory-of-nazianzen class-3 white
+2014-05-10 saturday easter 3 antoninus class-3 white +gordiano-and-epimacho
+2014-05-11 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-philip-james
+2014-05-12 monday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2014-05-13 tuesday easter 4 robert-bellarmine class-3 white
+2014-05-14 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2014-05-15 thursday easter 4 john-baptist-de-la-salle class-3 white
+2014-05-16 friday easter 4 ef-easter-4-friday class-4 white +ubaldus
+2014-05-17 saturday easter 4 paschal-baylon class-3 white
+2014-05-18 sunday easter 5 ef-easter-sunday-5 class-2 white +venantius
+2014-05-19 monday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2014-05-20 tuesday easter 5 bernardine-of-siena class-3 white
+2014-05-21 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2014-05-22 thursday easter 5 ef-easter-5-thursday class-4 white
+2014-05-23 friday easter 5 ef-easter-5-friday class-4 white
+2014-05-24 saturday easter 5 ef-easter-5-saturday class-4 white
+2014-05-25 sunday easter 6 ef-easter-sunday-6 class-2 white +gregory-vii +urban-pope-and-martyr
+2014-05-26 monday easter 6 philip-neri class-3 white +eleutherius
+2014-05-27 tuesday easter 6 bede-the-venerable class-3 white +john-i
+2014-05-28 wednesday easter - ef-ascension-vigil class-2 white +augustine-of-canterbury
+2014-05-29 thursday easter - ef-ascension class-1 white +mary-magdalene-de-pazzi
+2014-05-30 friday easter 6 ef-easter-6-friday class-4 white +felix-i
+2014-05-31 saturday easter 6 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2014-06-01 sunday easter 7 ef-easter-sunday-7 class-2 white +angela-merici
+2014-06-02 monday easter 7 ef-easter-7-monday class-4 white +sts-marcellinus-peter-erasmus
+2014-06-03 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2014-06-04 wednesday easter 7 francis-caracciolo class-3 white
+2014-06-05 thursday easter 7 boniface class-3 red
+2014-06-06 friday easter 7 norbert class-3 white
+2014-06-07 saturday easter - ef-pentecost-vigil class-1 red
+2014-06-08 sunday easter - ef-pentecost class-1 red
+2014-06-09 monday easter 8 ef-easter-8-monday class-1 red +sts-primus-felicianus
+2014-06-10 tuesday easter 8 ef-easter-8-tuesday class-1 red +margaret-of-scotland
+2014-06-11 wednesday easter 8 ef-easter-8-wednesday class-1 red +barnabas
+2014-06-12 thursday easter 8 ef-easter-8-thursday class-1 red +john-of-san-fecundo +basilidus
+2014-06-13 friday easter 8 ef-easter-8-friday class-1 red +anthony-of-padua
+2014-06-14 saturday easter 8 ef-easter-8-saturday class-1 red +basil-the-great
+2014-06-15 sunday time-after-pentecost 1 ef-trinity class-1 white +vitus
+2014-06-16 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2014-06-17 tuesday time-after-pentecost 1 gregory-barbarigo class-3 white
+2014-06-18 wednesday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2014-06-19 thursday time-after-pentecost - ef-corpus-christi class-1 white +julia-of-falconieri +sts-gervasius-and-protasius
+2014-06-20 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green +silverius
+2014-06-21 saturday time-after-pentecost 1 aloysius-gongzaga class-3 white
+2014-06-22 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +paulinus-of-nola
+2014-06-23 monday time-after-pentecost 2 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2014-06-24 tuesday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2014-06-25 wednesday time-after-pentecost 2 william class-3 white
+2014-06-26 thursday time-after-pentecost 2 sts-john-paul class-3 red
+2014-06-27 friday time-after-pentecost - ef-sacred-heart class-1 white
+2014-06-28 saturday time-after-pentecost 2 vigil-of-sts-peter-paul class-2 violet
+2014-06-29 sunday time-after-pentecost 3 sts-peter-paul class-1 red
+2014-06-30 monday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2014-07-01 tuesday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2014-07-02 wednesday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2014-07-03 thursday time-after-pentecost 3 irenaeus class-3 red
+2014-07-04 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green
+2014-07-05 saturday time-after-pentecost 3 anthony-mary-zaccariah class-3 white
+2014-07-06 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green
+2014-07-07 monday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2014-07-08 tuesday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2014-07-09 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2014-07-10 thursday time-after-pentecost 4 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2014-07-11 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green +pius-i
+2014-07-12 saturday time-after-pentecost 4 john-gualbert class-3 red +naboris-et-felicis
+2014-07-13 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2014-07-14 monday time-after-pentecost 5 bonaventure class-3 white
+2014-07-15 tuesday time-after-pentecost 5 henry-the-emperor class-3 white
+2014-07-16 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green +our-lady-of-mt-carmel
+2014-07-17 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green +alexis
+2014-07-18 friday time-after-pentecost 5 camillus-de-lellis class-3 red +symphorosa-and-sons
+2014-07-19 saturday time-after-pentecost 5 vincent-de-paul class-3 white
+2014-07-20 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +jerome-emiliani +margaret
+2014-07-21 monday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2014-07-22 tuesday time-after-pentecost 6 mary-magdalene class-3 white
+2014-07-23 wednesday time-after-pentecost 6 apollinaris class-3 white +liborii
+2014-07-24 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green +christina
+2014-07-25 friday time-after-pentecost 6 james-the-greater class-2 red +christopher
+2014-07-26 saturday time-after-pentecost 6 anne-mother-of-the-blessed-virgin class-2 white
+2014-07-27 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +pantaleon
+2014-07-28 monday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2014-07-29 tuesday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2014-07-30 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +sts-abdon-sennen
+2014-07-31 thursday time-after-pentecost 7 ignatius-loyola class-3 white
+2014-08-01 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +holy-machabees
+2014-08-02 saturday time-after-pentecost 7 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2014-08-03 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green
+2014-08-04 monday time-after-pentecost 8 dominic class-3 white
+2014-08-05 tuesday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2014-08-06 wednesday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2014-08-07 thursday time-after-pentecost 8 cajetan class-3 white +donatus
+2014-08-08 friday time-after-pentecost 8 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2014-08-09 saturday time-after-pentecost 8 vigil-of-st-lawrence class-3 red +romanus
+2014-08-10 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +lawrence
+2014-08-11 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +sts-tiburtius-susanna
+2014-08-12 tuesday time-after-pentecost 9 clare class-3 white
+2014-08-13 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +sts-hippolytus-cassian
+2014-08-14 thursday time-after-pentecost 9 vigil-of-the-assumption class-2 white
+2014-08-15 friday time-after-pentecost 9 assumption-of-the-blessed-virgin-mary class-1 white
+2014-08-16 saturday time-after-pentecost 9 joachim-father-of-the-blessed-virgin class-2 white
+2014-08-17 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +hyacinth
+2014-08-18 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green +agapitus
+2014-08-19 tuesday time-after-pentecost 10 john-eudes class-3 white
+2014-08-20 wednesday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2014-08-21 thursday time-after-pentecost 10 jane-frances-de-chantal class-3 white
+2014-08-22 friday time-after-pentecost 10 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2014-08-23 saturday time-after-pentecost 10 philip-benizi class-3 white
+2014-08-24 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +bartholomew
+2014-08-25 monday time-after-pentecost 11 louis-ix class-3 white
+2014-08-26 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green +zephyrinus
+2014-08-27 wednesday time-after-pentecost 11 joseph-calasance class-3 white
+2014-08-28 thursday time-after-pentecost 11 augustine class-3 red +hermes
+2014-08-29 friday time-after-pentecost 11 beheading-of-st-john-the-baptist class-3 red +sabina
+2014-08-30 saturday time-after-pentecost 11 rose-of-lima class-3 red +sts-felix-and-adauctus
+2014-08-31 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +raymond-nonnatus
+2014-09-01 monday time-after-pentecost 12 ef-time-after-pentecost-12-monday class-4 green +giles +twelve-holy-brothers-martyrs
+2014-09-02 tuesday time-after-pentecost 12 stephen-of-hungary class-3 white
+2014-09-03 wednesday time-after-pentecost 12 pius-x class-3 white
+2014-09-04 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green
+2014-09-05 friday time-after-pentecost 12 lawrence-justinian class-3 white
+2014-09-06 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green
+2014-09-07 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green
+2014-09-08 monday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2014-09-09 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green +gorgonius
+2014-09-10 wednesday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2014-09-11 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +sts-protus-hyacinth
+2014-09-12 friday time-after-pentecost 13 most-holy-name-of-mary class-3 white
+2014-09-13 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green
+2014-09-14 sunday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2014-09-15 monday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2014-09-16 tuesday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2014-09-17 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green +stigmata-of-st-francis
+2014-09-18 thursday time-after-pentecost 14 joseph-of-cupertino class-3 white
+2014-09-19 friday time-after-pentecost 14 januarius-companions class-3 red
+2014-09-20 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +sts-eustace-companions
+2014-09-21 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +matthew
+2014-09-22 monday time-after-pentecost 15 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2014-09-23 tuesday time-after-pentecost 15 linus class-3 red +thecla
+2014-09-24 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +our-lady-of-ransom
+2014-09-25 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green
+2014-09-26 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +sts-cyprian-justina
+2014-09-27 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +sts-cosmas-damian
+2014-09-28 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +wenceslaus
+2014-09-29 monday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2014-09-30 tuesday time-after-pentecost 16 jerome class-3 white
+2014-10-01 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green +remigius
+2014-10-02 thursday time-after-pentecost 16 holy-guardian-angels class-3 white
+2014-10-03 friday time-after-pentecost 16 theresa-of-the-infant-jesus class-3 white
+2014-10-04 saturday time-after-pentecost 16 francis-of-assisi class-3 white
+2014-10-05 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +placid-companions
+2014-10-06 monday time-after-pentecost 17 bruno class-3 white
+2014-10-07 tuesday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2014-10-08 wednesday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2014-10-09 thursday time-after-pentecost 17 john-leonardi class-3 white +dionysius-and-companions
+2014-10-10 friday time-after-pentecost 17 francis-borgia class-3 white
+2014-10-11 saturday time-after-pentecost 17 maternity-of-the-blessed-virgin-mary class-2 white
+2014-10-12 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green
+2014-10-13 monday time-after-pentecost 18 edward class-3 white
+2014-10-14 tuesday time-after-pentecost 18 callistus-i class-3 red
+2014-10-15 wednesday time-after-pentecost 18 teresa-of-avila class-3 white
+2014-10-16 thursday time-after-pentecost 18 hedwig class-3 white
+2014-10-17 friday time-after-pentecost 18 margaret-mary-alacoque class-3 white
+2014-10-18 saturday time-after-pentecost 18 luke-the-evangelist class-2 red
+2014-10-19 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +peter-of-alcantara
+2014-10-20 monday time-after-pentecost 19 john-cantius class-3 white
+2014-10-21 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green +hilarion +ursula-and-companions
+2014-10-22 wednesday time-after-pentecost 19 ef-time-after-pentecost-19-wednesday class-4 green
+2014-10-23 thursday time-after-pentecost 19 anthony-mary-claret class-3 white
+2014-10-24 friday time-after-pentecost 19 raphael-the-archangel class-3 white
+2014-10-25 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +sts-chrysanthus-daria
+2014-10-26 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2014-10-27 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green
+2014-10-28 tuesday time-after-pentecost 20 sts-simon-jude class-2 red
+2014-10-29 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2014-10-30 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2014-10-31 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2014-11-01 saturday time-after-pentecost 20 all-saints class-1 white
+2014-11-02 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2014-11-03 monday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2014-11-04 tuesday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2014-11-05 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2014-11-06 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2014-11-07 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2014-11-08 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green +four-holy-crowned-martyrs
+2014-11-09 sunday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2014-11-10 monday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2014-11-11 tuesday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2014-11-12 wednesday time-after-pentecost 22 martin-i class-3 red
+2014-11-13 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green +didacus
+2014-11-14 friday time-after-pentecost 22 josaphat class-3 white
+2014-11-15 saturday time-after-pentecost 22 albert-the-great class-3 white
+2014-11-16 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +gertrude-the-great
+2014-11-17 monday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2014-11-18 tuesday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2014-11-19 wednesday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2014-11-20 thursday time-after-pentecost 23 felix-of-valois class-3 white
+2014-11-21 friday time-after-pentecost 23 presentation-of-the-blessed-virgin-mary class-3 white
+2014-11-22 saturday time-after-pentecost 23 cecilia class-3 red
+2014-11-23 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +clement-i +felicity
+2014-11-24 monday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2014-11-25 tuesday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2014-11-26 wednesday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2014-11-27 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2014-11-28 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green
+2014-11-29 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green +saturninus
+2014-11-30 sunday advent 1 ef-advent-sunday-1 class-1 violet +andrew
+2014-12-01 monday advent 1 ef-advent-1-monday class-3 violet
+2014-12-02 tuesday advent 1 vivian class-3 red
+2014-12-03 wednesday advent 1 francis-xavier class-3 white
+2014-12-04 thursday advent 1 peter-chrysologus class-3 white
+2014-12-05 friday advent 1 ef-advent-1-friday class-3 violet +sabbas
+2014-12-06 saturday advent 1 nicholas class-3 white
+2014-12-07 sunday advent 2 ef-advent-sunday-2 class-2 violet +ambrose
+2014-12-08 monday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2014-12-09 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2014-12-10 wednesday advent 2 ef-advent-2-wednesday class-3 violet +melchiades
+2014-12-11 thursday advent 2 damasus-i class-3 white
+2014-12-12 friday advent 2 ef-advent-2-friday class-3 violet
+2014-12-13 saturday advent 2 lucy class-3 red
+2014-12-14 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2014-12-15 monday advent 3 ef-advent-3-monday class-3 violet
+2014-12-16 tuesday advent 3 eusebius class-3 red
+2014-12-17 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2014-12-18 thursday advent 3 ef-advent-3-thursday class-3 violet
+2014-12-19 friday advent 3 ef-advent-ember-fri class-2 violet
+2014-12-20 saturday advent 3 ef-advent-ember-sat class-2 violet
+2014-12-21 sunday advent 4 ef-advent-sunday-4 class-2 violet +thomas
+2014-12-22 monday advent 4 ef-advent-4-monday class-3 violet
+2014-12-23 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2014-12-24 wednesday advent 4 vigil-of-christmas class-1 violet
+2014-12-25 thursday christmas - ef-nativity class-1 white
+2014-12-26 friday christmas - stephen class-2 red
+2014-12-27 saturday christmas - john-the-evangelist class-2 white
+2014-12-28 sunday christmas - ef-christmas-sunday-0 class-2 white +holy-innocents
+2014-12-29 monday christmas - ef-christmas-0-monday class-4 white +thomas-becket
+2014-12-30 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2014-12-31 wednesday christmas - ef-christmas-0-wednesday class-4 white +silvester
+2015-01-01 thursday christmas - ef-circumcision class-1 white
+2015-01-02 friday christmas - ef-christmas-0-friday class-4 white
+2015-01-03 saturday christmas - ef-christmas-0-saturday class-4 white
+2015-01-04 sunday christmas - ef-christmas-sunday-0 class-2 white
+2015-01-05 monday christmas - ef-christmas-0-monday class-4 white +telesphorus-pope-and-martyr
+2015-01-06 tuesday time-after-epiphany - ef-epiphany class-1 white
+2015-01-07 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2015-01-08 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2015-01-09 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2015-01-10 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2015-01-11 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green +hyginus-pope-and-martyr
+2015-01-12 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2015-01-13 tuesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2015-01-14 wednesday time-after-epiphany 2 hilary class-3 white +felicis
+2015-01-15 thursday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2015-01-16 friday time-after-epiphany 2 marcellus-i class-3 red
+2015-01-17 saturday time-after-epiphany 2 anthony class-3 white
+2015-01-18 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +prisca
+2015-01-19 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2015-01-20 tuesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2015-01-21 wednesday time-after-epiphany 3 agnes class-3 red
+2015-01-22 thursday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2015-01-23 friday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2015-01-24 saturday time-after-epiphany 3 timothy class-3 red
+2015-01-25 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +conversion-of-st-paul +peter
+2015-01-26 monday time-after-epiphany 3 polycarp class-3 red
+2015-01-27 tuesday time-after-epiphany 4 john-chrysostom class-3 white
+2015-01-28 wednesday time-after-epiphany 4 peter-nolasco class-3 white
+2015-01-29 thursday time-after-epiphany 4 francis-de-sales class-3 white
+2015-01-30 friday time-after-epiphany 4 martina class-3 red
+2015-01-31 saturday time-after-epiphany 4 john-bosco class-3 white
+2015-02-01 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +ignatius-of-antioch
+2015-02-02 monday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2015-02-03 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +blaise
+2015-02-04 wednesday septuagesima 1 andrew-corsini class-3 white
+2015-02-05 thursday septuagesima 1 agatha class-3 red
+2015-02-06 friday septuagesima 1 titus class-3 white +dorothy
+2015-02-07 saturday septuagesima 1 romuald class-3 white
+2015-02-08 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +john-of-matha
+2015-02-09 monday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2015-02-10 tuesday septuagesima 2 scholastica class-3 white
+2015-02-11 wednesday septuagesima 2 our-lady-of-lourdes class-3 white
+2015-02-12 thursday septuagesima 2 seven-holy-servite-founders class-3 white
+2015-02-13 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2015-02-14 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +valentine
+2015-02-15 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +sts-faustinus-jovita
+2015-02-16 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2015-02-17 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2015-02-18 wednesday lent - ef-ash-wednesday class-1 violet +simeon
+2015-02-19 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2015-02-20 friday lent - ef-lent-after-ashes-friday class-3 violet
+2015-02-21 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2015-02-22 sunday lent 1 ef-lent-sunday-1 class-2 violet +chair-of-st-peter +paul
+2015-02-23 monday lent 1 ef-lent-1-monday class-3 violet +peter-damien
+2015-02-24 tuesday lent 1 matthias class-2 red
+2015-02-25 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2015-02-26 thursday lent 1 ef-lent-1-thursday class-3 violet
+2015-02-27 friday lent 1 ef-lent-1-friday class-3 violet +gabriel-of-our-lady-of-sorrows
+2015-02-28 saturday lent 1 ef-lent-1-saturday class-3 violet
+2015-03-01 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2015-03-02 monday lent 2 ef-lent-2-monday class-3 violet
+2015-03-03 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2015-03-04 wednesday lent 2 ef-lent-2-wednesday class-3 violet +casimir +lucius
+2015-03-05 thursday lent 2 ef-lent-2-thursday class-3 violet
+2015-03-06 friday lent 2 ef-lent-2-friday class-3 violet +sts-felicitas-perpetua
+2015-03-07 saturday lent 2 ef-lent-2-saturday class-3 violet +thomas-aquinas
+2015-03-08 sunday lent 3 ef-lent-sunday-3 class-2 violet +john-of-god
+2015-03-09 monday lent 3 ef-lent-3-monday class-3 violet +frances-rome
+2015-03-10 tuesday lent 3 ef-lent-3-tuesday class-3 violet +forty-holy-martyrs-of-sebaste
+2015-03-11 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2015-03-12 thursday lent 3 ef-lent-3-thursday class-3 violet +gregory-the-great
+2015-03-13 friday lent 3 ef-lent-3-friday class-3 violet
+2015-03-14 saturday lent 3 ef-lent-3-saturday class-3 violet
+2015-03-15 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2015-03-16 monday lent 4 ef-lent-4-monday class-3 violet
+2015-03-17 tuesday lent 4 ef-lent-4-tuesday class-3 violet +patrick
+2015-03-18 wednesday lent 4 ef-lent-4-wednesday class-3 violet +cyril-of-jerusalem
+2015-03-19 thursday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2015-03-20 friday lent 4 ef-lent-4-friday class-3 violet
+2015-03-21 saturday lent 4 ef-lent-4-saturday class-3 violet +benedict
+2015-03-22 sunday passiontide 1 ef-passion-sunday class-1 violet
+2015-03-23 monday passiontide - ef-passiontide-0-monday class-3 violet
+2015-03-24 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +gabriel-the-archangel
+2015-03-25 wednesday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2015-03-26 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2015-03-27 friday passiontide - ef-passiontide-0-friday class-3 violet +john-damascene
+2015-03-28 saturday passiontide - ef-passiontide-0-saturday class-3 violet +john-of-capistrano
+2015-03-29 sunday passiontide 2 ef-palm-sunday class-1 violet
+2015-03-30 monday passiontide - ef-passiontide-0-monday class-1 violet
+2015-03-31 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2015-04-01 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2015-04-02 thursday passiontide - ef-passiontide-0-thursday class-1 violet +francis-of-paola
+2015-04-03 friday passiontide - ef-passiontide-0-friday class-1 violet
+2015-04-04 saturday passiontide - ef-passiontide-0-saturday class-1 violet +isidore-of-seville
+2015-04-05 sunday easter 1 ef-easter-sunday class-1 white +vincent-ferrer
+2015-04-06 monday easter 1 ef-easter-1-monday class-1 white
+2015-04-07 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2015-04-08 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2015-04-09 thursday easter 1 ef-easter-1-thursday class-1 white
+2015-04-10 friday easter 1 ef-easter-1-friday class-1 white
+2015-04-11 saturday easter 1 ef-easter-1-saturday class-1 white +leo-the-great
+2015-04-12 sunday easter 2 ef-low-sunday class-1 white
+2015-04-13 monday easter 2 hermenegild class-3 red
+2015-04-14 tuesday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2015-04-15 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2015-04-16 thursday easter 2 ef-easter-2-thursday class-4 white
+2015-04-17 friday easter 2 ef-easter-2-friday class-4 white +anicetus
+2015-04-18 saturday easter 2 ef-easter-2-saturday class-4 white
+2015-04-19 sunday easter 3 ef-easter-sunday-3 class-2 white
+2015-04-20 monday easter 3 ef-easter-3-monday class-4 white
+2015-04-21 tuesday easter 3 anselm class-3 white
+2015-04-22 wednesday easter 3 sts-soter-caius class-3 red
+2015-04-23 thursday easter 3 ef-easter-3-thursday class-4 white +george
+2015-04-24 friday easter 3 fidelis-of-sigmaringen class-3 red
+2015-04-25 saturday easter 3 mark class-2 red
+2015-04-26 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-cletus-marcellinus
+2015-04-27 monday easter 4 peter-canisius class-3 white
+2015-04-28 tuesday easter 4 paul-of-the-cross class-3 white
+2015-04-29 wednesday easter 4 peter-of-verona class-3 red
+2015-04-30 thursday easter 4 catherine-of-siena class-3 white
+2015-05-01 friday easter 4 joseph-the-workman class-1 white
+2015-05-02 saturday easter 4 athanasius class-3 white
+2015-05-03 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-alexander-companions
+2015-05-04 monday easter 5 monica class-3 white
+2015-05-05 tuesday easter 5 pius-v class-3 white
+2015-05-06 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2015-05-07 thursday easter 5 stanislaus class-3 red
+2015-05-08 friday easter 5 ef-easter-5-friday class-4 white
+2015-05-09 saturday easter 5 gregory-of-nazianzen class-3 white
+2015-05-10 sunday easter 6 ef-easter-sunday-6 class-2 white +antoninus +gordiano-and-epimacho
+2015-05-11 monday easter 6 sts-philip-james class-2 red
+2015-05-12 tuesday easter 6 sts-nereus-achilleus-domitilla-pancras class-3 red
+2015-05-13 wednesday easter - ef-ascension-vigil class-2 white +robert-bellarmine
+2015-05-14 thursday easter - ef-ascension class-1 white
+2015-05-15 friday easter 6 john-baptist-de-la-salle class-3 white
+2015-05-16 saturday easter 6 ef-easter-6-saturday class-4 white +ubaldus
+2015-05-17 sunday easter 7 ef-easter-sunday-7 class-2 white +paschal-baylon
+2015-05-18 monday easter 7 venantius class-3 red
+2015-05-19 tuesday easter 7 peter-celestine class-3 white +pudentiana-virginis
+2015-05-20 wednesday easter 7 bernardine-of-siena class-3 white
+2015-05-21 thursday easter 7 ef-easter-7-thursday class-4 white
+2015-05-22 friday easter 7 ef-easter-7-friday class-4 white
+2015-05-23 saturday easter - ef-pentecost-vigil class-1 red
+2015-05-24 sunday easter - ef-pentecost class-1 red
+2015-05-25 monday easter 8 ef-easter-8-monday class-1 red +gregory-vii +urban-pope-and-martyr
+2015-05-26 tuesday easter 8 ef-easter-8-tuesday class-1 red +philip-neri +eleutherius
+2015-05-27 wednesday easter 8 ef-easter-8-wednesday class-1 red +bede-the-venerable +john-i
+2015-05-28 thursday easter 8 ef-easter-8-thursday class-1 red +augustine-of-canterbury
+2015-05-29 friday easter 8 ef-easter-8-friday class-1 red +mary-magdalene-de-pazzi
+2015-05-30 saturday easter 8 ef-easter-8-saturday class-1 red +felix-i
+2015-05-31 sunday time-after-pentecost 1 ef-trinity class-1 white +queenship-of-the-blessed-virgin-mary +petronilla
+2015-06-01 monday time-after-pentecost 1 angela-merici class-3 white
+2015-06-02 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green +sts-marcellinus-peter-erasmus
+2015-06-03 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2015-06-04 thursday time-after-pentecost - ef-corpus-christi class-1 white +francis-caracciolo
+2015-06-05 friday time-after-pentecost 1 boniface class-3 red
+2015-06-06 saturday time-after-pentecost 1 norbert class-3 white
+2015-06-07 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2015-06-08 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2015-06-09 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green +sts-primus-felicianus
+2015-06-10 wednesday time-after-pentecost 2 margaret-of-scotland class-3 white
+2015-06-11 thursday time-after-pentecost 2 barnabas class-3 red
+2015-06-12 friday time-after-pentecost - ef-sacred-heart class-1 white +john-of-san-fecundo +basilidus
+2015-06-13 saturday time-after-pentecost 2 anthony-of-padua class-3 white
+2015-06-14 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +basil-the-great
+2015-06-15 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green +vitus
+2015-06-16 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2015-06-17 wednesday time-after-pentecost 3 gregory-barbarigo class-3 white
+2015-06-18 thursday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2015-06-19 friday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2015-06-20 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green +silverius
+2015-06-21 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +aloysius-gongzaga
+2015-06-22 monday time-after-pentecost 4 paulinus-of-nola class-3 white
+2015-06-23 tuesday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2015-06-24 wednesday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2015-06-25 thursday time-after-pentecost 4 william class-3 white
+2015-06-26 friday time-after-pentecost 4 sts-john-paul class-3 red
+2015-06-27 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2015-06-28 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +vigil-of-sts-peter-paul
+2015-06-29 monday time-after-pentecost 5 sts-peter-paul class-1 red
+2015-06-30 tuesday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2015-07-01 wednesday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2015-07-02 thursday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2015-07-03 friday time-after-pentecost 5 irenaeus class-3 red
+2015-07-04 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green
+2015-07-05 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +anthony-mary-zaccariah
+2015-07-06 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2015-07-07 tuesday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2015-07-08 wednesday time-after-pentecost 6 elizabeth-of-portugal class-3 white
+2015-07-09 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2015-07-10 friday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2015-07-11 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +pius-i
+2015-07-12 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +john-gualbert +naboris-et-felicis
+2015-07-13 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2015-07-14 tuesday time-after-pentecost 7 bonaventure class-3 white
+2015-07-15 wednesday time-after-pentecost 7 henry-the-emperor class-3 white
+2015-07-16 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +our-lady-of-mt-carmel
+2015-07-17 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +alexis
+2015-07-18 saturday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2015-07-19 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +vincent-de-paul
+2015-07-20 monday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2015-07-21 tuesday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2015-07-22 wednesday time-after-pentecost 8 mary-magdalene class-3 white
+2015-07-23 thursday time-after-pentecost 8 apollinaris class-3 white +liborii
+2015-07-24 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +christina
+2015-07-25 saturday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2015-07-26 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +anne-mother-of-the-blessed-virgin
+2015-07-27 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +pantaleon
+2015-07-28 tuesday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2015-07-29 wednesday time-after-pentecost 9 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2015-07-30 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +sts-abdon-sennen
+2015-07-31 friday time-after-pentecost 9 ignatius-loyola class-3 white
+2015-08-01 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +holy-machabees
+2015-08-02 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +alphonsus-liguori +stephen-i-pope-and-martyr
+2015-08-03 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green
+2015-08-04 tuesday time-after-pentecost 10 dominic class-3 white
+2015-08-05 wednesday time-after-pentecost 10 dedication-of-the-basilica-of-st-mary-major class-3 white
+2015-08-06 thursday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2015-08-07 friday time-after-pentecost 10 cajetan class-3 white +donatus
+2015-08-08 saturday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2015-08-09 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +vigil-of-st-lawrence +romanus
+2015-08-10 monday time-after-pentecost 11 lawrence class-2 red
+2015-08-11 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green +sts-tiburtius-susanna
+2015-08-12 wednesday time-after-pentecost 11 clare class-3 white
+2015-08-13 thursday time-after-pentecost 11 ef-time-after-pentecost-11-thursday class-4 green +sts-hippolytus-cassian
+2015-08-14 friday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2015-08-15 saturday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2015-08-16 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +joachim-father-of-the-blessed-virgin
+2015-08-17 monday time-after-pentecost 12 hyacinth class-3 white
+2015-08-18 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +agapitus
+2015-08-19 wednesday time-after-pentecost 12 john-eudes class-3 white
+2015-08-20 thursday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2015-08-21 friday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2015-08-22 saturday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2015-08-23 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +philip-benizi
+2015-08-24 monday time-after-pentecost 13 bartholomew class-2 red
+2015-08-25 tuesday time-after-pentecost 13 louis-ix class-3 white
+2015-08-26 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +zephyrinus
+2015-08-27 thursday time-after-pentecost 13 joseph-calasance class-3 white
+2015-08-28 friday time-after-pentecost 13 augustine class-3 red +hermes
+2015-08-29 saturday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2015-08-30 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +rose-of-lima +sts-felix-and-adauctus
+2015-08-31 monday time-after-pentecost 14 raymond-nonnatus class-3 white
+2015-09-01 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +giles +twelve-holy-brothers-martyrs
+2015-09-02 wednesday time-after-pentecost 14 stephen-of-hungary class-3 white
+2015-09-03 thursday time-after-pentecost 14 pius-x class-3 white
+2015-09-04 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green
+2015-09-05 saturday time-after-pentecost 14 lawrence-justinian class-3 white
+2015-09-06 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green
+2015-09-07 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green
+2015-09-08 tuesday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2015-09-09 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green +gorgonius
+2015-09-10 thursday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2015-09-11 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green +sts-protus-hyacinth
+2015-09-12 saturday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2015-09-13 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2015-09-14 monday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2015-09-15 tuesday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2015-09-16 wednesday time-after-pentecost 16 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2015-09-17 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +stigmata-of-st-francis
+2015-09-18 friday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2015-09-19 saturday time-after-pentecost 16 januarius-companions class-3 red
+2015-09-20 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-eustace-companions
+2015-09-21 monday time-after-pentecost 17 matthew class-2 red
+2015-09-22 tuesday time-after-pentecost 17 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2015-09-23 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +linus +thecla
+2015-09-24 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +our-lady-of-ransom
+2015-09-25 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet
+2015-09-26 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +sts-cyprian-justina
+2015-09-27 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-cosmas-damian
+2015-09-28 monday time-after-pentecost 18 wenceslaus class-3 red
+2015-09-29 tuesday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2015-09-30 wednesday time-after-pentecost 18 jerome class-3 white
+2015-10-01 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +remigius
+2015-10-02 friday time-after-pentecost 18 holy-guardian-angels class-3 white
+2015-10-03 saturday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2015-10-04 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +francis-of-assisi
+2015-10-05 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +placid-companions
+2015-10-06 tuesday time-after-pentecost 19 bruno class-3 white
+2015-10-07 wednesday time-after-pentecost 19 our-lady-of-the-rosary class-2 white +mark-i
+2015-10-08 thursday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2015-10-09 friday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2015-10-10 saturday time-after-pentecost 19 francis-borgia class-3 white
+2015-10-11 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +maternity-of-the-blessed-virgin-mary
+2015-10-12 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green
+2015-10-13 tuesday time-after-pentecost 20 edward class-3 white
+2015-10-14 wednesday time-after-pentecost 20 callistus-i class-3 red
+2015-10-15 thursday time-after-pentecost 20 teresa-of-avila class-3 white
+2015-10-16 friday time-after-pentecost 20 hedwig class-3 white
+2015-10-17 saturday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2015-10-18 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +luke-the-evangelist
+2015-10-19 monday time-after-pentecost 21 peter-of-alcantara class-3 white
+2015-10-20 tuesday time-after-pentecost 21 john-cantius class-3 white
+2015-10-21 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green +hilarion +ursula-and-companions
+2015-10-22 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2015-10-23 friday time-after-pentecost 21 anthony-mary-claret class-3 white
+2015-10-24 saturday time-after-pentecost 21 raphael-the-archangel class-3 white
+2015-10-25 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-chrysanthus-daria
+2015-10-26 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2015-10-27 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2015-10-28 wednesday time-after-pentecost 22 sts-simon-jude class-2 red
+2015-10-29 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2015-10-30 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2015-10-31 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2015-11-01 sunday time-after-pentecost 23 all-saints class-1 white
+2015-11-02 monday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2015-11-03 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2015-11-04 wednesday time-after-pentecost 23 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2015-11-05 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2015-11-06 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2015-11-07 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2015-11-08 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +four-holy-crowned-martyrs
+2015-11-09 monday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2015-11-10 tuesday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2015-11-11 wednesday time-after-pentecost 24 martin-of-tours class-3 white +menna
+2015-11-12 thursday time-after-pentecost 24 martin-i class-3 red
+2015-11-13 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +didacus
+2015-11-14 saturday time-after-pentecost 24 josaphat class-3 white
+2015-11-15 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +albert-the-great
+2015-11-16 monday time-after-pentecost 25 gertrude-the-great class-3 white
+2015-11-17 tuesday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2015-11-18 wednesday time-after-pentecost 25 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2015-11-19 thursday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2015-11-20 friday time-after-pentecost 25 felix-of-valois class-3 white
+2015-11-21 saturday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2015-11-22 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +cecilia
+2015-11-23 monday time-after-pentecost 26 clement-i class-3 red +felicity
+2015-11-24 tuesday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2015-11-25 wednesday time-after-pentecost 26 catherine-of-alexandria class-3 red
+2015-11-26 thursday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2015-11-27 friday time-after-pentecost 26 ef-time-after-pentecost-26-friday class-4 green
+2015-11-28 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green
+2015-11-29 sunday advent 1 ef-advent-sunday-1 class-1 violet +saturninus
+2015-11-30 monday advent 1 andrew class-2 red
+2015-12-01 tuesday advent 1 ef-advent-1-tuesday class-3 violet
+2015-12-02 wednesday advent 1 vivian class-3 red
+2015-12-03 thursday advent 1 francis-xavier class-3 white
+2015-12-04 friday advent 1 peter-chrysologus class-3 white
+2015-12-05 saturday advent 1 ef-advent-1-saturday class-3 violet +sabbas
+2015-12-06 sunday advent 2 ef-advent-sunday-2 class-2 violet +nicholas
+2015-12-07 monday advent 2 ambrose class-3 white
+2015-12-08 tuesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2015-12-09 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2015-12-10 thursday advent 2 ef-advent-2-thursday class-3 violet +melchiades
+2015-12-11 friday advent 2 damasus-i class-3 white
+2015-12-12 saturday advent 2 ef-advent-2-saturday class-3 violet
+2015-12-13 sunday advent 3 ef-advent-sunday-3 class-2 violet +lucy
+2015-12-14 monday advent 3 ef-advent-3-monday class-3 violet
+2015-12-15 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2015-12-16 wednesday advent 3 ef-advent-ember-wed class-2 violet +eusebius
+2015-12-17 thursday advent 3 ef-advent-3-thursday class-3 violet
+2015-12-18 friday advent 3 ef-advent-ember-fri class-2 violet
+2015-12-19 saturday advent 3 ef-advent-ember-sat class-2 violet
+2015-12-20 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2015-12-21 monday advent 4 thomas class-2 red
+2015-12-22 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2015-12-23 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2015-12-24 thursday advent 4 vigil-of-christmas class-1 violet
+2015-12-25 friday christmas - ef-nativity class-1 white
+2015-12-26 saturday christmas - stephen class-2 red
+2015-12-27 sunday christmas - ef-christmas-sunday-0 class-2 white +john-the-evangelist
+2015-12-28 monday christmas - holy-innocents class-2 red
+2015-12-29 tuesday christmas - ef-christmas-0-tuesday class-4 white +thomas-becket
+2015-12-30 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2015-12-31 thursday christmas - ef-christmas-0-thursday class-4 white +silvester
+2016-01-01 friday christmas - ef-circumcision class-1 white
+2016-01-02 saturday christmas - ef-christmas-0-saturday class-4 white
+2016-01-03 sunday christmas - ef-christmas-sunday-0 class-2 white
+2016-01-04 monday christmas - ef-christmas-0-monday class-4 white
+2016-01-05 tuesday christmas - ef-christmas-0-tuesday class-4 white +telesphorus-pope-and-martyr
+2016-01-06 wednesday time-after-epiphany - ef-epiphany class-1 white
+2016-01-07 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2016-01-08 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2016-01-09 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2016-01-10 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2016-01-11 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green +hyginus-pope-and-martyr
+2016-01-12 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2016-01-13 wednesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2016-01-14 thursday time-after-epiphany 2 hilary class-3 white +felicis
+2016-01-15 friday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2016-01-16 saturday time-after-epiphany 2 marcellus-i class-3 red
+2016-01-17 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +anthony
+2016-01-18 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +prisca
+2016-01-19 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2016-01-20 wednesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2016-01-21 thursday time-after-epiphany 3 agnes class-3 red
+2016-01-22 friday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2016-01-23 saturday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2016-01-24 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +timothy
+2016-01-25 monday septuagesima 1 conversion-of-st-paul class-3 white +peter
+2016-01-26 tuesday septuagesima 1 polycarp class-3 red
+2016-01-27 wednesday septuagesima 1 john-chrysostom class-3 white
+2016-01-28 thursday septuagesima 1 peter-nolasco class-3 white
+2016-01-29 friday septuagesima 1 francis-de-sales class-3 white
+2016-01-30 saturday septuagesima 1 martina class-3 red
+2016-01-31 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +john-bosco
+2016-02-01 monday septuagesima 2 ignatius-of-antioch class-3 red
+2016-02-02 tuesday septuagesima 2 purification-of-the-blessed-virgin-mary class-2 white
+2016-02-03 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet +blaise
+2016-02-04 thursday septuagesima 2 andrew-corsini class-3 white
+2016-02-05 friday septuagesima 2 agatha class-3 red
+2016-02-06 saturday septuagesima 2 titus class-3 white +dorothy
+2016-02-07 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +romuald
+2016-02-08 monday septuagesima 3 john-of-matha class-3 white
+2016-02-09 tuesday septuagesima 3 cyril-of-alexandria class-3 white +appollonia
+2016-02-10 wednesday lent - ef-ash-wednesday class-1 violet +scholastica
+2016-02-11 thursday lent - ef-lent-after-ashes-thursday class-3 violet +our-lady-of-lourdes
+2016-02-12 friday lent - ef-lent-after-ashes-friday class-3 violet +seven-holy-servite-founders
+2016-02-13 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2016-02-14 sunday lent 1 ef-lent-sunday-1 class-2 violet +valentine
+2016-02-15 monday lent 1 ef-lent-1-monday class-3 violet +sts-faustinus-jovita
+2016-02-16 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2016-02-17 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2016-02-18 thursday lent 1 ef-lent-1-thursday class-3 violet +simeon
+2016-02-19 friday lent 1 ef-lent-1-friday class-3 violet
+2016-02-20 saturday lent 1 ef-lent-1-saturday class-3 violet
+2016-02-21 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2016-02-22 monday lent 2 chair-of-st-peter class-2 white +paul
+2016-02-23 tuesday lent 2 ef-lent-2-tuesday class-3 violet +peter-damien
+2016-02-24 wednesday lent 2 matthias class-2 red
+2016-02-25 thursday lent 2 ef-lent-2-thursday class-3 violet
+2016-02-26 friday lent 2 ef-lent-2-friday class-3 violet
+2016-02-27 saturday lent 2 ef-lent-2-saturday class-3 violet +gabriel-of-our-lady-of-sorrows
+2016-02-28 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2016-02-29 monday lent 3 ef-lent-3-monday class-3 violet
+2016-03-01 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2016-03-02 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2016-03-03 thursday lent 3 ef-lent-3-thursday class-3 violet
+2016-03-04 friday lent 3 ef-lent-3-friday class-3 violet +casimir +lucius
+2016-03-05 saturday lent 3 ef-lent-3-saturday class-3 violet
+2016-03-06 sunday lent 4 ef-lent-sunday-4 class-2 violet +sts-felicitas-perpetua
+2016-03-07 monday lent 4 ef-lent-4-monday class-3 violet +thomas-aquinas
+2016-03-08 tuesday lent 4 ef-lent-4-tuesday class-3 violet +john-of-god
+2016-03-09 wednesday lent 4 ef-lent-4-wednesday class-3 violet +frances-rome
+2016-03-10 thursday lent 4 ef-lent-4-thursday class-3 violet +forty-holy-martyrs-of-sebaste
+2016-03-11 friday lent 4 ef-lent-4-friday class-3 violet
+2016-03-12 saturday lent 4 ef-lent-4-saturday class-3 violet +gregory-the-great
+2016-03-13 sunday passiontide 1 ef-passion-sunday class-1 violet
+2016-03-14 monday passiontide - ef-passiontide-0-monday class-3 violet
+2016-03-15 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2016-03-16 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2016-03-17 thursday passiontide - ef-passiontide-0-thursday class-3 violet +patrick
+2016-03-18 friday passiontide - ef-passiontide-0-friday class-3 violet +cyril-of-jerusalem
+2016-03-19 saturday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2016-03-20 sunday passiontide 2 ef-palm-sunday class-1 violet
+2016-03-21 monday passiontide - ef-passiontide-0-monday class-1 violet +benedict
+2016-03-22 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2016-03-23 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2016-03-24 thursday passiontide - ef-passiontide-0-thursday class-1 violet +gabriel-the-archangel
+2016-03-25 friday passiontide - ef-passiontide-0-friday class-1 violet
+2016-03-26 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2016-03-27 sunday easter 1 ef-easter-sunday class-1 white +john-damascene
+2016-03-28 monday easter 1 ef-easter-1-monday class-1 white +john-of-capistrano
+2016-03-29 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2016-03-30 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2016-03-31 thursday easter 1 ef-easter-1-thursday class-1 white
+2016-04-01 friday easter 1 ef-easter-1-friday class-1 white
+2016-04-02 saturday easter 1 ef-easter-1-saturday class-1 white +francis-of-paola
+2016-04-03 sunday easter 2 ef-low-sunday class-1 white
+2016-04-04 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white +isidore-of-seville
+2016-04-05 tuesday easter 2 ef-easter-2-tuesday class-4 white +vincent-ferrer
+2016-04-06 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2016-04-07 thursday easter 2 ef-easter-2-thursday class-4 white
+2016-04-08 friday easter 2 ef-easter-2-friday class-4 white
+2016-04-09 saturday easter 2 ef-easter-2-saturday class-4 white
+2016-04-10 sunday easter 3 ef-easter-sunday-3 class-2 white
+2016-04-11 monday easter 3 leo-the-great class-3 white
+2016-04-12 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2016-04-13 wednesday easter 3 hermenegild class-3 red
+2016-04-14 thursday easter 3 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2016-04-15 friday easter 3 ef-easter-3-friday class-4 white
+2016-04-16 saturday easter 3 ef-easter-3-saturday class-4 white
+2016-04-17 sunday easter 4 ef-easter-sunday-4 class-2 white +anicetus
+2016-04-18 monday easter 4 ef-easter-4-monday class-4 white
+2016-04-19 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2016-04-20 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2016-04-21 thursday easter 4 anselm class-3 white
+2016-04-22 friday easter 4 sts-soter-caius class-3 red
+2016-04-23 saturday easter 4 ef-easter-4-saturday class-4 white +george
+2016-04-24 sunday easter 5 ef-easter-sunday-5 class-2 white +fidelis-of-sigmaringen
+2016-04-25 monday easter 5 mark class-2 red
+2016-04-26 tuesday easter 5 sts-cletus-marcellinus class-3 red
+2016-04-27 wednesday easter 5 peter-canisius class-3 white
+2016-04-28 thursday easter 5 paul-of-the-cross class-3 white
+2016-04-29 friday easter 5 peter-of-verona class-3 red
+2016-04-30 saturday easter 5 catherine-of-siena class-3 white
+2016-05-01 sunday easter 6 joseph-the-workman class-1 white
+2016-05-02 monday easter 6 athanasius class-3 white
+2016-05-03 tuesday easter 6 ef-easter-6-tuesday class-4 white +sts-alexander-companions
+2016-05-04 wednesday easter - ef-ascension-vigil class-2 white +monica
+2016-05-05 thursday easter - ef-ascension class-1 white +pius-v
+2016-05-06 friday easter 6 ef-easter-6-friday class-4 white
+2016-05-07 saturday easter 6 stanislaus class-3 red
+2016-05-08 sunday easter 7 ef-easter-sunday-7 class-2 white
+2016-05-09 monday easter 7 gregory-of-nazianzen class-3 white
+2016-05-10 tuesday easter 7 antoninus class-3 white +gordiano-and-epimacho
+2016-05-11 wednesday easter 7 sts-philip-james class-2 red
+2016-05-12 thursday easter 7 sts-nereus-achilleus-domitilla-pancras class-3 red
+2016-05-13 friday easter 7 robert-bellarmine class-3 white
+2016-05-14 saturday easter - ef-pentecost-vigil class-1 red
+2016-05-15 sunday easter - ef-pentecost class-1 red +john-baptist-de-la-salle
+2016-05-16 monday easter 8 ef-easter-8-monday class-1 red +ubaldus
+2016-05-17 tuesday easter 8 ef-easter-8-tuesday class-1 red +paschal-baylon
+2016-05-18 wednesday easter 8 ef-easter-8-wednesday class-1 red +venantius
+2016-05-19 thursday easter 8 ef-easter-8-thursday class-1 red +peter-celestine +pudentiana-virginis
+2016-05-20 friday easter 8 ef-easter-8-friday class-1 red +bernardine-of-siena
+2016-05-21 saturday easter 8 ef-easter-8-saturday class-1 red
+2016-05-22 sunday time-after-pentecost 1 ef-trinity class-1 white
+2016-05-23 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2016-05-24 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green
+2016-05-25 wednesday time-after-pentecost 1 gregory-vii class-3 white +urban-pope-and-martyr
+2016-05-26 thursday time-after-pentecost - ef-corpus-christi class-1 white +philip-neri +eleutherius
+2016-05-27 friday time-after-pentecost 1 bede-the-venerable class-3 white +john-i
+2016-05-28 saturday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2016-05-29 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +mary-magdalene-de-pazzi
+2016-05-30 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green +felix-i
+2016-05-31 tuesday time-after-pentecost 2 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2016-06-01 wednesday time-after-pentecost 2 angela-merici class-3 white
+2016-06-02 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green +sts-marcellinus-peter-erasmus
+2016-06-03 friday time-after-pentecost - ef-sacred-heart class-1 white
+2016-06-04 saturday time-after-pentecost 2 francis-caracciolo class-3 white
+2016-06-05 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +boniface
+2016-06-06 monday time-after-pentecost 3 norbert class-3 white
+2016-06-07 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2016-06-08 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green
+2016-06-09 thursday time-after-pentecost 3 ef-time-after-pentecost-3-thursday class-4 green +sts-primus-felicianus
+2016-06-10 friday time-after-pentecost 3 margaret-of-scotland class-3 white
+2016-06-11 saturday time-after-pentecost 3 barnabas class-3 red
+2016-06-12 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +john-of-san-fecundo +basilidus
+2016-06-13 monday time-after-pentecost 4 anthony-of-padua class-3 white
+2016-06-14 tuesday time-after-pentecost 4 basil-the-great class-3 white
+2016-06-15 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green +vitus
+2016-06-16 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green
+2016-06-17 friday time-after-pentecost 4 gregory-barbarigo class-3 white
+2016-06-18 saturday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2016-06-19 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +julia-of-falconieri +sts-gervasius-and-protasius
+2016-06-20 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green +silverius
+2016-06-21 tuesday time-after-pentecost 5 aloysius-gongzaga class-3 white
+2016-06-22 wednesday time-after-pentecost 5 paulinus-of-nola class-3 white
+2016-06-23 thursday time-after-pentecost 5 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2016-06-24 friday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2016-06-25 saturday time-after-pentecost 5 william class-3 white
+2016-06-26 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +sts-john-paul
+2016-06-27 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2016-06-28 tuesday time-after-pentecost 6 vigil-of-sts-peter-paul class-2 violet
+2016-06-29 wednesday time-after-pentecost 6 sts-peter-paul class-1 red
+2016-06-30 thursday time-after-pentecost 6 in-commemoratione-sancti-pauli-apostoli class-3 red
+2016-07-01 friday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2016-07-02 saturday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2016-07-03 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +irenaeus
+2016-07-04 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2016-07-05 tuesday time-after-pentecost 7 anthony-mary-zaccariah class-3 white
+2016-07-06 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green
+2016-07-07 thursday time-after-pentecost 7 sts-cyril-methodius class-3 white
+2016-07-08 friday time-after-pentecost 7 elizabeth-of-portugal class-3 white
+2016-07-09 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green
+2016-07-10 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +seven-holy-brothers-and-sts-rufina-secunda
+2016-07-11 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +pius-i
+2016-07-12 tuesday time-after-pentecost 8 john-gualbert class-3 red +naboris-et-felicis
+2016-07-13 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green
+2016-07-14 thursday time-after-pentecost 8 bonaventure class-3 white
+2016-07-15 friday time-after-pentecost 8 henry-the-emperor class-3 white
+2016-07-16 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +our-lady-of-mt-carmel
+2016-07-17 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +alexis
+2016-07-18 monday time-after-pentecost 9 camillus-de-lellis class-3 red +symphorosa-and-sons
+2016-07-19 tuesday time-after-pentecost 9 vincent-de-paul class-3 white
+2016-07-20 wednesday time-after-pentecost 9 jerome-emiliani class-3 red +margaret
+2016-07-21 thursday time-after-pentecost 9 laurence-of-brindisi class-3 white +praxedis-virginis
+2016-07-22 friday time-after-pentecost 9 mary-magdalene class-3 white
+2016-07-23 saturday time-after-pentecost 9 apollinaris class-3 white +liborii
+2016-07-24 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +christina
+2016-07-25 monday time-after-pentecost 10 james-the-greater class-2 red +christopher
+2016-07-26 tuesday time-after-pentecost 10 anne-mother-of-the-blessed-virgin class-2 white
+2016-07-27 wednesday time-after-pentecost 10 ef-time-after-pentecost-10-wednesday class-4 green +pantaleon
+2016-07-28 thursday time-after-pentecost 10 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2016-07-29 friday time-after-pentecost 10 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2016-07-30 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green +sts-abdon-sennen
+2016-07-31 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +ignatius-loyola
+2016-08-01 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +holy-machabees
+2016-08-02 tuesday time-after-pentecost 11 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2016-08-03 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green
+2016-08-04 thursday time-after-pentecost 11 dominic class-3 white
+2016-08-05 friday time-after-pentecost 11 dedication-of-the-basilica-of-st-mary-major class-3 white
+2016-08-06 saturday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2016-08-07 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +cajetan +donatus
+2016-08-08 monday time-after-pentecost 12 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2016-08-09 tuesday time-after-pentecost 12 vigil-of-st-lawrence class-3 red +romanus
+2016-08-10 wednesday time-after-pentecost 12 lawrence class-2 red
+2016-08-11 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green +sts-tiburtius-susanna
+2016-08-12 friday time-after-pentecost 12 clare class-3 white
+2016-08-13 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +sts-hippolytus-cassian
+2016-08-14 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +vigil-of-the-assumption
+2016-08-15 monday time-after-pentecost 13 assumption-of-the-blessed-virgin-mary class-1 white
+2016-08-16 tuesday time-after-pentecost 13 joachim-father-of-the-blessed-virgin class-2 white
+2016-08-17 wednesday time-after-pentecost 13 hyacinth class-3 white
+2016-08-18 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +agapitus
+2016-08-19 friday time-after-pentecost 13 john-eudes class-3 white
+2016-08-20 saturday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2016-08-21 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +jane-frances-de-chantal
+2016-08-22 monday time-after-pentecost 14 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2016-08-23 tuesday time-after-pentecost 14 philip-benizi class-3 white
+2016-08-24 wednesday time-after-pentecost 14 bartholomew class-2 red
+2016-08-25 thursday time-after-pentecost 14 louis-ix class-3 white
+2016-08-26 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green +zephyrinus
+2016-08-27 saturday time-after-pentecost 14 joseph-calasance class-3 white
+2016-08-28 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +augustine +hermes
+2016-08-29 monday time-after-pentecost 15 beheading-of-st-john-the-baptist class-3 red +sabina
+2016-08-30 tuesday time-after-pentecost 15 rose-of-lima class-3 red +sts-felix-and-adauctus
+2016-08-31 wednesday time-after-pentecost 15 raymond-nonnatus class-3 white
+2016-09-01 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +giles +twelve-holy-brothers-martyrs
+2016-09-02 friday time-after-pentecost 15 stephen-of-hungary class-3 white
+2016-09-03 saturday time-after-pentecost 15 pius-x class-3 white
+2016-09-04 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2016-09-05 monday time-after-pentecost 16 lawrence-justinian class-3 white
+2016-09-06 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green
+2016-09-07 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green
+2016-09-08 thursday time-after-pentecost 16 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2016-09-09 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green +gorgonius
+2016-09-10 saturday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2016-09-11 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-protus-hyacinth
+2016-09-12 monday time-after-pentecost 17 most-holy-name-of-mary class-3 white
+2016-09-13 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green
+2016-09-14 wednesday time-after-pentecost 17 exaltation-of-the-holy-cross class-2 red
+2016-09-15 thursday time-after-pentecost 17 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2016-09-16 friday time-after-pentecost 17 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2016-09-17 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green +stigmata-of-st-francis
+2016-09-18 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +joseph-of-cupertino
+2016-09-19 monday time-after-pentecost 18 januarius-companions class-3 red
+2016-09-20 tuesday time-after-pentecost 18 ef-time-after-pentecost-18-tuesday class-4 green +sts-eustace-companions
+2016-09-21 wednesday time-after-pentecost 18 ef-september-ember-wed class-2 violet +matthew
+2016-09-22 thursday time-after-pentecost 18 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2016-09-23 friday time-after-pentecost 18 ef-september-ember-fri class-2 violet +linus +thecla
+2016-09-24 saturday time-after-pentecost 18 ef-september-ember-sat class-2 violet +our-lady-of-ransom
+2016-09-25 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green
+2016-09-26 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +sts-cyprian-justina
+2016-09-27 tuesday time-after-pentecost 19 sts-cosmas-damian class-3 red
+2016-09-28 wednesday time-after-pentecost 19 wenceslaus class-3 red
+2016-09-29 thursday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2016-09-30 friday time-after-pentecost 19 jerome class-3 white
+2016-10-01 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +remigius
+2016-10-02 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +holy-guardian-angels
+2016-10-03 monday time-after-pentecost 20 theresa-of-the-infant-jesus class-3 white
+2016-10-04 tuesday time-after-pentecost 20 francis-of-assisi class-3 white
+2016-10-05 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green +placid-companions
+2016-10-06 thursday time-after-pentecost 20 bruno class-3 white
+2016-10-07 friday time-after-pentecost 20 our-lady-of-the-rosary class-2 white +mark-i
+2016-10-08 saturday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2016-10-09 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +john-leonardi +dionysius-and-companions
+2016-10-10 monday time-after-pentecost 21 francis-borgia class-3 white
+2016-10-11 tuesday time-after-pentecost 21 maternity-of-the-blessed-virgin-mary class-2 white
+2016-10-12 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2016-10-13 thursday time-after-pentecost 21 edward class-3 white
+2016-10-14 friday time-after-pentecost 21 callistus-i class-3 red
+2016-10-15 saturday time-after-pentecost 21 teresa-of-avila class-3 white
+2016-10-16 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +hedwig
+2016-10-17 monday time-after-pentecost 22 margaret-mary-alacoque class-3 white
+2016-10-18 tuesday time-after-pentecost 22 luke-the-evangelist class-2 red
+2016-10-19 wednesday time-after-pentecost 22 peter-of-alcantara class-3 white
+2016-10-20 thursday time-after-pentecost 22 john-cantius class-3 white
+2016-10-21 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green +hilarion +ursula-and-companions
+2016-10-22 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2016-10-23 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +anthony-mary-claret
+2016-10-24 monday time-after-pentecost 23 raphael-the-archangel class-3 white
+2016-10-25 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green +sts-chrysanthus-daria
+2016-10-26 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2016-10-27 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2016-10-28 friday time-after-pentecost 23 sts-simon-jude class-2 red
+2016-10-29 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2016-10-30 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2016-10-31 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green
+2016-11-01 tuesday time-after-pentecost 24 all-saints class-1 white
+2016-11-02 wednesday time-after-pentecost 24 commemoration-of-all-souls class-1 black
+2016-11-03 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2016-11-04 friday time-after-pentecost 24 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2016-11-05 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green
+2016-11-06 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green
+2016-11-07 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green
+2016-11-08 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green +four-holy-crowned-martyrs
+2016-11-09 wednesday time-after-pentecost 25 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2016-11-10 thursday time-after-pentecost 25 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2016-11-11 friday time-after-pentecost 25 martin-of-tours class-3 white +menna
+2016-11-12 saturday time-after-pentecost 25 martin-i class-3 red
+2016-11-13 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +didacus
+2016-11-14 monday time-after-pentecost 26 josaphat class-3 white
+2016-11-15 tuesday time-after-pentecost 26 albert-the-great class-3 white
+2016-11-16 wednesday time-after-pentecost 26 gertrude-the-great class-3 white
+2016-11-17 thursday time-after-pentecost 26 gregory-the-wonderworker class-3 white
+2016-11-18 friday time-after-pentecost 26 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2016-11-19 saturday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2016-11-20 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +felix-of-valois
+2016-11-21 monday time-after-pentecost 27 presentation-of-the-blessed-virgin-mary class-3 white
+2016-11-22 tuesday time-after-pentecost 27 cecilia class-3 red
+2016-11-23 wednesday time-after-pentecost 27 clement-i class-3 red +felicity
+2016-11-24 thursday time-after-pentecost 27 john-of-the-cross class-3 white +chrysogonus
+2016-11-25 friday time-after-pentecost 27 catherine-of-alexandria class-3 red
+2016-11-26 saturday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2016-11-27 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2016-11-28 monday advent 1 ef-advent-1-monday class-3 violet
+2016-11-29 tuesday advent 1 ef-advent-1-tuesday class-3 violet +saturninus
+2016-11-30 wednesday advent 1 andrew class-2 red
+2016-12-01 thursday advent 1 ef-advent-1-thursday class-3 violet
+2016-12-02 friday advent 1 vivian class-3 red
+2016-12-03 saturday advent 1 francis-xavier class-3 white
+2016-12-04 sunday advent 2 ef-advent-sunday-2 class-2 violet +peter-chrysologus
+2016-12-05 monday advent 2 ef-advent-2-monday class-3 violet +sabbas
+2016-12-06 tuesday advent 2 nicholas class-3 white
+2016-12-07 wednesday advent 2 ambrose class-3 white
+2016-12-08 thursday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2016-12-09 friday advent 2 ef-advent-2-friday class-3 violet
+2016-12-10 saturday advent 2 ef-advent-2-saturday class-3 violet +melchiades
+2016-12-11 sunday advent 3 ef-advent-sunday-3 class-2 violet +damasus-i
+2016-12-12 monday advent 3 ef-advent-3-monday class-3 violet
+2016-12-13 tuesday advent 3 lucy class-3 red
+2016-12-14 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2016-12-15 thursday advent 3 ef-advent-3-thursday class-3 violet
+2016-12-16 friday advent 3 ef-advent-ember-fri class-2 violet +eusebius
+2016-12-17 saturday advent 3 ef-advent-ember-sat class-2 violet
+2016-12-18 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2016-12-19 monday advent 4 ef-advent-4-monday class-3 violet
+2016-12-20 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2016-12-21 wednesday advent 4 thomas class-2 red
+2016-12-22 thursday advent 4 ef-advent-4-thursday class-3 violet
+2016-12-23 friday advent 4 ef-advent-4-friday class-3 violet
+2016-12-24 saturday advent 4 vigil-of-christmas class-1 violet
+2016-12-25 sunday christmas - ef-nativity class-1 white
+2016-12-26 monday christmas - stephen class-2 red
+2016-12-27 tuesday christmas - john-the-evangelist class-2 white
+2016-12-28 wednesday christmas - holy-innocents class-2 red
+2016-12-29 thursday christmas - ef-christmas-0-thursday class-4 white +thomas-becket
+2016-12-30 friday christmas - ef-christmas-0-friday class-4 white
+2016-12-31 saturday christmas - ef-christmas-0-saturday class-4 white +silvester
+2017-01-01 sunday christmas - ef-circumcision class-1 white
+2017-01-02 monday christmas - ef-christmas-0-monday class-4 white
+2017-01-03 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2017-01-04 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2017-01-05 thursday christmas - ef-christmas-0-thursday class-4 white +telesphorus-pope-and-martyr
+2017-01-06 friday time-after-epiphany - ef-epiphany class-1 white
+2017-01-07 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2017-01-08 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2017-01-09 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2017-01-10 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2017-01-11 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green +hyginus-pope-and-martyr
+2017-01-12 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2017-01-13 friday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2017-01-14 saturday time-after-epiphany 2 hilary class-3 white +felicis
+2017-01-15 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +paul-the-first-hermit +maur-abbot
+2017-01-16 monday time-after-epiphany 2 marcellus-i class-3 red
+2017-01-17 tuesday time-after-epiphany 2 anthony class-3 white
+2017-01-18 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +prisca
+2017-01-19 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2017-01-20 friday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2017-01-21 saturday time-after-epiphany 3 agnes class-3 red
+2017-01-22 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-vincent-anastasius
+2017-01-23 monday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2017-01-24 tuesday time-after-epiphany 3 timothy class-3 red
+2017-01-25 wednesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2017-01-26 thursday time-after-epiphany 3 polycarp class-3 red
+2017-01-27 friday time-after-epiphany 4 john-chrysostom class-3 white
+2017-01-28 saturday time-after-epiphany 4 peter-nolasco class-3 white
+2017-01-29 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +francis-de-sales
+2017-01-30 monday time-after-epiphany 4 martina class-3 red
+2017-01-31 tuesday time-after-epiphany 4 john-bosco class-3 white
+2017-02-01 wednesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2017-02-02 thursday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2017-02-03 friday time-after-epiphany 5 ef-time-after-epiphany-5-friday class-4 green +blaise
+2017-02-04 saturday time-after-epiphany 5 andrew-corsini class-3 white
+2017-02-05 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +agatha
+2017-02-06 monday time-after-epiphany 5 titus class-3 white +dorothy
+2017-02-07 tuesday time-after-epiphany 5 romuald class-3 white
+2017-02-08 wednesday time-after-epiphany 5 john-of-matha class-3 white
+2017-02-09 thursday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2017-02-10 friday time-after-epiphany 6 scholastica class-3 white
+2017-02-11 saturday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2017-02-12 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +seven-holy-servite-founders
+2017-02-13 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet
+2017-02-14 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +valentine
+2017-02-15 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet +sts-faustinus-jovita
+2017-02-16 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2017-02-17 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2017-02-18 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet +simeon
+2017-02-19 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2017-02-20 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2017-02-21 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2017-02-22 wednesday septuagesima 2 chair-of-st-peter class-2 white +paul
+2017-02-23 thursday septuagesima 2 peter-damien class-3 white
+2017-02-24 friday septuagesima 2 matthias class-2 red
+2017-02-25 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2017-02-26 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2017-02-27 monday septuagesima 3 gabriel-of-our-lady-of-sorrows class-3 white
+2017-02-28 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2017-03-01 wednesday lent - ef-ash-wednesday class-1 violet
+2017-03-02 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2017-03-03 friday lent - ef-lent-after-ashes-friday class-3 violet
+2017-03-04 saturday lent - ef-lent-after-ashes-saturday class-3 violet +casimir +lucius
+2017-03-05 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2017-03-06 monday lent 1 ef-lent-1-monday class-3 violet +sts-felicitas-perpetua
+2017-03-07 tuesday lent 1 ef-lent-1-tuesday class-3 violet +thomas-aquinas
+2017-03-08 wednesday lent 1 ef-lent-1-wednesday class-3 violet +john-of-god
+2017-03-09 thursday lent 1 ef-lent-1-thursday class-3 violet +frances-rome
+2017-03-10 friday lent 1 ef-lent-1-friday class-3 violet +forty-holy-martyrs-of-sebaste
+2017-03-11 saturday lent 1 ef-lent-1-saturday class-3 violet
+2017-03-12 sunday lent 2 ef-lent-sunday-2 class-2 violet +gregory-the-great
+2017-03-13 monday lent 2 ef-lent-2-monday class-3 violet
+2017-03-14 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2017-03-15 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2017-03-16 thursday lent 2 ef-lent-2-thursday class-3 violet
+2017-03-17 friday lent 2 ef-lent-2-friday class-3 violet +patrick
+2017-03-18 saturday lent 2 ef-lent-2-saturday class-3 violet +cyril-of-jerusalem
+2017-03-19 sunday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2017-03-20 monday lent 3 ef-lent-3-monday class-3 violet
+2017-03-21 tuesday lent 3 ef-lent-3-tuesday class-3 violet +benedict
+2017-03-22 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2017-03-23 thursday lent 3 ef-lent-3-thursday class-3 violet
+2017-03-24 friday lent 3 ef-lent-3-friday class-3 violet +gabriel-the-archangel
+2017-03-25 saturday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2017-03-26 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2017-03-27 monday lent 4 ef-lent-4-monday class-3 violet +john-damascene
+2017-03-28 tuesday lent 4 ef-lent-4-tuesday class-3 violet +john-of-capistrano
+2017-03-29 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2017-03-30 thursday lent 4 ef-lent-4-thursday class-3 violet
+2017-03-31 friday lent 4 ef-lent-4-friday class-3 violet
+2017-04-01 saturday lent 4 ef-lent-4-saturday class-3 violet
+2017-04-02 sunday passiontide 1 ef-passion-sunday class-1 violet +francis-of-paola
+2017-04-03 monday passiontide - ef-passiontide-0-monday class-3 violet
+2017-04-04 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +isidore-of-seville
+2017-04-05 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +vincent-ferrer
+2017-04-06 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2017-04-07 friday passiontide - ef-passiontide-0-friday class-3 violet
+2017-04-08 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2017-04-09 sunday passiontide 2 ef-palm-sunday class-1 violet
+2017-04-10 monday passiontide - ef-passiontide-0-monday class-1 violet
+2017-04-11 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +leo-the-great
+2017-04-12 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2017-04-13 thursday passiontide - ef-passiontide-0-thursday class-1 violet +hermenegild
+2017-04-14 friday passiontide - ef-passiontide-0-friday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2017-04-15 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2017-04-16 sunday easter 1 ef-easter-sunday class-1 white
+2017-04-17 monday easter 1 ef-easter-1-monday class-1 white +anicetus
+2017-04-18 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2017-04-19 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2017-04-20 thursday easter 1 ef-easter-1-thursday class-1 white
+2017-04-21 friday easter 1 ef-easter-1-friday class-1 white +anselm
+2017-04-22 saturday easter 1 ef-easter-1-saturday class-1 white +sts-soter-caius
+2017-04-23 sunday easter 2 ef-low-sunday class-1 white +george
+2017-04-24 monday easter 2 fidelis-of-sigmaringen class-3 red
+2017-04-25 tuesday easter 2 mark class-2 red
+2017-04-26 wednesday easter 2 sts-cletus-marcellinus class-3 red
+2017-04-27 thursday easter 2 peter-canisius class-3 white
+2017-04-28 friday easter 2 paul-of-the-cross class-3 white
+2017-04-29 saturday easter 2 peter-of-verona class-3 red
+2017-04-30 sunday easter 3 ef-easter-sunday-3 class-2 white +catherine-of-siena
+2017-05-01 monday easter 3 joseph-the-workman class-1 white
+2017-05-02 tuesday easter 3 athanasius class-3 white
+2017-05-03 wednesday easter 3 ef-easter-3-wednesday class-4 white +sts-alexander-companions
+2017-05-04 thursday easter 3 monica class-3 white
+2017-05-05 friday easter 3 pius-v class-3 white
+2017-05-06 saturday easter 3 ef-easter-3-saturday class-4 white
+2017-05-07 sunday easter 4 ef-easter-sunday-4 class-2 white +stanislaus
+2017-05-08 monday easter 4 ef-easter-4-monday class-4 white
+2017-05-09 tuesday easter 4 gregory-of-nazianzen class-3 white
+2017-05-10 wednesday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2017-05-11 thursday easter 4 sts-philip-james class-2 red
+2017-05-12 friday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2017-05-13 saturday easter 4 robert-bellarmine class-3 white
+2017-05-14 sunday easter 5 ef-easter-sunday-5 class-2 white
+2017-05-15 monday easter 5 john-baptist-de-la-salle class-3 white
+2017-05-16 tuesday easter 5 ef-easter-5-tuesday class-4 white +ubaldus
+2017-05-17 wednesday easter 5 paschal-baylon class-3 white
+2017-05-18 thursday easter 5 venantius class-3 red
+2017-05-19 friday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2017-05-20 saturday easter 5 bernardine-of-siena class-3 white
+2017-05-21 sunday easter 6 ef-easter-sunday-6 class-2 white
+2017-05-22 monday easter 6 ef-easter-6-monday class-4 white
+2017-05-23 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2017-05-24 wednesday easter - ef-ascension-vigil class-2 white
+2017-05-25 thursday easter - ef-ascension class-1 white +gregory-vii +urban-pope-and-martyr
+2017-05-26 friday easter 6 philip-neri class-3 white +eleutherius
+2017-05-27 saturday easter 6 bede-the-venerable class-3 white +john-i
+2017-05-28 sunday easter 7 ef-easter-sunday-7 class-2 white +augustine-of-canterbury
+2017-05-29 monday easter 7 mary-magdalene-de-pazzi class-3 white
+2017-05-30 tuesday easter 7 ef-easter-7-tuesday class-4 white +felix-i
+2017-05-31 wednesday easter 7 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2017-06-01 thursday easter 7 angela-merici class-3 white
+2017-06-02 friday easter 7 ef-easter-7-friday class-4 white +sts-marcellinus-peter-erasmus
+2017-06-03 saturday easter - ef-pentecost-vigil class-1 red
+2017-06-04 sunday easter - ef-pentecost class-1 red +francis-caracciolo
+2017-06-05 monday easter 8 ef-easter-8-monday class-1 red +boniface
+2017-06-06 tuesday easter 8 ef-easter-8-tuesday class-1 red +norbert
+2017-06-07 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2017-06-08 thursday easter 8 ef-easter-8-thursday class-1 red
+2017-06-09 friday easter 8 ef-easter-8-friday class-1 red +sts-primus-felicianus
+2017-06-10 saturday easter 8 ef-easter-8-saturday class-1 red +margaret-of-scotland
+2017-06-11 sunday time-after-pentecost 1 ef-trinity class-1 white +barnabas
+2017-06-12 monday time-after-pentecost 1 john-of-san-fecundo class-3 red +basilidus
+2017-06-13 tuesday time-after-pentecost 1 anthony-of-padua class-3 white
+2017-06-14 wednesday time-after-pentecost 1 basil-the-great class-3 white
+2017-06-15 thursday time-after-pentecost - ef-corpus-christi class-1 white +vitus
+2017-06-16 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green
+2017-06-17 saturday time-after-pentecost 1 gregory-barbarigo class-3 white
+2017-06-18 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +ephrem-of-syria +marcus-and-marcellianus
+2017-06-19 monday time-after-pentecost 2 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2017-06-20 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green +silverius
+2017-06-21 wednesday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2017-06-22 thursday time-after-pentecost 2 paulinus-of-nola class-3 white
+2017-06-23 friday time-after-pentecost - ef-sacred-heart class-1 white +vigil-of-the-nativity-of-st-john-the-baptist
+2017-06-24 saturday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2017-06-25 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +william
+2017-06-26 monday time-after-pentecost 3 sts-john-paul class-3 red
+2017-06-27 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2017-06-28 wednesday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2017-06-29 thursday time-after-pentecost 3 sts-peter-paul class-1 red
+2017-06-30 friday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2017-07-01 saturday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2017-07-02 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +visitation-of-the-blessed-virgin-mary +processus-and-martinian
+2017-07-03 monday time-after-pentecost 4 irenaeus class-3 red
+2017-07-04 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2017-07-05 wednesday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2017-07-06 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green
+2017-07-07 friday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2017-07-08 saturday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2017-07-09 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2017-07-10 monday time-after-pentecost 5 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2017-07-11 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green +pius-i
+2017-07-12 wednesday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2017-07-13 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2017-07-14 friday time-after-pentecost 5 bonaventure class-3 white
+2017-07-15 saturday time-after-pentecost 5 henry-the-emperor class-3 white
+2017-07-16 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +our-lady-of-mt-carmel
+2017-07-17 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green +alexis
+2017-07-18 tuesday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2017-07-19 wednesday time-after-pentecost 6 vincent-de-paul class-3 white
+2017-07-20 thursday time-after-pentecost 6 jerome-emiliani class-3 red +margaret
+2017-07-21 friday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2017-07-22 saturday time-after-pentecost 6 mary-magdalene class-3 white
+2017-07-23 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +apollinaris +liborii
+2017-07-24 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +christina
+2017-07-25 tuesday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2017-07-26 wednesday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2017-07-27 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +pantaleon
+2017-07-28 friday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2017-07-29 saturday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2017-07-30 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +sts-abdon-sennen
+2017-07-31 monday time-after-pentecost 8 ignatius-loyola class-3 white
+2017-08-01 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +holy-machabees
+2017-08-02 wednesday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2017-08-03 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green
+2017-08-04 friday time-after-pentecost 8 dominic class-3 white
+2017-08-05 saturday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2017-08-06 sunday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2017-08-07 monday time-after-pentecost 9 cajetan class-3 white +donatus
+2017-08-08 tuesday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2017-08-09 wednesday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2017-08-10 thursday time-after-pentecost 9 lawrence class-2 red
+2017-08-11 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +sts-tiburtius-susanna
+2017-08-12 saturday time-after-pentecost 9 clare class-3 white
+2017-08-13 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +sts-hippolytus-cassian
+2017-08-14 monday time-after-pentecost 10 vigil-of-the-assumption class-2 white
+2017-08-15 tuesday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2017-08-16 wednesday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2017-08-17 thursday time-after-pentecost 10 hyacinth class-3 white
+2017-08-18 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +agapitus
+2017-08-19 saturday time-after-pentecost 10 john-eudes class-3 white
+2017-08-20 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +bernard-of-clairvaux
+2017-08-21 monday time-after-pentecost 11 jane-frances-de-chantal class-3 white
+2017-08-22 tuesday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2017-08-23 wednesday time-after-pentecost 11 philip-benizi class-3 white
+2017-08-24 thursday time-after-pentecost 11 bartholomew class-2 red
+2017-08-25 friday time-after-pentecost 11 louis-ix class-3 white
+2017-08-26 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green +zephyrinus
+2017-08-27 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +joseph-calasance
+2017-08-28 monday time-after-pentecost 12 augustine class-3 red +hermes
+2017-08-29 tuesday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2017-08-30 wednesday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2017-08-31 thursday time-after-pentecost 12 raymond-nonnatus class-3 white
+2017-09-01 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green +giles +twelve-holy-brothers-martyrs
+2017-09-02 saturday time-after-pentecost 12 stephen-of-hungary class-3 white
+2017-09-03 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +pius-x
+2017-09-04 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green
+2017-09-05 tuesday time-after-pentecost 13 lawrence-justinian class-3 white
+2017-09-06 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green
+2017-09-07 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green
+2017-09-08 friday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2017-09-09 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +gorgonius
+2017-09-10 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +nicholas-of-tolentino
+2017-09-11 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +sts-protus-hyacinth
+2017-09-12 tuesday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2017-09-13 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green
+2017-09-14 thursday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2017-09-15 friday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2017-09-16 saturday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2017-09-17 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +stigmata-of-st-francis
+2017-09-18 monday time-after-pentecost 15 joseph-of-cupertino class-3 white
+2017-09-19 tuesday time-after-pentecost 15 januarius-companions class-3 red
+2017-09-20 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +sts-eustace-companions
+2017-09-21 thursday time-after-pentecost 15 matthew class-2 red
+2017-09-22 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2017-09-23 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +linus +thecla
+2017-09-24 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +our-lady-of-ransom
+2017-09-25 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green
+2017-09-26 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +sts-cyprian-justina
+2017-09-27 wednesday time-after-pentecost 16 sts-cosmas-damian class-3 red
+2017-09-28 thursday time-after-pentecost 16 wenceslaus class-3 red
+2017-09-29 friday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2017-09-30 saturday time-after-pentecost 16 jerome class-3 white
+2017-10-01 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +remigius
+2017-10-02 monday time-after-pentecost 17 holy-guardian-angels class-3 white
+2017-10-03 tuesday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2017-10-04 wednesday time-after-pentecost 17 francis-of-assisi class-3 white
+2017-10-05 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +placid-companions
+2017-10-06 friday time-after-pentecost 17 bruno class-3 white
+2017-10-07 saturday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2017-10-08 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +bridget-of-sweden +sergio-baccho-marcello-and-apulejo-martyrs
+2017-10-09 monday time-after-pentecost 18 john-leonardi class-3 white +dionysius-and-companions
+2017-10-10 tuesday time-after-pentecost 18 francis-borgia class-3 white
+2017-10-11 wednesday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2017-10-12 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green
+2017-10-13 friday time-after-pentecost 18 edward class-3 white
+2017-10-14 saturday time-after-pentecost 18 callistus-i class-3 red
+2017-10-15 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +teresa-of-avila
+2017-10-16 monday time-after-pentecost 19 hedwig class-3 white
+2017-10-17 tuesday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2017-10-18 wednesday time-after-pentecost 19 luke-the-evangelist class-2 red
+2017-10-19 thursday time-after-pentecost 19 peter-of-alcantara class-3 white
+2017-10-20 friday time-after-pentecost 19 john-cantius class-3 white
+2017-10-21 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +hilarion +ursula-and-companions
+2017-10-22 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green
+2017-10-23 monday time-after-pentecost 20 anthony-mary-claret class-3 white
+2017-10-24 tuesday time-after-pentecost 20 raphael-the-archangel class-3 white
+2017-10-25 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green +sts-chrysanthus-daria
+2017-10-26 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2017-10-27 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2017-10-28 saturday time-after-pentecost 20 sts-simon-jude class-2 red
+2017-10-29 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2017-10-30 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2017-10-31 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2017-11-01 wednesday time-after-pentecost 21 all-saints class-1 white
+2017-11-02 thursday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2017-11-03 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2017-11-04 saturday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2017-11-05 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2017-11-06 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2017-11-07 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2017-11-08 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green +four-holy-crowned-martyrs
+2017-11-09 thursday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2017-11-10 friday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2017-11-11 saturday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2017-11-12 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +martin-i
+2017-11-13 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green +didacus
+2017-11-14 tuesday time-after-pentecost 23 josaphat class-3 white
+2017-11-15 wednesday time-after-pentecost 23 albert-the-great class-3 white
+2017-11-16 thursday time-after-pentecost 23 gertrude-the-great class-3 white
+2017-11-17 friday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2017-11-18 saturday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2017-11-19 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +elizabeth-of-hungary +pontian
+2017-11-20 monday time-after-pentecost 24 felix-of-valois class-3 white
+2017-11-21 tuesday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2017-11-22 wednesday time-after-pentecost 24 cecilia class-3 red
+2017-11-23 thursday time-after-pentecost 24 clement-i class-3 red +felicity
+2017-11-24 friday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2017-11-25 saturday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2017-11-26 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +sylvester +peter-of-alexandria
+2017-11-27 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green
+2017-11-28 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green
+2017-11-29 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green +saturninus
+2017-11-30 thursday time-after-pentecost 25 andrew class-2 red
+2017-12-01 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green
+2017-12-02 saturday time-after-pentecost 25 vivian class-3 red
+2017-12-03 sunday advent 1 ef-advent-sunday-1 class-1 violet +francis-xavier
+2017-12-04 monday advent 1 peter-chrysologus class-3 white
+2017-12-05 tuesday advent 1 ef-advent-1-tuesday class-3 violet +sabbas
+2017-12-06 wednesday advent 1 nicholas class-3 white
+2017-12-07 thursday advent 1 ambrose class-3 white
+2017-12-08 friday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2017-12-09 saturday advent 1 ef-advent-1-saturday class-3 violet
+2017-12-10 sunday advent 2 ef-advent-sunday-2 class-2 violet +melchiades
+2017-12-11 monday advent 2 damasus-i class-3 white
+2017-12-12 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2017-12-13 wednesday advent 2 lucy class-3 red
+2017-12-14 thursday advent 2 ef-advent-2-thursday class-3 violet
+2017-12-15 friday advent 2 ef-advent-2-friday class-3 violet
+2017-12-16 saturday advent 2 eusebius class-3 red
+2017-12-17 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2017-12-18 monday advent 3 ef-advent-3-monday class-3 violet
+2017-12-19 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2017-12-20 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2017-12-21 thursday advent 3 thomas class-2 red
+2017-12-22 friday advent 3 ef-advent-ember-fri class-2 violet
+2017-12-23 saturday advent 3 ef-advent-ember-sat class-2 violet
+2017-12-24 sunday advent 4 vigil-of-christmas class-1 violet
+2017-12-25 monday christmas - ef-nativity class-1 white
+2017-12-26 tuesday christmas - stephen class-2 red
+2017-12-27 wednesday christmas - john-the-evangelist class-2 white
+2017-12-28 thursday christmas - holy-innocents class-2 red
+2017-12-29 friday christmas - ef-christmas-0-friday class-4 white +thomas-becket
+2017-12-30 saturday christmas - ef-christmas-0-saturday class-4 white
+2017-12-31 sunday christmas - ef-christmas-sunday-0 class-2 white +silvester
+2018-01-01 monday christmas - ef-circumcision class-1 white
+2018-01-02 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2018-01-03 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2018-01-04 thursday christmas - ef-christmas-0-thursday class-4 white
+2018-01-05 friday christmas - ef-christmas-0-friday class-4 white +telesphorus-pope-and-martyr
+2018-01-06 saturday time-after-epiphany - ef-epiphany class-1 white
+2018-01-07 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2018-01-08 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2018-01-09 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2018-01-10 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2018-01-11 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green +hyginus-pope-and-martyr
+2018-01-12 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2018-01-13 saturday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2018-01-14 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +hilary +felicis
+2018-01-15 monday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2018-01-16 tuesday time-after-epiphany 2 marcellus-i class-3 red
+2018-01-17 wednesday time-after-epiphany 2 anthony class-3 white
+2018-01-18 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +prisca
+2018-01-19 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2018-01-20 saturday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2018-01-21 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +agnes
+2018-01-22 monday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2018-01-23 tuesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2018-01-24 wednesday time-after-epiphany 3 timothy class-3 red
+2018-01-25 thursday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2018-01-26 friday time-after-epiphany 3 polycarp class-3 red
+2018-01-27 saturday time-after-epiphany 4 john-chrysostom class-3 white
+2018-01-28 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +peter-nolasco
+2018-01-29 monday septuagesima 1 francis-de-sales class-3 white
+2018-01-30 tuesday septuagesima 1 martina class-3 red
+2018-01-31 wednesday septuagesima 1 john-bosco class-3 white
+2018-02-01 thursday septuagesima 1 ignatius-of-antioch class-3 red
+2018-02-02 friday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2018-02-03 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet +blaise
+2018-02-04 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +andrew-corsini
+2018-02-05 monday septuagesima 2 agatha class-3 red
+2018-02-06 tuesday septuagesima 2 titus class-3 white +dorothy
+2018-02-07 wednesday septuagesima 2 romuald class-3 white
+2018-02-08 thursday septuagesima 2 john-of-matha class-3 white
+2018-02-09 friday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2018-02-10 saturday septuagesima 2 scholastica class-3 white
+2018-02-11 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +our-lady-of-lourdes
+2018-02-12 monday septuagesima 3 seven-holy-servite-founders class-3 white
+2018-02-13 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2018-02-14 wednesday lent - ef-ash-wednesday class-1 violet +valentine
+2018-02-15 thursday lent - ef-lent-after-ashes-thursday class-3 violet +sts-faustinus-jovita
+2018-02-16 friday lent - ef-lent-after-ashes-friday class-3 violet
+2018-02-17 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2018-02-18 sunday lent 1 ef-lent-sunday-1 class-2 violet +simeon
+2018-02-19 monday lent 1 ef-lent-1-monday class-3 violet
+2018-02-20 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2018-02-21 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2018-02-22 thursday lent 1 chair-of-st-peter class-2 white +paul
+2018-02-23 friday lent 1 ef-lent-1-friday class-3 violet +peter-damien
+2018-02-24 saturday lent 1 matthias class-2 red
+2018-02-25 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2018-02-26 monday lent 2 ef-lent-2-monday class-3 violet
+2018-02-27 tuesday lent 2 ef-lent-2-tuesday class-3 violet +gabriel-of-our-lady-of-sorrows
+2018-02-28 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2018-03-01 thursday lent 2 ef-lent-2-thursday class-3 violet
+2018-03-02 friday lent 2 ef-lent-2-friday class-3 violet
+2018-03-03 saturday lent 2 ef-lent-2-saturday class-3 violet
+2018-03-04 sunday lent 3 ef-lent-sunday-3 class-2 violet +casimir +lucius
+2018-03-05 monday lent 3 ef-lent-3-monday class-3 violet
+2018-03-06 tuesday lent 3 ef-lent-3-tuesday class-3 violet +sts-felicitas-perpetua
+2018-03-07 wednesday lent 3 ef-lent-3-wednesday class-3 violet +thomas-aquinas
+2018-03-08 thursday lent 3 ef-lent-3-thursday class-3 violet +john-of-god
+2018-03-09 friday lent 3 ef-lent-3-friday class-3 violet +frances-rome
+2018-03-10 saturday lent 3 ef-lent-3-saturday class-3 violet +forty-holy-martyrs-of-sebaste
+2018-03-11 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2018-03-12 monday lent 4 ef-lent-4-monday class-3 violet +gregory-the-great
+2018-03-13 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2018-03-14 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2018-03-15 thursday lent 4 ef-lent-4-thursday class-3 violet
+2018-03-16 friday lent 4 ef-lent-4-friday class-3 violet
+2018-03-17 saturday lent 4 ef-lent-4-saturday class-3 violet +patrick
+2018-03-18 sunday passiontide 1 ef-passion-sunday class-1 violet +cyril-of-jerusalem
+2018-03-19 monday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2018-03-20 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2018-03-21 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +benedict
+2018-03-22 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2018-03-23 friday passiontide - ef-passiontide-0-friday class-3 violet
+2018-03-24 saturday passiontide - ef-passiontide-0-saturday class-3 violet +gabriel-the-archangel
+2018-03-25 sunday passiontide 2 ef-palm-sunday class-1 violet
+2018-03-26 monday passiontide - ef-passiontide-0-monday class-1 violet
+2018-03-27 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +john-damascene
+2018-03-28 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +john-of-capistrano
+2018-03-29 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2018-03-30 friday passiontide - ef-passiontide-0-friday class-1 violet
+2018-03-31 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2018-04-01 sunday easter 1 ef-easter-sunday class-1 white
+2018-04-02 monday easter 1 ef-easter-1-monday class-1 white +francis-of-paola
+2018-04-03 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2018-04-04 wednesday easter 1 ef-easter-1-wednesday class-1 white +isidore-of-seville
+2018-04-05 thursday easter 1 ef-easter-1-thursday class-1 white +vincent-ferrer
+2018-04-06 friday easter 1 ef-easter-1-friday class-1 white
+2018-04-07 saturday easter 1 ef-easter-1-saturday class-1 white
+2018-04-08 sunday easter 2 ef-low-sunday class-1 white
+2018-04-09 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white
+2018-04-10 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2018-04-11 wednesday easter 2 leo-the-great class-3 white
+2018-04-12 thursday easter 2 ef-easter-2-thursday class-4 white
+2018-04-13 friday easter 2 hermenegild class-3 red
+2018-04-14 saturday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2018-04-15 sunday easter 3 ef-easter-sunday-3 class-2 white
+2018-04-16 monday easter 3 ef-easter-3-monday class-4 white
+2018-04-17 tuesday easter 3 ef-easter-3-tuesday class-4 white +anicetus
+2018-04-18 wednesday easter 3 ef-easter-3-wednesday class-4 white
+2018-04-19 thursday easter 3 ef-easter-3-thursday class-4 white
+2018-04-20 friday easter 3 ef-easter-3-friday class-4 white
+2018-04-21 saturday easter 3 anselm class-3 white
+2018-04-22 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-soter-caius
+2018-04-23 monday easter 4 ef-easter-4-monday class-4 white +george
+2018-04-24 tuesday easter 4 fidelis-of-sigmaringen class-3 red
+2018-04-25 wednesday easter 4 mark class-2 red
+2018-04-26 thursday easter 4 sts-cletus-marcellinus class-3 red
+2018-04-27 friday easter 4 peter-canisius class-3 white
+2018-04-28 saturday easter 4 paul-of-the-cross class-3 white
+2018-04-29 sunday easter 5 ef-easter-sunday-5 class-2 white +peter-of-verona
+2018-04-30 monday easter 5 catherine-of-siena class-3 white
+2018-05-01 tuesday easter 5 joseph-the-workman class-1 white
+2018-05-02 wednesday easter 5 athanasius class-3 white
+2018-05-03 thursday easter 5 ef-easter-5-thursday class-4 white +sts-alexander-companions
+2018-05-04 friday easter 5 monica class-3 white
+2018-05-05 saturday easter 5 pius-v class-3 white
+2018-05-06 sunday easter 6 ef-easter-sunday-6 class-2 white
+2018-05-07 monday easter 6 stanislaus class-3 red
+2018-05-08 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2018-05-09 wednesday easter - ef-ascension-vigil class-2 white +gregory-of-nazianzen
+2018-05-10 thursday easter - ef-ascension class-1 white +antoninus +gordiano-and-epimacho
+2018-05-11 friday easter 6 sts-philip-james class-2 red
+2018-05-12 saturday easter 6 sts-nereus-achilleus-domitilla-pancras class-3 red
+2018-05-13 sunday easter 7 ef-easter-sunday-7 class-2 white +robert-bellarmine
+2018-05-14 monday easter 7 ef-easter-7-monday class-4 white
+2018-05-15 tuesday easter 7 john-baptist-de-la-salle class-3 white
+2018-05-16 wednesday easter 7 ef-easter-7-wednesday class-4 white +ubaldus
+2018-05-17 thursday easter 7 paschal-baylon class-3 white
+2018-05-18 friday easter 7 venantius class-3 red
+2018-05-19 saturday easter - ef-pentecost-vigil class-1 red +peter-celestine +pudentiana-virginis
+2018-05-20 sunday easter - ef-pentecost class-1 red +bernardine-of-siena
+2018-05-21 monday easter 8 ef-easter-8-monday class-1 red
+2018-05-22 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2018-05-23 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2018-05-24 thursday easter 8 ef-easter-8-thursday class-1 red
+2018-05-25 friday easter 8 ef-easter-8-friday class-1 red +gregory-vii +urban-pope-and-martyr
+2018-05-26 saturday easter 8 ef-easter-8-saturday class-1 red +philip-neri +eleutherius
+2018-05-27 sunday time-after-pentecost 1 ef-trinity class-1 white +bede-the-venerable +john-i
+2018-05-28 monday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2018-05-29 tuesday time-after-pentecost 1 mary-magdalene-de-pazzi class-3 white
+2018-05-30 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green +felix-i
+2018-05-31 thursday time-after-pentecost - ef-corpus-christi class-1 white +queenship-of-the-blessed-virgin-mary +petronilla
+2018-06-01 friday time-after-pentecost 1 angela-merici class-3 white
+2018-06-02 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green +sts-marcellinus-peter-erasmus
+2018-06-03 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2018-06-04 monday time-after-pentecost 2 francis-caracciolo class-3 white
+2018-06-05 tuesday time-after-pentecost 2 boniface class-3 red
+2018-06-06 wednesday time-after-pentecost 2 norbert class-3 white
+2018-06-07 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2018-06-08 friday time-after-pentecost - ef-sacred-heart class-1 white
+2018-06-09 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green +sts-primus-felicianus
+2018-06-10 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +margaret-of-scotland
+2018-06-11 monday time-after-pentecost 3 barnabas class-3 red
+2018-06-12 tuesday time-after-pentecost 3 john-of-san-fecundo class-3 red +basilidus
+2018-06-13 wednesday time-after-pentecost 3 anthony-of-padua class-3 white
+2018-06-14 thursday time-after-pentecost 3 basil-the-great class-3 white
+2018-06-15 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green +vitus
+2018-06-16 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2018-06-17 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +gregory-barbarigo
+2018-06-18 monday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2018-06-19 tuesday time-after-pentecost 4 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2018-06-20 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green +silverius
+2018-06-21 thursday time-after-pentecost 4 aloysius-gongzaga class-3 white
+2018-06-22 friday time-after-pentecost 4 paulinus-of-nola class-3 white
+2018-06-23 saturday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2018-06-24 sunday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2018-06-25 monday time-after-pentecost 5 william class-3 white
+2018-06-26 tuesday time-after-pentecost 5 sts-john-paul class-3 red
+2018-06-27 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2018-06-28 thursday time-after-pentecost 5 vigil-of-sts-peter-paul class-2 violet
+2018-06-29 friday time-after-pentecost 5 sts-peter-paul class-1 red
+2018-06-30 saturday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2018-07-01 sunday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2018-07-02 monday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2018-07-03 tuesday time-after-pentecost 6 irenaeus class-3 red
+2018-07-04 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green
+2018-07-05 thursday time-after-pentecost 6 anthony-mary-zaccariah class-3 white
+2018-07-06 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green
+2018-07-07 saturday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2018-07-08 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +elizabeth-of-portugal
+2018-07-09 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2018-07-10 tuesday time-after-pentecost 7 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2018-07-11 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +pius-i
+2018-07-12 thursday time-after-pentecost 7 john-gualbert class-3 red +naboris-et-felicis
+2018-07-13 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green
+2018-07-14 saturday time-after-pentecost 7 bonaventure class-3 white
+2018-07-15 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +henry-the-emperor
+2018-07-16 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +our-lady-of-mt-carmel
+2018-07-17 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +alexis
+2018-07-18 wednesday time-after-pentecost 8 camillus-de-lellis class-3 red +symphorosa-and-sons
+2018-07-19 thursday time-after-pentecost 8 vincent-de-paul class-3 white
+2018-07-20 friday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2018-07-21 saturday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2018-07-22 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +mary-magdalene
+2018-07-23 monday time-after-pentecost 9 apollinaris class-3 white +liborii
+2018-07-24 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +christina
+2018-07-25 wednesday time-after-pentecost 9 james-the-greater class-2 red +christopher
+2018-07-26 thursday time-after-pentecost 9 anne-mother-of-the-blessed-virgin class-2 white
+2018-07-27 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +pantaleon
+2018-07-28 saturday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2018-07-29 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +martha +felicis-simplicii-faustini-et-beatricis
+2018-07-30 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green +sts-abdon-sennen
+2018-07-31 tuesday time-after-pentecost 10 ignatius-loyola class-3 white
+2018-08-01 wednesday time-after-pentecost 10 ef-time-after-pentecost-10-wednesday class-4 green +holy-machabees
+2018-08-02 thursday time-after-pentecost 10 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2018-08-03 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green
+2018-08-04 saturday time-after-pentecost 10 dominic class-3 white
+2018-08-05 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +dedication-of-the-basilica-of-st-mary-major
+2018-08-06 monday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2018-08-07 tuesday time-after-pentecost 11 cajetan class-3 white +donatus
+2018-08-08 wednesday time-after-pentecost 11 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2018-08-09 thursday time-after-pentecost 11 vigil-of-st-lawrence class-3 red +romanus
+2018-08-10 friday time-after-pentecost 11 lawrence class-2 red
+2018-08-11 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green +sts-tiburtius-susanna
+2018-08-12 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +clare
+2018-08-13 monday time-after-pentecost 12 ef-time-after-pentecost-12-monday class-4 green +sts-hippolytus-cassian
+2018-08-14 tuesday time-after-pentecost 12 vigil-of-the-assumption class-2 white
+2018-08-15 wednesday time-after-pentecost 12 assumption-of-the-blessed-virgin-mary class-1 white
+2018-08-16 thursday time-after-pentecost 12 joachim-father-of-the-blessed-virgin class-2 white
+2018-08-17 friday time-after-pentecost 12 hyacinth class-3 white
+2018-08-18 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +agapitus
+2018-08-19 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +john-eudes
+2018-08-20 monday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2018-08-21 tuesday time-after-pentecost 13 jane-frances-de-chantal class-3 white
+2018-08-22 wednesday time-after-pentecost 13 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2018-08-23 thursday time-after-pentecost 13 philip-benizi class-3 white
+2018-08-24 friday time-after-pentecost 13 bartholomew class-2 red
+2018-08-25 saturday time-after-pentecost 13 louis-ix class-3 white
+2018-08-26 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +zephyrinus
+2018-08-27 monday time-after-pentecost 14 joseph-calasance class-3 white
+2018-08-28 tuesday time-after-pentecost 14 augustine class-3 red +hermes
+2018-08-29 wednesday time-after-pentecost 14 beheading-of-st-john-the-baptist class-3 red +sabina
+2018-08-30 thursday time-after-pentecost 14 rose-of-lima class-3 red +sts-felix-and-adauctus
+2018-08-31 friday time-after-pentecost 14 raymond-nonnatus class-3 white
+2018-09-01 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +giles +twelve-holy-brothers-martyrs
+2018-09-02 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +stephen-of-hungary
+2018-09-03 monday time-after-pentecost 15 pius-x class-3 white
+2018-09-04 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green
+2018-09-05 wednesday time-after-pentecost 15 lawrence-justinian class-3 white
+2018-09-06 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green
+2018-09-07 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green
+2018-09-08 saturday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2018-09-09 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +gorgonius
+2018-09-10 monday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2018-09-11 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +sts-protus-hyacinth
+2018-09-12 wednesday time-after-pentecost 16 most-holy-name-of-mary class-3 white
+2018-09-13 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green
+2018-09-14 friday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2018-09-15 saturday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2018-09-16 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-cornelius-cyprian +sts-euphemia-lucy-and-geminianus
+2018-09-17 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +stigmata-of-st-francis
+2018-09-18 tuesday time-after-pentecost 17 joseph-of-cupertino class-3 white
+2018-09-19 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +januarius-companions
+2018-09-20 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +sts-eustace-companions
+2018-09-21 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet +matthew
+2018-09-22 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2018-09-23 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +linus +thecla
+2018-09-24 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +our-lady-of-ransom
+2018-09-25 tuesday time-after-pentecost 18 ef-time-after-pentecost-18-tuesday class-4 green
+2018-09-26 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green +sts-cyprian-justina
+2018-09-27 thursday time-after-pentecost 18 sts-cosmas-damian class-3 red
+2018-09-28 friday time-after-pentecost 18 wenceslaus class-3 red
+2018-09-29 saturday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2018-09-30 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +jerome
+2018-10-01 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +remigius
+2018-10-02 tuesday time-after-pentecost 19 holy-guardian-angels class-3 white
+2018-10-03 wednesday time-after-pentecost 19 theresa-of-the-infant-jesus class-3 white
+2018-10-04 thursday time-after-pentecost 19 francis-of-assisi class-3 white
+2018-10-05 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +placid-companions
+2018-10-06 saturday time-after-pentecost 19 bruno class-3 white
+2018-10-07 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +our-lady-of-the-rosary +mark-i
+2018-10-08 monday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2018-10-09 tuesday time-after-pentecost 20 john-leonardi class-3 white +dionysius-and-companions
+2018-10-10 wednesday time-after-pentecost 20 francis-borgia class-3 white
+2018-10-11 thursday time-after-pentecost 20 maternity-of-the-blessed-virgin-mary class-2 white
+2018-10-12 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2018-10-13 saturday time-after-pentecost 20 edward class-3 white
+2018-10-14 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +callistus-i
+2018-10-15 monday time-after-pentecost 21 teresa-of-avila class-3 white
+2018-10-16 tuesday time-after-pentecost 21 hedwig class-3 white
+2018-10-17 wednesday time-after-pentecost 21 margaret-mary-alacoque class-3 white
+2018-10-18 thursday time-after-pentecost 21 luke-the-evangelist class-2 red
+2018-10-19 friday time-after-pentecost 21 peter-of-alcantara class-3 white
+2018-10-20 saturday time-after-pentecost 21 john-cantius class-3 white
+2018-10-21 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +hilarion +ursula-and-companions
+2018-10-22 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2018-10-23 tuesday time-after-pentecost 22 anthony-mary-claret class-3 white
+2018-10-24 wednesday time-after-pentecost 22 raphael-the-archangel class-3 white
+2018-10-25 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green +sts-chrysanthus-daria
+2018-10-26 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2018-10-27 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2018-10-28 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-simon-jude
+2018-10-29 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2018-10-30 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2018-10-31 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2018-11-01 thursday time-after-pentecost 23 all-saints class-1 white
+2018-11-02 friday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2018-11-03 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2018-11-04 sunday time-after-pentecost 4 ef-time-after-epiphany-sunday-4 class-2 green +charles-borromeo +sts-vitalis-and-agricola-martyrs
+2018-11-05 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green
+2018-11-06 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green
+2018-11-07 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2018-11-08 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green +four-holy-crowned-martyrs
+2018-11-09 friday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2018-11-10 saturday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2018-11-11 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-of-tours +menna
+2018-11-12 monday time-after-pentecost 25 martin-i class-3 red
+2018-11-13 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green +didacus
+2018-11-14 wednesday time-after-pentecost 25 josaphat class-3 white
+2018-11-15 thursday time-after-pentecost 25 albert-the-great class-3 white
+2018-11-16 friday time-after-pentecost 25 gertrude-the-great class-3 white
+2018-11-17 saturday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2018-11-18 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +dedication-of-the-basilicas-of-sts-peter-paul
+2018-11-19 monday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2018-11-20 tuesday time-after-pentecost 26 felix-of-valois class-3 white
+2018-11-21 wednesday time-after-pentecost 26 presentation-of-the-blessed-virgin-mary class-3 white
+2018-11-22 thursday time-after-pentecost 26 cecilia class-3 red
+2018-11-23 friday time-after-pentecost 26 clement-i class-3 red +felicity
+2018-11-24 saturday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2018-11-25 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +catherine-of-alexandria
+2018-11-26 monday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2018-11-27 tuesday time-after-pentecost 27 ef-time-after-pentecost-27-tuesday class-4 green
+2018-11-28 wednesday time-after-pentecost 27 ef-time-after-pentecost-27-wednesday class-4 green
+2018-11-29 thursday time-after-pentecost 27 ef-time-after-pentecost-27-thursday class-4 green +saturninus
+2018-11-30 friday time-after-pentecost 27 andrew class-2 red
+2018-12-01 saturday time-after-pentecost 27 ef-time-after-pentecost-27-saturday class-4 green
+2018-12-02 sunday advent 1 ef-advent-sunday-1 class-1 violet +vivian
+2018-12-03 monday advent 1 francis-xavier class-3 white
+2018-12-04 tuesday advent 1 peter-chrysologus class-3 white
+2018-12-05 wednesday advent 1 ef-advent-1-wednesday class-3 violet +sabbas
+2018-12-06 thursday advent 1 nicholas class-3 white
+2018-12-07 friday advent 1 ambrose class-3 white
+2018-12-08 saturday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2018-12-09 sunday advent 2 ef-advent-sunday-2 class-2 violet
+2018-12-10 monday advent 2 ef-advent-2-monday class-3 violet +melchiades
+2018-12-11 tuesday advent 2 damasus-i class-3 white
+2018-12-12 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2018-12-13 thursday advent 2 lucy class-3 red
+2018-12-14 friday advent 2 ef-advent-2-friday class-3 violet
+2018-12-15 saturday advent 2 ef-advent-2-saturday class-3 violet
+2018-12-16 sunday advent 3 ef-advent-sunday-3 class-2 violet +eusebius
+2018-12-17 monday advent 3 ef-advent-3-monday class-3 violet
+2018-12-18 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2018-12-19 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2018-12-20 thursday advent 3 ef-advent-3-thursday class-3 violet
+2018-12-21 friday advent 3 ef-advent-ember-fri class-2 violet +thomas
+2018-12-22 saturday advent 3 ef-advent-ember-sat class-2 violet
+2018-12-23 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2018-12-24 monday advent 4 vigil-of-christmas class-1 violet
+2018-12-25 tuesday christmas - ef-nativity class-1 white
+2018-12-26 wednesday christmas - stephen class-2 red
+2018-12-27 thursday christmas - john-the-evangelist class-2 white
+2018-12-28 friday christmas - holy-innocents class-2 red
+2018-12-29 saturday christmas - ef-christmas-0-saturday class-4 white +thomas-becket
+2018-12-30 sunday christmas - ef-christmas-sunday-0 class-2 white
+2018-12-31 monday christmas - ef-christmas-0-monday class-4 white +silvester
+2019-01-01 tuesday christmas - ef-circumcision class-1 white
+2019-01-02 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2019-01-03 thursday christmas - ef-christmas-0-thursday class-4 white
+2019-01-04 friday christmas - ef-christmas-0-friday class-4 white
+2019-01-05 saturday christmas - ef-christmas-0-saturday class-4 white +telesphorus-pope-and-martyr
+2019-01-06 sunday time-after-epiphany - ef-epiphany class-1 white
+2019-01-07 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2019-01-08 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2019-01-09 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2019-01-10 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2019-01-11 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green +hyginus-pope-and-martyr
+2019-01-12 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2019-01-13 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +commemoration-of-the-baptism-of-the-lord
+2019-01-14 monday time-after-epiphany 2 hilary class-3 white +felicis
+2019-01-15 tuesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2019-01-16 wednesday time-after-epiphany 2 marcellus-i class-3 red
+2019-01-17 thursday time-after-epiphany 2 anthony class-3 white
+2019-01-18 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +prisca
+2019-01-19 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2019-01-20 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-fabian-sebastian
+2019-01-21 monday time-after-epiphany 3 agnes class-3 red
+2019-01-22 tuesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2019-01-23 wednesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2019-01-24 thursday time-after-epiphany 3 timothy class-3 red
+2019-01-25 friday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2019-01-26 saturday time-after-epiphany 3 polycarp class-3 red
+2019-01-27 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +john-chrysostom
+2019-01-28 monday time-after-epiphany 4 peter-nolasco class-3 white
+2019-01-29 tuesday time-after-epiphany 4 francis-de-sales class-3 white
+2019-01-30 wednesday time-after-epiphany 4 martina class-3 red
+2019-01-31 thursday time-after-epiphany 4 john-bosco class-3 white
+2019-02-01 friday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2019-02-02 saturday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2019-02-03 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +blaise
+2019-02-04 monday time-after-epiphany 5 andrew-corsini class-3 white
+2019-02-05 tuesday time-after-epiphany 5 agatha class-3 red
+2019-02-06 wednesday time-after-epiphany 5 titus class-3 white +dorothy
+2019-02-07 thursday time-after-epiphany 5 romuald class-3 white
+2019-02-08 friday time-after-epiphany 5 john-of-matha class-3 white
+2019-02-09 saturday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2019-02-10 sunday time-after-epiphany 6 ef-time-after-epiphany-sunday-6 class-2 green +scholastica
+2019-02-11 monday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2019-02-12 tuesday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2019-02-13 wednesday time-after-epiphany 6 ef-time-after-epiphany-6-wednesday class-4 green
+2019-02-14 thursday time-after-epiphany 6 ef-time-after-epiphany-6-thursday class-4 green +valentine
+2019-02-15 friday time-after-epiphany 6 ef-time-after-epiphany-6-friday class-4 green +sts-faustinus-jovita
+2019-02-16 saturday time-after-epiphany 6 ef-time-after-epiphany-6-saturday class-4 green
+2019-02-17 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2019-02-18 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +simeon
+2019-02-19 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet
+2019-02-20 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2019-02-21 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2019-02-22 friday septuagesima 1 chair-of-st-peter class-2 white +paul
+2019-02-23 saturday septuagesima 1 peter-damien class-3 white
+2019-02-24 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +matthias
+2019-02-25 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2019-02-26 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2019-02-27 wednesday septuagesima 2 gabriel-of-our-lady-of-sorrows class-3 white
+2019-02-28 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2019-03-01 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2019-03-02 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2019-03-03 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2019-03-04 monday septuagesima 3 casimir class-3 white +lucius
+2019-03-05 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2019-03-06 wednesday lent - ef-ash-wednesday class-1 violet +sts-felicitas-perpetua
+2019-03-07 thursday lent - ef-lent-after-ashes-thursday class-3 violet +thomas-aquinas
+2019-03-08 friday lent - ef-lent-after-ashes-friday class-3 violet +john-of-god
+2019-03-09 saturday lent - ef-lent-after-ashes-saturday class-3 violet +frances-rome
+2019-03-10 sunday lent 1 ef-lent-sunday-1 class-2 violet +forty-holy-martyrs-of-sebaste
+2019-03-11 monday lent 1 ef-lent-1-monday class-3 violet
+2019-03-12 tuesday lent 1 ef-lent-1-tuesday class-3 violet +gregory-the-great
+2019-03-13 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2019-03-14 thursday lent 1 ef-lent-1-thursday class-3 violet
+2019-03-15 friday lent 1 ef-lent-1-friday class-3 violet
+2019-03-16 saturday lent 1 ef-lent-1-saturday class-3 violet
+2019-03-17 sunday lent 2 ef-lent-sunday-2 class-2 violet +patrick
+2019-03-18 monday lent 2 ef-lent-2-monday class-3 violet +cyril-of-jerusalem
+2019-03-19 tuesday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2019-03-20 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2019-03-21 thursday lent 2 ef-lent-2-thursday class-3 violet +benedict
+2019-03-22 friday lent 2 ef-lent-2-friday class-3 violet
+2019-03-23 saturday lent 2 ef-lent-2-saturday class-3 violet
+2019-03-24 sunday lent 3 ef-lent-sunday-3 class-2 violet +gabriel-the-archangel
+2019-03-25 monday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2019-03-26 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2019-03-27 wednesday lent 3 ef-lent-3-wednesday class-3 violet +john-damascene
+2019-03-28 thursday lent 3 ef-lent-3-thursday class-3 violet +john-of-capistrano
+2019-03-29 friday lent 3 ef-lent-3-friday class-3 violet
+2019-03-30 saturday lent 3 ef-lent-3-saturday class-3 violet
+2019-03-31 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2019-04-01 monday lent 4 ef-lent-4-monday class-3 violet
+2019-04-02 tuesday lent 4 ef-lent-4-tuesday class-3 violet +francis-of-paola
+2019-04-03 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2019-04-04 thursday lent 4 ef-lent-4-thursday class-3 violet +isidore-of-seville
+2019-04-05 friday lent 4 ef-lent-4-friday class-3 violet +vincent-ferrer
+2019-04-06 saturday lent 4 ef-lent-4-saturday class-3 violet
+2019-04-07 sunday passiontide 1 ef-passion-sunday class-1 violet
+2019-04-08 monday passiontide - ef-passiontide-0-monday class-3 violet
+2019-04-09 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2019-04-10 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2019-04-11 thursday passiontide - ef-passiontide-0-thursday class-3 violet +leo-the-great
+2019-04-12 friday passiontide - ef-passiontide-0-friday class-3 violet
+2019-04-13 saturday passiontide - ef-passiontide-0-saturday class-3 violet +hermenegild
+2019-04-14 sunday passiontide 2 ef-palm-sunday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2019-04-15 monday passiontide - ef-passiontide-0-monday class-1 violet
+2019-04-16 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2019-04-17 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +anicetus
+2019-04-18 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2019-04-19 friday passiontide - ef-passiontide-0-friday class-1 violet
+2019-04-20 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2019-04-21 sunday easter 1 ef-easter-sunday class-1 white +anselm
+2019-04-22 monday easter 1 ef-easter-1-monday class-1 white +sts-soter-caius
+2019-04-23 tuesday easter 1 ef-easter-1-tuesday class-1 white +george
+2019-04-24 wednesday easter 1 ef-easter-1-wednesday class-1 white +fidelis-of-sigmaringen
+2019-04-25 thursday easter 1 ef-easter-1-thursday class-1 white +mark
+2019-04-26 friday easter 1 ef-easter-1-friday class-1 white +sts-cletus-marcellinus
+2019-04-27 saturday easter 1 ef-easter-1-saturday class-1 white +peter-canisius
+2019-04-28 sunday easter 2 ef-low-sunday class-1 white +paul-of-the-cross
+2019-04-29 monday easter 2 peter-of-verona class-3 red
+2019-04-30 tuesday easter 2 catherine-of-siena class-3 white
+2019-05-01 wednesday easter 2 joseph-the-workman class-1 white
+2019-05-02 thursday easter 2 athanasius class-3 white
+2019-05-03 friday easter 2 ef-easter-2-friday class-4 white +sts-alexander-companions
+2019-05-04 saturday easter 2 monica class-3 white
+2019-05-05 sunday easter 3 ef-easter-sunday-3 class-2 white +pius-v
+2019-05-06 monday easter 3 ef-easter-3-monday class-4 white
+2019-05-07 tuesday easter 3 stanislaus class-3 red
+2019-05-08 wednesday easter 3 ef-easter-3-wednesday class-4 white
+2019-05-09 thursday easter 3 gregory-of-nazianzen class-3 white
+2019-05-10 friday easter 3 antoninus class-3 white +gordiano-and-epimacho
+2019-05-11 saturday easter 3 sts-philip-james class-2 red
+2019-05-12 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-nereus-achilleus-domitilla-pancras
+2019-05-13 monday easter 4 robert-bellarmine class-3 white
+2019-05-14 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2019-05-15 wednesday easter 4 john-baptist-de-la-salle class-3 white
+2019-05-16 thursday easter 4 ef-easter-4-thursday class-4 white +ubaldus
+2019-05-17 friday easter 4 paschal-baylon class-3 white
+2019-05-18 saturday easter 4 venantius class-3 red
+2019-05-19 sunday easter 5 ef-easter-sunday-5 class-2 white +peter-celestine +pudentiana-virginis
+2019-05-20 monday easter 5 bernardine-of-siena class-3 white
+2019-05-21 tuesday easter 5 ef-easter-5-tuesday class-4 white
+2019-05-22 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2019-05-23 thursday easter 5 ef-easter-5-thursday class-4 white
+2019-05-24 friday easter 5 ef-easter-5-friday class-4 white
+2019-05-25 saturday easter 5 gregory-vii class-3 white +urban-pope-and-martyr
+2019-05-26 sunday easter 6 ef-easter-sunday-6 class-2 white +philip-neri +eleutherius
+2019-05-27 monday easter 6 bede-the-venerable class-3 white +john-i
+2019-05-28 tuesday easter 6 augustine-of-canterbury class-3 white
+2019-05-29 wednesday easter - ef-ascension-vigil class-2 white +mary-magdalene-de-pazzi
+2019-05-30 thursday easter - ef-ascension class-1 white +felix-i
+2019-05-31 friday easter 6 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2019-06-01 saturday easter 6 angela-merici class-3 white
+2019-06-02 sunday easter 7 ef-easter-sunday-7 class-2 white +sts-marcellinus-peter-erasmus
+2019-06-03 monday easter 7 ef-easter-7-monday class-4 white
+2019-06-04 tuesday easter 7 francis-caracciolo class-3 white
+2019-06-05 wednesday easter 7 boniface class-3 red
+2019-06-06 thursday easter 7 norbert class-3 white
+2019-06-07 friday easter 7 ef-easter-7-friday class-4 white
+2019-06-08 saturday easter - ef-pentecost-vigil class-1 red
+2019-06-09 sunday easter - ef-pentecost class-1 red +sts-primus-felicianus
+2019-06-10 monday easter 8 ef-easter-8-monday class-1 red +margaret-of-scotland
+2019-06-11 tuesday easter 8 ef-easter-8-tuesday class-1 red +barnabas
+2019-06-12 wednesday easter 8 ef-easter-8-wednesday class-1 red +john-of-san-fecundo +basilidus
+2019-06-13 thursday easter 8 ef-easter-8-thursday class-1 red +anthony-of-padua
+2019-06-14 friday easter 8 ef-easter-8-friday class-1 red +basil-the-great
+2019-06-15 saturday easter 8 ef-easter-8-saturday class-1 red +vitus
+2019-06-16 sunday time-after-pentecost 1 ef-trinity class-1 white
+2019-06-17 monday time-after-pentecost 1 gregory-barbarigo class-3 white
+2019-06-18 tuesday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2019-06-19 wednesday time-after-pentecost 1 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2019-06-20 thursday time-after-pentecost - ef-corpus-christi class-1 white +silverius
+2019-06-21 friday time-after-pentecost 1 aloysius-gongzaga class-3 white
+2019-06-22 saturday time-after-pentecost 1 paulinus-of-nola class-3 white
+2019-06-23 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +vigil-of-the-nativity-of-st-john-the-baptist
+2019-06-24 monday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2019-06-25 tuesday time-after-pentecost 2 william class-3 white
+2019-06-26 wednesday time-after-pentecost 2 sts-john-paul class-3 red
+2019-06-27 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2019-06-28 friday time-after-pentecost - ef-sacred-heart class-1 white +vigil-of-sts-peter-paul
+2019-06-29 saturday time-after-pentecost 2 sts-peter-paul class-1 red
+2019-06-30 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +in-commemoratione-sancti-pauli-apostoli
+2019-07-01 monday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2019-07-02 tuesday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2019-07-03 wednesday time-after-pentecost 3 irenaeus class-3 red
+2019-07-04 thursday time-after-pentecost 3 ef-time-after-pentecost-3-thursday class-4 green
+2019-07-05 friday time-after-pentecost 3 anthony-mary-zaccariah class-3 white
+2019-07-06 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2019-07-07 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +sts-cyril-methodius
+2019-07-08 monday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2019-07-09 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2019-07-10 wednesday time-after-pentecost 4 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2019-07-11 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green +pius-i
+2019-07-12 friday time-after-pentecost 4 john-gualbert class-3 red +naboris-et-felicis
+2019-07-13 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2019-07-14 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +bonaventure
+2019-07-15 monday time-after-pentecost 5 henry-the-emperor class-3 white
+2019-07-16 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green +our-lady-of-mt-carmel
+2019-07-17 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green +alexis
+2019-07-18 thursday time-after-pentecost 5 camillus-de-lellis class-3 red +symphorosa-and-sons
+2019-07-19 friday time-after-pentecost 5 vincent-de-paul class-3 white
+2019-07-20 saturday time-after-pentecost 5 jerome-emiliani class-3 red +margaret
+2019-07-21 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +laurence-of-brindisi +praxedis-virginis
+2019-07-22 monday time-after-pentecost 6 mary-magdalene class-3 white
+2019-07-23 tuesday time-after-pentecost 6 apollinaris class-3 white +liborii
+2019-07-24 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +christina
+2019-07-25 thursday time-after-pentecost 6 james-the-greater class-2 red +christopher
+2019-07-26 friday time-after-pentecost 6 anne-mother-of-the-blessed-virgin class-2 white
+2019-07-27 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +pantaleon
+2019-07-28 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +sts-nazarius-celsus-st-victor-i-st-innocent-i
+2019-07-29 monday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2019-07-30 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green +sts-abdon-sennen
+2019-07-31 wednesday time-after-pentecost 7 ignatius-loyola class-3 white
+2019-08-01 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +holy-machabees
+2019-08-02 friday time-after-pentecost 7 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2019-08-03 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green
+2019-08-04 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +dominic
+2019-08-05 monday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2019-08-06 tuesday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2019-08-07 wednesday time-after-pentecost 8 cajetan class-3 white +donatus
+2019-08-08 thursday time-after-pentecost 8 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2019-08-09 friday time-after-pentecost 8 vigil-of-st-lawrence class-3 red +romanus
+2019-08-10 saturday time-after-pentecost 8 lawrence class-2 red
+2019-08-11 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +sts-tiburtius-susanna
+2019-08-12 monday time-after-pentecost 9 clare class-3 white
+2019-08-13 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +sts-hippolytus-cassian
+2019-08-14 wednesday time-after-pentecost 9 vigil-of-the-assumption class-2 white
+2019-08-15 thursday time-after-pentecost 9 assumption-of-the-blessed-virgin-mary class-1 white
+2019-08-16 friday time-after-pentecost 9 joachim-father-of-the-blessed-virgin class-2 white
+2019-08-17 saturday time-after-pentecost 9 hyacinth class-3 white
+2019-08-18 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +agapitus
+2019-08-19 monday time-after-pentecost 10 john-eudes class-3 white
+2019-08-20 tuesday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2019-08-21 wednesday time-after-pentecost 10 jane-frances-de-chantal class-3 white
+2019-08-22 thursday time-after-pentecost 10 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2019-08-23 friday time-after-pentecost 10 philip-benizi class-3 white
+2019-08-24 saturday time-after-pentecost 10 bartholomew class-2 red
+2019-08-25 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +louis-ix
+2019-08-26 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +zephyrinus
+2019-08-27 tuesday time-after-pentecost 11 joseph-calasance class-3 white
+2019-08-28 wednesday time-after-pentecost 11 augustine class-3 red +hermes
+2019-08-29 thursday time-after-pentecost 11 beheading-of-st-john-the-baptist class-3 red +sabina
+2019-08-30 friday time-after-pentecost 11 rose-of-lima class-3 red +sts-felix-and-adauctus
+2019-08-31 saturday time-after-pentecost 11 raymond-nonnatus class-3 white
+2019-09-01 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +giles +twelve-holy-brothers-martyrs
+2019-09-02 monday time-after-pentecost 12 stephen-of-hungary class-3 white
+2019-09-03 tuesday time-after-pentecost 12 pius-x class-3 white
+2019-09-04 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green
+2019-09-05 thursday time-after-pentecost 12 lawrence-justinian class-3 white
+2019-09-06 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green
+2019-09-07 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green
+2019-09-08 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +nativity-of-the-blessed-virgin-mary +hadriani
+2019-09-09 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green +gorgonius
+2019-09-10 tuesday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2019-09-11 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +sts-protus-hyacinth
+2019-09-12 thursday time-after-pentecost 13 most-holy-name-of-mary class-3 white
+2019-09-13 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green
+2019-09-14 saturday time-after-pentecost 13 exaltation-of-the-holy-cross class-2 red
+2019-09-15 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +seven-sorrows-of-the-blessed-virgin-mary +nicomedes
+2019-09-16 monday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2019-09-17 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +stigmata-of-st-francis
+2019-09-18 wednesday time-after-pentecost 14 ef-september-ember-wed class-2 violet +joseph-of-cupertino
+2019-09-19 thursday time-after-pentecost 14 januarius-companions class-3 red
+2019-09-20 friday time-after-pentecost 14 ef-september-ember-fri class-2 violet +sts-eustace-companions
+2019-09-21 saturday time-after-pentecost 14 ef-september-ember-sat class-2 violet +matthew
+2019-09-22 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +thomas-of-villanova +maurice-and-companions-martyrs
+2019-09-23 monday time-after-pentecost 15 linus class-3 red +thecla
+2019-09-24 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +our-lady-of-ransom
+2019-09-25 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green
+2019-09-26 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +sts-cyprian-justina
+2019-09-27 friday time-after-pentecost 15 sts-cosmas-damian class-3 red
+2019-09-28 saturday time-after-pentecost 15 wenceslaus class-3 red
+2019-09-29 sunday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2019-09-30 monday time-after-pentecost 16 jerome class-3 white
+2019-10-01 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +remigius
+2019-10-02 wednesday time-after-pentecost 16 holy-guardian-angels class-3 white
+2019-10-03 thursday time-after-pentecost 16 theresa-of-the-infant-jesus class-3 white
+2019-10-04 friday time-after-pentecost 16 francis-of-assisi class-3 white
+2019-10-05 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +placid-companions
+2019-10-06 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +bruno
+2019-10-07 monday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2019-10-08 tuesday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2019-10-09 wednesday time-after-pentecost 17 john-leonardi class-3 white +dionysius-and-companions
+2019-10-10 thursday time-after-pentecost 17 francis-borgia class-3 white
+2019-10-11 friday time-after-pentecost 17 maternity-of-the-blessed-virgin-mary class-2 white
+2019-10-12 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green
+2019-10-13 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +edward
+2019-10-14 monday time-after-pentecost 18 callistus-i class-3 red
+2019-10-15 tuesday time-after-pentecost 18 teresa-of-avila class-3 white
+2019-10-16 wednesday time-after-pentecost 18 hedwig class-3 white
+2019-10-17 thursday time-after-pentecost 18 margaret-mary-alacoque class-3 white
+2019-10-18 friday time-after-pentecost 18 luke-the-evangelist class-2 red
+2019-10-19 saturday time-after-pentecost 18 peter-of-alcantara class-3 white
+2019-10-20 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +john-cantius
+2019-10-21 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +hilarion +ursula-and-companions
+2019-10-22 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green
+2019-10-23 wednesday time-after-pentecost 19 anthony-mary-claret class-3 white
+2019-10-24 thursday time-after-pentecost 19 raphael-the-archangel class-3 white
+2019-10-25 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +sts-chrysanthus-daria
+2019-10-26 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green
+2019-10-27 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2019-10-28 monday time-after-pentecost 20 sts-simon-jude class-2 red
+2019-10-29 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green
+2019-10-30 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2019-10-31 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2019-11-01 friday time-after-pentecost 20 all-saints class-1 white
+2019-11-02 saturday time-after-pentecost 20 commemoration-of-all-souls class-1 black
+2019-11-03 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2019-11-04 monday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2019-11-05 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2019-11-06 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2019-11-07 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2019-11-08 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green +four-holy-crowned-martyrs
+2019-11-09 saturday time-after-pentecost 21 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2019-11-10 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +andrew-avellino +sts-tryphonis-respicii-et-nymphae
+2019-11-11 monday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2019-11-12 tuesday time-after-pentecost 22 martin-i class-3 red
+2019-11-13 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green +didacus
+2019-11-14 thursday time-after-pentecost 22 josaphat class-3 white
+2019-11-15 friday time-after-pentecost 22 albert-the-great class-3 white
+2019-11-16 saturday time-after-pentecost 22 gertrude-the-great class-3 white
+2019-11-17 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +gregory-the-wonderworker
+2019-11-18 monday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2019-11-19 tuesday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2019-11-20 wednesday time-after-pentecost 23 felix-of-valois class-3 white
+2019-11-21 thursday time-after-pentecost 23 presentation-of-the-blessed-virgin-mary class-3 white
+2019-11-22 friday time-after-pentecost 23 cecilia class-3 red
+2019-11-23 saturday time-after-pentecost 23 clement-i class-3 red +felicity
+2019-11-24 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +john-of-the-cross +chrysogonus
+2019-11-25 monday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2019-11-26 tuesday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2019-11-27 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2019-11-28 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2019-11-29 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +saturninus
+2019-11-30 saturday time-after-pentecost 24 andrew class-2 red
+2019-12-01 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2019-12-02 monday advent 1 vivian class-3 red
+2019-12-03 tuesday advent 1 francis-xavier class-3 white
+2019-12-04 wednesday advent 1 peter-chrysologus class-3 white
+2019-12-05 thursday advent 1 ef-advent-1-thursday class-3 violet +sabbas
+2019-12-06 friday advent 1 nicholas class-3 white
+2019-12-07 saturday advent 1 ambrose class-3 white
+2019-12-08 sunday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2019-12-09 monday advent 2 ef-advent-2-monday class-3 violet
+2019-12-10 tuesday advent 2 ef-advent-2-tuesday class-3 violet +melchiades
+2019-12-11 wednesday advent 2 damasus-i class-3 white
+2019-12-12 thursday advent 2 ef-advent-2-thursday class-3 violet
+2019-12-13 friday advent 2 lucy class-3 red
+2019-12-14 saturday advent 2 ef-advent-2-saturday class-3 violet
+2019-12-15 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2019-12-16 monday advent 3 eusebius class-3 red
+2019-12-17 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2019-12-18 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2019-12-19 thursday advent 3 ef-advent-3-thursday class-3 violet
+2019-12-20 friday advent 3 ef-advent-ember-fri class-2 violet
+2019-12-21 saturday advent 3 ef-advent-ember-sat class-2 violet +thomas
+2019-12-22 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2019-12-23 monday advent 4 ef-advent-4-monday class-3 violet
+2019-12-24 tuesday advent 4 vigil-of-christmas class-1 violet
+2019-12-25 wednesday christmas - ef-nativity class-1 white
+2019-12-26 thursday christmas - stephen class-2 red
+2019-12-27 friday christmas - john-the-evangelist class-2 white
+2019-12-28 saturday christmas - holy-innocents class-2 red
+2019-12-29 sunday christmas - ef-christmas-sunday-0 class-2 white +thomas-becket
+2019-12-30 monday christmas - ef-christmas-0-monday class-4 white
+2019-12-31 tuesday christmas - ef-christmas-0-tuesday class-4 white +silvester
+2020-01-01 wednesday christmas - ef-circumcision class-1 white
+2020-01-02 thursday christmas - ef-christmas-0-thursday class-4 white
+2020-01-03 friday christmas - ef-christmas-0-friday class-4 white
+2020-01-04 saturday christmas - ef-christmas-0-saturday class-4 white
+2020-01-05 sunday christmas - ef-christmas-sunday-0 class-2 white +telesphorus-pope-and-martyr
+2020-01-06 monday time-after-epiphany - ef-epiphany class-1 white
+2020-01-07 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2020-01-08 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2020-01-09 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2020-01-10 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2020-01-11 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green +hyginus-pope-and-martyr
+2020-01-12 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2020-01-13 monday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2020-01-14 tuesday time-after-epiphany 2 hilary class-3 white +felicis
+2020-01-15 wednesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2020-01-16 thursday time-after-epiphany 2 marcellus-i class-3 red
+2020-01-17 friday time-after-epiphany 2 anthony class-3 white
+2020-01-18 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +prisca
+2020-01-19 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +canute-martyr +sts-marius-martha-audifax-abachum
+2020-01-20 monday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2020-01-21 tuesday time-after-epiphany 3 agnes class-3 red
+2020-01-22 wednesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2020-01-23 thursday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2020-01-24 friday time-after-epiphany 3 timothy class-3 red
+2020-01-25 saturday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2020-01-26 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +polycarp
+2020-01-27 monday time-after-epiphany 4 john-chrysostom class-3 white
+2020-01-28 tuesday time-after-epiphany 4 peter-nolasco class-3 white
+2020-01-29 wednesday time-after-epiphany 4 francis-de-sales class-3 white
+2020-01-30 thursday time-after-epiphany 4 martina class-3 red
+2020-01-31 friday time-after-epiphany 4 john-bosco class-3 white
+2020-02-01 saturday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2020-02-02 sunday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2020-02-03 monday time-after-epiphany 5 ef-time-after-epiphany-5-monday class-4 green +blaise
+2020-02-04 tuesday time-after-epiphany 5 andrew-corsini class-3 white
+2020-02-05 wednesday time-after-epiphany 5 agatha class-3 red
+2020-02-06 thursday time-after-epiphany 5 titus class-3 white +dorothy
+2020-02-07 friday time-after-epiphany 5 romuald class-3 white
+2020-02-08 saturday time-after-epiphany 5 john-of-matha class-3 white
+2020-02-09 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +cyril-of-alexandria +appollonia
+2020-02-10 monday septuagesima 1 scholastica class-3 white
+2020-02-11 tuesday septuagesima 1 our-lady-of-lourdes class-3 white
+2020-02-12 wednesday septuagesima 1 seven-holy-servite-founders class-3 white
+2020-02-13 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2020-02-14 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet +valentine
+2020-02-15 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet +sts-faustinus-jovita
+2020-02-16 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2020-02-17 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2020-02-18 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +simeon
+2020-02-19 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2020-02-20 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2020-02-21 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2020-02-22 saturday septuagesima 2 chair-of-st-peter class-2 white +paul
+2020-02-23 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +peter-damien
+2020-02-24 monday septuagesima 3 matthias class-2 red
+2020-02-25 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2020-02-26 wednesday lent - ef-ash-wednesday class-1 violet
+2020-02-27 thursday lent - ef-lent-after-ashes-thursday class-3 violet +gabriel-of-our-lady-of-sorrows
+2020-02-28 friday lent - ef-lent-after-ashes-friday class-3 violet
+2020-02-29 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2020-03-01 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2020-03-02 monday lent 1 ef-lent-1-monday class-3 violet
+2020-03-03 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2020-03-04 wednesday lent 1 ef-lent-1-wednesday class-3 violet +casimir +lucius
+2020-03-05 thursday lent 1 ef-lent-1-thursday class-3 violet
+2020-03-06 friday lent 1 ef-lent-1-friday class-3 violet +sts-felicitas-perpetua
+2020-03-07 saturday lent 1 ef-lent-1-saturday class-3 violet +thomas-aquinas
+2020-03-08 sunday lent 2 ef-lent-sunday-2 class-2 violet +john-of-god
+2020-03-09 monday lent 2 ef-lent-2-monday class-3 violet +frances-rome
+2020-03-10 tuesday lent 2 ef-lent-2-tuesday class-3 violet +forty-holy-martyrs-of-sebaste
+2020-03-11 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2020-03-12 thursday lent 2 ef-lent-2-thursday class-3 violet +gregory-the-great
+2020-03-13 friday lent 2 ef-lent-2-friday class-3 violet
+2020-03-14 saturday lent 2 ef-lent-2-saturday class-3 violet
+2020-03-15 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2020-03-16 monday lent 3 ef-lent-3-monday class-3 violet
+2020-03-17 tuesday lent 3 ef-lent-3-tuesday class-3 violet +patrick
+2020-03-18 wednesday lent 3 ef-lent-3-wednesday class-3 violet +cyril-of-jerusalem
+2020-03-19 thursday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2020-03-20 friday lent 3 ef-lent-3-friday class-3 violet
+2020-03-21 saturday lent 3 ef-lent-3-saturday class-3 violet +benedict
+2020-03-22 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2020-03-23 monday lent 4 ef-lent-4-monday class-3 violet
+2020-03-24 tuesday lent 4 ef-lent-4-tuesday class-3 violet +gabriel-the-archangel
+2020-03-25 wednesday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2020-03-26 thursday lent 4 ef-lent-4-thursday class-3 violet
+2020-03-27 friday lent 4 ef-lent-4-friday class-3 violet +john-damascene
+2020-03-28 saturday lent 4 ef-lent-4-saturday class-3 violet +john-of-capistrano
+2020-03-29 sunday passiontide 1 ef-passion-sunday class-1 violet
+2020-03-30 monday passiontide - ef-passiontide-0-monday class-3 violet
+2020-03-31 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2020-04-01 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2020-04-02 thursday passiontide - ef-passiontide-0-thursday class-3 violet +francis-of-paola
+2020-04-03 friday passiontide - ef-passiontide-0-friday class-3 violet
+2020-04-04 saturday passiontide - ef-passiontide-0-saturday class-3 violet +isidore-of-seville
+2020-04-05 sunday passiontide 2 ef-palm-sunday class-1 violet +vincent-ferrer
+2020-04-06 monday passiontide - ef-passiontide-0-monday class-1 violet
+2020-04-07 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2020-04-08 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2020-04-09 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2020-04-10 friday passiontide - ef-passiontide-0-friday class-1 violet
+2020-04-11 saturday passiontide - ef-passiontide-0-saturday class-1 violet +leo-the-great
+2020-04-12 sunday easter 1 ef-easter-sunday class-1 white
+2020-04-13 monday easter 1 ef-easter-1-monday class-1 white +hermenegild
+2020-04-14 tuesday easter 1 ef-easter-1-tuesday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2020-04-15 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2020-04-16 thursday easter 1 ef-easter-1-thursday class-1 white
+2020-04-17 friday easter 1 ef-easter-1-friday class-1 white +anicetus
+2020-04-18 saturday easter 1 ef-easter-1-saturday class-1 white
+2020-04-19 sunday easter 2 ef-low-sunday class-1 white
+2020-04-20 monday easter 2 ef-easter-2-monday class-4 white
+2020-04-21 tuesday easter 2 anselm class-3 white
+2020-04-22 wednesday easter 2 sts-soter-caius class-3 red
+2020-04-23 thursday easter 2 ef-easter-2-thursday class-4 white +george
+2020-04-24 friday easter 2 fidelis-of-sigmaringen class-3 red
+2020-04-25 saturday easter 2 mark class-2 red
+2020-04-26 sunday easter 3 ef-easter-sunday-3 class-2 white +sts-cletus-marcellinus
+2020-04-27 monday easter 3 peter-canisius class-3 white
+2020-04-28 tuesday easter 3 paul-of-the-cross class-3 white
+2020-04-29 wednesday easter 3 peter-of-verona class-3 red
+2020-04-30 thursday easter 3 catherine-of-siena class-3 white
+2020-05-01 friday easter 3 joseph-the-workman class-1 white
+2020-05-02 saturday easter 3 athanasius class-3 white
+2020-05-03 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-alexander-companions
+2020-05-04 monday easter 4 monica class-3 white
+2020-05-05 tuesday easter 4 pius-v class-3 white
+2020-05-06 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2020-05-07 thursday easter 4 stanislaus class-3 red
+2020-05-08 friday easter 4 ef-easter-4-friday class-4 white
+2020-05-09 saturday easter 4 gregory-of-nazianzen class-3 white
+2020-05-10 sunday easter 5 ef-easter-sunday-5 class-2 white +antoninus +gordiano-and-epimacho
+2020-05-11 monday easter 5 sts-philip-james class-2 red
+2020-05-12 tuesday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2020-05-13 wednesday easter 5 robert-bellarmine class-3 white
+2020-05-14 thursday easter 5 ef-easter-5-thursday class-4 white
+2020-05-15 friday easter 5 john-baptist-de-la-salle class-3 white
+2020-05-16 saturday easter 5 ef-easter-5-saturday class-4 white +ubaldus
+2020-05-17 sunday easter 6 ef-easter-sunday-6 class-2 white +paschal-baylon
+2020-05-18 monday easter 6 venantius class-3 red
+2020-05-19 tuesday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2020-05-20 wednesday easter - ef-ascension-vigil class-2 white +bernardine-of-siena
+2020-05-21 thursday easter - ef-ascension class-1 white
+2020-05-22 friday easter 6 ef-easter-6-friday class-4 white
+2020-05-23 saturday easter 6 ef-easter-6-saturday class-4 white
+2020-05-24 sunday easter 7 ef-easter-sunday-7 class-2 white
+2020-05-25 monday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2020-05-26 tuesday easter 7 philip-neri class-3 white +eleutherius
+2020-05-27 wednesday easter 7 bede-the-venerable class-3 white +john-i
+2020-05-28 thursday easter 7 augustine-of-canterbury class-3 white
+2020-05-29 friday easter 7 mary-magdalene-de-pazzi class-3 white
+2020-05-30 saturday easter - ef-pentecost-vigil class-1 red +felix-i
+2020-05-31 sunday easter - ef-pentecost class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2020-06-01 monday easter 8 ef-easter-8-monday class-1 red +angela-merici
+2020-06-02 tuesday easter 8 ef-easter-8-tuesday class-1 red +sts-marcellinus-peter-erasmus
+2020-06-03 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2020-06-04 thursday easter 8 ef-easter-8-thursday class-1 red +francis-caracciolo
+2020-06-05 friday easter 8 ef-easter-8-friday class-1 red +boniface
+2020-06-06 saturday easter 8 ef-easter-8-saturday class-1 red +norbert
+2020-06-07 sunday time-after-pentecost 1 ef-trinity class-1 white
+2020-06-08 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2020-06-09 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green +sts-primus-felicianus
+2020-06-10 wednesday time-after-pentecost 1 margaret-of-scotland class-3 white
+2020-06-11 thursday time-after-pentecost - ef-corpus-christi class-1 white +barnabas
+2020-06-12 friday time-after-pentecost 1 john-of-san-fecundo class-3 red +basilidus
+2020-06-13 saturday time-after-pentecost 1 anthony-of-padua class-3 white
+2020-06-14 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +basil-the-great
+2020-06-15 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green +vitus
+2020-06-16 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green
+2020-06-17 wednesday time-after-pentecost 2 gregory-barbarigo class-3 white
+2020-06-18 thursday time-after-pentecost 2 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2020-06-19 friday time-after-pentecost - ef-sacred-heart class-1 white +julia-of-falconieri +sts-gervasius-and-protasius
+2020-06-20 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green +silverius
+2020-06-21 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +aloysius-gongzaga
+2020-06-22 monday time-after-pentecost 3 paulinus-of-nola class-3 white
+2020-06-23 tuesday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2020-06-24 wednesday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2020-06-25 thursday time-after-pentecost 3 william class-3 white
+2020-06-26 friday time-after-pentecost 3 sts-john-paul class-3 red
+2020-06-27 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2020-06-28 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +vigil-of-sts-peter-paul
+2020-06-29 monday time-after-pentecost 4 sts-peter-paul class-1 red
+2020-06-30 tuesday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2020-07-01 wednesday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2020-07-02 thursday time-after-pentecost 4 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2020-07-03 friday time-after-pentecost 4 irenaeus class-3 red
+2020-07-04 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2020-07-05 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +anthony-mary-zaccariah
+2020-07-06 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green
+2020-07-07 tuesday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2020-07-08 wednesday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2020-07-09 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2020-07-10 friday time-after-pentecost 5 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2020-07-11 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green +pius-i
+2020-07-12 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +john-gualbert +naboris-et-felicis
+2020-07-13 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2020-07-14 tuesday time-after-pentecost 6 bonaventure class-3 white
+2020-07-15 wednesday time-after-pentecost 6 henry-the-emperor class-3 white
+2020-07-16 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green +our-lady-of-mt-carmel
+2020-07-17 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green +alexis
+2020-07-18 saturday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2020-07-19 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +vincent-de-paul
+2020-07-20 monday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2020-07-21 tuesday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2020-07-22 wednesday time-after-pentecost 7 mary-magdalene class-3 white
+2020-07-23 thursday time-after-pentecost 7 apollinaris class-3 white +liborii
+2020-07-24 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +christina
+2020-07-25 saturday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2020-07-26 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +anne-mother-of-the-blessed-virgin
+2020-07-27 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +pantaleon
+2020-07-28 tuesday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2020-07-29 wednesday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2020-07-30 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +sts-abdon-sennen
+2020-07-31 friday time-after-pentecost 8 ignatius-loyola class-3 white
+2020-08-01 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +holy-machabees
+2020-08-02 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +alphonsus-liguori +stephen-i-pope-and-martyr
+2020-08-03 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green
+2020-08-04 tuesday time-after-pentecost 9 dominic class-3 white
+2020-08-05 wednesday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2020-08-06 thursday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2020-08-07 friday time-after-pentecost 9 cajetan class-3 white +donatus
+2020-08-08 saturday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2020-08-09 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +vigil-of-st-lawrence +romanus
+2020-08-10 monday time-after-pentecost 10 lawrence class-2 red
+2020-08-11 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +sts-tiburtius-susanna
+2020-08-12 wednesday time-after-pentecost 10 clare class-3 white
+2020-08-13 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +sts-hippolytus-cassian
+2020-08-14 friday time-after-pentecost 10 vigil-of-the-assumption class-2 white
+2020-08-15 saturday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2020-08-16 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +joachim-father-of-the-blessed-virgin
+2020-08-17 monday time-after-pentecost 11 hyacinth class-3 white
+2020-08-18 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green +agapitus
+2020-08-19 wednesday time-after-pentecost 11 john-eudes class-3 white
+2020-08-20 thursday time-after-pentecost 11 bernard-of-clairvaux class-3 white
+2020-08-21 friday time-after-pentecost 11 jane-frances-de-chantal class-3 white
+2020-08-22 saturday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2020-08-23 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +philip-benizi
+2020-08-24 monday time-after-pentecost 12 bartholomew class-2 red
+2020-08-25 tuesday time-after-pentecost 12 louis-ix class-3 white
+2020-08-26 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green +zephyrinus
+2020-08-27 thursday time-after-pentecost 12 joseph-calasance class-3 white
+2020-08-28 friday time-after-pentecost 12 augustine class-3 red +hermes
+2020-08-29 saturday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2020-08-30 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +rose-of-lima +sts-felix-and-adauctus
+2020-08-31 monday time-after-pentecost 13 raymond-nonnatus class-3 white
+2020-09-01 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green +giles +twelve-holy-brothers-martyrs
+2020-09-02 wednesday time-after-pentecost 13 stephen-of-hungary class-3 white
+2020-09-03 thursday time-after-pentecost 13 pius-x class-3 white
+2020-09-04 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green
+2020-09-05 saturday time-after-pentecost 13 lawrence-justinian class-3 white
+2020-09-06 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green
+2020-09-07 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green
+2020-09-08 tuesday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2020-09-09 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green +gorgonius
+2020-09-10 thursday time-after-pentecost 14 nicholas-of-tolentino class-3 white
+2020-09-11 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green +sts-protus-hyacinth
+2020-09-12 saturday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2020-09-13 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green
+2020-09-14 monday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2020-09-15 tuesday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2020-09-16 wednesday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2020-09-17 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +stigmata-of-st-francis
+2020-09-18 friday time-after-pentecost 15 joseph-of-cupertino class-3 white
+2020-09-19 saturday time-after-pentecost 15 januarius-companions class-3 red
+2020-09-20 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +sts-eustace-companions
+2020-09-21 monday time-after-pentecost 16 matthew class-2 red
+2020-09-22 tuesday time-after-pentecost 16 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2020-09-23 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +linus +thecla
+2020-09-24 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +our-lady-of-ransom
+2020-09-25 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet
+2020-09-26 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +sts-cyprian-justina
+2020-09-27 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-cosmas-damian
+2020-09-28 monday time-after-pentecost 17 wenceslaus class-3 red
+2020-09-29 tuesday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2020-09-30 wednesday time-after-pentecost 17 jerome class-3 white
+2020-10-01 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +remigius
+2020-10-02 friday time-after-pentecost 17 holy-guardian-angels class-3 white
+2020-10-03 saturday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2020-10-04 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +francis-of-assisi
+2020-10-05 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +placid-companions
+2020-10-06 tuesday time-after-pentecost 18 bruno class-3 white
+2020-10-07 wednesday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2020-10-08 thursday time-after-pentecost 18 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2020-10-09 friday time-after-pentecost 18 john-leonardi class-3 white +dionysius-and-companions
+2020-10-10 saturday time-after-pentecost 18 francis-borgia class-3 white
+2020-10-11 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +maternity-of-the-blessed-virgin-mary
+2020-10-12 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green
+2020-10-13 tuesday time-after-pentecost 19 edward class-3 white
+2020-10-14 wednesday time-after-pentecost 19 callistus-i class-3 red
+2020-10-15 thursday time-after-pentecost 19 teresa-of-avila class-3 white
+2020-10-16 friday time-after-pentecost 19 hedwig class-3 white
+2020-10-17 saturday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2020-10-18 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +luke-the-evangelist
+2020-10-19 monday time-after-pentecost 20 peter-of-alcantara class-3 white
+2020-10-20 tuesday time-after-pentecost 20 john-cantius class-3 white
+2020-10-21 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green +hilarion +ursula-and-companions
+2020-10-22 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2020-10-23 friday time-after-pentecost 20 anthony-mary-claret class-3 white
+2020-10-24 saturday time-after-pentecost 20 raphael-the-archangel class-3 white
+2020-10-25 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-chrysanthus-daria
+2020-10-26 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2020-10-27 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2020-10-28 wednesday time-after-pentecost 21 sts-simon-jude class-2 red
+2020-10-29 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2020-10-30 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2020-10-31 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2020-11-01 sunday time-after-pentecost 22 all-saints class-1 white
+2020-11-02 monday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2020-11-03 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2020-11-04 wednesday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2020-11-05 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2020-11-06 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2020-11-07 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2020-11-08 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +four-holy-crowned-martyrs
+2020-11-09 monday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2020-11-10 tuesday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2020-11-11 wednesday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2020-11-12 thursday time-after-pentecost 23 martin-i class-3 red
+2020-11-13 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green +didacus
+2020-11-14 saturday time-after-pentecost 23 josaphat class-3 white
+2020-11-15 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +albert-the-great
+2020-11-16 monday time-after-pentecost 24 gertrude-the-great class-3 white
+2020-11-17 tuesday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2020-11-18 wednesday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2020-11-19 thursday time-after-pentecost 24 elizabeth-of-hungary class-3 white +pontian
+2020-11-20 friday time-after-pentecost 24 felix-of-valois class-3 white
+2020-11-21 saturday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2020-11-22 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +cecilia
+2020-11-23 monday time-after-pentecost 25 clement-i class-3 red +felicity
+2020-11-24 tuesday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2020-11-25 wednesday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2020-11-26 thursday time-after-pentecost 25 sylvester class-3 white +peter-of-alexandria
+2020-11-27 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green
+2020-11-28 saturday time-after-pentecost 25 ef-time-after-pentecost-25-saturday class-4 green
+2020-11-29 sunday advent 1 ef-advent-sunday-1 class-1 violet +saturninus
+2020-11-30 monday advent 1 andrew class-2 red
+2020-12-01 tuesday advent 1 ef-advent-1-tuesday class-3 violet
+2020-12-02 wednesday advent 1 vivian class-3 red
+2020-12-03 thursday advent 1 francis-xavier class-3 white
+2020-12-04 friday advent 1 peter-chrysologus class-3 white
+2020-12-05 saturday advent 1 ef-advent-1-saturday class-3 violet +sabbas
+2020-12-06 sunday advent 2 ef-advent-sunday-2 class-2 violet +nicholas
+2020-12-07 monday advent 2 ambrose class-3 white
+2020-12-08 tuesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2020-12-09 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2020-12-10 thursday advent 2 ef-advent-2-thursday class-3 violet +melchiades
+2020-12-11 friday advent 2 damasus-i class-3 white
+2020-12-12 saturday advent 2 ef-advent-2-saturday class-3 violet
+2020-12-13 sunday advent 3 ef-advent-sunday-3 class-2 violet +lucy
+2020-12-14 monday advent 3 ef-advent-3-monday class-3 violet
+2020-12-15 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2020-12-16 wednesday advent 3 ef-advent-ember-wed class-2 violet +eusebius
+2020-12-17 thursday advent 3 ef-advent-3-thursday class-3 violet
+2020-12-18 friday advent 3 ef-advent-ember-fri class-2 violet
+2020-12-19 saturday advent 3 ef-advent-ember-sat class-2 violet
+2020-12-20 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2020-12-21 monday advent 4 thomas class-2 red
+2020-12-22 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2020-12-23 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2020-12-24 thursday advent 4 vigil-of-christmas class-1 violet
+2020-12-25 friday christmas - ef-nativity class-1 white
+2020-12-26 saturday christmas - stephen class-2 red
+2020-12-27 sunday christmas - ef-christmas-sunday-0 class-2 white +john-the-evangelist
+2020-12-28 monday christmas - holy-innocents class-2 red
+2020-12-29 tuesday christmas - ef-christmas-0-tuesday class-4 white +thomas-becket
+2020-12-30 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2020-12-31 thursday christmas - ef-christmas-0-thursday class-4 white +silvester
+2021-01-01 friday christmas - ef-circumcision class-1 white
+2021-01-02 saturday christmas - ef-christmas-0-saturday class-4 white
+2021-01-03 sunday christmas - ef-christmas-sunday-0 class-2 white
+2021-01-04 monday christmas - ef-christmas-0-monday class-4 white
+2021-01-05 tuesday christmas - ef-christmas-0-tuesday class-4 white +telesphorus-pope-and-martyr
+2021-01-06 wednesday time-after-epiphany - ef-epiphany class-1 white
+2021-01-07 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2021-01-08 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2021-01-09 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2021-01-10 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2021-01-11 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green +hyginus-pope-and-martyr
+2021-01-12 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2021-01-13 wednesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2021-01-14 thursday time-after-epiphany 2 hilary class-3 white +felicis
+2021-01-15 friday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2021-01-16 saturday time-after-epiphany 2 marcellus-i class-3 red
+2021-01-17 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +anthony
+2021-01-18 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +prisca
+2021-01-19 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2021-01-20 wednesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2021-01-21 thursday time-after-epiphany 3 agnes class-3 red
+2021-01-22 friday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2021-01-23 saturday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2021-01-24 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +timothy
+2021-01-25 monday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2021-01-26 tuesday time-after-epiphany 3 polycarp class-3 red
+2021-01-27 wednesday time-after-epiphany 4 john-chrysostom class-3 white
+2021-01-28 thursday time-after-epiphany 4 peter-nolasco class-3 white
+2021-01-29 friday time-after-epiphany 4 francis-de-sales class-3 white
+2021-01-30 saturday time-after-epiphany 4 martina class-3 red
+2021-01-31 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +john-bosco
+2021-02-01 monday septuagesima 1 ignatius-of-antioch class-3 red
+2021-02-02 tuesday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2021-02-03 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet +blaise
+2021-02-04 thursday septuagesima 1 andrew-corsini class-3 white
+2021-02-05 friday septuagesima 1 agatha class-3 red
+2021-02-06 saturday septuagesima 1 titus class-3 white +dorothy
+2021-02-07 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +romuald
+2021-02-08 monday septuagesima 2 john-of-matha class-3 white
+2021-02-09 tuesday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2021-02-10 wednesday septuagesima 2 scholastica class-3 white
+2021-02-11 thursday septuagesima 2 our-lady-of-lourdes class-3 white
+2021-02-12 friday septuagesima 2 seven-holy-servite-founders class-3 white
+2021-02-13 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2021-02-14 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +valentine
+2021-02-15 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet +sts-faustinus-jovita
+2021-02-16 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2021-02-17 wednesday lent - ef-ash-wednesday class-1 violet
+2021-02-18 thursday lent - ef-lent-after-ashes-thursday class-3 violet +simeon
+2021-02-19 friday lent - ef-lent-after-ashes-friday class-3 violet
+2021-02-20 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2021-02-21 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2021-02-22 monday lent 1 chair-of-st-peter class-2 white +paul
+2021-02-23 tuesday lent 1 ef-lent-1-tuesday class-3 violet +peter-damien
+2021-02-24 wednesday lent 1 matthias class-2 red
+2021-02-25 thursday lent 1 ef-lent-1-thursday class-3 violet
+2021-02-26 friday lent 1 ef-lent-1-friday class-3 violet
+2021-02-27 saturday lent 1 ef-lent-1-saturday class-3 violet +gabriel-of-our-lady-of-sorrows
+2021-02-28 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2021-03-01 monday lent 2 ef-lent-2-monday class-3 violet
+2021-03-02 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2021-03-03 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2021-03-04 thursday lent 2 ef-lent-2-thursday class-3 violet +casimir +lucius
+2021-03-05 friday lent 2 ef-lent-2-friday class-3 violet
+2021-03-06 saturday lent 2 ef-lent-2-saturday class-3 violet +sts-felicitas-perpetua
+2021-03-07 sunday lent 3 ef-lent-sunday-3 class-2 violet +thomas-aquinas
+2021-03-08 monday lent 3 ef-lent-3-monday class-3 violet +john-of-god
+2021-03-09 tuesday lent 3 ef-lent-3-tuesday class-3 violet +frances-rome
+2021-03-10 wednesday lent 3 ef-lent-3-wednesday class-3 violet +forty-holy-martyrs-of-sebaste
+2021-03-11 thursday lent 3 ef-lent-3-thursday class-3 violet
+2021-03-12 friday lent 3 ef-lent-3-friday class-3 violet +gregory-the-great
+2021-03-13 saturday lent 3 ef-lent-3-saturday class-3 violet
+2021-03-14 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2021-03-15 monday lent 4 ef-lent-4-monday class-3 violet
+2021-03-16 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2021-03-17 wednesday lent 4 ef-lent-4-wednesday class-3 violet +patrick
+2021-03-18 thursday lent 4 ef-lent-4-thursday class-3 violet +cyril-of-jerusalem
+2021-03-19 friday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2021-03-20 saturday lent 4 ef-lent-4-saturday class-3 violet
+2021-03-21 sunday passiontide 1 ef-passion-sunday class-1 violet +benedict
+2021-03-22 monday passiontide - ef-passiontide-0-monday class-3 violet
+2021-03-23 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2021-03-24 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +gabriel-the-archangel
+2021-03-25 thursday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2021-03-26 friday passiontide - ef-passiontide-0-friday class-3 violet
+2021-03-27 saturday passiontide - ef-passiontide-0-saturday class-3 violet +john-damascene
+2021-03-28 sunday passiontide 2 ef-palm-sunday class-1 violet +john-of-capistrano
+2021-03-29 monday passiontide - ef-passiontide-0-monday class-1 violet
+2021-03-30 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2021-03-31 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2021-04-01 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2021-04-02 friday passiontide - ef-passiontide-0-friday class-1 violet +francis-of-paola
+2021-04-03 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2021-04-04 sunday easter 1 ef-easter-sunday class-1 white +isidore-of-seville
+2021-04-05 monday easter 1 ef-easter-1-monday class-1 white +vincent-ferrer
+2021-04-06 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2021-04-07 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2021-04-08 thursday easter 1 ef-easter-1-thursday class-1 white
+2021-04-09 friday easter 1 ef-easter-1-friday class-1 white
+2021-04-10 saturday easter 1 ef-easter-1-saturday class-1 white
+2021-04-11 sunday easter 2 ef-low-sunday class-1 white +leo-the-great
+2021-04-12 monday easter 2 ef-easter-2-monday class-4 white
+2021-04-13 tuesday easter 2 hermenegild class-3 red
+2021-04-14 wednesday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2021-04-15 thursday easter 2 ef-easter-2-thursday class-4 white
+2021-04-16 friday easter 2 ef-easter-2-friday class-4 white
+2021-04-17 saturday easter 2 ef-easter-2-saturday class-4 white +anicetus
+2021-04-18 sunday easter 3 ef-easter-sunday-3 class-2 white
+2021-04-19 monday easter 3 ef-easter-3-monday class-4 white
+2021-04-20 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2021-04-21 wednesday easter 3 anselm class-3 white
+2021-04-22 thursday easter 3 sts-soter-caius class-3 red
+2021-04-23 friday easter 3 ef-easter-3-friday class-4 white +george
+2021-04-24 saturday easter 3 fidelis-of-sigmaringen class-3 red
+2021-04-25 sunday easter 4 ef-easter-sunday-4 class-2 white +mark
+2021-04-26 monday easter 4 sts-cletus-marcellinus class-3 red
+2021-04-27 tuesday easter 4 peter-canisius class-3 white
+2021-04-28 wednesday easter 4 paul-of-the-cross class-3 white
+2021-04-29 thursday easter 4 peter-of-verona class-3 red
+2021-04-30 friday easter 4 catherine-of-siena class-3 white
+2021-05-01 saturday easter 4 joseph-the-workman class-1 white
+2021-05-02 sunday easter 5 ef-easter-sunday-5 class-2 white +athanasius
+2021-05-03 monday easter 5 ef-easter-5-monday class-4 white +sts-alexander-companions
+2021-05-04 tuesday easter 5 monica class-3 white
+2021-05-05 wednesday easter 5 pius-v class-3 white
+2021-05-06 thursday easter 5 ef-easter-5-thursday class-4 white
+2021-05-07 friday easter 5 stanislaus class-3 red
+2021-05-08 saturday easter 5 ef-easter-5-saturday class-4 white
+2021-05-09 sunday easter 6 ef-easter-sunday-6 class-2 white +gregory-of-nazianzen
+2021-05-10 monday easter 6 antoninus class-3 white +gordiano-and-epimacho
+2021-05-11 tuesday easter 6 sts-philip-james class-2 red
+2021-05-12 wednesday easter - ef-ascension-vigil class-2 white +sts-nereus-achilleus-domitilla-pancras
+2021-05-13 thursday easter - ef-ascension class-1 white +robert-bellarmine
+2021-05-14 friday easter 6 ef-easter-6-friday class-4 white
+2021-05-15 saturday easter 6 john-baptist-de-la-salle class-3 white
+2021-05-16 sunday easter 7 ef-easter-sunday-7 class-2 white +ubaldus
+2021-05-17 monday easter 7 paschal-baylon class-3 white
+2021-05-18 tuesday easter 7 venantius class-3 red
+2021-05-19 wednesday easter 7 peter-celestine class-3 white +pudentiana-virginis
+2021-05-20 thursday easter 7 bernardine-of-siena class-3 white
+2021-05-21 friday easter 7 ef-easter-7-friday class-4 white
+2021-05-22 saturday easter - ef-pentecost-vigil class-1 red
+2021-05-23 sunday easter - ef-pentecost class-1 red
+2021-05-24 monday easter 8 ef-easter-8-monday class-1 red
+2021-05-25 tuesday easter 8 ef-easter-8-tuesday class-1 red +gregory-vii +urban-pope-and-martyr
+2021-05-26 wednesday easter 8 ef-easter-8-wednesday class-1 red +philip-neri +eleutherius
+2021-05-27 thursday easter 8 ef-easter-8-thursday class-1 red +bede-the-venerable +john-i
+2021-05-28 friday easter 8 ef-easter-8-friday class-1 red +augustine-of-canterbury
+2021-05-29 saturday easter 8 ef-easter-8-saturday class-1 red +mary-magdalene-de-pazzi
+2021-05-30 sunday time-after-pentecost 1 ef-trinity class-1 white +felix-i
+2021-05-31 monday time-after-pentecost 1 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2021-06-01 tuesday time-after-pentecost 1 angela-merici class-3 white
+2021-06-02 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green +sts-marcellinus-peter-erasmus
+2021-06-03 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2021-06-04 friday time-after-pentecost 1 francis-caracciolo class-3 white
+2021-06-05 saturday time-after-pentecost 1 boniface class-3 red
+2021-06-06 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +norbert
+2021-06-07 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2021-06-08 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green
+2021-06-09 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green +sts-primus-felicianus
+2021-06-10 thursday time-after-pentecost 2 margaret-of-scotland class-3 white
+2021-06-11 friday time-after-pentecost - ef-sacred-heart class-1 white +barnabas
+2021-06-12 saturday time-after-pentecost 2 john-of-san-fecundo class-3 red +basilidus
+2021-06-13 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +anthony-of-padua
+2021-06-14 monday time-after-pentecost 3 basil-the-great class-3 white
+2021-06-15 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green +vitus
+2021-06-16 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green
+2021-06-17 thursday time-after-pentecost 3 gregory-barbarigo class-3 white
+2021-06-18 friday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2021-06-19 saturday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2021-06-20 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +silverius
+2021-06-21 monday time-after-pentecost 4 aloysius-gongzaga class-3 white
+2021-06-22 tuesday time-after-pentecost 4 paulinus-of-nola class-3 white
+2021-06-23 wednesday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2021-06-24 thursday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2021-06-25 friday time-after-pentecost 4 william class-3 white
+2021-06-26 saturday time-after-pentecost 4 sts-john-paul class-3 red
+2021-06-27 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2021-06-28 monday time-after-pentecost 5 vigil-of-sts-peter-paul class-2 violet
+2021-06-29 tuesday time-after-pentecost 5 sts-peter-paul class-1 red
+2021-06-30 wednesday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2021-07-01 thursday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2021-07-02 friday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2021-07-03 saturday time-after-pentecost 5 irenaeus class-3 red
+2021-07-04 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2021-07-05 monday time-after-pentecost 6 anthony-mary-zaccariah class-3 white
+2021-07-06 tuesday time-after-pentecost 6 ef-time-after-pentecost-6-tuesday class-4 green
+2021-07-07 wednesday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2021-07-08 thursday time-after-pentecost 6 elizabeth-of-portugal class-3 white
+2021-07-09 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green
+2021-07-10 saturday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2021-07-11 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +pius-i
+2021-07-12 monday time-after-pentecost 7 john-gualbert class-3 red +naboris-et-felicis
+2021-07-13 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green
+2021-07-14 wednesday time-after-pentecost 7 bonaventure class-3 white
+2021-07-15 thursday time-after-pentecost 7 henry-the-emperor class-3 white
+2021-07-16 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +our-lady-of-mt-carmel
+2021-07-17 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green +alexis
+2021-07-18 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +camillus-de-lellis +symphorosa-and-sons
+2021-07-19 monday time-after-pentecost 8 vincent-de-paul class-3 white
+2021-07-20 tuesday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2021-07-21 wednesday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2021-07-22 thursday time-after-pentecost 8 mary-magdalene class-3 white
+2021-07-23 friday time-after-pentecost 8 apollinaris class-3 white +liborii
+2021-07-24 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +christina
+2021-07-25 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +james-the-greater +christopher
+2021-07-26 monday time-after-pentecost 9 anne-mother-of-the-blessed-virgin class-2 white
+2021-07-27 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +pantaleon
+2021-07-28 wednesday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2021-07-29 thursday time-after-pentecost 9 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2021-07-30 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +sts-abdon-sennen
+2021-07-31 saturday time-after-pentecost 9 ignatius-loyola class-3 white
+2021-08-01 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +holy-machabees
+2021-08-02 monday time-after-pentecost 10 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2021-08-03 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green
+2021-08-04 wednesday time-after-pentecost 10 dominic class-3 white
+2021-08-05 thursday time-after-pentecost 10 dedication-of-the-basilica-of-st-mary-major class-3 white
+2021-08-06 friday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2021-08-07 saturday time-after-pentecost 10 cajetan class-3 white +donatus
+2021-08-08 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +john-mary-vianney +cyriacus-largus-and-smaragdus-martyrs
+2021-08-09 monday time-after-pentecost 11 vigil-of-st-lawrence class-3 red +romanus
+2021-08-10 tuesday time-after-pentecost 11 lawrence class-2 red
+2021-08-11 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green +sts-tiburtius-susanna
+2021-08-12 thursday time-after-pentecost 11 clare class-3 white
+2021-08-13 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +sts-hippolytus-cassian
+2021-08-14 saturday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2021-08-15 sunday time-after-pentecost 12 assumption-of-the-blessed-virgin-mary class-1 white
+2021-08-16 monday time-after-pentecost 12 joachim-father-of-the-blessed-virgin class-2 white
+2021-08-17 tuesday time-after-pentecost 12 hyacinth class-3 white
+2021-08-18 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green +agapitus
+2021-08-19 thursday time-after-pentecost 12 john-eudes class-3 white
+2021-08-20 friday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2021-08-21 saturday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2021-08-22 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +immaculate-heart-of-mary +sts-timothy-hippolytus-and-symphorianus-martyrs
+2021-08-23 monday time-after-pentecost 13 philip-benizi class-3 white
+2021-08-24 tuesday time-after-pentecost 13 bartholomew class-2 red
+2021-08-25 wednesday time-after-pentecost 13 louis-ix class-3 white
+2021-08-26 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +zephyrinus
+2021-08-27 friday time-after-pentecost 13 joseph-calasance class-3 white
+2021-08-28 saturday time-after-pentecost 13 augustine class-3 red +hermes
+2021-08-29 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +beheading-of-st-john-the-baptist +sabina
+2021-08-30 monday time-after-pentecost 14 rose-of-lima class-3 red +sts-felix-and-adauctus
+2021-08-31 tuesday time-after-pentecost 14 raymond-nonnatus class-3 white
+2021-09-01 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green +giles +twelve-holy-brothers-martyrs
+2021-09-02 thursday time-after-pentecost 14 stephen-of-hungary class-3 white
+2021-09-03 friday time-after-pentecost 14 pius-x class-3 white
+2021-09-04 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green
+2021-09-05 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +lawrence-justinian
+2021-09-06 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green
+2021-09-07 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green
+2021-09-08 wednesday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2021-09-09 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +gorgonius
+2021-09-10 friday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2021-09-11 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +sts-protus-hyacinth
+2021-09-12 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +most-holy-name-of-mary
+2021-09-13 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green
+2021-09-14 tuesday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2021-09-15 wednesday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2021-09-16 thursday time-after-pentecost 16 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2021-09-17 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green +stigmata-of-st-francis
+2021-09-18 saturday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2021-09-19 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +januarius-companions
+2021-09-20 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +sts-eustace-companions
+2021-09-21 tuesday time-after-pentecost 17 matthew class-2 red
+2021-09-22 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2021-09-23 thursday time-after-pentecost 17 linus class-3 red +thecla
+2021-09-24 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet +our-lady-of-ransom
+2021-09-25 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet
+2021-09-26 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-cyprian-justina
+2021-09-27 monday time-after-pentecost 18 sts-cosmas-damian class-3 red
+2021-09-28 tuesday time-after-pentecost 18 wenceslaus class-3 red
+2021-09-29 wednesday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2021-09-30 thursday time-after-pentecost 18 jerome class-3 white
+2021-10-01 friday time-after-pentecost 18 ef-time-after-pentecost-18-friday class-4 green +remigius
+2021-10-02 saturday time-after-pentecost 18 holy-guardian-angels class-3 white
+2021-10-03 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +theresa-of-the-infant-jesus
+2021-10-04 monday time-after-pentecost 19 francis-of-assisi class-3 white
+2021-10-05 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green +placid-companions
+2021-10-06 wednesday time-after-pentecost 19 bruno class-3 white
+2021-10-07 thursday time-after-pentecost 19 our-lady-of-the-rosary class-2 white +mark-i
+2021-10-08 friday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2021-10-09 saturday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2021-10-10 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +francis-borgia
+2021-10-11 monday time-after-pentecost 20 maternity-of-the-blessed-virgin-mary class-2 white
+2021-10-12 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green
+2021-10-13 wednesday time-after-pentecost 20 edward class-3 white
+2021-10-14 thursday time-after-pentecost 20 callistus-i class-3 red
+2021-10-15 friday time-after-pentecost 20 teresa-of-avila class-3 white
+2021-10-16 saturday time-after-pentecost 20 hedwig class-3 white
+2021-10-17 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +margaret-mary-alacoque
+2021-10-18 monday time-after-pentecost 21 luke-the-evangelist class-2 red
+2021-10-19 tuesday time-after-pentecost 21 peter-of-alcantara class-3 white
+2021-10-20 wednesday time-after-pentecost 21 john-cantius class-3 white
+2021-10-21 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green +hilarion +ursula-and-companions
+2021-10-22 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2021-10-23 saturday time-after-pentecost 21 anthony-mary-claret class-3 white
+2021-10-24 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +raphael-the-archangel
+2021-10-25 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green +sts-chrysanthus-daria
+2021-10-26 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2021-10-27 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green
+2021-10-28 thursday time-after-pentecost 22 sts-simon-jude class-2 red
+2021-10-29 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2021-10-30 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2021-10-31 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2021-11-01 monday time-after-pentecost 23 all-saints class-1 white
+2021-11-02 tuesday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2021-11-03 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2021-11-04 thursday time-after-pentecost 23 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2021-11-05 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2021-11-06 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2021-11-07 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green
+2021-11-08 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green +four-holy-crowned-martyrs
+2021-11-09 tuesday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2021-11-10 wednesday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2021-11-11 thursday time-after-pentecost 24 martin-of-tours class-3 white +menna
+2021-11-12 friday time-after-pentecost 24 martin-i class-3 red
+2021-11-13 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green +didacus
+2021-11-14 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +josaphat
+2021-11-15 monday time-after-pentecost 25 albert-the-great class-3 white
+2021-11-16 tuesday time-after-pentecost 25 gertrude-the-great class-3 white
+2021-11-17 wednesday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2021-11-18 thursday time-after-pentecost 25 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2021-11-19 friday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2021-11-20 saturday time-after-pentecost 25 felix-of-valois class-3 white
+2021-11-21 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +presentation-of-the-blessed-virgin-mary
+2021-11-22 monday time-after-pentecost 26 cecilia class-3 red
+2021-11-23 tuesday time-after-pentecost 26 clement-i class-3 red +felicity
+2021-11-24 wednesday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2021-11-25 thursday time-after-pentecost 26 catherine-of-alexandria class-3 red
+2021-11-26 friday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2021-11-27 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green
+2021-11-28 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2021-11-29 monday advent 1 ef-advent-1-monday class-3 violet +saturninus
+2021-11-30 tuesday advent 1 andrew class-2 red
+2021-12-01 wednesday advent 1 ef-advent-1-wednesday class-3 violet
+2021-12-02 thursday advent 1 vivian class-3 red
+2021-12-03 friday advent 1 francis-xavier class-3 white
+2021-12-04 saturday advent 1 peter-chrysologus class-3 white
+2021-12-05 sunday advent 2 ef-advent-sunday-2 class-2 violet +sabbas
+2021-12-06 monday advent 2 nicholas class-3 white
+2021-12-07 tuesday advent 2 ambrose class-3 white
+2021-12-08 wednesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2021-12-09 thursday advent 2 ef-advent-2-thursday class-3 violet
+2021-12-10 friday advent 2 ef-advent-2-friday class-3 violet +melchiades
+2021-12-11 saturday advent 2 damasus-i class-3 white
+2021-12-12 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2021-12-13 monday advent 3 lucy class-3 red
+2021-12-14 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2021-12-15 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2021-12-16 thursday advent 3 eusebius class-3 red
+2021-12-17 friday advent 3 ef-advent-ember-fri class-2 violet
+2021-12-18 saturday advent 3 ef-advent-ember-sat class-2 violet
+2021-12-19 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2021-12-20 monday advent 4 ef-advent-4-monday class-3 violet
+2021-12-21 tuesday advent 4 thomas class-2 red
+2021-12-22 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2021-12-23 thursday advent 4 ef-advent-4-thursday class-3 violet
+2021-12-24 friday advent 4 vigil-of-christmas class-1 violet
+2021-12-25 saturday christmas - ef-nativity class-1 white
+2021-12-26 sunday christmas - ef-christmas-sunday-0 class-2 white +stephen
+2021-12-27 monday christmas - john-the-evangelist class-2 white
+2021-12-28 tuesday christmas - holy-innocents class-2 red
+2021-12-29 wednesday christmas - ef-christmas-0-wednesday class-4 white +thomas-becket
+2021-12-30 thursday christmas - ef-christmas-0-thursday class-4 white
+2021-12-31 friday christmas - ef-christmas-0-friday class-4 white +silvester
+2022-01-01 saturday christmas - ef-circumcision class-1 white
+2022-01-02 sunday christmas - ef-christmas-sunday-0 class-2 white
+2022-01-03 monday christmas - ef-christmas-0-monday class-4 white
+2022-01-04 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2022-01-05 wednesday christmas - ef-christmas-0-wednesday class-4 white +telesphorus-pope-and-martyr
+2022-01-06 thursday time-after-epiphany - ef-epiphany class-1 white
+2022-01-07 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2022-01-08 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2022-01-09 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2022-01-10 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2022-01-11 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green +hyginus-pope-and-martyr
+2022-01-12 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2022-01-13 thursday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2022-01-14 friday time-after-epiphany 2 hilary class-3 white +felicis
+2022-01-15 saturday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2022-01-16 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +marcellus-i
+2022-01-17 monday time-after-epiphany 2 anthony class-3 white
+2022-01-18 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +prisca
+2022-01-19 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2022-01-20 thursday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2022-01-21 friday time-after-epiphany 3 agnes class-3 red
+2022-01-22 saturday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2022-01-23 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +raymond-of-pe-afort +emerentiana
+2022-01-24 monday time-after-epiphany 3 timothy class-3 red
+2022-01-25 tuesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2022-01-26 wednesday time-after-epiphany 3 polycarp class-3 red
+2022-01-27 thursday time-after-epiphany 4 john-chrysostom class-3 white
+2022-01-28 friday time-after-epiphany 4 peter-nolasco class-3 white
+2022-01-29 saturday time-after-epiphany 4 francis-de-sales class-3 white
+2022-01-30 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +martina
+2022-01-31 monday time-after-epiphany 4 john-bosco class-3 white
+2022-02-01 tuesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2022-02-02 wednesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2022-02-03 thursday time-after-epiphany 5 ef-time-after-epiphany-5-thursday class-4 green +blaise
+2022-02-04 friday time-after-epiphany 5 andrew-corsini class-3 white
+2022-02-05 saturday time-after-epiphany 5 agatha class-3 red
+2022-02-06 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +titus +dorothy
+2022-02-07 monday time-after-epiphany 5 romuald class-3 white
+2022-02-08 tuesday time-after-epiphany 5 john-of-matha class-3 white
+2022-02-09 wednesday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2022-02-10 thursday time-after-epiphany 6 scholastica class-3 white
+2022-02-11 friday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2022-02-12 saturday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2022-02-13 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2022-02-14 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +valentine
+2022-02-15 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +sts-faustinus-jovita
+2022-02-16 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2022-02-17 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2022-02-18 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet +simeon
+2022-02-19 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet
+2022-02-20 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2022-02-21 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2022-02-22 tuesday septuagesima 2 chair-of-st-peter class-2 white +paul
+2022-02-23 wednesday septuagesima 2 peter-damien class-3 white
+2022-02-24 thursday septuagesima 2 matthias class-2 red
+2022-02-25 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2022-02-26 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2022-02-27 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +gabriel-of-our-lady-of-sorrows
+2022-02-28 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2022-03-01 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2022-03-02 wednesday lent - ef-ash-wednesday class-1 violet
+2022-03-03 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2022-03-04 friday lent - ef-lent-after-ashes-friday class-3 violet +casimir +lucius
+2022-03-05 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2022-03-06 sunday lent 1 ef-lent-sunday-1 class-2 violet +sts-felicitas-perpetua
+2022-03-07 monday lent 1 ef-lent-1-monday class-3 violet +thomas-aquinas
+2022-03-08 tuesday lent 1 ef-lent-1-tuesday class-3 violet +john-of-god
+2022-03-09 wednesday lent 1 ef-lent-1-wednesday class-3 violet +frances-rome
+2022-03-10 thursday lent 1 ef-lent-1-thursday class-3 violet +forty-holy-martyrs-of-sebaste
+2022-03-11 friday lent 1 ef-lent-1-friday class-3 violet
+2022-03-12 saturday lent 1 ef-lent-1-saturday class-3 violet +gregory-the-great
+2022-03-13 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2022-03-14 monday lent 2 ef-lent-2-monday class-3 violet
+2022-03-15 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2022-03-16 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2022-03-17 thursday lent 2 ef-lent-2-thursday class-3 violet +patrick
+2022-03-18 friday lent 2 ef-lent-2-friday class-3 violet +cyril-of-jerusalem
+2022-03-19 saturday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2022-03-20 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2022-03-21 monday lent 3 ef-lent-3-monday class-3 violet +benedict
+2022-03-22 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2022-03-23 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2022-03-24 thursday lent 3 ef-lent-3-thursday class-3 violet +gabriel-the-archangel
+2022-03-25 friday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2022-03-26 saturday lent 3 ef-lent-3-saturday class-3 violet
+2022-03-27 sunday lent 4 ef-lent-sunday-4 class-2 violet +john-damascene
+2022-03-28 monday lent 4 ef-lent-4-monday class-3 violet +john-of-capistrano
+2022-03-29 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2022-03-30 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2022-03-31 thursday lent 4 ef-lent-4-thursday class-3 violet
+2022-04-01 friday lent 4 ef-lent-4-friday class-3 violet
+2022-04-02 saturday lent 4 ef-lent-4-saturday class-3 violet +francis-of-paola
+2022-04-03 sunday passiontide 1 ef-passion-sunday class-1 violet
+2022-04-04 monday passiontide - ef-passiontide-0-monday class-3 violet +isidore-of-seville
+2022-04-05 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +vincent-ferrer
+2022-04-06 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2022-04-07 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2022-04-08 friday passiontide - ef-passiontide-0-friday class-3 violet
+2022-04-09 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2022-04-10 sunday passiontide 2 ef-palm-sunday class-1 violet
+2022-04-11 monday passiontide - ef-passiontide-0-monday class-1 violet +leo-the-great
+2022-04-12 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2022-04-13 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +hermenegild
+2022-04-14 thursday passiontide - ef-passiontide-0-thursday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2022-04-15 friday passiontide - ef-passiontide-0-friday class-1 violet
+2022-04-16 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2022-04-17 sunday easter 1 ef-easter-sunday class-1 white +anicetus
+2022-04-18 monday easter 1 ef-easter-1-monday class-1 white
+2022-04-19 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2022-04-20 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2022-04-21 thursday easter 1 ef-easter-1-thursday class-1 white +anselm
+2022-04-22 friday easter 1 ef-easter-1-friday class-1 white +sts-soter-caius
+2022-04-23 saturday easter 1 ef-easter-1-saturday class-1 white +george
+2022-04-24 sunday easter 2 ef-low-sunday class-1 white +fidelis-of-sigmaringen
+2022-04-25 monday easter 2 mark class-2 red
+2022-04-26 tuesday easter 2 sts-cletus-marcellinus class-3 red
+2022-04-27 wednesday easter 2 peter-canisius class-3 white
+2022-04-28 thursday easter 2 paul-of-the-cross class-3 white
+2022-04-29 friday easter 2 peter-of-verona class-3 red
+2022-04-30 saturday easter 2 catherine-of-siena class-3 white
+2022-05-01 sunday easter 3 joseph-the-workman class-1 white
+2022-05-02 monday easter 3 athanasius class-3 white
+2022-05-03 tuesday easter 3 ef-easter-3-tuesday class-4 white +sts-alexander-companions
+2022-05-04 wednesday easter 3 monica class-3 white
+2022-05-05 thursday easter 3 pius-v class-3 white
+2022-05-06 friday easter 3 ef-easter-3-friday class-4 white
+2022-05-07 saturday easter 3 stanislaus class-3 red
+2022-05-08 sunday easter 4 ef-easter-sunday-4 class-2 white
+2022-05-09 monday easter 4 gregory-of-nazianzen class-3 white
+2022-05-10 tuesday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2022-05-11 wednesday easter 4 sts-philip-james class-2 red
+2022-05-12 thursday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2022-05-13 friday easter 4 robert-bellarmine class-3 white
+2022-05-14 saturday easter 4 ef-easter-4-saturday class-4 white
+2022-05-15 sunday easter 5 ef-easter-sunday-5 class-2 white +john-baptist-de-la-salle
+2022-05-16 monday easter 5 ef-easter-5-monday class-4 white +ubaldus
+2022-05-17 tuesday easter 5 paschal-baylon class-3 white
+2022-05-18 wednesday easter 5 venantius class-3 red
+2022-05-19 thursday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2022-05-20 friday easter 5 bernardine-of-siena class-3 white
+2022-05-21 saturday easter 5 ef-easter-5-saturday class-4 white
+2022-05-22 sunday easter 6 ef-easter-sunday-6 class-2 white
+2022-05-23 monday easter 6 ef-easter-6-monday class-4 white
+2022-05-24 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2022-05-25 wednesday easter - ef-ascension-vigil class-2 white +gregory-vii +urban-pope-and-martyr
+2022-05-26 thursday easter - ef-ascension class-1 white +philip-neri +eleutherius
+2022-05-27 friday easter 6 bede-the-venerable class-3 white +john-i
+2022-05-28 saturday easter 6 augustine-of-canterbury class-3 white
+2022-05-29 sunday easter 7 ef-easter-sunday-7 class-2 white +mary-magdalene-de-pazzi
+2022-05-30 monday easter 7 ef-easter-7-monday class-4 white +felix-i
+2022-05-31 tuesday easter 7 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2022-06-01 wednesday easter 7 angela-merici class-3 white
+2022-06-02 thursday easter 7 ef-easter-7-thursday class-4 white +sts-marcellinus-peter-erasmus
+2022-06-03 friday easter 7 ef-easter-7-friday class-4 white
+2022-06-04 saturday easter - ef-pentecost-vigil class-1 red +francis-caracciolo
+2022-06-05 sunday easter - ef-pentecost class-1 red +boniface
+2022-06-06 monday easter 8 ef-easter-8-monday class-1 red +norbert
+2022-06-07 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2022-06-08 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2022-06-09 thursday easter 8 ef-easter-8-thursday class-1 red +sts-primus-felicianus
+2022-06-10 friday easter 8 ef-easter-8-friday class-1 red +margaret-of-scotland
+2022-06-11 saturday easter 8 ef-easter-8-saturday class-1 red +barnabas
+2022-06-12 sunday time-after-pentecost 1 ef-trinity class-1 white +john-of-san-fecundo +basilidus
+2022-06-13 monday time-after-pentecost 1 anthony-of-padua class-3 white
+2022-06-14 tuesday time-after-pentecost 1 basil-the-great class-3 white
+2022-06-15 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green +vitus
+2022-06-16 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2022-06-17 friday time-after-pentecost 1 gregory-barbarigo class-3 white
+2022-06-18 saturday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2022-06-19 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +julia-of-falconieri +sts-gervasius-and-protasius
+2022-06-20 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green +silverius
+2022-06-21 tuesday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2022-06-22 wednesday time-after-pentecost 2 paulinus-of-nola class-3 white
+2022-06-23 thursday time-after-pentecost 2 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2022-06-24 friday time-after-pentecost - ef-sacred-heart class-1 white
+2022-06-25 saturday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white +william
+2022-06-26 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +sts-john-paul
+2022-06-27 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green
+2022-06-28 tuesday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2022-06-29 wednesday time-after-pentecost 3 sts-peter-paul class-1 red
+2022-06-30 thursday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2022-07-01 friday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2022-07-02 saturday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2022-07-03 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +irenaeus
+2022-07-04 monday time-after-pentecost 4 ef-time-after-pentecost-4-monday class-4 green
+2022-07-05 tuesday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2022-07-06 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2022-07-07 thursday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2022-07-08 friday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2022-07-09 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2022-07-10 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +seven-holy-brothers-and-sts-rufina-secunda
+2022-07-11 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green +pius-i
+2022-07-12 tuesday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2022-07-13 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2022-07-14 thursday time-after-pentecost 5 bonaventure class-3 white
+2022-07-15 friday time-after-pentecost 5 henry-the-emperor class-3 white
+2022-07-16 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green +our-lady-of-mt-carmel
+2022-07-17 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +alexis
+2022-07-18 monday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2022-07-19 tuesday time-after-pentecost 6 vincent-de-paul class-3 white
+2022-07-20 wednesday time-after-pentecost 6 jerome-emiliani class-3 red +margaret
+2022-07-21 thursday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2022-07-22 friday time-after-pentecost 6 mary-magdalene class-3 white
+2022-07-23 saturday time-after-pentecost 6 apollinaris class-3 white +liborii
+2022-07-24 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +christina
+2022-07-25 monday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2022-07-26 tuesday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2022-07-27 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +pantaleon
+2022-07-28 thursday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2022-07-29 friday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2022-07-30 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green +sts-abdon-sennen
+2022-07-31 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +ignatius-loyola
+2022-08-01 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +holy-machabees
+2022-08-02 tuesday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2022-08-03 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green
+2022-08-04 thursday time-after-pentecost 8 dominic class-3 white
+2022-08-05 friday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2022-08-06 saturday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2022-08-07 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +cajetan +donatus
+2022-08-08 monday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2022-08-09 tuesday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2022-08-10 wednesday time-after-pentecost 9 lawrence class-2 red
+2022-08-11 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +sts-tiburtius-susanna
+2022-08-12 friday time-after-pentecost 9 clare class-3 white
+2022-08-13 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +sts-hippolytus-cassian
+2022-08-14 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +vigil-of-the-assumption
+2022-08-15 monday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2022-08-16 tuesday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2022-08-17 wednesday time-after-pentecost 10 hyacinth class-3 white
+2022-08-18 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +agapitus
+2022-08-19 friday time-after-pentecost 10 john-eudes class-3 white
+2022-08-20 saturday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2022-08-21 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +jane-frances-de-chantal
+2022-08-22 monday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2022-08-23 tuesday time-after-pentecost 11 philip-benizi class-3 white
+2022-08-24 wednesday time-after-pentecost 11 bartholomew class-2 red
+2022-08-25 thursday time-after-pentecost 11 louis-ix class-3 white
+2022-08-26 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +zephyrinus
+2022-08-27 saturday time-after-pentecost 11 joseph-calasance class-3 white
+2022-08-28 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +augustine +hermes
+2022-08-29 monday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2022-08-30 tuesday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2022-08-31 wednesday time-after-pentecost 12 raymond-nonnatus class-3 white
+2022-09-01 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green +giles +twelve-holy-brothers-martyrs
+2022-09-02 friday time-after-pentecost 12 stephen-of-hungary class-3 white
+2022-09-03 saturday time-after-pentecost 12 pius-x class-3 white
+2022-09-04 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green
+2022-09-05 monday time-after-pentecost 13 lawrence-justinian class-3 white
+2022-09-06 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green
+2022-09-07 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green
+2022-09-08 thursday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2022-09-09 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green +gorgonius
+2022-09-10 saturday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2022-09-11 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +sts-protus-hyacinth
+2022-09-12 monday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2022-09-13 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green
+2022-09-14 wednesday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2022-09-15 thursday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2022-09-16 friday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2022-09-17 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +stigmata-of-st-francis
+2022-09-18 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +joseph-of-cupertino
+2022-09-19 monday time-after-pentecost 15 januarius-companions class-3 red
+2022-09-20 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +sts-eustace-companions
+2022-09-21 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +matthew
+2022-09-22 thursday time-after-pentecost 15 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2022-09-23 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +linus +thecla
+2022-09-24 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +our-lady-of-ransom
+2022-09-25 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2022-09-26 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green +sts-cyprian-justina
+2022-09-27 tuesday time-after-pentecost 16 sts-cosmas-damian class-3 red
+2022-09-28 wednesday time-after-pentecost 16 wenceslaus class-3 red
+2022-09-29 thursday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2022-09-30 friday time-after-pentecost 16 jerome class-3 white
+2022-10-01 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +remigius
+2022-10-02 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +holy-guardian-angels
+2022-10-03 monday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2022-10-04 tuesday time-after-pentecost 17 francis-of-assisi class-3 white
+2022-10-05 wednesday time-after-pentecost 17 ef-time-after-pentecost-17-wednesday class-4 green +placid-companions
+2022-10-06 thursday time-after-pentecost 17 bruno class-3 white
+2022-10-07 friday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2022-10-08 saturday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2022-10-09 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +john-leonardi +dionysius-and-companions
+2022-10-10 monday time-after-pentecost 18 francis-borgia class-3 white
+2022-10-11 tuesday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2022-10-12 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green
+2022-10-13 thursday time-after-pentecost 18 edward class-3 white
+2022-10-14 friday time-after-pentecost 18 callistus-i class-3 red
+2022-10-15 saturday time-after-pentecost 18 teresa-of-avila class-3 white
+2022-10-16 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +hedwig
+2022-10-17 monday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2022-10-18 tuesday time-after-pentecost 19 luke-the-evangelist class-2 red
+2022-10-19 wednesday time-after-pentecost 19 peter-of-alcantara class-3 white
+2022-10-20 thursday time-after-pentecost 19 john-cantius class-3 white
+2022-10-21 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +hilarion +ursula-and-companions
+2022-10-22 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green
+2022-10-23 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +anthony-mary-claret
+2022-10-24 monday time-after-pentecost 20 raphael-the-archangel class-3 white
+2022-10-25 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green +sts-chrysanthus-daria
+2022-10-26 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2022-10-27 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2022-10-28 friday time-after-pentecost 20 sts-simon-jude class-2 red
+2022-10-29 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2022-10-30 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2022-10-31 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2022-11-01 tuesday time-after-pentecost 21 all-saints class-1 white
+2022-11-02 wednesday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2022-11-03 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2022-11-04 friday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2022-11-05 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2022-11-06 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2022-11-07 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2022-11-08 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green +four-holy-crowned-martyrs
+2022-11-09 wednesday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2022-11-10 thursday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2022-11-11 friday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2022-11-12 saturday time-after-pentecost 22 martin-i class-3 red
+2022-11-13 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +didacus
+2022-11-14 monday time-after-pentecost 23 josaphat class-3 white
+2022-11-15 tuesday time-after-pentecost 23 albert-the-great class-3 white
+2022-11-16 wednesday time-after-pentecost 23 gertrude-the-great class-3 white
+2022-11-17 thursday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2022-11-18 friday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2022-11-19 saturday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2022-11-20 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +felix-of-valois
+2022-11-21 monday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2022-11-22 tuesday time-after-pentecost 24 cecilia class-3 red
+2022-11-23 wednesday time-after-pentecost 24 clement-i class-3 red +felicity
+2022-11-24 thursday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2022-11-25 friday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2022-11-26 saturday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2022-11-27 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2022-11-28 monday advent 1 ef-advent-1-monday class-3 violet
+2022-11-29 tuesday advent 1 ef-advent-1-tuesday class-3 violet +saturninus
+2022-11-30 wednesday advent 1 andrew class-2 red
+2022-12-01 thursday advent 1 ef-advent-1-thursday class-3 violet
+2022-12-02 friday advent 1 vivian class-3 red
+2022-12-03 saturday advent 1 francis-xavier class-3 white
+2022-12-04 sunday advent 2 ef-advent-sunday-2 class-2 violet +peter-chrysologus
+2022-12-05 monday advent 2 ef-advent-2-monday class-3 violet +sabbas
+2022-12-06 tuesday advent 2 nicholas class-3 white
+2022-12-07 wednesday advent 2 ambrose class-3 white
+2022-12-08 thursday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2022-12-09 friday advent 2 ef-advent-2-friday class-3 violet
+2022-12-10 saturday advent 2 ef-advent-2-saturday class-3 violet +melchiades
+2022-12-11 sunday advent 3 ef-advent-sunday-3 class-2 violet +damasus-i
+2022-12-12 monday advent 3 ef-advent-3-monday class-3 violet
+2022-12-13 tuesday advent 3 lucy class-3 red
+2022-12-14 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2022-12-15 thursday advent 3 ef-advent-3-thursday class-3 violet
+2022-12-16 friday advent 3 ef-advent-ember-fri class-2 violet +eusebius
+2022-12-17 saturday advent 3 ef-advent-ember-sat class-2 violet
+2022-12-18 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2022-12-19 monday advent 4 ef-advent-4-monday class-3 violet
+2022-12-20 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2022-12-21 wednesday advent 4 thomas class-2 red
+2022-12-22 thursday advent 4 ef-advent-4-thursday class-3 violet
+2022-12-23 friday advent 4 ef-advent-4-friday class-3 violet
+2022-12-24 saturday advent 4 vigil-of-christmas class-1 violet
+2022-12-25 sunday christmas - ef-nativity class-1 white
+2022-12-26 monday christmas - stephen class-2 red
+2022-12-27 tuesday christmas - john-the-evangelist class-2 white
+2022-12-28 wednesday christmas - holy-innocents class-2 red
+2022-12-29 thursday christmas - ef-christmas-0-thursday class-4 white +thomas-becket
+2022-12-30 friday christmas - ef-christmas-0-friday class-4 white
+2022-12-31 saturday christmas - ef-christmas-0-saturday class-4 white +silvester
+2023-01-01 sunday christmas - ef-circumcision class-1 white
+2023-01-02 monday christmas - ef-christmas-0-monday class-4 white
+2023-01-03 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2023-01-04 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2023-01-05 thursday christmas - ef-christmas-0-thursday class-4 white +telesphorus-pope-and-martyr
+2023-01-06 friday time-after-epiphany - ef-epiphany class-1 white
+2023-01-07 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2023-01-08 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2023-01-09 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2023-01-10 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2023-01-11 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green +hyginus-pope-and-martyr
+2023-01-12 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2023-01-13 friday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2023-01-14 saturday time-after-epiphany 2 hilary class-3 white +felicis
+2023-01-15 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +paul-the-first-hermit +maur-abbot
+2023-01-16 monday time-after-epiphany 2 marcellus-i class-3 red
+2023-01-17 tuesday time-after-epiphany 2 anthony class-3 white
+2023-01-18 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +prisca
+2023-01-19 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2023-01-20 friday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2023-01-21 saturday time-after-epiphany 3 agnes class-3 red
+2023-01-22 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-vincent-anastasius
+2023-01-23 monday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2023-01-24 tuesday time-after-epiphany 3 timothy class-3 red
+2023-01-25 wednesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2023-01-26 thursday time-after-epiphany 3 polycarp class-3 red
+2023-01-27 friday time-after-epiphany 4 john-chrysostom class-3 white
+2023-01-28 saturday time-after-epiphany 4 peter-nolasco class-3 white
+2023-01-29 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +francis-de-sales
+2023-01-30 monday time-after-epiphany 4 martina class-3 red
+2023-01-31 tuesday time-after-epiphany 4 john-bosco class-3 white
+2023-02-01 wednesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2023-02-02 thursday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2023-02-03 friday time-after-epiphany 5 ef-time-after-epiphany-5-friday class-4 green +blaise
+2023-02-04 saturday time-after-epiphany 5 andrew-corsini class-3 white
+2023-02-05 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +agatha
+2023-02-06 monday septuagesima 1 titus class-3 white +dorothy
+2023-02-07 tuesday septuagesima 1 romuald class-3 white
+2023-02-08 wednesday septuagesima 1 john-of-matha class-3 white
+2023-02-09 thursday septuagesima 1 cyril-of-alexandria class-3 white +appollonia
+2023-02-10 friday septuagesima 1 scholastica class-3 white
+2023-02-11 saturday septuagesima 1 our-lady-of-lourdes class-3 white
+2023-02-12 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +seven-holy-servite-founders
+2023-02-13 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2023-02-14 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +valentine
+2023-02-15 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet +sts-faustinus-jovita
+2023-02-16 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2023-02-17 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2023-02-18 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +simeon
+2023-02-19 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2023-02-20 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2023-02-21 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2023-02-22 wednesday lent - ef-ash-wednesday class-1 violet +chair-of-st-peter +paul
+2023-02-23 thursday lent - ef-lent-after-ashes-thursday class-3 violet +peter-damien
+2023-02-24 friday lent - matthias class-2 red
+2023-02-25 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2023-02-26 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2023-02-27 monday lent 1 ef-lent-1-monday class-3 violet +gabriel-of-our-lady-of-sorrows
+2023-02-28 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2023-03-01 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2023-03-02 thursday lent 1 ef-lent-1-thursday class-3 violet
+2023-03-03 friday lent 1 ef-lent-1-friday class-3 violet
+2023-03-04 saturday lent 1 ef-lent-1-saturday class-3 violet +casimir +lucius
+2023-03-05 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2023-03-06 monday lent 2 ef-lent-2-monday class-3 violet +sts-felicitas-perpetua
+2023-03-07 tuesday lent 2 ef-lent-2-tuesday class-3 violet +thomas-aquinas
+2023-03-08 wednesday lent 2 ef-lent-2-wednesday class-3 violet +john-of-god
+2023-03-09 thursday lent 2 ef-lent-2-thursday class-3 violet +frances-rome
+2023-03-10 friday lent 2 ef-lent-2-friday class-3 violet +forty-holy-martyrs-of-sebaste
+2023-03-11 saturday lent 2 ef-lent-2-saturday class-3 violet
+2023-03-12 sunday lent 3 ef-lent-sunday-3 class-2 violet +gregory-the-great
+2023-03-13 monday lent 3 ef-lent-3-monday class-3 violet
+2023-03-14 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2023-03-15 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2023-03-16 thursday lent 3 ef-lent-3-thursday class-3 violet
+2023-03-17 friday lent 3 ef-lent-3-friday class-3 violet +patrick
+2023-03-18 saturday lent 3 ef-lent-3-saturday class-3 violet +cyril-of-jerusalem
+2023-03-19 sunday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2023-03-20 monday lent 4 ef-lent-4-monday class-3 violet
+2023-03-21 tuesday lent 4 ef-lent-4-tuesday class-3 violet +benedict
+2023-03-22 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2023-03-23 thursday lent 4 ef-lent-4-thursday class-3 violet
+2023-03-24 friday lent 4 ef-lent-4-friday class-3 violet +gabriel-the-archangel
+2023-03-25 saturday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2023-03-26 sunday passiontide 1 ef-passion-sunday class-1 violet
+2023-03-27 monday passiontide - ef-passiontide-0-monday class-3 violet +john-damascene
+2023-03-28 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +john-of-capistrano
+2023-03-29 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2023-03-30 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2023-03-31 friday passiontide - ef-passiontide-0-friday class-3 violet
+2023-04-01 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2023-04-02 sunday passiontide 2 ef-palm-sunday class-1 violet +francis-of-paola
+2023-04-03 monday passiontide - ef-passiontide-0-monday class-1 violet
+2023-04-04 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +isidore-of-seville
+2023-04-05 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +vincent-ferrer
+2023-04-06 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2023-04-07 friday passiontide - ef-passiontide-0-friday class-1 violet
+2023-04-08 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2023-04-09 sunday easter 1 ef-easter-sunday class-1 white
+2023-04-10 monday easter 1 ef-easter-1-monday class-1 white
+2023-04-11 tuesday easter 1 ef-easter-1-tuesday class-1 white +leo-the-great
+2023-04-12 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2023-04-13 thursday easter 1 ef-easter-1-thursday class-1 white +hermenegild
+2023-04-14 friday easter 1 ef-easter-1-friday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2023-04-15 saturday easter 1 ef-easter-1-saturday class-1 white
+2023-04-16 sunday easter 2 ef-low-sunday class-1 white
+2023-04-17 monday easter 2 ef-easter-2-monday class-4 white +anicetus
+2023-04-18 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2023-04-19 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2023-04-20 thursday easter 2 ef-easter-2-thursday class-4 white
+2023-04-21 friday easter 2 anselm class-3 white
+2023-04-22 saturday easter 2 sts-soter-caius class-3 red
+2023-04-23 sunday easter 3 ef-easter-sunday-3 class-2 white +george
+2023-04-24 monday easter 3 fidelis-of-sigmaringen class-3 red
+2023-04-25 tuesday easter 3 mark class-2 red
+2023-04-26 wednesday easter 3 sts-cletus-marcellinus class-3 red
+2023-04-27 thursday easter 3 peter-canisius class-3 white
+2023-04-28 friday easter 3 paul-of-the-cross class-3 white
+2023-04-29 saturday easter 3 peter-of-verona class-3 red
+2023-04-30 sunday easter 4 ef-easter-sunday-4 class-2 white +catherine-of-siena
+2023-05-01 monday easter 4 joseph-the-workman class-1 white
+2023-05-02 tuesday easter 4 athanasius class-3 white
+2023-05-03 wednesday easter 4 ef-easter-4-wednesday class-4 white +sts-alexander-companions
+2023-05-04 thursday easter 4 monica class-3 white
+2023-05-05 friday easter 4 pius-v class-3 white
+2023-05-06 saturday easter 4 ef-easter-4-saturday class-4 white
+2023-05-07 sunday easter 5 ef-easter-sunday-5 class-2 white +stanislaus
+2023-05-08 monday easter 5 ef-easter-5-monday class-4 white
+2023-05-09 tuesday easter 5 gregory-of-nazianzen class-3 white
+2023-05-10 wednesday easter 5 antoninus class-3 white +gordiano-and-epimacho
+2023-05-11 thursday easter 5 sts-philip-james class-2 red
+2023-05-12 friday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2023-05-13 saturday easter 5 robert-bellarmine class-3 white
+2023-05-14 sunday easter 6 ef-easter-sunday-6 class-2 white
+2023-05-15 monday easter 6 john-baptist-de-la-salle class-3 white
+2023-05-16 tuesday easter 6 ef-easter-6-tuesday class-4 white +ubaldus
+2023-05-17 wednesday easter - ef-ascension-vigil class-2 white +paschal-baylon
+2023-05-18 thursday easter - ef-ascension class-1 white +venantius
+2023-05-19 friday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2023-05-20 saturday easter 6 bernardine-of-siena class-3 white
+2023-05-21 sunday easter 7 ef-easter-sunday-7 class-2 white
+2023-05-22 monday easter 7 ef-easter-7-monday class-4 white
+2023-05-23 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2023-05-24 wednesday easter 7 ef-easter-7-wednesday class-4 white
+2023-05-25 thursday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2023-05-26 friday easter 7 philip-neri class-3 white +eleutherius
+2023-05-27 saturday easter - ef-pentecost-vigil class-1 red +bede-the-venerable +john-i
+2023-05-28 sunday easter - ef-pentecost class-1 red +augustine-of-canterbury
+2023-05-29 monday easter 8 ef-easter-8-monday class-1 red +mary-magdalene-de-pazzi
+2023-05-30 tuesday easter 8 ef-easter-8-tuesday class-1 red +felix-i
+2023-05-31 wednesday easter 8 ef-easter-8-wednesday class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2023-06-01 thursday easter 8 ef-easter-8-thursday class-1 red +angela-merici
+2023-06-02 friday easter 8 ef-easter-8-friday class-1 red +sts-marcellinus-peter-erasmus
+2023-06-03 saturday easter 8 ef-easter-8-saturday class-1 red
+2023-06-04 sunday time-after-pentecost 1 ef-trinity class-1 white +francis-caracciolo
+2023-06-05 monday time-after-pentecost 1 boniface class-3 red
+2023-06-06 tuesday time-after-pentecost 1 norbert class-3 white
+2023-06-07 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2023-06-08 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2023-06-09 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green +sts-primus-felicianus
+2023-06-10 saturday time-after-pentecost 1 margaret-of-scotland class-3 white
+2023-06-11 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +barnabas
+2023-06-12 monday time-after-pentecost 2 john-of-san-fecundo class-3 red +basilidus
+2023-06-13 tuesday time-after-pentecost 2 anthony-of-padua class-3 white
+2023-06-14 wednesday time-after-pentecost 2 basil-the-great class-3 white
+2023-06-15 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green +vitus
+2023-06-16 friday time-after-pentecost - ef-sacred-heart class-1 white
+2023-06-17 saturday time-after-pentecost 2 gregory-barbarigo class-3 white
+2023-06-18 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +ephrem-of-syria +marcus-and-marcellianus
+2023-06-19 monday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2023-06-20 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green +silverius
+2023-06-21 wednesday time-after-pentecost 3 aloysius-gongzaga class-3 white
+2023-06-22 thursday time-after-pentecost 3 paulinus-of-nola class-3 white
+2023-06-23 friday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2023-06-24 saturday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2023-06-25 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +william
+2023-06-26 monday time-after-pentecost 4 sts-john-paul class-3 red
+2023-06-27 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2023-06-28 wednesday time-after-pentecost 4 vigil-of-sts-peter-paul class-2 violet
+2023-06-29 thursday time-after-pentecost 4 sts-peter-paul class-1 red
+2023-06-30 friday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2023-07-01 saturday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2023-07-02 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +visitation-of-the-blessed-virgin-mary +processus-and-martinian
+2023-07-03 monday time-after-pentecost 5 irenaeus class-3 red
+2023-07-04 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green
+2023-07-05 wednesday time-after-pentecost 5 anthony-mary-zaccariah class-3 white
+2023-07-06 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2023-07-07 friday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2023-07-08 saturday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2023-07-09 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2023-07-10 monday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2023-07-11 tuesday time-after-pentecost 6 ef-time-after-pentecost-6-tuesday class-4 green +pius-i
+2023-07-12 wednesday time-after-pentecost 6 john-gualbert class-3 red +naboris-et-felicis
+2023-07-13 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2023-07-14 friday time-after-pentecost 6 bonaventure class-3 white
+2023-07-15 saturday time-after-pentecost 6 henry-the-emperor class-3 white
+2023-07-16 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +our-lady-of-mt-carmel
+2023-07-17 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +alexis
+2023-07-18 tuesday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2023-07-19 wednesday time-after-pentecost 7 vincent-de-paul class-3 white
+2023-07-20 thursday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2023-07-21 friday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2023-07-22 saturday time-after-pentecost 7 mary-magdalene class-3 white
+2023-07-23 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +apollinaris +liborii
+2023-07-24 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +christina
+2023-07-25 tuesday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2023-07-26 wednesday time-after-pentecost 8 anne-mother-of-the-blessed-virgin class-2 white
+2023-07-27 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +pantaleon
+2023-07-28 friday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2023-07-29 saturday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2023-07-30 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +sts-abdon-sennen
+2023-07-31 monday time-after-pentecost 9 ignatius-loyola class-3 white
+2023-08-01 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +holy-machabees
+2023-08-02 wednesday time-after-pentecost 9 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2023-08-03 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green
+2023-08-04 friday time-after-pentecost 9 dominic class-3 white
+2023-08-05 saturday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2023-08-06 sunday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2023-08-07 monday time-after-pentecost 10 cajetan class-3 white +donatus
+2023-08-08 tuesday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2023-08-09 wednesday time-after-pentecost 10 vigil-of-st-lawrence class-3 red +romanus
+2023-08-10 thursday time-after-pentecost 10 lawrence class-2 red
+2023-08-11 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +sts-tiburtius-susanna
+2023-08-12 saturday time-after-pentecost 10 clare class-3 white
+2023-08-13 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +sts-hippolytus-cassian
+2023-08-14 monday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2023-08-15 tuesday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2023-08-16 wednesday time-after-pentecost 11 joachim-father-of-the-blessed-virgin class-2 white
+2023-08-17 thursday time-after-pentecost 11 hyacinth class-3 white
+2023-08-18 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +agapitus
+2023-08-19 saturday time-after-pentecost 11 john-eudes class-3 white
+2023-08-20 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +bernard-of-clairvaux
+2023-08-21 monday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2023-08-22 tuesday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2023-08-23 wednesday time-after-pentecost 12 philip-benizi class-3 white
+2023-08-24 thursday time-after-pentecost 12 bartholomew class-2 red
+2023-08-25 friday time-after-pentecost 12 louis-ix class-3 white
+2023-08-26 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +zephyrinus
+2023-08-27 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +joseph-calasance
+2023-08-28 monday time-after-pentecost 13 augustine class-3 red +hermes
+2023-08-29 tuesday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2023-08-30 wednesday time-after-pentecost 13 rose-of-lima class-3 red +sts-felix-and-adauctus
+2023-08-31 thursday time-after-pentecost 13 raymond-nonnatus class-3 white
+2023-09-01 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green +giles +twelve-holy-brothers-martyrs
+2023-09-02 saturday time-after-pentecost 13 stephen-of-hungary class-3 white
+2023-09-03 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +pius-x
+2023-09-04 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green
+2023-09-05 tuesday time-after-pentecost 14 lawrence-justinian class-3 white
+2023-09-06 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green
+2023-09-07 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green
+2023-09-08 friday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2023-09-09 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +gorgonius
+2023-09-10 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +nicholas-of-tolentino
+2023-09-11 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green +sts-protus-hyacinth
+2023-09-12 tuesday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2023-09-13 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green
+2023-09-14 thursday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2023-09-15 friday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2023-09-16 saturday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2023-09-17 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +stigmata-of-st-francis
+2023-09-18 monday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2023-09-19 tuesday time-after-pentecost 16 januarius-companions class-3 red
+2023-09-20 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +sts-eustace-companions
+2023-09-21 thursday time-after-pentecost 16 matthew class-2 red
+2023-09-22 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2023-09-23 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +linus +thecla
+2023-09-24 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +our-lady-of-ransom
+2023-09-25 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green
+2023-09-26 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +sts-cyprian-justina
+2023-09-27 wednesday time-after-pentecost 17 sts-cosmas-damian class-3 red
+2023-09-28 thursday time-after-pentecost 17 wenceslaus class-3 red
+2023-09-29 friday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2023-09-30 saturday time-after-pentecost 17 jerome class-3 white
+2023-10-01 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +remigius
+2023-10-02 monday time-after-pentecost 18 holy-guardian-angels class-3 white
+2023-10-03 tuesday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2023-10-04 wednesday time-after-pentecost 18 francis-of-assisi class-3 white
+2023-10-05 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +placid-companions
+2023-10-06 friday time-after-pentecost 18 bruno class-3 white
+2023-10-07 saturday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2023-10-08 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +bridget-of-sweden +sergio-baccho-marcello-and-apulejo-martyrs
+2023-10-09 monday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2023-10-10 tuesday time-after-pentecost 19 francis-borgia class-3 white
+2023-10-11 wednesday time-after-pentecost 19 maternity-of-the-blessed-virgin-mary class-2 white
+2023-10-12 thursday time-after-pentecost 19 ef-time-after-pentecost-19-thursday class-4 green
+2023-10-13 friday time-after-pentecost 19 edward class-3 white
+2023-10-14 saturday time-after-pentecost 19 callistus-i class-3 red
+2023-10-15 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +teresa-of-avila
+2023-10-16 monday time-after-pentecost 20 hedwig class-3 white
+2023-10-17 tuesday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2023-10-18 wednesday time-after-pentecost 20 luke-the-evangelist class-2 red
+2023-10-19 thursday time-after-pentecost 20 peter-of-alcantara class-3 white
+2023-10-20 friday time-after-pentecost 20 john-cantius class-3 white
+2023-10-21 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green +hilarion +ursula-and-companions
+2023-10-22 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2023-10-23 monday time-after-pentecost 21 anthony-mary-claret class-3 white
+2023-10-24 tuesday time-after-pentecost 21 raphael-the-archangel class-3 white
+2023-10-25 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green +sts-chrysanthus-daria
+2023-10-26 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2023-10-27 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2023-10-28 saturday time-after-pentecost 21 sts-simon-jude class-2 red
+2023-10-29 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2023-10-30 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2023-10-31 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2023-11-01 wednesday time-after-pentecost 22 all-saints class-1 white
+2023-11-02 thursday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2023-11-03 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2023-11-04 saturday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2023-11-05 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green
+2023-11-06 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2023-11-07 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2023-11-08 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green +four-holy-crowned-martyrs
+2023-11-09 thursday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2023-11-10 friday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2023-11-11 saturday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2023-11-12 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-i
+2023-11-13 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green +didacus
+2023-11-14 tuesday time-after-pentecost 24 josaphat class-3 white
+2023-11-15 wednesday time-after-pentecost 24 albert-the-great class-3 white
+2023-11-16 thursday time-after-pentecost 24 gertrude-the-great class-3 white
+2023-11-17 friday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2023-11-18 saturday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2023-11-19 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +elizabeth-of-hungary +pontian
+2023-11-20 monday time-after-pentecost 25 felix-of-valois class-3 white
+2023-11-21 tuesday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2023-11-22 wednesday time-after-pentecost 25 cecilia class-3 red
+2023-11-23 thursday time-after-pentecost 25 clement-i class-3 red +felicity
+2023-11-24 friday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2023-11-25 saturday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2023-11-26 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +sylvester +peter-of-alexandria
+2023-11-27 monday time-after-pentecost 26 ef-time-after-pentecost-26-monday class-4 green
+2023-11-28 tuesday time-after-pentecost 26 ef-time-after-pentecost-26-tuesday class-4 green
+2023-11-29 wednesday time-after-pentecost 26 ef-time-after-pentecost-26-wednesday class-4 green +saturninus
+2023-11-30 thursday time-after-pentecost 26 andrew class-2 red
+2023-12-01 friday time-after-pentecost 26 ef-time-after-pentecost-26-friday class-4 green
+2023-12-02 saturday time-after-pentecost 26 vivian class-3 red
+2023-12-03 sunday advent 1 ef-advent-sunday-1 class-1 violet +francis-xavier
+2023-12-04 monday advent 1 peter-chrysologus class-3 white
+2023-12-05 tuesday advent 1 ef-advent-1-tuesday class-3 violet +sabbas
+2023-12-06 wednesday advent 1 nicholas class-3 white
+2023-12-07 thursday advent 1 ambrose class-3 white
+2023-12-08 friday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2023-12-09 saturday advent 1 ef-advent-1-saturday class-3 violet
+2023-12-10 sunday advent 2 ef-advent-sunday-2 class-2 violet +melchiades
+2023-12-11 monday advent 2 damasus-i class-3 white
+2023-12-12 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2023-12-13 wednesday advent 2 lucy class-3 red
+2023-12-14 thursday advent 2 ef-advent-2-thursday class-3 violet
+2023-12-15 friday advent 2 ef-advent-2-friday class-3 violet
+2023-12-16 saturday advent 2 eusebius class-3 red
+2023-12-17 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2023-12-18 monday advent 3 ef-advent-3-monday class-3 violet
+2023-12-19 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2023-12-20 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2023-12-21 thursday advent 3 thomas class-2 red
+2023-12-22 friday advent 3 ef-advent-ember-fri class-2 violet
+2023-12-23 saturday advent 3 ef-advent-ember-sat class-2 violet
+2023-12-24 sunday advent 4 vigil-of-christmas class-1 violet
+2023-12-25 monday christmas - ef-nativity class-1 white
+2023-12-26 tuesday christmas - stephen class-2 red
+2023-12-27 wednesday christmas - john-the-evangelist class-2 white
+2023-12-28 thursday christmas - holy-innocents class-2 red
+2023-12-29 friday christmas - ef-christmas-0-friday class-4 white +thomas-becket
+2023-12-30 saturday christmas - ef-christmas-0-saturday class-4 white
+2023-12-31 sunday christmas - ef-christmas-sunday-0 class-2 white +silvester
+2024-01-01 monday christmas - ef-circumcision class-1 white
+2024-01-02 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2024-01-03 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2024-01-04 thursday christmas - ef-christmas-0-thursday class-4 white
+2024-01-05 friday christmas - ef-christmas-0-friday class-4 white +telesphorus-pope-and-martyr
+2024-01-06 saturday time-after-epiphany - ef-epiphany class-1 white
+2024-01-07 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2024-01-08 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2024-01-09 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2024-01-10 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2024-01-11 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green +hyginus-pope-and-martyr
+2024-01-12 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2024-01-13 saturday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2024-01-14 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +hilary +felicis
+2024-01-15 monday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2024-01-16 tuesday time-after-epiphany 2 marcellus-i class-3 red
+2024-01-17 wednesday time-after-epiphany 2 anthony class-3 white
+2024-01-18 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +prisca
+2024-01-19 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2024-01-20 saturday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2024-01-21 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +agnes
+2024-01-22 monday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2024-01-23 tuesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2024-01-24 wednesday time-after-epiphany 3 timothy class-3 red
+2024-01-25 thursday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2024-01-26 friday time-after-epiphany 3 polycarp class-3 red
+2024-01-27 saturday time-after-epiphany 4 john-chrysostom class-3 white
+2024-01-28 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +peter-nolasco
+2024-01-29 monday septuagesima 1 francis-de-sales class-3 white
+2024-01-30 tuesday septuagesima 1 martina class-3 red
+2024-01-31 wednesday septuagesima 1 john-bosco class-3 white
+2024-02-01 thursday septuagesima 1 ignatius-of-antioch class-3 red
+2024-02-02 friday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2024-02-03 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet +blaise
+2024-02-04 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +andrew-corsini
+2024-02-05 monday septuagesima 2 agatha class-3 red
+2024-02-06 tuesday septuagesima 2 titus class-3 white +dorothy
+2024-02-07 wednesday septuagesima 2 romuald class-3 white
+2024-02-08 thursday septuagesima 2 john-of-matha class-3 white
+2024-02-09 friday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2024-02-10 saturday septuagesima 2 scholastica class-3 white
+2024-02-11 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +our-lady-of-lourdes
+2024-02-12 monday septuagesima 3 seven-holy-servite-founders class-3 white
+2024-02-13 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2024-02-14 wednesday lent - ef-ash-wednesday class-1 violet +valentine
+2024-02-15 thursday lent - ef-lent-after-ashes-thursday class-3 violet +sts-faustinus-jovita
+2024-02-16 friday lent - ef-lent-after-ashes-friday class-3 violet
+2024-02-17 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2024-02-18 sunday lent 1 ef-lent-sunday-1 class-2 violet +simeon
+2024-02-19 monday lent 1 ef-lent-1-monday class-3 violet
+2024-02-20 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2024-02-21 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2024-02-22 thursday lent 1 chair-of-st-peter class-2 white +paul
+2024-02-23 friday lent 1 ef-lent-1-friday class-3 violet +peter-damien
+2024-02-24 saturday lent 1 matthias class-2 red
+2024-02-25 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2024-02-26 monday lent 2 ef-lent-2-monday class-3 violet
+2024-02-27 tuesday lent 2 ef-lent-2-tuesday class-3 violet +gabriel-of-our-lady-of-sorrows
+2024-02-28 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2024-02-29 thursday lent 2 ef-lent-2-thursday class-3 violet
+2024-03-01 friday lent 2 ef-lent-2-friday class-3 violet
+2024-03-02 saturday lent 2 ef-lent-2-saturday class-3 violet
+2024-03-03 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2024-03-04 monday lent 3 ef-lent-3-monday class-3 violet +casimir +lucius
+2024-03-05 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2024-03-06 wednesday lent 3 ef-lent-3-wednesday class-3 violet +sts-felicitas-perpetua
+2024-03-07 thursday lent 3 ef-lent-3-thursday class-3 violet +thomas-aquinas
+2024-03-08 friday lent 3 ef-lent-3-friday class-3 violet +john-of-god
+2024-03-09 saturday lent 3 ef-lent-3-saturday class-3 violet +frances-rome
+2024-03-10 sunday lent 4 ef-lent-sunday-4 class-2 violet +forty-holy-martyrs-of-sebaste
+2024-03-11 monday lent 4 ef-lent-4-monday class-3 violet
+2024-03-12 tuesday lent 4 ef-lent-4-tuesday class-3 violet +gregory-the-great
+2024-03-13 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2024-03-14 thursday lent 4 ef-lent-4-thursday class-3 violet
+2024-03-15 friday lent 4 ef-lent-4-friday class-3 violet
+2024-03-16 saturday lent 4 ef-lent-4-saturday class-3 violet
+2024-03-17 sunday passiontide 1 ef-passion-sunday class-1 violet +patrick
+2024-03-18 monday passiontide - ef-passiontide-0-monday class-3 violet +cyril-of-jerusalem
+2024-03-19 tuesday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2024-03-20 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2024-03-21 thursday passiontide - ef-passiontide-0-thursday class-3 violet +benedict
+2024-03-22 friday passiontide - ef-passiontide-0-friday class-3 violet
+2024-03-23 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2024-03-24 sunday passiontide 2 ef-palm-sunday class-1 violet +gabriel-the-archangel
+2024-03-25 monday passiontide - ef-passiontide-0-monday class-1 violet
+2024-03-26 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2024-03-27 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +john-damascene
+2024-03-28 thursday passiontide - ef-passiontide-0-thursday class-1 violet +john-of-capistrano
+2024-03-29 friday passiontide - ef-passiontide-0-friday class-1 violet
+2024-03-30 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2024-03-31 sunday easter 1 ef-easter-sunday class-1 white
+2024-04-01 monday easter 1 ef-easter-1-monday class-1 white
+2024-04-02 tuesday easter 1 ef-easter-1-tuesday class-1 white +francis-of-paola
+2024-04-03 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2024-04-04 thursday easter 1 ef-easter-1-thursday class-1 white +isidore-of-seville
+2024-04-05 friday easter 1 ef-easter-1-friday class-1 white +vincent-ferrer
+2024-04-06 saturday easter 1 ef-easter-1-saturday class-1 white
+2024-04-07 sunday easter 2 ef-low-sunday class-1 white
+2024-04-08 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white
+2024-04-09 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2024-04-10 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2024-04-11 thursday easter 2 leo-the-great class-3 white
+2024-04-12 friday easter 2 ef-easter-2-friday class-4 white
+2024-04-13 saturday easter 2 hermenegild class-3 red
+2024-04-14 sunday easter 3 ef-easter-sunday-3 class-2 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2024-04-15 monday easter 3 ef-easter-3-monday class-4 white
+2024-04-16 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2024-04-17 wednesday easter 3 ef-easter-3-wednesday class-4 white +anicetus
+2024-04-18 thursday easter 3 ef-easter-3-thursday class-4 white
+2024-04-19 friday easter 3 ef-easter-3-friday class-4 white
+2024-04-20 saturday easter 3 ef-easter-3-saturday class-4 white
+2024-04-21 sunday easter 4 ef-easter-sunday-4 class-2 white +anselm
+2024-04-22 monday easter 4 sts-soter-caius class-3 red
+2024-04-23 tuesday easter 4 ef-easter-4-tuesday class-4 white +george
+2024-04-24 wednesday easter 4 fidelis-of-sigmaringen class-3 red
+2024-04-25 thursday easter 4 mark class-2 red
+2024-04-26 friday easter 4 sts-cletus-marcellinus class-3 red
+2024-04-27 saturday easter 4 peter-canisius class-3 white
+2024-04-28 sunday easter 5 ef-easter-sunday-5 class-2 white +paul-of-the-cross
+2024-04-29 monday easter 5 peter-of-verona class-3 red
+2024-04-30 tuesday easter 5 catherine-of-siena class-3 white
+2024-05-01 wednesday easter 5 joseph-the-workman class-1 white
+2024-05-02 thursday easter 5 athanasius class-3 white
+2024-05-03 friday easter 5 ef-easter-5-friday class-4 white +sts-alexander-companions
+2024-05-04 saturday easter 5 monica class-3 white
+2024-05-05 sunday easter 6 ef-easter-sunday-6 class-2 white +pius-v
+2024-05-06 monday easter 6 ef-easter-6-monday class-4 white
+2024-05-07 tuesday easter 6 stanislaus class-3 red
+2024-05-08 wednesday easter - ef-ascension-vigil class-2 white
+2024-05-09 thursday easter - ef-ascension class-1 white +gregory-of-nazianzen
+2024-05-10 friday easter 6 antoninus class-3 white +gordiano-and-epimacho
+2024-05-11 saturday easter 6 sts-philip-james class-2 red
+2024-05-12 sunday easter 7 ef-easter-sunday-7 class-2 white +sts-nereus-achilleus-domitilla-pancras
+2024-05-13 monday easter 7 robert-bellarmine class-3 white
+2024-05-14 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2024-05-15 wednesday easter 7 john-baptist-de-la-salle class-3 white
+2024-05-16 thursday easter 7 ef-easter-7-thursday class-4 white +ubaldus
+2024-05-17 friday easter 7 paschal-baylon class-3 white
+2024-05-18 saturday easter - ef-pentecost-vigil class-1 red +venantius
+2024-05-19 sunday easter - ef-pentecost class-1 red +peter-celestine +pudentiana-virginis
+2024-05-20 monday easter 8 ef-easter-8-monday class-1 red +bernardine-of-siena
+2024-05-21 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2024-05-22 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2024-05-23 thursday easter 8 ef-easter-8-thursday class-1 red
+2024-05-24 friday easter 8 ef-easter-8-friday class-1 red
+2024-05-25 saturday easter 8 ef-easter-8-saturday class-1 red +gregory-vii +urban-pope-and-martyr
+2024-05-26 sunday time-after-pentecost 1 ef-trinity class-1 white +philip-neri +eleutherius
+2024-05-27 monday time-after-pentecost 1 bede-the-venerable class-3 white +john-i
+2024-05-28 tuesday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2024-05-29 wednesday time-after-pentecost 1 mary-magdalene-de-pazzi class-3 white
+2024-05-30 thursday time-after-pentecost - ef-corpus-christi class-1 white +felix-i
+2024-05-31 friday time-after-pentecost 1 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2024-06-01 saturday time-after-pentecost 1 angela-merici class-3 white
+2024-06-02 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +sts-marcellinus-peter-erasmus
+2024-06-03 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2024-06-04 tuesday time-after-pentecost 2 francis-caracciolo class-3 white
+2024-06-05 wednesday time-after-pentecost 2 boniface class-3 red
+2024-06-06 thursday time-after-pentecost 2 norbert class-3 white
+2024-06-07 friday time-after-pentecost - ef-sacred-heart class-1 white
+2024-06-08 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green
+2024-06-09 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +sts-primus-felicianus
+2024-06-10 monday time-after-pentecost 3 margaret-of-scotland class-3 white
+2024-06-11 tuesday time-after-pentecost 3 barnabas class-3 red
+2024-06-12 wednesday time-after-pentecost 3 john-of-san-fecundo class-3 red +basilidus
+2024-06-13 thursday time-after-pentecost 3 anthony-of-padua class-3 white
+2024-06-14 friday time-after-pentecost 3 basil-the-great class-3 white
+2024-06-15 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green +vitus
+2024-06-16 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green
+2024-06-17 monday time-after-pentecost 4 gregory-barbarigo class-3 white
+2024-06-18 tuesday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2024-06-19 wednesday time-after-pentecost 4 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2024-06-20 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green +silverius
+2024-06-21 friday time-after-pentecost 4 aloysius-gongzaga class-3 white
+2024-06-22 saturday time-after-pentecost 4 paulinus-of-nola class-3 white
+2024-06-23 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +vigil-of-the-nativity-of-st-john-the-baptist
+2024-06-24 monday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2024-06-25 tuesday time-after-pentecost 5 william class-3 white
+2024-06-26 wednesday time-after-pentecost 5 sts-john-paul class-3 red
+2024-06-27 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2024-06-28 friday time-after-pentecost 5 vigil-of-sts-peter-paul class-2 violet
+2024-06-29 saturday time-after-pentecost 5 sts-peter-paul class-1 red
+2024-06-30 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +in-commemoratione-sancti-pauli-apostoli
+2024-07-01 monday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2024-07-02 tuesday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2024-07-03 wednesday time-after-pentecost 6 irenaeus class-3 red
+2024-07-04 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2024-07-05 friday time-after-pentecost 6 anthony-mary-zaccariah class-3 white
+2024-07-06 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green
+2024-07-07 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +sts-cyril-methodius
+2024-07-08 monday time-after-pentecost 7 elizabeth-of-portugal class-3 white
+2024-07-09 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green
+2024-07-10 wednesday time-after-pentecost 7 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2024-07-11 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +pius-i
+2024-07-12 friday time-after-pentecost 7 john-gualbert class-3 red +naboris-et-felicis
+2024-07-13 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green
+2024-07-14 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +bonaventure
+2024-07-15 monday time-after-pentecost 8 henry-the-emperor class-3 white
+2024-07-16 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +our-lady-of-mt-carmel
+2024-07-17 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +alexis
+2024-07-18 thursday time-after-pentecost 8 camillus-de-lellis class-3 red +symphorosa-and-sons
+2024-07-19 friday time-after-pentecost 8 vincent-de-paul class-3 white
+2024-07-20 saturday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2024-07-21 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +laurence-of-brindisi +praxedis-virginis
+2024-07-22 monday time-after-pentecost 9 mary-magdalene class-3 white
+2024-07-23 tuesday time-after-pentecost 9 apollinaris class-3 white +liborii
+2024-07-24 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +christina
+2024-07-25 thursday time-after-pentecost 9 james-the-greater class-2 red +christopher
+2024-07-26 friday time-after-pentecost 9 anne-mother-of-the-blessed-virgin class-2 white
+2024-07-27 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +pantaleon
+2024-07-28 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +sts-nazarius-celsus-st-victor-i-st-innocent-i
+2024-07-29 monday time-after-pentecost 10 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2024-07-30 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +sts-abdon-sennen
+2024-07-31 wednesday time-after-pentecost 10 ignatius-loyola class-3 white
+2024-08-01 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +holy-machabees
+2024-08-02 friday time-after-pentecost 10 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2024-08-03 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green
+2024-08-04 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +dominic
+2024-08-05 monday time-after-pentecost 11 dedication-of-the-basilica-of-st-mary-major class-3 white
+2024-08-06 tuesday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2024-08-07 wednesday time-after-pentecost 11 cajetan class-3 white +donatus
+2024-08-08 thursday time-after-pentecost 11 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2024-08-09 friday time-after-pentecost 11 vigil-of-st-lawrence class-3 red +romanus
+2024-08-10 saturday time-after-pentecost 11 lawrence class-2 red
+2024-08-11 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +sts-tiburtius-susanna
+2024-08-12 monday time-after-pentecost 12 clare class-3 white
+2024-08-13 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +sts-hippolytus-cassian
+2024-08-14 wednesday time-after-pentecost 12 vigil-of-the-assumption class-2 white
+2024-08-15 thursday time-after-pentecost 12 assumption-of-the-blessed-virgin-mary class-1 white
+2024-08-16 friday time-after-pentecost 12 joachim-father-of-the-blessed-virgin class-2 white
+2024-08-17 saturday time-after-pentecost 12 hyacinth class-3 white
+2024-08-18 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +agapitus
+2024-08-19 monday time-after-pentecost 13 john-eudes class-3 white
+2024-08-20 tuesday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2024-08-21 wednesday time-after-pentecost 13 jane-frances-de-chantal class-3 white
+2024-08-22 thursday time-after-pentecost 13 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2024-08-23 friday time-after-pentecost 13 philip-benizi class-3 white
+2024-08-24 saturday time-after-pentecost 13 bartholomew class-2 red
+2024-08-25 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +louis-ix
+2024-08-26 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +zephyrinus
+2024-08-27 tuesday time-after-pentecost 14 joseph-calasance class-3 white
+2024-08-28 wednesday time-after-pentecost 14 augustine class-3 red +hermes
+2024-08-29 thursday time-after-pentecost 14 beheading-of-st-john-the-baptist class-3 red +sabina
+2024-08-30 friday time-after-pentecost 14 rose-of-lima class-3 red +sts-felix-and-adauctus
+2024-08-31 saturday time-after-pentecost 14 raymond-nonnatus class-3 white
+2024-09-01 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +giles +twelve-holy-brothers-martyrs
+2024-09-02 monday time-after-pentecost 15 stephen-of-hungary class-3 white
+2024-09-03 tuesday time-after-pentecost 15 pius-x class-3 white
+2024-09-04 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green
+2024-09-05 thursday time-after-pentecost 15 lawrence-justinian class-3 white
+2024-09-06 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green
+2024-09-07 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green
+2024-09-08 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +nativity-of-the-blessed-virgin-mary +hadriani
+2024-09-09 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green +gorgonius
+2024-09-10 tuesday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2024-09-11 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green +sts-protus-hyacinth
+2024-09-12 thursday time-after-pentecost 16 most-holy-name-of-mary class-3 white
+2024-09-13 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green
+2024-09-14 saturday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2024-09-15 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +seven-sorrows-of-the-blessed-virgin-mary +nicomedes
+2024-09-16 monday time-after-pentecost 17 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2024-09-17 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +stigmata-of-st-francis
+2024-09-18 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +joseph-of-cupertino
+2024-09-19 thursday time-after-pentecost 17 januarius-companions class-3 red
+2024-09-20 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet +sts-eustace-companions
+2024-09-21 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +matthew
+2024-09-22 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +thomas-of-villanova +maurice-and-companions-martyrs
+2024-09-23 monday time-after-pentecost 18 linus class-3 red +thecla
+2024-09-24 tuesday time-after-pentecost 18 ef-time-after-pentecost-18-tuesday class-4 green +our-lady-of-ransom
+2024-09-25 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green
+2024-09-26 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +sts-cyprian-justina
+2024-09-27 friday time-after-pentecost 18 sts-cosmas-damian class-3 red
+2024-09-28 saturday time-after-pentecost 18 wenceslaus class-3 red
+2024-09-29 sunday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2024-09-30 monday time-after-pentecost 19 jerome class-3 white
+2024-10-01 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green +remigius
+2024-10-02 wednesday time-after-pentecost 19 holy-guardian-angels class-3 white
+2024-10-03 thursday time-after-pentecost 19 theresa-of-the-infant-jesus class-3 white
+2024-10-04 friday time-after-pentecost 19 francis-of-assisi class-3 white
+2024-10-05 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +placid-companions
+2024-10-06 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +bruno
+2024-10-07 monday time-after-pentecost 20 our-lady-of-the-rosary class-2 white +mark-i
+2024-10-08 tuesday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2024-10-09 wednesday time-after-pentecost 20 john-leonardi class-3 white +dionysius-and-companions
+2024-10-10 thursday time-after-pentecost 20 francis-borgia class-3 white
+2024-10-11 friday time-after-pentecost 20 maternity-of-the-blessed-virgin-mary class-2 white
+2024-10-12 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2024-10-13 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +edward
+2024-10-14 monday time-after-pentecost 21 callistus-i class-3 red
+2024-10-15 tuesday time-after-pentecost 21 teresa-of-avila class-3 white
+2024-10-16 wednesday time-after-pentecost 21 hedwig class-3 white
+2024-10-17 thursday time-after-pentecost 21 margaret-mary-alacoque class-3 white
+2024-10-18 friday time-after-pentecost 21 luke-the-evangelist class-2 red
+2024-10-19 saturday time-after-pentecost 21 peter-of-alcantara class-3 white
+2024-10-20 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +john-cantius
+2024-10-21 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green +hilarion +ursula-and-companions
+2024-10-22 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2024-10-23 wednesday time-after-pentecost 22 anthony-mary-claret class-3 white
+2024-10-24 thursday time-after-pentecost 22 raphael-the-archangel class-3 white
+2024-10-25 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green +sts-chrysanthus-daria
+2024-10-26 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2024-10-27 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2024-10-28 monday time-after-pentecost 23 sts-simon-jude class-2 red
+2024-10-29 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2024-10-30 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2024-10-31 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2024-11-01 friday time-after-pentecost 23 all-saints class-1 white
+2024-11-02 saturday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2024-11-03 sunday time-after-pentecost 4 ef-time-after-epiphany-sunday-4 class-2 green
+2024-11-04 monday time-after-pentecost 24 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2024-11-05 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green
+2024-11-06 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2024-11-07 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2024-11-08 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +four-holy-crowned-martyrs
+2024-11-09 saturday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2024-11-10 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +andrew-avellino +sts-tryphonis-respicii-et-nymphae
+2024-11-11 monday time-after-pentecost 25 martin-of-tours class-3 white +menna
+2024-11-12 tuesday time-after-pentecost 25 martin-i class-3 red
+2024-11-13 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green +didacus
+2024-11-14 thursday time-after-pentecost 25 josaphat class-3 white
+2024-11-15 friday time-after-pentecost 25 albert-the-great class-3 white
+2024-11-16 saturday time-after-pentecost 25 gertrude-the-great class-3 white
+2024-11-17 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +gregory-the-wonderworker
+2024-11-18 monday time-after-pentecost 26 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2024-11-19 tuesday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2024-11-20 wednesday time-after-pentecost 26 felix-of-valois class-3 white
+2024-11-21 thursday time-after-pentecost 26 presentation-of-the-blessed-virgin-mary class-3 white
+2024-11-22 friday time-after-pentecost 26 cecilia class-3 red
+2024-11-23 saturday time-after-pentecost 26 clement-i class-3 red +felicity
+2024-11-24 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +john-of-the-cross +chrysogonus
+2024-11-25 monday time-after-pentecost 27 catherine-of-alexandria class-3 red
+2024-11-26 tuesday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2024-11-27 wednesday time-after-pentecost 27 ef-time-after-pentecost-27-wednesday class-4 green
+2024-11-28 thursday time-after-pentecost 27 ef-time-after-pentecost-27-thursday class-4 green
+2024-11-29 friday time-after-pentecost 27 ef-time-after-pentecost-27-friday class-4 green +saturninus
+2024-11-30 saturday time-after-pentecost 27 andrew class-2 red
+2024-12-01 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2024-12-02 monday advent 1 vivian class-3 red
+2024-12-03 tuesday advent 1 francis-xavier class-3 white
+2024-12-04 wednesday advent 1 peter-chrysologus class-3 white
+2024-12-05 thursday advent 1 ef-advent-1-thursday class-3 violet +sabbas
+2024-12-06 friday advent 1 nicholas class-3 white
+2024-12-07 saturday advent 1 ambrose class-3 white
+2024-12-08 sunday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2024-12-09 monday advent 2 ef-advent-2-monday class-3 violet
+2024-12-10 tuesday advent 2 ef-advent-2-tuesday class-3 violet +melchiades
+2024-12-11 wednesday advent 2 damasus-i class-3 white
+2024-12-12 thursday advent 2 ef-advent-2-thursday class-3 violet
+2024-12-13 friday advent 2 lucy class-3 red
+2024-12-14 saturday advent 2 ef-advent-2-saturday class-3 violet
+2024-12-15 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2024-12-16 monday advent 3 eusebius class-3 red
+2024-12-17 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2024-12-18 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2024-12-19 thursday advent 3 ef-advent-3-thursday class-3 violet
+2024-12-20 friday advent 3 ef-advent-ember-fri class-2 violet
+2024-12-21 saturday advent 3 ef-advent-ember-sat class-2 violet +thomas
+2024-12-22 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2024-12-23 monday advent 4 ef-advent-4-monday class-3 violet
+2024-12-24 tuesday advent 4 vigil-of-christmas class-1 violet
+2024-12-25 wednesday christmas - ef-nativity class-1 white
+2024-12-26 thursday christmas - stephen class-2 red
+2024-12-27 friday christmas - john-the-evangelist class-2 white
+2024-12-28 saturday christmas - holy-innocents class-2 red
+2024-12-29 sunday christmas - ef-christmas-sunday-0 class-2 white +thomas-becket
+2024-12-30 monday christmas - ef-christmas-0-monday class-4 white
+2024-12-31 tuesday christmas - ef-christmas-0-tuesday class-4 white +silvester
+2025-01-01 wednesday christmas - ef-circumcision class-1 white
+2025-01-02 thursday christmas - ef-christmas-0-thursday class-4 white
+2025-01-03 friday christmas - ef-christmas-0-friday class-4 white
+2025-01-04 saturday christmas - ef-christmas-0-saturday class-4 white
+2025-01-05 sunday christmas - ef-christmas-sunday-0 class-2 white +telesphorus-pope-and-martyr
+2025-01-06 monday time-after-epiphany - ef-epiphany class-1 white
+2025-01-07 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2025-01-08 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2025-01-09 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2025-01-10 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2025-01-11 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green +hyginus-pope-and-martyr
+2025-01-12 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2025-01-13 monday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2025-01-14 tuesday time-after-epiphany 2 hilary class-3 white +felicis
+2025-01-15 wednesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2025-01-16 thursday time-after-epiphany 2 marcellus-i class-3 red
+2025-01-17 friday time-after-epiphany 2 anthony class-3 white
+2025-01-18 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +prisca
+2025-01-19 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +canute-martyr +sts-marius-martha-audifax-abachum
+2025-01-20 monday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2025-01-21 tuesday time-after-epiphany 3 agnes class-3 red
+2025-01-22 wednesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2025-01-23 thursday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2025-01-24 friday time-after-epiphany 3 timothy class-3 red
+2025-01-25 saturday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2025-01-26 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +polycarp
+2025-01-27 monday time-after-epiphany 4 john-chrysostom class-3 white
+2025-01-28 tuesday time-after-epiphany 4 peter-nolasco class-3 white
+2025-01-29 wednesday time-after-epiphany 4 francis-de-sales class-3 white
+2025-01-30 thursday time-after-epiphany 4 martina class-3 red
+2025-01-31 friday time-after-epiphany 4 john-bosco class-3 white
+2025-02-01 saturday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2025-02-02 sunday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2025-02-03 monday time-after-epiphany 5 ef-time-after-epiphany-5-monday class-4 green +blaise
+2025-02-04 tuesday time-after-epiphany 5 andrew-corsini class-3 white
+2025-02-05 wednesday time-after-epiphany 5 agatha class-3 red
+2025-02-06 thursday time-after-epiphany 5 titus class-3 white +dorothy
+2025-02-07 friday time-after-epiphany 5 romuald class-3 white
+2025-02-08 saturday time-after-epiphany 5 john-of-matha class-3 white
+2025-02-09 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +cyril-of-alexandria +appollonia
+2025-02-10 monday time-after-epiphany 6 scholastica class-3 white
+2025-02-11 tuesday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2025-02-12 wednesday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2025-02-13 thursday time-after-epiphany 6 ef-time-after-epiphany-6-thursday class-4 green
+2025-02-14 friday time-after-epiphany 6 ef-time-after-epiphany-6-friday class-4 green +valentine
+2025-02-15 saturday time-after-epiphany 6 ef-time-after-epiphany-6-saturday class-4 green +sts-faustinus-jovita
+2025-02-16 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2025-02-17 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet
+2025-02-18 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +simeon
+2025-02-19 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2025-02-20 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2025-02-21 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2025-02-22 saturday septuagesima 1 chair-of-st-peter class-2 white +paul
+2025-02-23 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +peter-damien
+2025-02-24 monday septuagesima 2 matthias class-2 red
+2025-02-25 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2025-02-26 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2025-02-27 thursday septuagesima 2 gabriel-of-our-lady-of-sorrows class-3 white
+2025-02-28 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2025-03-01 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2025-03-02 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2025-03-03 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2025-03-04 tuesday septuagesima 3 casimir class-3 white +lucius
+2025-03-05 wednesday lent - ef-ash-wednesday class-1 violet
+2025-03-06 thursday lent - ef-lent-after-ashes-thursday class-3 violet +sts-felicitas-perpetua
+2025-03-07 friday lent - ef-lent-after-ashes-friday class-3 violet +thomas-aquinas
+2025-03-08 saturday lent - ef-lent-after-ashes-saturday class-3 violet +john-of-god
+2025-03-09 sunday lent 1 ef-lent-sunday-1 class-2 violet +frances-rome
+2025-03-10 monday lent 1 ef-lent-1-monday class-3 violet +forty-holy-martyrs-of-sebaste
+2025-03-11 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2025-03-12 wednesday lent 1 ef-lent-1-wednesday class-3 violet +gregory-the-great
+2025-03-13 thursday lent 1 ef-lent-1-thursday class-3 violet
+2025-03-14 friday lent 1 ef-lent-1-friday class-3 violet
+2025-03-15 saturday lent 1 ef-lent-1-saturday class-3 violet
+2025-03-16 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2025-03-17 monday lent 2 ef-lent-2-monday class-3 violet +patrick
+2025-03-18 tuesday lent 2 ef-lent-2-tuesday class-3 violet +cyril-of-jerusalem
+2025-03-19 wednesday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2025-03-20 thursday lent 2 ef-lent-2-thursday class-3 violet
+2025-03-21 friday lent 2 ef-lent-2-friday class-3 violet +benedict
+2025-03-22 saturday lent 2 ef-lent-2-saturday class-3 violet
+2025-03-23 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2025-03-24 monday lent 3 ef-lent-3-monday class-3 violet +gabriel-the-archangel
+2025-03-25 tuesday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2025-03-26 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2025-03-27 thursday lent 3 ef-lent-3-thursday class-3 violet +john-damascene
+2025-03-28 friday lent 3 ef-lent-3-friday class-3 violet +john-of-capistrano
+2025-03-29 saturday lent 3 ef-lent-3-saturday class-3 violet
+2025-03-30 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2025-03-31 monday lent 4 ef-lent-4-monday class-3 violet
+2025-04-01 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2025-04-02 wednesday lent 4 ef-lent-4-wednesday class-3 violet +francis-of-paola
+2025-04-03 thursday lent 4 ef-lent-4-thursday class-3 violet
+2025-04-04 friday lent 4 ef-lent-4-friday class-3 violet +isidore-of-seville
+2025-04-05 saturday lent 4 ef-lent-4-saturday class-3 violet +vincent-ferrer
+2025-04-06 sunday passiontide 1 ef-passion-sunday class-1 violet
+2025-04-07 monday passiontide - ef-passiontide-0-monday class-3 violet
+2025-04-08 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2025-04-09 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2025-04-10 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2025-04-11 friday passiontide - ef-passiontide-0-friday class-3 violet +leo-the-great
+2025-04-12 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2025-04-13 sunday passiontide 2 ef-palm-sunday class-1 violet +hermenegild
+2025-04-14 monday passiontide - ef-passiontide-0-monday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2025-04-15 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2025-04-16 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2025-04-17 thursday passiontide - ef-passiontide-0-thursday class-1 violet +anicetus
+2025-04-18 friday passiontide - ef-passiontide-0-friday class-1 violet
+2025-04-19 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2025-04-20 sunday easter 1 ef-easter-sunday class-1 white
+2025-04-21 monday easter 1 ef-easter-1-monday class-1 white +anselm
+2025-04-22 tuesday easter 1 ef-easter-1-tuesday class-1 white +sts-soter-caius
+2025-04-23 wednesday easter 1 ef-easter-1-wednesday class-1 white +george
+2025-04-24 thursday easter 1 ef-easter-1-thursday class-1 white +fidelis-of-sigmaringen
+2025-04-25 friday easter 1 ef-easter-1-friday class-1 white +mark
+2025-04-26 saturday easter 1 ef-easter-1-saturday class-1 white +sts-cletus-marcellinus
+2025-04-27 sunday easter 2 ef-low-sunday class-1 white +peter-canisius
+2025-04-28 monday easter 2 paul-of-the-cross class-3 white
+2025-04-29 tuesday easter 2 peter-of-verona class-3 red
+2025-04-30 wednesday easter 2 catherine-of-siena class-3 white
+2025-05-01 thursday easter 2 joseph-the-workman class-1 white
+2025-05-02 friday easter 2 athanasius class-3 white
+2025-05-03 saturday easter 2 ef-easter-2-saturday class-4 white +sts-alexander-companions
+2025-05-04 sunday easter 3 ef-easter-sunday-3 class-2 white +monica
+2025-05-05 monday easter 3 pius-v class-3 white
+2025-05-06 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2025-05-07 wednesday easter 3 stanislaus class-3 red
+2025-05-08 thursday easter 3 ef-easter-3-thursday class-4 white
+2025-05-09 friday easter 3 gregory-of-nazianzen class-3 white
+2025-05-10 saturday easter 3 antoninus class-3 white +gordiano-and-epimacho
+2025-05-11 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-philip-james
+2025-05-12 monday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2025-05-13 tuesday easter 4 robert-bellarmine class-3 white
+2025-05-14 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2025-05-15 thursday easter 4 john-baptist-de-la-salle class-3 white
+2025-05-16 friday easter 4 ef-easter-4-friday class-4 white +ubaldus
+2025-05-17 saturday easter 4 paschal-baylon class-3 white
+2025-05-18 sunday easter 5 ef-easter-sunday-5 class-2 white +venantius
+2025-05-19 monday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2025-05-20 tuesday easter 5 bernardine-of-siena class-3 white
+2025-05-21 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2025-05-22 thursday easter 5 ef-easter-5-thursday class-4 white
+2025-05-23 friday easter 5 ef-easter-5-friday class-4 white
+2025-05-24 saturday easter 5 ef-easter-5-saturday class-4 white
+2025-05-25 sunday easter 6 ef-easter-sunday-6 class-2 white +gregory-vii +urban-pope-and-martyr
+2025-05-26 monday easter 6 philip-neri class-3 white +eleutherius
+2025-05-27 tuesday easter 6 bede-the-venerable class-3 white +john-i
+2025-05-28 wednesday easter - ef-ascension-vigil class-2 white +augustine-of-canterbury
+2025-05-29 thursday easter - ef-ascension class-1 white +mary-magdalene-de-pazzi
+2025-05-30 friday easter 6 ef-easter-6-friday class-4 white +felix-i
+2025-05-31 saturday easter 6 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2025-06-01 sunday easter 7 ef-easter-sunday-7 class-2 white +angela-merici
+2025-06-02 monday easter 7 ef-easter-7-monday class-4 white +sts-marcellinus-peter-erasmus
+2025-06-03 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2025-06-04 wednesday easter 7 francis-caracciolo class-3 white
+2025-06-05 thursday easter 7 boniface class-3 red
+2025-06-06 friday easter 7 norbert class-3 white
+2025-06-07 saturday easter - ef-pentecost-vigil class-1 red
+2025-06-08 sunday easter - ef-pentecost class-1 red
+2025-06-09 monday easter 8 ef-easter-8-monday class-1 red +sts-primus-felicianus
+2025-06-10 tuesday easter 8 ef-easter-8-tuesday class-1 red +margaret-of-scotland
+2025-06-11 wednesday easter 8 ef-easter-8-wednesday class-1 red +barnabas
+2025-06-12 thursday easter 8 ef-easter-8-thursday class-1 red +john-of-san-fecundo +basilidus
+2025-06-13 friday easter 8 ef-easter-8-friday class-1 red +anthony-of-padua
+2025-06-14 saturday easter 8 ef-easter-8-saturday class-1 red +basil-the-great
+2025-06-15 sunday time-after-pentecost 1 ef-trinity class-1 white +vitus
+2025-06-16 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2025-06-17 tuesday time-after-pentecost 1 gregory-barbarigo class-3 white
+2025-06-18 wednesday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2025-06-19 thursday time-after-pentecost - ef-corpus-christi class-1 white +julia-of-falconieri +sts-gervasius-and-protasius
+2025-06-20 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green +silverius
+2025-06-21 saturday time-after-pentecost 1 aloysius-gongzaga class-3 white
+2025-06-22 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +paulinus-of-nola
+2025-06-23 monday time-after-pentecost 2 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2025-06-24 tuesday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2025-06-25 wednesday time-after-pentecost 2 william class-3 white
+2025-06-26 thursday time-after-pentecost 2 sts-john-paul class-3 red
+2025-06-27 friday time-after-pentecost - ef-sacred-heart class-1 white
+2025-06-28 saturday time-after-pentecost 2 vigil-of-sts-peter-paul class-2 violet
+2025-06-29 sunday time-after-pentecost 3 sts-peter-paul class-1 red
+2025-06-30 monday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2025-07-01 tuesday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2025-07-02 wednesday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2025-07-03 thursday time-after-pentecost 3 irenaeus class-3 red
+2025-07-04 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green
+2025-07-05 saturday time-after-pentecost 3 anthony-mary-zaccariah class-3 white
+2025-07-06 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green
+2025-07-07 monday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2025-07-08 tuesday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2025-07-09 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2025-07-10 thursday time-after-pentecost 4 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2025-07-11 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green +pius-i
+2025-07-12 saturday time-after-pentecost 4 john-gualbert class-3 red +naboris-et-felicis
+2025-07-13 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2025-07-14 monday time-after-pentecost 5 bonaventure class-3 white
+2025-07-15 tuesday time-after-pentecost 5 henry-the-emperor class-3 white
+2025-07-16 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green +our-lady-of-mt-carmel
+2025-07-17 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green +alexis
+2025-07-18 friday time-after-pentecost 5 camillus-de-lellis class-3 red +symphorosa-and-sons
+2025-07-19 saturday time-after-pentecost 5 vincent-de-paul class-3 white
+2025-07-20 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +jerome-emiliani +margaret
+2025-07-21 monday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2025-07-22 tuesday time-after-pentecost 6 mary-magdalene class-3 white
+2025-07-23 wednesday time-after-pentecost 6 apollinaris class-3 white +liborii
+2025-07-24 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green +christina
+2025-07-25 friday time-after-pentecost 6 james-the-greater class-2 red +christopher
+2025-07-26 saturday time-after-pentecost 6 anne-mother-of-the-blessed-virgin class-2 white
+2025-07-27 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +pantaleon
+2025-07-28 monday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2025-07-29 tuesday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2025-07-30 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +sts-abdon-sennen
+2025-07-31 thursday time-after-pentecost 7 ignatius-loyola class-3 white
+2025-08-01 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +holy-machabees
+2025-08-02 saturday time-after-pentecost 7 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2025-08-03 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green
+2025-08-04 monday time-after-pentecost 8 dominic class-3 white
+2025-08-05 tuesday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2025-08-06 wednesday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2025-08-07 thursday time-after-pentecost 8 cajetan class-3 white +donatus
+2025-08-08 friday time-after-pentecost 8 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2025-08-09 saturday time-after-pentecost 8 vigil-of-st-lawrence class-3 red +romanus
+2025-08-10 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +lawrence
+2025-08-11 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +sts-tiburtius-susanna
+2025-08-12 tuesday time-after-pentecost 9 clare class-3 white
+2025-08-13 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +sts-hippolytus-cassian
+2025-08-14 thursday time-after-pentecost 9 vigil-of-the-assumption class-2 white
+2025-08-15 friday time-after-pentecost 9 assumption-of-the-blessed-virgin-mary class-1 white
+2025-08-16 saturday time-after-pentecost 9 joachim-father-of-the-blessed-virgin class-2 white
+2025-08-17 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +hyacinth
+2025-08-18 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green +agapitus
+2025-08-19 tuesday time-after-pentecost 10 john-eudes class-3 white
+2025-08-20 wednesday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2025-08-21 thursday time-after-pentecost 10 jane-frances-de-chantal class-3 white
+2025-08-22 friday time-after-pentecost 10 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2025-08-23 saturday time-after-pentecost 10 philip-benizi class-3 white
+2025-08-24 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +bartholomew
+2025-08-25 monday time-after-pentecost 11 louis-ix class-3 white
+2025-08-26 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green +zephyrinus
+2025-08-27 wednesday time-after-pentecost 11 joseph-calasance class-3 white
+2025-08-28 thursday time-after-pentecost 11 augustine class-3 red +hermes
+2025-08-29 friday time-after-pentecost 11 beheading-of-st-john-the-baptist class-3 red +sabina
+2025-08-30 saturday time-after-pentecost 11 rose-of-lima class-3 red +sts-felix-and-adauctus
+2025-08-31 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +raymond-nonnatus
+2025-09-01 monday time-after-pentecost 12 ef-time-after-pentecost-12-monday class-4 green +giles +twelve-holy-brothers-martyrs
+2025-09-02 tuesday time-after-pentecost 12 stephen-of-hungary class-3 white
+2025-09-03 wednesday time-after-pentecost 12 pius-x class-3 white
+2025-09-04 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green
+2025-09-05 friday time-after-pentecost 12 lawrence-justinian class-3 white
+2025-09-06 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green
+2025-09-07 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green
+2025-09-08 monday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2025-09-09 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green +gorgonius
+2025-09-10 wednesday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2025-09-11 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +sts-protus-hyacinth
+2025-09-12 friday time-after-pentecost 13 most-holy-name-of-mary class-3 white
+2025-09-13 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green
+2025-09-14 sunday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2025-09-15 monday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2025-09-16 tuesday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2025-09-17 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green +stigmata-of-st-francis
+2025-09-18 thursday time-after-pentecost 14 joseph-of-cupertino class-3 white
+2025-09-19 friday time-after-pentecost 14 januarius-companions class-3 red
+2025-09-20 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +sts-eustace-companions
+2025-09-21 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +matthew
+2025-09-22 monday time-after-pentecost 15 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2025-09-23 tuesday time-after-pentecost 15 linus class-3 red +thecla
+2025-09-24 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +our-lady-of-ransom
+2025-09-25 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green
+2025-09-26 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +sts-cyprian-justina
+2025-09-27 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +sts-cosmas-damian
+2025-09-28 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +wenceslaus
+2025-09-29 monday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2025-09-30 tuesday time-after-pentecost 16 jerome class-3 white
+2025-10-01 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green +remigius
+2025-10-02 thursday time-after-pentecost 16 holy-guardian-angels class-3 white
+2025-10-03 friday time-after-pentecost 16 theresa-of-the-infant-jesus class-3 white
+2025-10-04 saturday time-after-pentecost 16 francis-of-assisi class-3 white
+2025-10-05 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +placid-companions
+2025-10-06 monday time-after-pentecost 17 bruno class-3 white
+2025-10-07 tuesday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2025-10-08 wednesday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2025-10-09 thursday time-after-pentecost 17 john-leonardi class-3 white +dionysius-and-companions
+2025-10-10 friday time-after-pentecost 17 francis-borgia class-3 white
+2025-10-11 saturday time-after-pentecost 17 maternity-of-the-blessed-virgin-mary class-2 white
+2025-10-12 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green
+2025-10-13 monday time-after-pentecost 18 edward class-3 white
+2025-10-14 tuesday time-after-pentecost 18 callistus-i class-3 red
+2025-10-15 wednesday time-after-pentecost 18 teresa-of-avila class-3 white
+2025-10-16 thursday time-after-pentecost 18 hedwig class-3 white
+2025-10-17 friday time-after-pentecost 18 margaret-mary-alacoque class-3 white
+2025-10-18 saturday time-after-pentecost 18 luke-the-evangelist class-2 red
+2025-10-19 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +peter-of-alcantara
+2025-10-20 monday time-after-pentecost 19 john-cantius class-3 white
+2025-10-21 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green +hilarion +ursula-and-companions
+2025-10-22 wednesday time-after-pentecost 19 ef-time-after-pentecost-19-wednesday class-4 green
+2025-10-23 thursday time-after-pentecost 19 anthony-mary-claret class-3 white
+2025-10-24 friday time-after-pentecost 19 raphael-the-archangel class-3 white
+2025-10-25 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +sts-chrysanthus-daria
+2025-10-26 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2025-10-27 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green
+2025-10-28 tuesday time-after-pentecost 20 sts-simon-jude class-2 red
+2025-10-29 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2025-10-30 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2025-10-31 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2025-11-01 saturday time-after-pentecost 20 all-saints class-1 white
+2025-11-02 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2025-11-03 monday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2025-11-04 tuesday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2025-11-05 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2025-11-06 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2025-11-07 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2025-11-08 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green +four-holy-crowned-martyrs
+2025-11-09 sunday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2025-11-10 monday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2025-11-11 tuesday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2025-11-12 wednesday time-after-pentecost 22 martin-i class-3 red
+2025-11-13 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green +didacus
+2025-11-14 friday time-after-pentecost 22 josaphat class-3 white
+2025-11-15 saturday time-after-pentecost 22 albert-the-great class-3 white
+2025-11-16 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +gertrude-the-great
+2025-11-17 monday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2025-11-18 tuesday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2025-11-19 wednesday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2025-11-20 thursday time-after-pentecost 23 felix-of-valois class-3 white
+2025-11-21 friday time-after-pentecost 23 presentation-of-the-blessed-virgin-mary class-3 white
+2025-11-22 saturday time-after-pentecost 23 cecilia class-3 red
+2025-11-23 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +clement-i +felicity
+2025-11-24 monday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2025-11-25 tuesday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2025-11-26 wednesday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2025-11-27 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2025-11-28 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green
+2025-11-29 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green +saturninus
+2025-11-30 sunday advent 1 ef-advent-sunday-1 class-1 violet +andrew
+2025-12-01 monday advent 1 ef-advent-1-monday class-3 violet
+2025-12-02 tuesday advent 1 vivian class-3 red
+2025-12-03 wednesday advent 1 francis-xavier class-3 white
+2025-12-04 thursday advent 1 peter-chrysologus class-3 white
+2025-12-05 friday advent 1 ef-advent-1-friday class-3 violet +sabbas
+2025-12-06 saturday advent 1 nicholas class-3 white
+2025-12-07 sunday advent 2 ef-advent-sunday-2 class-2 violet +ambrose
+2025-12-08 monday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2025-12-09 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2025-12-10 wednesday advent 2 ef-advent-2-wednesday class-3 violet +melchiades
+2025-12-11 thursday advent 2 damasus-i class-3 white
+2025-12-12 friday advent 2 ef-advent-2-friday class-3 violet
+2025-12-13 saturday advent 2 lucy class-3 red
+2025-12-14 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2025-12-15 monday advent 3 ef-advent-3-monday class-3 violet
+2025-12-16 tuesday advent 3 eusebius class-3 red
+2025-12-17 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2025-12-18 thursday advent 3 ef-advent-3-thursday class-3 violet
+2025-12-19 friday advent 3 ef-advent-ember-fri class-2 violet
+2025-12-20 saturday advent 3 ef-advent-ember-sat class-2 violet
+2025-12-21 sunday advent 4 ef-advent-sunday-4 class-2 violet +thomas
+2025-12-22 monday advent 4 ef-advent-4-monday class-3 violet
+2025-12-23 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2025-12-24 wednesday advent 4 vigil-of-christmas class-1 violet
+2025-12-25 thursday christmas - ef-nativity class-1 white
+2025-12-26 friday christmas - stephen class-2 red
+2025-12-27 saturday christmas - john-the-evangelist class-2 white
+2025-12-28 sunday christmas - ef-christmas-sunday-0 class-2 white +holy-innocents
+2025-12-29 monday christmas - ef-christmas-0-monday class-4 white +thomas-becket
+2025-12-30 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2025-12-31 wednesday christmas - ef-christmas-0-wednesday class-4 white +silvester
+2026-01-01 thursday christmas - ef-circumcision class-1 white
+2026-01-02 friday christmas - ef-christmas-0-friday class-4 white
+2026-01-03 saturday christmas - ef-christmas-0-saturday class-4 white
+2026-01-04 sunday christmas - ef-christmas-sunday-0 class-2 white
+2026-01-05 monday christmas - ef-christmas-0-monday class-4 white +telesphorus-pope-and-martyr
+2026-01-06 tuesday time-after-epiphany - ef-epiphany class-1 white
+2026-01-07 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2026-01-08 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2026-01-09 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2026-01-10 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2026-01-11 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green +hyginus-pope-and-martyr
+2026-01-12 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2026-01-13 tuesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2026-01-14 wednesday time-after-epiphany 2 hilary class-3 white +felicis
+2026-01-15 thursday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2026-01-16 friday time-after-epiphany 2 marcellus-i class-3 red
+2026-01-17 saturday time-after-epiphany 2 anthony class-3 white
+2026-01-18 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +prisca
+2026-01-19 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2026-01-20 tuesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2026-01-21 wednesday time-after-epiphany 3 agnes class-3 red
+2026-01-22 thursday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2026-01-23 friday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2026-01-24 saturday time-after-epiphany 3 timothy class-3 red
+2026-01-25 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +conversion-of-st-paul +peter
+2026-01-26 monday time-after-epiphany 3 polycarp class-3 red
+2026-01-27 tuesday time-after-epiphany 4 john-chrysostom class-3 white
+2026-01-28 wednesday time-after-epiphany 4 peter-nolasco class-3 white
+2026-01-29 thursday time-after-epiphany 4 francis-de-sales class-3 white
+2026-01-30 friday time-after-epiphany 4 martina class-3 red
+2026-01-31 saturday time-after-epiphany 4 john-bosco class-3 white
+2026-02-01 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +ignatius-of-antioch
+2026-02-02 monday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2026-02-03 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +blaise
+2026-02-04 wednesday septuagesima 1 andrew-corsini class-3 white
+2026-02-05 thursday septuagesima 1 agatha class-3 red
+2026-02-06 friday septuagesima 1 titus class-3 white +dorothy
+2026-02-07 saturday septuagesima 1 romuald class-3 white
+2026-02-08 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +john-of-matha
+2026-02-09 monday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2026-02-10 tuesday septuagesima 2 scholastica class-3 white
+2026-02-11 wednesday septuagesima 2 our-lady-of-lourdes class-3 white
+2026-02-12 thursday septuagesima 2 seven-holy-servite-founders class-3 white
+2026-02-13 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2026-02-14 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +valentine
+2026-02-15 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +sts-faustinus-jovita
+2026-02-16 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2026-02-17 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2026-02-18 wednesday lent - ef-ash-wednesday class-1 violet +simeon
+2026-02-19 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2026-02-20 friday lent - ef-lent-after-ashes-friday class-3 violet
+2026-02-21 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2026-02-22 sunday lent 1 ef-lent-sunday-1 class-2 violet +chair-of-st-peter +paul
+2026-02-23 monday lent 1 ef-lent-1-monday class-3 violet +peter-damien
+2026-02-24 tuesday lent 1 matthias class-2 red
+2026-02-25 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2026-02-26 thursday lent 1 ef-lent-1-thursday class-3 violet
+2026-02-27 friday lent 1 ef-lent-1-friday class-3 violet +gabriel-of-our-lady-of-sorrows
+2026-02-28 saturday lent 1 ef-lent-1-saturday class-3 violet
+2026-03-01 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2026-03-02 monday lent 2 ef-lent-2-monday class-3 violet
+2026-03-03 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2026-03-04 wednesday lent 2 ef-lent-2-wednesday class-3 violet +casimir +lucius
+2026-03-05 thursday lent 2 ef-lent-2-thursday class-3 violet
+2026-03-06 friday lent 2 ef-lent-2-friday class-3 violet +sts-felicitas-perpetua
+2026-03-07 saturday lent 2 ef-lent-2-saturday class-3 violet +thomas-aquinas
+2026-03-08 sunday lent 3 ef-lent-sunday-3 class-2 violet +john-of-god
+2026-03-09 monday lent 3 ef-lent-3-monday class-3 violet +frances-rome
+2026-03-10 tuesday lent 3 ef-lent-3-tuesday class-3 violet +forty-holy-martyrs-of-sebaste
+2026-03-11 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2026-03-12 thursday lent 3 ef-lent-3-thursday class-3 violet +gregory-the-great
+2026-03-13 friday lent 3 ef-lent-3-friday class-3 violet
+2026-03-14 saturday lent 3 ef-lent-3-saturday class-3 violet
+2026-03-15 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2026-03-16 monday lent 4 ef-lent-4-monday class-3 violet
+2026-03-17 tuesday lent 4 ef-lent-4-tuesday class-3 violet +patrick
+2026-03-18 wednesday lent 4 ef-lent-4-wednesday class-3 violet +cyril-of-jerusalem
+2026-03-19 thursday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2026-03-20 friday lent 4 ef-lent-4-friday class-3 violet
+2026-03-21 saturday lent 4 ef-lent-4-saturday class-3 violet +benedict
+2026-03-22 sunday passiontide 1 ef-passion-sunday class-1 violet
+2026-03-23 monday passiontide - ef-passiontide-0-monday class-3 violet
+2026-03-24 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +gabriel-the-archangel
+2026-03-25 wednesday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2026-03-26 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2026-03-27 friday passiontide - ef-passiontide-0-friday class-3 violet +john-damascene
+2026-03-28 saturday passiontide - ef-passiontide-0-saturday class-3 violet +john-of-capistrano
+2026-03-29 sunday passiontide 2 ef-palm-sunday class-1 violet
+2026-03-30 monday passiontide - ef-passiontide-0-monday class-1 violet
+2026-03-31 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2026-04-01 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2026-04-02 thursday passiontide - ef-passiontide-0-thursday class-1 violet +francis-of-paola
+2026-04-03 friday passiontide - ef-passiontide-0-friday class-1 violet
+2026-04-04 saturday passiontide - ef-passiontide-0-saturday class-1 violet +isidore-of-seville
+2026-04-05 sunday easter 1 ef-easter-sunday class-1 white +vincent-ferrer
+2026-04-06 monday easter 1 ef-easter-1-monday class-1 white
+2026-04-07 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2026-04-08 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2026-04-09 thursday easter 1 ef-easter-1-thursday class-1 white
+2026-04-10 friday easter 1 ef-easter-1-friday class-1 white
+2026-04-11 saturday easter 1 ef-easter-1-saturday class-1 white +leo-the-great
+2026-04-12 sunday easter 2 ef-low-sunday class-1 white
+2026-04-13 monday easter 2 hermenegild class-3 red
+2026-04-14 tuesday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2026-04-15 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2026-04-16 thursday easter 2 ef-easter-2-thursday class-4 white
+2026-04-17 friday easter 2 ef-easter-2-friday class-4 white +anicetus
+2026-04-18 saturday easter 2 ef-easter-2-saturday class-4 white
+2026-04-19 sunday easter 3 ef-easter-sunday-3 class-2 white
+2026-04-20 monday easter 3 ef-easter-3-monday class-4 white
+2026-04-21 tuesday easter 3 anselm class-3 white
+2026-04-22 wednesday easter 3 sts-soter-caius class-3 red
+2026-04-23 thursday easter 3 ef-easter-3-thursday class-4 white +george
+2026-04-24 friday easter 3 fidelis-of-sigmaringen class-3 red
+2026-04-25 saturday easter 3 mark class-2 red
+2026-04-26 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-cletus-marcellinus
+2026-04-27 monday easter 4 peter-canisius class-3 white
+2026-04-28 tuesday easter 4 paul-of-the-cross class-3 white
+2026-04-29 wednesday easter 4 peter-of-verona class-3 red
+2026-04-30 thursday easter 4 catherine-of-siena class-3 white
+2026-05-01 friday easter 4 joseph-the-workman class-1 white
+2026-05-02 saturday easter 4 athanasius class-3 white
+2026-05-03 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-alexander-companions
+2026-05-04 monday easter 5 monica class-3 white
+2026-05-05 tuesday easter 5 pius-v class-3 white
+2026-05-06 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2026-05-07 thursday easter 5 stanislaus class-3 red
+2026-05-08 friday easter 5 ef-easter-5-friday class-4 white
+2026-05-09 saturday easter 5 gregory-of-nazianzen class-3 white
+2026-05-10 sunday easter 6 ef-easter-sunday-6 class-2 white +antoninus +gordiano-and-epimacho
+2026-05-11 monday easter 6 sts-philip-james class-2 red
+2026-05-12 tuesday easter 6 sts-nereus-achilleus-domitilla-pancras class-3 red
+2026-05-13 wednesday easter - ef-ascension-vigil class-2 white +robert-bellarmine
+2026-05-14 thursday easter - ef-ascension class-1 white
+2026-05-15 friday easter 6 john-baptist-de-la-salle class-3 white
+2026-05-16 saturday easter 6 ef-easter-6-saturday class-4 white +ubaldus
+2026-05-17 sunday easter 7 ef-easter-sunday-7 class-2 white +paschal-baylon
+2026-05-18 monday easter 7 venantius class-3 red
+2026-05-19 tuesday easter 7 peter-celestine class-3 white +pudentiana-virginis
+2026-05-20 wednesday easter 7 bernardine-of-siena class-3 white
+2026-05-21 thursday easter 7 ef-easter-7-thursday class-4 white
+2026-05-22 friday easter 7 ef-easter-7-friday class-4 white
+2026-05-23 saturday easter - ef-pentecost-vigil class-1 red
+2026-05-24 sunday easter - ef-pentecost class-1 red
+2026-05-25 monday easter 8 ef-easter-8-monday class-1 red +gregory-vii +urban-pope-and-martyr
+2026-05-26 tuesday easter 8 ef-easter-8-tuesday class-1 red +philip-neri +eleutherius
+2026-05-27 wednesday easter 8 ef-easter-8-wednesday class-1 red +bede-the-venerable +john-i
+2026-05-28 thursday easter 8 ef-easter-8-thursday class-1 red +augustine-of-canterbury
+2026-05-29 friday easter 8 ef-easter-8-friday class-1 red +mary-magdalene-de-pazzi
+2026-05-30 saturday easter 8 ef-easter-8-saturday class-1 red +felix-i
+2026-05-31 sunday time-after-pentecost 1 ef-trinity class-1 white +queenship-of-the-blessed-virgin-mary +petronilla
+2026-06-01 monday time-after-pentecost 1 angela-merici class-3 white
+2026-06-02 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green +sts-marcellinus-peter-erasmus
+2026-06-03 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2026-06-04 thursday time-after-pentecost - ef-corpus-christi class-1 white +francis-caracciolo
+2026-06-05 friday time-after-pentecost 1 boniface class-3 red
+2026-06-06 saturday time-after-pentecost 1 norbert class-3 white
+2026-06-07 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2026-06-08 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2026-06-09 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green +sts-primus-felicianus
+2026-06-10 wednesday time-after-pentecost 2 margaret-of-scotland class-3 white
+2026-06-11 thursday time-after-pentecost 2 barnabas class-3 red
+2026-06-12 friday time-after-pentecost - ef-sacred-heart class-1 white +john-of-san-fecundo +basilidus
+2026-06-13 saturday time-after-pentecost 2 anthony-of-padua class-3 white
+2026-06-14 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +basil-the-great
+2026-06-15 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green +vitus
+2026-06-16 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2026-06-17 wednesday time-after-pentecost 3 gregory-barbarigo class-3 white
+2026-06-18 thursday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2026-06-19 friday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2026-06-20 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green +silverius
+2026-06-21 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +aloysius-gongzaga
+2026-06-22 monday time-after-pentecost 4 paulinus-of-nola class-3 white
+2026-06-23 tuesday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2026-06-24 wednesday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2026-06-25 thursday time-after-pentecost 4 william class-3 white
+2026-06-26 friday time-after-pentecost 4 sts-john-paul class-3 red
+2026-06-27 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2026-06-28 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +vigil-of-sts-peter-paul
+2026-06-29 monday time-after-pentecost 5 sts-peter-paul class-1 red
+2026-06-30 tuesday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2026-07-01 wednesday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2026-07-02 thursday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2026-07-03 friday time-after-pentecost 5 irenaeus class-3 red
+2026-07-04 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green
+2026-07-05 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +anthony-mary-zaccariah
+2026-07-06 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2026-07-07 tuesday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2026-07-08 wednesday time-after-pentecost 6 elizabeth-of-portugal class-3 white
+2026-07-09 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2026-07-10 friday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2026-07-11 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +pius-i
+2026-07-12 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +john-gualbert +naboris-et-felicis
+2026-07-13 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2026-07-14 tuesday time-after-pentecost 7 bonaventure class-3 white
+2026-07-15 wednesday time-after-pentecost 7 henry-the-emperor class-3 white
+2026-07-16 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +our-lady-of-mt-carmel
+2026-07-17 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +alexis
+2026-07-18 saturday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2026-07-19 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +vincent-de-paul
+2026-07-20 monday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2026-07-21 tuesday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2026-07-22 wednesday time-after-pentecost 8 mary-magdalene class-3 white
+2026-07-23 thursday time-after-pentecost 8 apollinaris class-3 white +liborii
+2026-07-24 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +christina
+2026-07-25 saturday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2026-07-26 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +anne-mother-of-the-blessed-virgin
+2026-07-27 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +pantaleon
+2026-07-28 tuesday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2026-07-29 wednesday time-after-pentecost 9 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2026-07-30 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +sts-abdon-sennen
+2026-07-31 friday time-after-pentecost 9 ignatius-loyola class-3 white
+2026-08-01 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +holy-machabees
+2026-08-02 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +alphonsus-liguori +stephen-i-pope-and-martyr
+2026-08-03 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green
+2026-08-04 tuesday time-after-pentecost 10 dominic class-3 white
+2026-08-05 wednesday time-after-pentecost 10 dedication-of-the-basilica-of-st-mary-major class-3 white
+2026-08-06 thursday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2026-08-07 friday time-after-pentecost 10 cajetan class-3 white +donatus
+2026-08-08 saturday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2026-08-09 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +vigil-of-st-lawrence +romanus
+2026-08-10 monday time-after-pentecost 11 lawrence class-2 red
+2026-08-11 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green +sts-tiburtius-susanna
+2026-08-12 wednesday time-after-pentecost 11 clare class-3 white
+2026-08-13 thursday time-after-pentecost 11 ef-time-after-pentecost-11-thursday class-4 green +sts-hippolytus-cassian
+2026-08-14 friday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2026-08-15 saturday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2026-08-16 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +joachim-father-of-the-blessed-virgin
+2026-08-17 monday time-after-pentecost 12 hyacinth class-3 white
+2026-08-18 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +agapitus
+2026-08-19 wednesday time-after-pentecost 12 john-eudes class-3 white
+2026-08-20 thursday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2026-08-21 friday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2026-08-22 saturday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2026-08-23 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +philip-benizi
+2026-08-24 monday time-after-pentecost 13 bartholomew class-2 red
+2026-08-25 tuesday time-after-pentecost 13 louis-ix class-3 white
+2026-08-26 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +zephyrinus
+2026-08-27 thursday time-after-pentecost 13 joseph-calasance class-3 white
+2026-08-28 friday time-after-pentecost 13 augustine class-3 red +hermes
+2026-08-29 saturday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2026-08-30 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +rose-of-lima +sts-felix-and-adauctus
+2026-08-31 monday time-after-pentecost 14 raymond-nonnatus class-3 white
+2026-09-01 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +giles +twelve-holy-brothers-martyrs
+2026-09-02 wednesday time-after-pentecost 14 stephen-of-hungary class-3 white
+2026-09-03 thursday time-after-pentecost 14 pius-x class-3 white
+2026-09-04 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green
+2026-09-05 saturday time-after-pentecost 14 lawrence-justinian class-3 white
+2026-09-06 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green
+2026-09-07 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green
+2026-09-08 tuesday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2026-09-09 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green +gorgonius
+2026-09-10 thursday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2026-09-11 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green +sts-protus-hyacinth
+2026-09-12 saturday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2026-09-13 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2026-09-14 monday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2026-09-15 tuesday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2026-09-16 wednesday time-after-pentecost 16 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2026-09-17 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +stigmata-of-st-francis
+2026-09-18 friday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2026-09-19 saturday time-after-pentecost 16 januarius-companions class-3 red
+2026-09-20 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-eustace-companions
+2026-09-21 monday time-after-pentecost 17 matthew class-2 red
+2026-09-22 tuesday time-after-pentecost 17 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2026-09-23 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +linus +thecla
+2026-09-24 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +our-lady-of-ransom
+2026-09-25 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet
+2026-09-26 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +sts-cyprian-justina
+2026-09-27 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-cosmas-damian
+2026-09-28 monday time-after-pentecost 18 wenceslaus class-3 red
+2026-09-29 tuesday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2026-09-30 wednesday time-after-pentecost 18 jerome class-3 white
+2026-10-01 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +remigius
+2026-10-02 friday time-after-pentecost 18 holy-guardian-angels class-3 white
+2026-10-03 saturday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2026-10-04 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +francis-of-assisi
+2026-10-05 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +placid-companions
+2026-10-06 tuesday time-after-pentecost 19 bruno class-3 white
+2026-10-07 wednesday time-after-pentecost 19 our-lady-of-the-rosary class-2 white +mark-i
+2026-10-08 thursday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2026-10-09 friday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2026-10-10 saturday time-after-pentecost 19 francis-borgia class-3 white
+2026-10-11 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +maternity-of-the-blessed-virgin-mary
+2026-10-12 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green
+2026-10-13 tuesday time-after-pentecost 20 edward class-3 white
+2026-10-14 wednesday time-after-pentecost 20 callistus-i class-3 red
+2026-10-15 thursday time-after-pentecost 20 teresa-of-avila class-3 white
+2026-10-16 friday time-after-pentecost 20 hedwig class-3 white
+2026-10-17 saturday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2026-10-18 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +luke-the-evangelist
+2026-10-19 monday time-after-pentecost 21 peter-of-alcantara class-3 white
+2026-10-20 tuesday time-after-pentecost 21 john-cantius class-3 white
+2026-10-21 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green +hilarion +ursula-and-companions
+2026-10-22 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2026-10-23 friday time-after-pentecost 21 anthony-mary-claret class-3 white
+2026-10-24 saturday time-after-pentecost 21 raphael-the-archangel class-3 white
+2026-10-25 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-chrysanthus-daria
+2026-10-26 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2026-10-27 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2026-10-28 wednesday time-after-pentecost 22 sts-simon-jude class-2 red
+2026-10-29 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2026-10-30 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2026-10-31 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2026-11-01 sunday time-after-pentecost 23 all-saints class-1 white
+2026-11-02 monday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2026-11-03 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2026-11-04 wednesday time-after-pentecost 23 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2026-11-05 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2026-11-06 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2026-11-07 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2026-11-08 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +four-holy-crowned-martyrs
+2026-11-09 monday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2026-11-10 tuesday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2026-11-11 wednesday time-after-pentecost 24 martin-of-tours class-3 white +menna
+2026-11-12 thursday time-after-pentecost 24 martin-i class-3 red
+2026-11-13 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +didacus
+2026-11-14 saturday time-after-pentecost 24 josaphat class-3 white
+2026-11-15 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +albert-the-great
+2026-11-16 monday time-after-pentecost 25 gertrude-the-great class-3 white
+2026-11-17 tuesday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2026-11-18 wednesday time-after-pentecost 25 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2026-11-19 thursday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2026-11-20 friday time-after-pentecost 25 felix-of-valois class-3 white
+2026-11-21 saturday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2026-11-22 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +cecilia
+2026-11-23 monday time-after-pentecost 26 clement-i class-3 red +felicity
+2026-11-24 tuesday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2026-11-25 wednesday time-after-pentecost 26 catherine-of-alexandria class-3 red
+2026-11-26 thursday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2026-11-27 friday time-after-pentecost 26 ef-time-after-pentecost-26-friday class-4 green
+2026-11-28 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green
+2026-11-29 sunday advent 1 ef-advent-sunday-1 class-1 violet +saturninus
+2026-11-30 monday advent 1 andrew class-2 red
+2026-12-01 tuesday advent 1 ef-advent-1-tuesday class-3 violet
+2026-12-02 wednesday advent 1 vivian class-3 red
+2026-12-03 thursday advent 1 francis-xavier class-3 white
+2026-12-04 friday advent 1 peter-chrysologus class-3 white
+2026-12-05 saturday advent 1 ef-advent-1-saturday class-3 violet +sabbas
+2026-12-06 sunday advent 2 ef-advent-sunday-2 class-2 violet +nicholas
+2026-12-07 monday advent 2 ambrose class-3 white
+2026-12-08 tuesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2026-12-09 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2026-12-10 thursday advent 2 ef-advent-2-thursday class-3 violet +melchiades
+2026-12-11 friday advent 2 damasus-i class-3 white
+2026-12-12 saturday advent 2 ef-advent-2-saturday class-3 violet
+2026-12-13 sunday advent 3 ef-advent-sunday-3 class-2 violet +lucy
+2026-12-14 monday advent 3 ef-advent-3-monday class-3 violet
+2026-12-15 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2026-12-16 wednesday advent 3 ef-advent-ember-wed class-2 violet +eusebius
+2026-12-17 thursday advent 3 ef-advent-3-thursday class-3 violet
+2026-12-18 friday advent 3 ef-advent-ember-fri class-2 violet
+2026-12-19 saturday advent 3 ef-advent-ember-sat class-2 violet
+2026-12-20 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2026-12-21 monday advent 4 thomas class-2 red
+2026-12-22 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2026-12-23 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2026-12-24 thursday advent 4 vigil-of-christmas class-1 violet
+2026-12-25 friday christmas - ef-nativity class-1 white
+2026-12-26 saturday christmas - stephen class-2 red
+2026-12-27 sunday christmas - ef-christmas-sunday-0 class-2 white +john-the-evangelist
+2026-12-28 monday christmas - holy-innocents class-2 red
+2026-12-29 tuesday christmas - ef-christmas-0-tuesday class-4 white +thomas-becket
+2026-12-30 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2026-12-31 thursday christmas - ef-christmas-0-thursday class-4 white +silvester
+2027-01-01 friday christmas - ef-circumcision class-1 white
+2027-01-02 saturday christmas - ef-christmas-0-saturday class-4 white
+2027-01-03 sunday christmas - ef-christmas-sunday-0 class-2 white
+2027-01-04 monday christmas - ef-christmas-0-monday class-4 white
+2027-01-05 tuesday christmas - ef-christmas-0-tuesday class-4 white +telesphorus-pope-and-martyr
+2027-01-06 wednesday time-after-epiphany - ef-epiphany class-1 white
+2027-01-07 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2027-01-08 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2027-01-09 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2027-01-10 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2027-01-11 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green +hyginus-pope-and-martyr
+2027-01-12 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2027-01-13 wednesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2027-01-14 thursday time-after-epiphany 2 hilary class-3 white +felicis
+2027-01-15 friday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2027-01-16 saturday time-after-epiphany 2 marcellus-i class-3 red
+2027-01-17 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +anthony
+2027-01-18 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +prisca
+2027-01-19 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2027-01-20 wednesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2027-01-21 thursday time-after-epiphany 3 agnes class-3 red
+2027-01-22 friday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2027-01-23 saturday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2027-01-24 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +timothy
+2027-01-25 monday septuagesima 1 conversion-of-st-paul class-3 white +peter
+2027-01-26 tuesday septuagesima 1 polycarp class-3 red
+2027-01-27 wednesday septuagesima 1 john-chrysostom class-3 white
+2027-01-28 thursday septuagesima 1 peter-nolasco class-3 white
+2027-01-29 friday septuagesima 1 francis-de-sales class-3 white
+2027-01-30 saturday septuagesima 1 martina class-3 red
+2027-01-31 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +john-bosco
+2027-02-01 monday septuagesima 2 ignatius-of-antioch class-3 red
+2027-02-02 tuesday septuagesima 2 purification-of-the-blessed-virgin-mary class-2 white
+2027-02-03 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet +blaise
+2027-02-04 thursday septuagesima 2 andrew-corsini class-3 white
+2027-02-05 friday septuagesima 2 agatha class-3 red
+2027-02-06 saturday septuagesima 2 titus class-3 white +dorothy
+2027-02-07 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +romuald
+2027-02-08 monday septuagesima 3 john-of-matha class-3 white
+2027-02-09 tuesday septuagesima 3 cyril-of-alexandria class-3 white +appollonia
+2027-02-10 wednesday lent - ef-ash-wednesday class-1 violet +scholastica
+2027-02-11 thursday lent - ef-lent-after-ashes-thursday class-3 violet +our-lady-of-lourdes
+2027-02-12 friday lent - ef-lent-after-ashes-friday class-3 violet +seven-holy-servite-founders
+2027-02-13 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2027-02-14 sunday lent 1 ef-lent-sunday-1 class-2 violet +valentine
+2027-02-15 monday lent 1 ef-lent-1-monday class-3 violet +sts-faustinus-jovita
+2027-02-16 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2027-02-17 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2027-02-18 thursday lent 1 ef-lent-1-thursday class-3 violet +simeon
+2027-02-19 friday lent 1 ef-lent-1-friday class-3 violet
+2027-02-20 saturday lent 1 ef-lent-1-saturday class-3 violet
+2027-02-21 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2027-02-22 monday lent 2 chair-of-st-peter class-2 white +paul
+2027-02-23 tuesday lent 2 ef-lent-2-tuesday class-3 violet +peter-damien
+2027-02-24 wednesday lent 2 matthias class-2 red
+2027-02-25 thursday lent 2 ef-lent-2-thursday class-3 violet
+2027-02-26 friday lent 2 ef-lent-2-friday class-3 violet
+2027-02-27 saturday lent 2 ef-lent-2-saturday class-3 violet +gabriel-of-our-lady-of-sorrows
+2027-02-28 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2027-03-01 monday lent 3 ef-lent-3-monday class-3 violet
+2027-03-02 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2027-03-03 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2027-03-04 thursday lent 3 ef-lent-3-thursday class-3 violet +casimir +lucius
+2027-03-05 friday lent 3 ef-lent-3-friday class-3 violet
+2027-03-06 saturday lent 3 ef-lent-3-saturday class-3 violet +sts-felicitas-perpetua
+2027-03-07 sunday lent 4 ef-lent-sunday-4 class-2 violet +thomas-aquinas
+2027-03-08 monday lent 4 ef-lent-4-monday class-3 violet +john-of-god
+2027-03-09 tuesday lent 4 ef-lent-4-tuesday class-3 violet +frances-rome
+2027-03-10 wednesday lent 4 ef-lent-4-wednesday class-3 violet +forty-holy-martyrs-of-sebaste
+2027-03-11 thursday lent 4 ef-lent-4-thursday class-3 violet
+2027-03-12 friday lent 4 ef-lent-4-friday class-3 violet +gregory-the-great
+2027-03-13 saturday lent 4 ef-lent-4-saturday class-3 violet
+2027-03-14 sunday passiontide 1 ef-passion-sunday class-1 violet
+2027-03-15 monday passiontide - ef-passiontide-0-monday class-3 violet
+2027-03-16 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2027-03-17 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +patrick
+2027-03-18 thursday passiontide - ef-passiontide-0-thursday class-3 violet +cyril-of-jerusalem
+2027-03-19 friday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2027-03-20 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2027-03-21 sunday passiontide 2 ef-palm-sunday class-1 violet +benedict
+2027-03-22 monday passiontide - ef-passiontide-0-monday class-1 violet
+2027-03-23 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2027-03-24 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +gabriel-the-archangel
+2027-03-25 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2027-03-26 friday passiontide - ef-passiontide-0-friday class-1 violet
+2027-03-27 saturday passiontide - ef-passiontide-0-saturday class-1 violet +john-damascene
+2027-03-28 sunday easter 1 ef-easter-sunday class-1 white +john-of-capistrano
+2027-03-29 monday easter 1 ef-easter-1-monday class-1 white
+2027-03-30 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2027-03-31 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2027-04-01 thursday easter 1 ef-easter-1-thursday class-1 white
+2027-04-02 friday easter 1 ef-easter-1-friday class-1 white +francis-of-paola
+2027-04-03 saturday easter 1 ef-easter-1-saturday class-1 white
+2027-04-04 sunday easter 2 ef-low-sunday class-1 white +isidore-of-seville
+2027-04-05 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white +vincent-ferrer
+2027-04-06 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2027-04-07 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2027-04-08 thursday easter 2 ef-easter-2-thursday class-4 white
+2027-04-09 friday easter 2 ef-easter-2-friday class-4 white
+2027-04-10 saturday easter 2 ef-easter-2-saturday class-4 white
+2027-04-11 sunday easter 3 ef-easter-sunday-3 class-2 white +leo-the-great
+2027-04-12 monday easter 3 ef-easter-3-monday class-4 white
+2027-04-13 tuesday easter 3 hermenegild class-3 red
+2027-04-14 wednesday easter 3 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2027-04-15 thursday easter 3 ef-easter-3-thursday class-4 white
+2027-04-16 friday easter 3 ef-easter-3-friday class-4 white
+2027-04-17 saturday easter 3 ef-easter-3-saturday class-4 white +anicetus
+2027-04-18 sunday easter 4 ef-easter-sunday-4 class-2 white
+2027-04-19 monday easter 4 ef-easter-4-monday class-4 white
+2027-04-20 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2027-04-21 wednesday easter 4 anselm class-3 white
+2027-04-22 thursday easter 4 sts-soter-caius class-3 red
+2027-04-23 friday easter 4 ef-easter-4-friday class-4 white +george
+2027-04-24 saturday easter 4 fidelis-of-sigmaringen class-3 red
+2027-04-25 sunday easter 5 ef-easter-sunday-5 class-2 white +mark
+2027-04-26 monday easter 5 sts-cletus-marcellinus class-3 red
+2027-04-27 tuesday easter 5 peter-canisius class-3 white
+2027-04-28 wednesday easter 5 paul-of-the-cross class-3 white
+2027-04-29 thursday easter 5 peter-of-verona class-3 red
+2027-04-30 friday easter 5 catherine-of-siena class-3 white
+2027-05-01 saturday easter 5 joseph-the-workman class-1 white
+2027-05-02 sunday easter 6 ef-easter-sunday-6 class-2 white +athanasius
+2027-05-03 monday easter 6 ef-easter-6-monday class-4 white +sts-alexander-companions
+2027-05-04 tuesday easter 6 monica class-3 white
+2027-05-05 wednesday easter - ef-ascension-vigil class-2 white +pius-v
+2027-05-06 thursday easter - ef-ascension class-1 white
+2027-05-07 friday easter 6 stanislaus class-3 red
+2027-05-08 saturday easter 6 ef-easter-6-saturday class-4 white
+2027-05-09 sunday easter 7 ef-easter-sunday-7 class-2 white +gregory-of-nazianzen
+2027-05-10 monday easter 7 antoninus class-3 white +gordiano-and-epimacho
+2027-05-11 tuesday easter 7 sts-philip-james class-2 red
+2027-05-12 wednesday easter 7 sts-nereus-achilleus-domitilla-pancras class-3 red
+2027-05-13 thursday easter 7 robert-bellarmine class-3 white
+2027-05-14 friday easter 7 ef-easter-7-friday class-4 white
+2027-05-15 saturday easter - ef-pentecost-vigil class-1 red +john-baptist-de-la-salle
+2027-05-16 sunday easter - ef-pentecost class-1 red +ubaldus
+2027-05-17 monday easter 8 ef-easter-8-monday class-1 red +paschal-baylon
+2027-05-18 tuesday easter 8 ef-easter-8-tuesday class-1 red +venantius
+2027-05-19 wednesday easter 8 ef-easter-8-wednesday class-1 red +peter-celestine +pudentiana-virginis
+2027-05-20 thursday easter 8 ef-easter-8-thursday class-1 red +bernardine-of-siena
+2027-05-21 friday easter 8 ef-easter-8-friday class-1 red
+2027-05-22 saturday easter 8 ef-easter-8-saturday class-1 red
+2027-05-23 sunday time-after-pentecost 1 ef-trinity class-1 white
+2027-05-24 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2027-05-25 tuesday time-after-pentecost 1 gregory-vii class-3 white +urban-pope-and-martyr
+2027-05-26 wednesday time-after-pentecost 1 philip-neri class-3 white +eleutherius
+2027-05-27 thursday time-after-pentecost - ef-corpus-christi class-1 white +bede-the-venerable +john-i
+2027-05-28 friday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2027-05-29 saturday time-after-pentecost 1 mary-magdalene-de-pazzi class-3 white
+2027-05-30 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +felix-i
+2027-05-31 monday time-after-pentecost 2 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2027-06-01 tuesday time-after-pentecost 2 angela-merici class-3 white
+2027-06-02 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green +sts-marcellinus-peter-erasmus
+2027-06-03 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2027-06-04 friday time-after-pentecost - ef-sacred-heart class-1 white +francis-caracciolo
+2027-06-05 saturday time-after-pentecost 2 boniface class-3 red
+2027-06-06 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +norbert
+2027-06-07 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green
+2027-06-08 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2027-06-09 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green +sts-primus-felicianus
+2027-06-10 thursday time-after-pentecost 3 margaret-of-scotland class-3 white
+2027-06-11 friday time-after-pentecost 3 barnabas class-3 red
+2027-06-12 saturday time-after-pentecost 3 john-of-san-fecundo class-3 red +basilidus
+2027-06-13 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +anthony-of-padua
+2027-06-14 monday time-after-pentecost 4 basil-the-great class-3 white
+2027-06-15 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green +vitus
+2027-06-16 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2027-06-17 thursday time-after-pentecost 4 gregory-barbarigo class-3 white
+2027-06-18 friday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2027-06-19 saturday time-after-pentecost 4 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2027-06-20 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +silverius
+2027-06-21 monday time-after-pentecost 5 aloysius-gongzaga class-3 white
+2027-06-22 tuesday time-after-pentecost 5 paulinus-of-nola class-3 white
+2027-06-23 wednesday time-after-pentecost 5 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2027-06-24 thursday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2027-06-25 friday time-after-pentecost 5 william class-3 white
+2027-06-26 saturday time-after-pentecost 5 sts-john-paul class-3 red
+2027-06-27 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2027-06-28 monday time-after-pentecost 6 vigil-of-sts-peter-paul class-2 violet
+2027-06-29 tuesday time-after-pentecost 6 sts-peter-paul class-1 red
+2027-06-30 wednesday time-after-pentecost 6 in-commemoratione-sancti-pauli-apostoli class-3 red
+2027-07-01 thursday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2027-07-02 friday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2027-07-03 saturday time-after-pentecost 6 irenaeus class-3 red
+2027-07-04 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green
+2027-07-05 monday time-after-pentecost 7 anthony-mary-zaccariah class-3 white
+2027-07-06 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green
+2027-07-07 wednesday time-after-pentecost 7 sts-cyril-methodius class-3 white
+2027-07-08 thursday time-after-pentecost 7 elizabeth-of-portugal class-3 white
+2027-07-09 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green
+2027-07-10 saturday time-after-pentecost 7 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2027-07-11 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +pius-i
+2027-07-12 monday time-after-pentecost 8 john-gualbert class-3 red +naboris-et-felicis
+2027-07-13 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green
+2027-07-14 wednesday time-after-pentecost 8 bonaventure class-3 white
+2027-07-15 thursday time-after-pentecost 8 henry-the-emperor class-3 white
+2027-07-16 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +our-lady-of-mt-carmel
+2027-07-17 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +alexis
+2027-07-18 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +camillus-de-lellis +symphorosa-and-sons
+2027-07-19 monday time-after-pentecost 9 vincent-de-paul class-3 white
+2027-07-20 tuesday time-after-pentecost 9 jerome-emiliani class-3 red +margaret
+2027-07-21 wednesday time-after-pentecost 9 laurence-of-brindisi class-3 white +praxedis-virginis
+2027-07-22 thursday time-after-pentecost 9 mary-magdalene class-3 white
+2027-07-23 friday time-after-pentecost 9 apollinaris class-3 white +liborii
+2027-07-24 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +christina
+2027-07-25 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +james-the-greater +christopher
+2027-07-26 monday time-after-pentecost 10 anne-mother-of-the-blessed-virgin class-2 white
+2027-07-27 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +pantaleon
+2027-07-28 wednesday time-after-pentecost 10 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2027-07-29 thursday time-after-pentecost 10 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2027-07-30 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +sts-abdon-sennen
+2027-07-31 saturday time-after-pentecost 10 ignatius-loyola class-3 white
+2027-08-01 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +holy-machabees
+2027-08-02 monday time-after-pentecost 11 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2027-08-03 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green
+2027-08-04 wednesday time-after-pentecost 11 dominic class-3 white
+2027-08-05 thursday time-after-pentecost 11 dedication-of-the-basilica-of-st-mary-major class-3 white
+2027-08-06 friday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2027-08-07 saturday time-after-pentecost 11 cajetan class-3 white +donatus
+2027-08-08 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +john-mary-vianney +cyriacus-largus-and-smaragdus-martyrs
+2027-08-09 monday time-after-pentecost 12 vigil-of-st-lawrence class-3 red +romanus
+2027-08-10 tuesday time-after-pentecost 12 lawrence class-2 red
+2027-08-11 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green +sts-tiburtius-susanna
+2027-08-12 thursday time-after-pentecost 12 clare class-3 white
+2027-08-13 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green +sts-hippolytus-cassian
+2027-08-14 saturday time-after-pentecost 12 vigil-of-the-assumption class-2 white
+2027-08-15 sunday time-after-pentecost 13 assumption-of-the-blessed-virgin-mary class-1 white
+2027-08-16 monday time-after-pentecost 13 joachim-father-of-the-blessed-virgin class-2 white
+2027-08-17 tuesday time-after-pentecost 13 hyacinth class-3 white
+2027-08-18 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +agapitus
+2027-08-19 thursday time-after-pentecost 13 john-eudes class-3 white
+2027-08-20 friday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2027-08-21 saturday time-after-pentecost 13 jane-frances-de-chantal class-3 white
+2027-08-22 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +immaculate-heart-of-mary +sts-timothy-hippolytus-and-symphorianus-martyrs
+2027-08-23 monday time-after-pentecost 14 philip-benizi class-3 white
+2027-08-24 tuesday time-after-pentecost 14 bartholomew class-2 red
+2027-08-25 wednesday time-after-pentecost 14 louis-ix class-3 white
+2027-08-26 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green +zephyrinus
+2027-08-27 friday time-after-pentecost 14 joseph-calasance class-3 white
+2027-08-28 saturday time-after-pentecost 14 augustine class-3 red +hermes
+2027-08-29 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +beheading-of-st-john-the-baptist +sabina
+2027-08-30 monday time-after-pentecost 15 rose-of-lima class-3 red +sts-felix-and-adauctus
+2027-08-31 tuesday time-after-pentecost 15 raymond-nonnatus class-3 white
+2027-09-01 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green +giles +twelve-holy-brothers-martyrs
+2027-09-02 thursday time-after-pentecost 15 stephen-of-hungary class-3 white
+2027-09-03 friday time-after-pentecost 15 pius-x class-3 white
+2027-09-04 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green
+2027-09-05 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +lawrence-justinian
+2027-09-06 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green
+2027-09-07 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green
+2027-09-08 wednesday time-after-pentecost 16 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2027-09-09 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +gorgonius
+2027-09-10 friday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2027-09-11 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +sts-protus-hyacinth
+2027-09-12 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +most-holy-name-of-mary
+2027-09-13 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green
+2027-09-14 tuesday time-after-pentecost 17 exaltation-of-the-holy-cross class-2 red
+2027-09-15 wednesday time-after-pentecost 17 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2027-09-16 thursday time-after-pentecost 17 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2027-09-17 friday time-after-pentecost 17 ef-time-after-pentecost-17-friday class-4 green +stigmata-of-st-francis
+2027-09-18 saturday time-after-pentecost 17 joseph-of-cupertino class-3 white
+2027-09-19 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +januarius-companions
+2027-09-20 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +sts-eustace-companions
+2027-09-21 tuesday time-after-pentecost 18 matthew class-2 red
+2027-09-22 wednesday time-after-pentecost 18 ef-september-ember-wed class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2027-09-23 thursday time-after-pentecost 18 linus class-3 red +thecla
+2027-09-24 friday time-after-pentecost 18 ef-september-ember-fri class-2 violet +our-lady-of-ransom
+2027-09-25 saturday time-after-pentecost 18 ef-september-ember-sat class-2 violet
+2027-09-26 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +sts-cyprian-justina
+2027-09-27 monday time-after-pentecost 19 sts-cosmas-damian class-3 red
+2027-09-28 tuesday time-after-pentecost 19 wenceslaus class-3 red
+2027-09-29 wednesday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2027-09-30 thursday time-after-pentecost 19 jerome class-3 white
+2027-10-01 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +remigius
+2027-10-02 saturday time-after-pentecost 19 holy-guardian-angels class-3 white
+2027-10-03 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +theresa-of-the-infant-jesus
+2027-10-04 monday time-after-pentecost 20 francis-of-assisi class-3 white
+2027-10-05 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green +placid-companions
+2027-10-06 wednesday time-after-pentecost 20 bruno class-3 white
+2027-10-07 thursday time-after-pentecost 20 our-lady-of-the-rosary class-2 white +mark-i
+2027-10-08 friday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2027-10-09 saturday time-after-pentecost 20 john-leonardi class-3 white +dionysius-and-companions
+2027-10-10 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +francis-borgia
+2027-10-11 monday time-after-pentecost 21 maternity-of-the-blessed-virgin-mary class-2 white
+2027-10-12 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2027-10-13 wednesday time-after-pentecost 21 edward class-3 white
+2027-10-14 thursday time-after-pentecost 21 callistus-i class-3 red
+2027-10-15 friday time-after-pentecost 21 teresa-of-avila class-3 white
+2027-10-16 saturday time-after-pentecost 21 hedwig class-3 white
+2027-10-17 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +margaret-mary-alacoque
+2027-10-18 monday time-after-pentecost 22 luke-the-evangelist class-2 red
+2027-10-19 tuesday time-after-pentecost 22 peter-of-alcantara class-3 white
+2027-10-20 wednesday time-after-pentecost 22 john-cantius class-3 white
+2027-10-21 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green +hilarion +ursula-and-companions
+2027-10-22 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2027-10-23 saturday time-after-pentecost 22 anthony-mary-claret class-3 white
+2027-10-24 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +raphael-the-archangel
+2027-10-25 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green +sts-chrysanthus-daria
+2027-10-26 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2027-10-27 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2027-10-28 thursday time-after-pentecost 23 sts-simon-jude class-2 red
+2027-10-29 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2027-10-30 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2027-10-31 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2027-11-01 monday time-after-pentecost 24 all-saints class-1 white
+2027-11-02 tuesday time-after-pentecost 24 commemoration-of-all-souls class-1 black
+2027-11-03 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2027-11-04 thursday time-after-pentecost 24 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2027-11-05 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green
+2027-11-06 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green
+2027-11-07 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green
+2027-11-08 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green +four-holy-crowned-martyrs
+2027-11-09 tuesday time-after-pentecost 25 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2027-11-10 wednesday time-after-pentecost 25 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2027-11-11 thursday time-after-pentecost 25 martin-of-tours class-3 white +menna
+2027-11-12 friday time-after-pentecost 25 martin-i class-3 red
+2027-11-13 saturday time-after-pentecost 25 ef-time-after-pentecost-25-saturday class-4 green +didacus
+2027-11-14 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +josaphat
+2027-11-15 monday time-after-pentecost 26 albert-the-great class-3 white
+2027-11-16 tuesday time-after-pentecost 26 gertrude-the-great class-3 white
+2027-11-17 wednesday time-after-pentecost 26 gregory-the-wonderworker class-3 white
+2027-11-18 thursday time-after-pentecost 26 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2027-11-19 friday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2027-11-20 saturday time-after-pentecost 26 felix-of-valois class-3 white
+2027-11-21 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +presentation-of-the-blessed-virgin-mary
+2027-11-22 monday time-after-pentecost 27 cecilia class-3 red
+2027-11-23 tuesday time-after-pentecost 27 clement-i class-3 red +felicity
+2027-11-24 wednesday time-after-pentecost 27 john-of-the-cross class-3 white +chrysogonus
+2027-11-25 thursday time-after-pentecost 27 catherine-of-alexandria class-3 red
+2027-11-26 friday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2027-11-27 saturday time-after-pentecost 27 ef-time-after-pentecost-27-saturday class-4 green
+2027-11-28 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2027-11-29 monday advent 1 ef-advent-1-monday class-3 violet +saturninus
+2027-11-30 tuesday advent 1 andrew class-2 red
+2027-12-01 wednesday advent 1 ef-advent-1-wednesday class-3 violet
+2027-12-02 thursday advent 1 vivian class-3 red
+2027-12-03 friday advent 1 francis-xavier class-3 white
+2027-12-04 saturday advent 1 peter-chrysologus class-3 white
+2027-12-05 sunday advent 2 ef-advent-sunday-2 class-2 violet +sabbas
+2027-12-06 monday advent 2 nicholas class-3 white
+2027-12-07 tuesday advent 2 ambrose class-3 white
+2027-12-08 wednesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2027-12-09 thursday advent 2 ef-advent-2-thursday class-3 violet
+2027-12-10 friday advent 2 ef-advent-2-friday class-3 violet +melchiades
+2027-12-11 saturday advent 2 damasus-i class-3 white
+2027-12-12 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2027-12-13 monday advent 3 lucy class-3 red
+2027-12-14 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2027-12-15 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2027-12-16 thursday advent 3 eusebius class-3 red
+2027-12-17 friday advent 3 ef-advent-ember-fri class-2 violet
+2027-12-18 saturday advent 3 ef-advent-ember-sat class-2 violet
+2027-12-19 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2027-12-20 monday advent 4 ef-advent-4-monday class-3 violet
+2027-12-21 tuesday advent 4 thomas class-2 red
+2027-12-22 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2027-12-23 thursday advent 4 ef-advent-4-thursday class-3 violet
+2027-12-24 friday advent 4 vigil-of-christmas class-1 violet
+2027-12-25 saturday christmas - ef-nativity class-1 white
+2027-12-26 sunday christmas - ef-christmas-sunday-0 class-2 white +stephen
+2027-12-27 monday christmas - john-the-evangelist class-2 white
+2027-12-28 tuesday christmas - holy-innocents class-2 red
+2027-12-29 wednesday christmas - ef-christmas-0-wednesday class-4 white +thomas-becket
+2027-12-30 thursday christmas - ef-christmas-0-thursday class-4 white
+2027-12-31 friday christmas - ef-christmas-0-friday class-4 white +silvester
+2028-01-01 saturday christmas - ef-circumcision class-1 white
+2028-01-02 sunday christmas - ef-christmas-sunday-0 class-2 white
+2028-01-03 monday christmas - ef-christmas-0-monday class-4 white
+2028-01-04 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2028-01-05 wednesday christmas - ef-christmas-0-wednesday class-4 white +telesphorus-pope-and-martyr
+2028-01-06 thursday time-after-epiphany - ef-epiphany class-1 white
+2028-01-07 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2028-01-08 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2028-01-09 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2028-01-10 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2028-01-11 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green +hyginus-pope-and-martyr
+2028-01-12 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2028-01-13 thursday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2028-01-14 friday time-after-epiphany 2 hilary class-3 white +felicis
+2028-01-15 saturday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2028-01-16 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +marcellus-i
+2028-01-17 monday time-after-epiphany 2 anthony class-3 white
+2028-01-18 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +prisca
+2028-01-19 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2028-01-20 thursday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2028-01-21 friday time-after-epiphany 3 agnes class-3 red
+2028-01-22 saturday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2028-01-23 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +raymond-of-pe-afort +emerentiana
+2028-01-24 monday time-after-epiphany 3 timothy class-3 red
+2028-01-25 tuesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2028-01-26 wednesday time-after-epiphany 3 polycarp class-3 red
+2028-01-27 thursday time-after-epiphany 4 john-chrysostom class-3 white
+2028-01-28 friday time-after-epiphany 4 peter-nolasco class-3 white
+2028-01-29 saturday time-after-epiphany 4 francis-de-sales class-3 white
+2028-01-30 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +martina
+2028-01-31 monday time-after-epiphany 4 john-bosco class-3 white
+2028-02-01 tuesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2028-02-02 wednesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2028-02-03 thursday time-after-epiphany 5 ef-time-after-epiphany-5-thursday class-4 green +blaise
+2028-02-04 friday time-after-epiphany 5 andrew-corsini class-3 white
+2028-02-05 saturday time-after-epiphany 5 agatha class-3 red
+2028-02-06 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +titus +dorothy
+2028-02-07 monday time-after-epiphany 5 romuald class-3 white
+2028-02-08 tuesday time-after-epiphany 5 john-of-matha class-3 white
+2028-02-09 wednesday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2028-02-10 thursday time-after-epiphany 6 scholastica class-3 white
+2028-02-11 friday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2028-02-12 saturday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2028-02-13 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2028-02-14 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +valentine
+2028-02-15 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +sts-faustinus-jovita
+2028-02-16 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2028-02-17 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2028-02-18 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet +simeon
+2028-02-19 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet
+2028-02-20 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2028-02-21 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2028-02-22 tuesday septuagesima 2 chair-of-st-peter class-2 white +paul
+2028-02-23 wednesday septuagesima 2 peter-damien class-3 white
+2028-02-24 thursday septuagesima 2 matthias class-2 red
+2028-02-25 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2028-02-26 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2028-02-27 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +gabriel-of-our-lady-of-sorrows
+2028-02-28 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2028-02-29 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2028-03-01 wednesday lent - ef-ash-wednesday class-1 violet
+2028-03-02 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2028-03-03 friday lent - ef-lent-after-ashes-friday class-3 violet
+2028-03-04 saturday lent - ef-lent-after-ashes-saturday class-3 violet +casimir +lucius
+2028-03-05 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2028-03-06 monday lent 1 ef-lent-1-monday class-3 violet +sts-felicitas-perpetua
+2028-03-07 tuesday lent 1 ef-lent-1-tuesday class-3 violet +thomas-aquinas
+2028-03-08 wednesday lent 1 ef-lent-1-wednesday class-3 violet +john-of-god
+2028-03-09 thursday lent 1 ef-lent-1-thursday class-3 violet +frances-rome
+2028-03-10 friday lent 1 ef-lent-1-friday class-3 violet +forty-holy-martyrs-of-sebaste
+2028-03-11 saturday lent 1 ef-lent-1-saturday class-3 violet
+2028-03-12 sunday lent 2 ef-lent-sunday-2 class-2 violet +gregory-the-great
+2028-03-13 monday lent 2 ef-lent-2-monday class-3 violet
+2028-03-14 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2028-03-15 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2028-03-16 thursday lent 2 ef-lent-2-thursday class-3 violet
+2028-03-17 friday lent 2 ef-lent-2-friday class-3 violet +patrick
+2028-03-18 saturday lent 2 ef-lent-2-saturday class-3 violet +cyril-of-jerusalem
+2028-03-19 sunday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2028-03-20 monday lent 3 ef-lent-3-monday class-3 violet
+2028-03-21 tuesday lent 3 ef-lent-3-tuesday class-3 violet +benedict
+2028-03-22 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2028-03-23 thursday lent 3 ef-lent-3-thursday class-3 violet
+2028-03-24 friday lent 3 ef-lent-3-friday class-3 violet +gabriel-the-archangel
+2028-03-25 saturday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2028-03-26 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2028-03-27 monday lent 4 ef-lent-4-monday class-3 violet +john-damascene
+2028-03-28 tuesday lent 4 ef-lent-4-tuesday class-3 violet +john-of-capistrano
+2028-03-29 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2028-03-30 thursday lent 4 ef-lent-4-thursday class-3 violet
+2028-03-31 friday lent 4 ef-lent-4-friday class-3 violet
+2028-04-01 saturday lent 4 ef-lent-4-saturday class-3 violet
+2028-04-02 sunday passiontide 1 ef-passion-sunday class-1 violet +francis-of-paola
+2028-04-03 monday passiontide - ef-passiontide-0-monday class-3 violet
+2028-04-04 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +isidore-of-seville
+2028-04-05 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +vincent-ferrer
+2028-04-06 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2028-04-07 friday passiontide - ef-passiontide-0-friday class-3 violet
+2028-04-08 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2028-04-09 sunday passiontide 2 ef-palm-sunday class-1 violet
+2028-04-10 monday passiontide - ef-passiontide-0-monday class-1 violet
+2028-04-11 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +leo-the-great
+2028-04-12 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2028-04-13 thursday passiontide - ef-passiontide-0-thursday class-1 violet +hermenegild
+2028-04-14 friday passiontide - ef-passiontide-0-friday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2028-04-15 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2028-04-16 sunday easter 1 ef-easter-sunday class-1 white
+2028-04-17 monday easter 1 ef-easter-1-monday class-1 white +anicetus
+2028-04-18 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2028-04-19 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2028-04-20 thursday easter 1 ef-easter-1-thursday class-1 white
+2028-04-21 friday easter 1 ef-easter-1-friday class-1 white +anselm
+2028-04-22 saturday easter 1 ef-easter-1-saturday class-1 white +sts-soter-caius
+2028-04-23 sunday easter 2 ef-low-sunday class-1 white +george
+2028-04-24 monday easter 2 fidelis-of-sigmaringen class-3 red
+2028-04-25 tuesday easter 2 mark class-2 red
+2028-04-26 wednesday easter 2 sts-cletus-marcellinus class-3 red
+2028-04-27 thursday easter 2 peter-canisius class-3 white
+2028-04-28 friday easter 2 paul-of-the-cross class-3 white
+2028-04-29 saturday easter 2 peter-of-verona class-3 red
+2028-04-30 sunday easter 3 ef-easter-sunday-3 class-2 white +catherine-of-siena
+2028-05-01 monday easter 3 joseph-the-workman class-1 white
+2028-05-02 tuesday easter 3 athanasius class-3 white
+2028-05-03 wednesday easter 3 ef-easter-3-wednesday class-4 white +sts-alexander-companions
+2028-05-04 thursday easter 3 monica class-3 white
+2028-05-05 friday easter 3 pius-v class-3 white
+2028-05-06 saturday easter 3 ef-easter-3-saturday class-4 white
+2028-05-07 sunday easter 4 ef-easter-sunday-4 class-2 white +stanislaus
+2028-05-08 monday easter 4 ef-easter-4-monday class-4 white
+2028-05-09 tuesday easter 4 gregory-of-nazianzen class-3 white
+2028-05-10 wednesday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2028-05-11 thursday easter 4 sts-philip-james class-2 red
+2028-05-12 friday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2028-05-13 saturday easter 4 robert-bellarmine class-3 white
+2028-05-14 sunday easter 5 ef-easter-sunday-5 class-2 white
+2028-05-15 monday easter 5 john-baptist-de-la-salle class-3 white
+2028-05-16 tuesday easter 5 ef-easter-5-tuesday class-4 white +ubaldus
+2028-05-17 wednesday easter 5 paschal-baylon class-3 white
+2028-05-18 thursday easter 5 venantius class-3 red
+2028-05-19 friday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2028-05-20 saturday easter 5 bernardine-of-siena class-3 white
+2028-05-21 sunday easter 6 ef-easter-sunday-6 class-2 white
+2028-05-22 monday easter 6 ef-easter-6-monday class-4 white
+2028-05-23 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2028-05-24 wednesday easter - ef-ascension-vigil class-2 white
+2028-05-25 thursday easter - ef-ascension class-1 white +gregory-vii +urban-pope-and-martyr
+2028-05-26 friday easter 6 philip-neri class-3 white +eleutherius
+2028-05-27 saturday easter 6 bede-the-venerable class-3 white +john-i
+2028-05-28 sunday easter 7 ef-easter-sunday-7 class-2 white +augustine-of-canterbury
+2028-05-29 monday easter 7 mary-magdalene-de-pazzi class-3 white
+2028-05-30 tuesday easter 7 ef-easter-7-tuesday class-4 white +felix-i
+2028-05-31 wednesday easter 7 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2028-06-01 thursday easter 7 angela-merici class-3 white
+2028-06-02 friday easter 7 ef-easter-7-friday class-4 white +sts-marcellinus-peter-erasmus
+2028-06-03 saturday easter - ef-pentecost-vigil class-1 red
+2028-06-04 sunday easter - ef-pentecost class-1 red +francis-caracciolo
+2028-06-05 monday easter 8 ef-easter-8-monday class-1 red +boniface
+2028-06-06 tuesday easter 8 ef-easter-8-tuesday class-1 red +norbert
+2028-06-07 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2028-06-08 thursday easter 8 ef-easter-8-thursday class-1 red
+2028-06-09 friday easter 8 ef-easter-8-friday class-1 red +sts-primus-felicianus
+2028-06-10 saturday easter 8 ef-easter-8-saturday class-1 red +margaret-of-scotland
+2028-06-11 sunday time-after-pentecost 1 ef-trinity class-1 white +barnabas
+2028-06-12 monday time-after-pentecost 1 john-of-san-fecundo class-3 red +basilidus
+2028-06-13 tuesday time-after-pentecost 1 anthony-of-padua class-3 white
+2028-06-14 wednesday time-after-pentecost 1 basil-the-great class-3 white
+2028-06-15 thursday time-after-pentecost - ef-corpus-christi class-1 white +vitus
+2028-06-16 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green
+2028-06-17 saturday time-after-pentecost 1 gregory-barbarigo class-3 white
+2028-06-18 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +ephrem-of-syria +marcus-and-marcellianus
+2028-06-19 monday time-after-pentecost 2 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2028-06-20 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green +silverius
+2028-06-21 wednesday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2028-06-22 thursday time-after-pentecost 2 paulinus-of-nola class-3 white
+2028-06-23 friday time-after-pentecost - ef-sacred-heart class-1 white +vigil-of-the-nativity-of-st-john-the-baptist
+2028-06-24 saturday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2028-06-25 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +william
+2028-06-26 monday time-after-pentecost 3 sts-john-paul class-3 red
+2028-06-27 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2028-06-28 wednesday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2028-06-29 thursday time-after-pentecost 3 sts-peter-paul class-1 red
+2028-06-30 friday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2028-07-01 saturday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2028-07-02 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +visitation-of-the-blessed-virgin-mary +processus-and-martinian
+2028-07-03 monday time-after-pentecost 4 irenaeus class-3 red
+2028-07-04 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2028-07-05 wednesday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2028-07-06 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green
+2028-07-07 friday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2028-07-08 saturday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2028-07-09 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2028-07-10 monday time-after-pentecost 5 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2028-07-11 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green +pius-i
+2028-07-12 wednesday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2028-07-13 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2028-07-14 friday time-after-pentecost 5 bonaventure class-3 white
+2028-07-15 saturday time-after-pentecost 5 henry-the-emperor class-3 white
+2028-07-16 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +our-lady-of-mt-carmel
+2028-07-17 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green +alexis
+2028-07-18 tuesday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2028-07-19 wednesday time-after-pentecost 6 vincent-de-paul class-3 white
+2028-07-20 thursday time-after-pentecost 6 jerome-emiliani class-3 red +margaret
+2028-07-21 friday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2028-07-22 saturday time-after-pentecost 6 mary-magdalene class-3 white
+2028-07-23 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +apollinaris +liborii
+2028-07-24 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +christina
+2028-07-25 tuesday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2028-07-26 wednesday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2028-07-27 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +pantaleon
+2028-07-28 friday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2028-07-29 saturday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2028-07-30 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +sts-abdon-sennen
+2028-07-31 monday time-after-pentecost 8 ignatius-loyola class-3 white
+2028-08-01 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +holy-machabees
+2028-08-02 wednesday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2028-08-03 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green
+2028-08-04 friday time-after-pentecost 8 dominic class-3 white
+2028-08-05 saturday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2028-08-06 sunday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2028-08-07 monday time-after-pentecost 9 cajetan class-3 white +donatus
+2028-08-08 tuesday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2028-08-09 wednesday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2028-08-10 thursday time-after-pentecost 9 lawrence class-2 red
+2028-08-11 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +sts-tiburtius-susanna
+2028-08-12 saturday time-after-pentecost 9 clare class-3 white
+2028-08-13 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +sts-hippolytus-cassian
+2028-08-14 monday time-after-pentecost 10 vigil-of-the-assumption class-2 white
+2028-08-15 tuesday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2028-08-16 wednesday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2028-08-17 thursday time-after-pentecost 10 hyacinth class-3 white
+2028-08-18 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +agapitus
+2028-08-19 saturday time-after-pentecost 10 john-eudes class-3 white
+2028-08-20 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +bernard-of-clairvaux
+2028-08-21 monday time-after-pentecost 11 jane-frances-de-chantal class-3 white
+2028-08-22 tuesday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2028-08-23 wednesday time-after-pentecost 11 philip-benizi class-3 white
+2028-08-24 thursday time-after-pentecost 11 bartholomew class-2 red
+2028-08-25 friday time-after-pentecost 11 louis-ix class-3 white
+2028-08-26 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green +zephyrinus
+2028-08-27 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +joseph-calasance
+2028-08-28 monday time-after-pentecost 12 augustine class-3 red +hermes
+2028-08-29 tuesday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2028-08-30 wednesday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2028-08-31 thursday time-after-pentecost 12 raymond-nonnatus class-3 white
+2028-09-01 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green +giles +twelve-holy-brothers-martyrs
+2028-09-02 saturday time-after-pentecost 12 stephen-of-hungary class-3 white
+2028-09-03 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +pius-x
+2028-09-04 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green
+2028-09-05 tuesday time-after-pentecost 13 lawrence-justinian class-3 white
+2028-09-06 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green
+2028-09-07 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green
+2028-09-08 friday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2028-09-09 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +gorgonius
+2028-09-10 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +nicholas-of-tolentino
+2028-09-11 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +sts-protus-hyacinth
+2028-09-12 tuesday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2028-09-13 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green
+2028-09-14 thursday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2028-09-15 friday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2028-09-16 saturday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2028-09-17 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +stigmata-of-st-francis
+2028-09-18 monday time-after-pentecost 15 joseph-of-cupertino class-3 white
+2028-09-19 tuesday time-after-pentecost 15 januarius-companions class-3 red
+2028-09-20 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +sts-eustace-companions
+2028-09-21 thursday time-after-pentecost 15 matthew class-2 red
+2028-09-22 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2028-09-23 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +linus +thecla
+2028-09-24 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +our-lady-of-ransom
+2028-09-25 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green
+2028-09-26 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +sts-cyprian-justina
+2028-09-27 wednesday time-after-pentecost 16 sts-cosmas-damian class-3 red
+2028-09-28 thursday time-after-pentecost 16 wenceslaus class-3 red
+2028-09-29 friday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2028-09-30 saturday time-after-pentecost 16 jerome class-3 white
+2028-10-01 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +remigius
+2028-10-02 monday time-after-pentecost 17 holy-guardian-angels class-3 white
+2028-10-03 tuesday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2028-10-04 wednesday time-after-pentecost 17 francis-of-assisi class-3 white
+2028-10-05 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +placid-companions
+2028-10-06 friday time-after-pentecost 17 bruno class-3 white
+2028-10-07 saturday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2028-10-08 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +bridget-of-sweden +sergio-baccho-marcello-and-apulejo-martyrs
+2028-10-09 monday time-after-pentecost 18 john-leonardi class-3 white +dionysius-and-companions
+2028-10-10 tuesday time-after-pentecost 18 francis-borgia class-3 white
+2028-10-11 wednesday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2028-10-12 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green
+2028-10-13 friday time-after-pentecost 18 edward class-3 white
+2028-10-14 saturday time-after-pentecost 18 callistus-i class-3 red
+2028-10-15 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +teresa-of-avila
+2028-10-16 monday time-after-pentecost 19 hedwig class-3 white
+2028-10-17 tuesday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2028-10-18 wednesday time-after-pentecost 19 luke-the-evangelist class-2 red
+2028-10-19 thursday time-after-pentecost 19 peter-of-alcantara class-3 white
+2028-10-20 friday time-after-pentecost 19 john-cantius class-3 white
+2028-10-21 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green +hilarion +ursula-and-companions
+2028-10-22 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green
+2028-10-23 monday time-after-pentecost 20 anthony-mary-claret class-3 white
+2028-10-24 tuesday time-after-pentecost 20 raphael-the-archangel class-3 white
+2028-10-25 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green +sts-chrysanthus-daria
+2028-10-26 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2028-10-27 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2028-10-28 saturday time-after-pentecost 20 sts-simon-jude class-2 red
+2028-10-29 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2028-10-30 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2028-10-31 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2028-11-01 wednesday time-after-pentecost 21 all-saints class-1 white
+2028-11-02 thursday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2028-11-03 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2028-11-04 saturday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2028-11-05 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2028-11-06 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2028-11-07 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2028-11-08 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green +four-holy-crowned-martyrs
+2028-11-09 thursday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2028-11-10 friday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2028-11-11 saturday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2028-11-12 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +martin-i
+2028-11-13 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green +didacus
+2028-11-14 tuesday time-after-pentecost 23 josaphat class-3 white
+2028-11-15 wednesday time-after-pentecost 23 albert-the-great class-3 white
+2028-11-16 thursday time-after-pentecost 23 gertrude-the-great class-3 white
+2028-11-17 friday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2028-11-18 saturday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2028-11-19 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +elizabeth-of-hungary +pontian
+2028-11-20 monday time-after-pentecost 24 felix-of-valois class-3 white
+2028-11-21 tuesday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2028-11-22 wednesday time-after-pentecost 24 cecilia class-3 red
+2028-11-23 thursday time-after-pentecost 24 clement-i class-3 red +felicity
+2028-11-24 friday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2028-11-25 saturday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2028-11-26 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +sylvester +peter-of-alexandria
+2028-11-27 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green
+2028-11-28 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green
+2028-11-29 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green +saturninus
+2028-11-30 thursday time-after-pentecost 25 andrew class-2 red
+2028-12-01 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green
+2028-12-02 saturday time-after-pentecost 25 vivian class-3 red
+2028-12-03 sunday advent 1 ef-advent-sunday-1 class-1 violet +francis-xavier
+2028-12-04 monday advent 1 peter-chrysologus class-3 white
+2028-12-05 tuesday advent 1 ef-advent-1-tuesday class-3 violet +sabbas
+2028-12-06 wednesday advent 1 nicholas class-3 white
+2028-12-07 thursday advent 1 ambrose class-3 white
+2028-12-08 friday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2028-12-09 saturday advent 1 ef-advent-1-saturday class-3 violet
+2028-12-10 sunday advent 2 ef-advent-sunday-2 class-2 violet +melchiades
+2028-12-11 monday advent 2 damasus-i class-3 white
+2028-12-12 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2028-12-13 wednesday advent 2 lucy class-3 red
+2028-12-14 thursday advent 2 ef-advent-2-thursday class-3 violet
+2028-12-15 friday advent 2 ef-advent-2-friday class-3 violet
+2028-12-16 saturday advent 2 eusebius class-3 red
+2028-12-17 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2028-12-18 monday advent 3 ef-advent-3-monday class-3 violet
+2028-12-19 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2028-12-20 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2028-12-21 thursday advent 3 thomas class-2 red
+2028-12-22 friday advent 3 ef-advent-ember-fri class-2 violet
+2028-12-23 saturday advent 3 ef-advent-ember-sat class-2 violet
+2028-12-24 sunday advent 4 vigil-of-christmas class-1 violet
+2028-12-25 monday christmas - ef-nativity class-1 white
+2028-12-26 tuesday christmas - stephen class-2 red
+2028-12-27 wednesday christmas - john-the-evangelist class-2 white
+2028-12-28 thursday christmas - holy-innocents class-2 red
+2028-12-29 friday christmas - ef-christmas-0-friday class-4 white +thomas-becket
+2028-12-30 saturday christmas - ef-christmas-0-saturday class-4 white
+2028-12-31 sunday christmas - ef-christmas-sunday-0 class-2 white +silvester
+2029-01-01 monday christmas - ef-circumcision class-1 white
+2029-01-02 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2029-01-03 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2029-01-04 thursday christmas - ef-christmas-0-thursday class-4 white
+2029-01-05 friday christmas - ef-christmas-0-friday class-4 white +telesphorus-pope-and-martyr
+2029-01-06 saturday time-after-epiphany - ef-epiphany class-1 white
+2029-01-07 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2029-01-08 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2029-01-09 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2029-01-10 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2029-01-11 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green +hyginus-pope-and-martyr
+2029-01-12 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2029-01-13 saturday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2029-01-14 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +hilary +felicis
+2029-01-15 monday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2029-01-16 tuesday time-after-epiphany 2 marcellus-i class-3 red
+2029-01-17 wednesday time-after-epiphany 2 anthony class-3 white
+2029-01-18 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +prisca
+2029-01-19 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2029-01-20 saturday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2029-01-21 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +agnes
+2029-01-22 monday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2029-01-23 tuesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2029-01-24 wednesday time-after-epiphany 3 timothy class-3 red
+2029-01-25 thursday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2029-01-26 friday time-after-epiphany 3 polycarp class-3 red
+2029-01-27 saturday time-after-epiphany 4 john-chrysostom class-3 white
+2029-01-28 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +peter-nolasco
+2029-01-29 monday septuagesima 1 francis-de-sales class-3 white
+2029-01-30 tuesday septuagesima 1 martina class-3 red
+2029-01-31 wednesday septuagesima 1 john-bosco class-3 white
+2029-02-01 thursday septuagesima 1 ignatius-of-antioch class-3 red
+2029-02-02 friday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2029-02-03 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet +blaise
+2029-02-04 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +andrew-corsini
+2029-02-05 monday septuagesima 2 agatha class-3 red
+2029-02-06 tuesday septuagesima 2 titus class-3 white +dorothy
+2029-02-07 wednesday septuagesima 2 romuald class-3 white
+2029-02-08 thursday septuagesima 2 john-of-matha class-3 white
+2029-02-09 friday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2029-02-10 saturday septuagesima 2 scholastica class-3 white
+2029-02-11 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +our-lady-of-lourdes
+2029-02-12 monday septuagesima 3 seven-holy-servite-founders class-3 white
+2029-02-13 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2029-02-14 wednesday lent - ef-ash-wednesday class-1 violet +valentine
+2029-02-15 thursday lent - ef-lent-after-ashes-thursday class-3 violet +sts-faustinus-jovita
+2029-02-16 friday lent - ef-lent-after-ashes-friday class-3 violet
+2029-02-17 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2029-02-18 sunday lent 1 ef-lent-sunday-1 class-2 violet +simeon
+2029-02-19 monday lent 1 ef-lent-1-monday class-3 violet
+2029-02-20 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2029-02-21 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2029-02-22 thursday lent 1 chair-of-st-peter class-2 white +paul
+2029-02-23 friday lent 1 ef-lent-1-friday class-3 violet +peter-damien
+2029-02-24 saturday lent 1 matthias class-2 red
+2029-02-25 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2029-02-26 monday lent 2 ef-lent-2-monday class-3 violet
+2029-02-27 tuesday lent 2 ef-lent-2-tuesday class-3 violet +gabriel-of-our-lady-of-sorrows
+2029-02-28 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2029-03-01 thursday lent 2 ef-lent-2-thursday class-3 violet
+2029-03-02 friday lent 2 ef-lent-2-friday class-3 violet
+2029-03-03 saturday lent 2 ef-lent-2-saturday class-3 violet
+2029-03-04 sunday lent 3 ef-lent-sunday-3 class-2 violet +casimir +lucius
+2029-03-05 monday lent 3 ef-lent-3-monday class-3 violet
+2029-03-06 tuesday lent 3 ef-lent-3-tuesday class-3 violet +sts-felicitas-perpetua
+2029-03-07 wednesday lent 3 ef-lent-3-wednesday class-3 violet +thomas-aquinas
+2029-03-08 thursday lent 3 ef-lent-3-thursday class-3 violet +john-of-god
+2029-03-09 friday lent 3 ef-lent-3-friday class-3 violet +frances-rome
+2029-03-10 saturday lent 3 ef-lent-3-saturday class-3 violet +forty-holy-martyrs-of-sebaste
+2029-03-11 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2029-03-12 monday lent 4 ef-lent-4-monday class-3 violet +gregory-the-great
+2029-03-13 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2029-03-14 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2029-03-15 thursday lent 4 ef-lent-4-thursday class-3 violet
+2029-03-16 friday lent 4 ef-lent-4-friday class-3 violet
+2029-03-17 saturday lent 4 ef-lent-4-saturday class-3 violet +patrick
+2029-03-18 sunday passiontide 1 ef-passion-sunday class-1 violet +cyril-of-jerusalem
+2029-03-19 monday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2029-03-20 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2029-03-21 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +benedict
+2029-03-22 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2029-03-23 friday passiontide - ef-passiontide-0-friday class-3 violet
+2029-03-24 saturday passiontide - ef-passiontide-0-saturday class-3 violet +gabriel-the-archangel
+2029-03-25 sunday passiontide 2 ef-palm-sunday class-1 violet
+2029-03-26 monday passiontide - ef-passiontide-0-monday class-1 violet
+2029-03-27 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +john-damascene
+2029-03-28 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +john-of-capistrano
+2029-03-29 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2029-03-30 friday passiontide - ef-passiontide-0-friday class-1 violet
+2029-03-31 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2029-04-01 sunday easter 1 ef-easter-sunday class-1 white
+2029-04-02 monday easter 1 ef-easter-1-monday class-1 white +francis-of-paola
+2029-04-03 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2029-04-04 wednesday easter 1 ef-easter-1-wednesday class-1 white +isidore-of-seville
+2029-04-05 thursday easter 1 ef-easter-1-thursday class-1 white +vincent-ferrer
+2029-04-06 friday easter 1 ef-easter-1-friday class-1 white
+2029-04-07 saturday easter 1 ef-easter-1-saturday class-1 white
+2029-04-08 sunday easter 2 ef-low-sunday class-1 white
+2029-04-09 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white
+2029-04-10 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2029-04-11 wednesday easter 2 leo-the-great class-3 white
+2029-04-12 thursday easter 2 ef-easter-2-thursday class-4 white
+2029-04-13 friday easter 2 hermenegild class-3 red
+2029-04-14 saturday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2029-04-15 sunday easter 3 ef-easter-sunday-3 class-2 white
+2029-04-16 monday easter 3 ef-easter-3-monday class-4 white
+2029-04-17 tuesday easter 3 ef-easter-3-tuesday class-4 white +anicetus
+2029-04-18 wednesday easter 3 ef-easter-3-wednesday class-4 white
+2029-04-19 thursday easter 3 ef-easter-3-thursday class-4 white
+2029-04-20 friday easter 3 ef-easter-3-friday class-4 white
+2029-04-21 saturday easter 3 anselm class-3 white
+2029-04-22 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-soter-caius
+2029-04-23 monday easter 4 ef-easter-4-monday class-4 white +george
+2029-04-24 tuesday easter 4 fidelis-of-sigmaringen class-3 red
+2029-04-25 wednesday easter 4 mark class-2 red
+2029-04-26 thursday easter 4 sts-cletus-marcellinus class-3 red
+2029-04-27 friday easter 4 peter-canisius class-3 white
+2029-04-28 saturday easter 4 paul-of-the-cross class-3 white
+2029-04-29 sunday easter 5 ef-easter-sunday-5 class-2 white +peter-of-verona
+2029-04-30 monday easter 5 catherine-of-siena class-3 white
+2029-05-01 tuesday easter 5 joseph-the-workman class-1 white
+2029-05-02 wednesday easter 5 athanasius class-3 white
+2029-05-03 thursday easter 5 ef-easter-5-thursday class-4 white +sts-alexander-companions
+2029-05-04 friday easter 5 monica class-3 white
+2029-05-05 saturday easter 5 pius-v class-3 white
+2029-05-06 sunday easter 6 ef-easter-sunday-6 class-2 white
+2029-05-07 monday easter 6 stanislaus class-3 red
+2029-05-08 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2029-05-09 wednesday easter - ef-ascension-vigil class-2 white +gregory-of-nazianzen
+2029-05-10 thursday easter - ef-ascension class-1 white +antoninus +gordiano-and-epimacho
+2029-05-11 friday easter 6 sts-philip-james class-2 red
+2029-05-12 saturday easter 6 sts-nereus-achilleus-domitilla-pancras class-3 red
+2029-05-13 sunday easter 7 ef-easter-sunday-7 class-2 white +robert-bellarmine
+2029-05-14 monday easter 7 ef-easter-7-monday class-4 white
+2029-05-15 tuesday easter 7 john-baptist-de-la-salle class-3 white
+2029-05-16 wednesday easter 7 ef-easter-7-wednesday class-4 white +ubaldus
+2029-05-17 thursday easter 7 paschal-baylon class-3 white
+2029-05-18 friday easter 7 venantius class-3 red
+2029-05-19 saturday easter - ef-pentecost-vigil class-1 red +peter-celestine +pudentiana-virginis
+2029-05-20 sunday easter - ef-pentecost class-1 red +bernardine-of-siena
+2029-05-21 monday easter 8 ef-easter-8-monday class-1 red
+2029-05-22 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2029-05-23 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2029-05-24 thursday easter 8 ef-easter-8-thursday class-1 red
+2029-05-25 friday easter 8 ef-easter-8-friday class-1 red +gregory-vii +urban-pope-and-martyr
+2029-05-26 saturday easter 8 ef-easter-8-saturday class-1 red +philip-neri +eleutherius
+2029-05-27 sunday time-after-pentecost 1 ef-trinity class-1 white +bede-the-venerable +john-i
+2029-05-28 monday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2029-05-29 tuesday time-after-pentecost 1 mary-magdalene-de-pazzi class-3 white
+2029-05-30 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green +felix-i
+2029-05-31 thursday time-after-pentecost - ef-corpus-christi class-1 white +queenship-of-the-blessed-virgin-mary +petronilla
+2029-06-01 friday time-after-pentecost 1 angela-merici class-3 white
+2029-06-02 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green +sts-marcellinus-peter-erasmus
+2029-06-03 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2029-06-04 monday time-after-pentecost 2 francis-caracciolo class-3 white
+2029-06-05 tuesday time-after-pentecost 2 boniface class-3 red
+2029-06-06 wednesday time-after-pentecost 2 norbert class-3 white
+2029-06-07 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2029-06-08 friday time-after-pentecost - ef-sacred-heart class-1 white
+2029-06-09 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green +sts-primus-felicianus
+2029-06-10 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +margaret-of-scotland
+2029-06-11 monday time-after-pentecost 3 barnabas class-3 red
+2029-06-12 tuesday time-after-pentecost 3 john-of-san-fecundo class-3 red +basilidus
+2029-06-13 wednesday time-after-pentecost 3 anthony-of-padua class-3 white
+2029-06-14 thursday time-after-pentecost 3 basil-the-great class-3 white
+2029-06-15 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green +vitus
+2029-06-16 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2029-06-17 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +gregory-barbarigo
+2029-06-18 monday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2029-06-19 tuesday time-after-pentecost 4 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2029-06-20 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green +silverius
+2029-06-21 thursday time-after-pentecost 4 aloysius-gongzaga class-3 white
+2029-06-22 friday time-after-pentecost 4 paulinus-of-nola class-3 white
+2029-06-23 saturday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2029-06-24 sunday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2029-06-25 monday time-after-pentecost 5 william class-3 white
+2029-06-26 tuesday time-after-pentecost 5 sts-john-paul class-3 red
+2029-06-27 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2029-06-28 thursday time-after-pentecost 5 vigil-of-sts-peter-paul class-2 violet
+2029-06-29 friday time-after-pentecost 5 sts-peter-paul class-1 red
+2029-06-30 saturday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2029-07-01 sunday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2029-07-02 monday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2029-07-03 tuesday time-after-pentecost 6 irenaeus class-3 red
+2029-07-04 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green
+2029-07-05 thursday time-after-pentecost 6 anthony-mary-zaccariah class-3 white
+2029-07-06 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green
+2029-07-07 saturday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2029-07-08 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +elizabeth-of-portugal
+2029-07-09 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2029-07-10 tuesday time-after-pentecost 7 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2029-07-11 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +pius-i
+2029-07-12 thursday time-after-pentecost 7 john-gualbert class-3 red +naboris-et-felicis
+2029-07-13 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green
+2029-07-14 saturday time-after-pentecost 7 bonaventure class-3 white
+2029-07-15 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +henry-the-emperor
+2029-07-16 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +our-lady-of-mt-carmel
+2029-07-17 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +alexis
+2029-07-18 wednesday time-after-pentecost 8 camillus-de-lellis class-3 red +symphorosa-and-sons
+2029-07-19 thursday time-after-pentecost 8 vincent-de-paul class-3 white
+2029-07-20 friday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2029-07-21 saturday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2029-07-22 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +mary-magdalene
+2029-07-23 monday time-after-pentecost 9 apollinaris class-3 white +liborii
+2029-07-24 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +christina
+2029-07-25 wednesday time-after-pentecost 9 james-the-greater class-2 red +christopher
+2029-07-26 thursday time-after-pentecost 9 anne-mother-of-the-blessed-virgin class-2 white
+2029-07-27 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +pantaleon
+2029-07-28 saturday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2029-07-29 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +martha +felicis-simplicii-faustini-et-beatricis
+2029-07-30 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green +sts-abdon-sennen
+2029-07-31 tuesday time-after-pentecost 10 ignatius-loyola class-3 white
+2029-08-01 wednesday time-after-pentecost 10 ef-time-after-pentecost-10-wednesday class-4 green +holy-machabees
+2029-08-02 thursday time-after-pentecost 10 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2029-08-03 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green
+2029-08-04 saturday time-after-pentecost 10 dominic class-3 white
+2029-08-05 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +dedication-of-the-basilica-of-st-mary-major
+2029-08-06 monday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2029-08-07 tuesday time-after-pentecost 11 cajetan class-3 white +donatus
+2029-08-08 wednesday time-after-pentecost 11 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2029-08-09 thursday time-after-pentecost 11 vigil-of-st-lawrence class-3 red +romanus
+2029-08-10 friday time-after-pentecost 11 lawrence class-2 red
+2029-08-11 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green +sts-tiburtius-susanna
+2029-08-12 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +clare
+2029-08-13 monday time-after-pentecost 12 ef-time-after-pentecost-12-monday class-4 green +sts-hippolytus-cassian
+2029-08-14 tuesday time-after-pentecost 12 vigil-of-the-assumption class-2 white
+2029-08-15 wednesday time-after-pentecost 12 assumption-of-the-blessed-virgin-mary class-1 white
+2029-08-16 thursday time-after-pentecost 12 joachim-father-of-the-blessed-virgin class-2 white
+2029-08-17 friday time-after-pentecost 12 hyacinth class-3 white
+2029-08-18 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +agapitus
+2029-08-19 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +john-eudes
+2029-08-20 monday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2029-08-21 tuesday time-after-pentecost 13 jane-frances-de-chantal class-3 white
+2029-08-22 wednesday time-after-pentecost 13 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2029-08-23 thursday time-after-pentecost 13 philip-benizi class-3 white
+2029-08-24 friday time-after-pentecost 13 bartholomew class-2 red
+2029-08-25 saturday time-after-pentecost 13 louis-ix class-3 white
+2029-08-26 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +zephyrinus
+2029-08-27 monday time-after-pentecost 14 joseph-calasance class-3 white
+2029-08-28 tuesday time-after-pentecost 14 augustine class-3 red +hermes
+2029-08-29 wednesday time-after-pentecost 14 beheading-of-st-john-the-baptist class-3 red +sabina
+2029-08-30 thursday time-after-pentecost 14 rose-of-lima class-3 red +sts-felix-and-adauctus
+2029-08-31 friday time-after-pentecost 14 raymond-nonnatus class-3 white
+2029-09-01 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +giles +twelve-holy-brothers-martyrs
+2029-09-02 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +stephen-of-hungary
+2029-09-03 monday time-after-pentecost 15 pius-x class-3 white
+2029-09-04 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green
+2029-09-05 wednesday time-after-pentecost 15 lawrence-justinian class-3 white
+2029-09-06 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green
+2029-09-07 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green
+2029-09-08 saturday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2029-09-09 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +gorgonius
+2029-09-10 monday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2029-09-11 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +sts-protus-hyacinth
+2029-09-12 wednesday time-after-pentecost 16 most-holy-name-of-mary class-3 white
+2029-09-13 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green
+2029-09-14 friday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2029-09-15 saturday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2029-09-16 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-cornelius-cyprian +sts-euphemia-lucy-and-geminianus
+2029-09-17 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +stigmata-of-st-francis
+2029-09-18 tuesday time-after-pentecost 17 joseph-of-cupertino class-3 white
+2029-09-19 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +januarius-companions
+2029-09-20 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +sts-eustace-companions
+2029-09-21 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet +matthew
+2029-09-22 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2029-09-23 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +linus +thecla
+2029-09-24 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +our-lady-of-ransom
+2029-09-25 tuesday time-after-pentecost 18 ef-time-after-pentecost-18-tuesday class-4 green
+2029-09-26 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green +sts-cyprian-justina
+2029-09-27 thursday time-after-pentecost 18 sts-cosmas-damian class-3 red
+2029-09-28 friday time-after-pentecost 18 wenceslaus class-3 red
+2029-09-29 saturday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2029-09-30 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +jerome
+2029-10-01 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +remigius
+2029-10-02 tuesday time-after-pentecost 19 holy-guardian-angels class-3 white
+2029-10-03 wednesday time-after-pentecost 19 theresa-of-the-infant-jesus class-3 white
+2029-10-04 thursday time-after-pentecost 19 francis-of-assisi class-3 white
+2029-10-05 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +placid-companions
+2029-10-06 saturday time-after-pentecost 19 bruno class-3 white
+2029-10-07 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +our-lady-of-the-rosary +mark-i
+2029-10-08 monday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2029-10-09 tuesday time-after-pentecost 20 john-leonardi class-3 white +dionysius-and-companions
+2029-10-10 wednesday time-after-pentecost 20 francis-borgia class-3 white
+2029-10-11 thursday time-after-pentecost 20 maternity-of-the-blessed-virgin-mary class-2 white
+2029-10-12 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2029-10-13 saturday time-after-pentecost 20 edward class-3 white
+2029-10-14 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +callistus-i
+2029-10-15 monday time-after-pentecost 21 teresa-of-avila class-3 white
+2029-10-16 tuesday time-after-pentecost 21 hedwig class-3 white
+2029-10-17 wednesday time-after-pentecost 21 margaret-mary-alacoque class-3 white
+2029-10-18 thursday time-after-pentecost 21 luke-the-evangelist class-2 red
+2029-10-19 friday time-after-pentecost 21 peter-of-alcantara class-3 white
+2029-10-20 saturday time-after-pentecost 21 john-cantius class-3 white
+2029-10-21 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +hilarion +ursula-and-companions
+2029-10-22 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2029-10-23 tuesday time-after-pentecost 22 anthony-mary-claret class-3 white
+2029-10-24 wednesday time-after-pentecost 22 raphael-the-archangel class-3 white
+2029-10-25 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green +sts-chrysanthus-daria
+2029-10-26 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2029-10-27 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2029-10-28 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-simon-jude
+2029-10-29 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2029-10-30 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2029-10-31 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2029-11-01 thursday time-after-pentecost 23 all-saints class-1 white
+2029-11-02 friday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2029-11-03 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2029-11-04 sunday time-after-pentecost 4 ef-time-after-epiphany-sunday-4 class-2 green +charles-borromeo +sts-vitalis-and-agricola-martyrs
+2029-11-05 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green
+2029-11-06 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green
+2029-11-07 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2029-11-08 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green +four-holy-crowned-martyrs
+2029-11-09 friday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2029-11-10 saturday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2029-11-11 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-of-tours +menna
+2029-11-12 monday time-after-pentecost 25 martin-i class-3 red
+2029-11-13 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green +didacus
+2029-11-14 wednesday time-after-pentecost 25 josaphat class-3 white
+2029-11-15 thursday time-after-pentecost 25 albert-the-great class-3 white
+2029-11-16 friday time-after-pentecost 25 gertrude-the-great class-3 white
+2029-11-17 saturday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2029-11-18 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +dedication-of-the-basilicas-of-sts-peter-paul
+2029-11-19 monday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2029-11-20 tuesday time-after-pentecost 26 felix-of-valois class-3 white
+2029-11-21 wednesday time-after-pentecost 26 presentation-of-the-blessed-virgin-mary class-3 white
+2029-11-22 thursday time-after-pentecost 26 cecilia class-3 red
+2029-11-23 friday time-after-pentecost 26 clement-i class-3 red +felicity
+2029-11-24 saturday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2029-11-25 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +catherine-of-alexandria
+2029-11-26 monday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2029-11-27 tuesday time-after-pentecost 27 ef-time-after-pentecost-27-tuesday class-4 green
+2029-11-28 wednesday time-after-pentecost 27 ef-time-after-pentecost-27-wednesday class-4 green
+2029-11-29 thursday time-after-pentecost 27 ef-time-after-pentecost-27-thursday class-4 green +saturninus
+2029-11-30 friday time-after-pentecost 27 andrew class-2 red
+2029-12-01 saturday time-after-pentecost 27 ef-time-after-pentecost-27-saturday class-4 green
+2029-12-02 sunday advent 1 ef-advent-sunday-1 class-1 violet +vivian
+2029-12-03 monday advent 1 francis-xavier class-3 white
+2029-12-04 tuesday advent 1 peter-chrysologus class-3 white
+2029-12-05 wednesday advent 1 ef-advent-1-wednesday class-3 violet +sabbas
+2029-12-06 thursday advent 1 nicholas class-3 white
+2029-12-07 friday advent 1 ambrose class-3 white
+2029-12-08 saturday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2029-12-09 sunday advent 2 ef-advent-sunday-2 class-2 violet
+2029-12-10 monday advent 2 ef-advent-2-monday class-3 violet +melchiades
+2029-12-11 tuesday advent 2 damasus-i class-3 white
+2029-12-12 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2029-12-13 thursday advent 2 lucy class-3 red
+2029-12-14 friday advent 2 ef-advent-2-friday class-3 violet
+2029-12-15 saturday advent 2 ef-advent-2-saturday class-3 violet
+2029-12-16 sunday advent 3 ef-advent-sunday-3 class-2 violet +eusebius
+2029-12-17 monday advent 3 ef-advent-3-monday class-3 violet
+2029-12-18 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2029-12-19 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2029-12-20 thursday advent 3 ef-advent-3-thursday class-3 violet
+2029-12-21 friday advent 3 ef-advent-ember-fri class-2 violet +thomas
+2029-12-22 saturday advent 3 ef-advent-ember-sat class-2 violet
+2029-12-23 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2029-12-24 monday advent 4 vigil-of-christmas class-1 violet
+2029-12-25 tuesday christmas - ef-nativity class-1 white
+2029-12-26 wednesday christmas - stephen class-2 red
+2029-12-27 thursday christmas - john-the-evangelist class-2 white
+2029-12-28 friday christmas - holy-innocents class-2 red
+2029-12-29 saturday christmas - ef-christmas-0-saturday class-4 white +thomas-becket
+2029-12-30 sunday christmas - ef-christmas-sunday-0 class-2 white
+2029-12-31 monday christmas - ef-christmas-0-monday class-4 white +silvester
+2030-01-01 tuesday christmas - ef-circumcision class-1 white
+2030-01-02 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2030-01-03 thursday christmas - ef-christmas-0-thursday class-4 white
+2030-01-04 friday christmas - ef-christmas-0-friday class-4 white
+2030-01-05 saturday christmas - ef-christmas-0-saturday class-4 white +telesphorus-pope-and-martyr
+2030-01-06 sunday time-after-epiphany - ef-epiphany class-1 white
+2030-01-07 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2030-01-08 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2030-01-09 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2030-01-10 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2030-01-11 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green +hyginus-pope-and-martyr
+2030-01-12 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2030-01-13 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +commemoration-of-the-baptism-of-the-lord
+2030-01-14 monday time-after-epiphany 2 hilary class-3 white +felicis
+2030-01-15 tuesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2030-01-16 wednesday time-after-epiphany 2 marcellus-i class-3 red
+2030-01-17 thursday time-after-epiphany 2 anthony class-3 white
+2030-01-18 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +prisca
+2030-01-19 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2030-01-20 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-fabian-sebastian
+2030-01-21 monday time-after-epiphany 3 agnes class-3 red
+2030-01-22 tuesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2030-01-23 wednesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2030-01-24 thursday time-after-epiphany 3 timothy class-3 red
+2030-01-25 friday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2030-01-26 saturday time-after-epiphany 3 polycarp class-3 red
+2030-01-27 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +john-chrysostom
+2030-01-28 monday time-after-epiphany 4 peter-nolasco class-3 white
+2030-01-29 tuesday time-after-epiphany 4 francis-de-sales class-3 white
+2030-01-30 wednesday time-after-epiphany 4 martina class-3 red
+2030-01-31 thursday time-after-epiphany 4 john-bosco class-3 white
+2030-02-01 friday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2030-02-02 saturday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2030-02-03 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +blaise
+2030-02-04 monday time-after-epiphany 5 andrew-corsini class-3 white
+2030-02-05 tuesday time-after-epiphany 5 agatha class-3 red
+2030-02-06 wednesday time-after-epiphany 5 titus class-3 white +dorothy
+2030-02-07 thursday time-after-epiphany 5 romuald class-3 white
+2030-02-08 friday time-after-epiphany 5 john-of-matha class-3 white
+2030-02-09 saturday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2030-02-10 sunday time-after-epiphany 6 ef-time-after-epiphany-sunday-6 class-2 green +scholastica
+2030-02-11 monday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2030-02-12 tuesday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2030-02-13 wednesday time-after-epiphany 6 ef-time-after-epiphany-6-wednesday class-4 green
+2030-02-14 thursday time-after-epiphany 6 ef-time-after-epiphany-6-thursday class-4 green +valentine
+2030-02-15 friday time-after-epiphany 6 ef-time-after-epiphany-6-friday class-4 green +sts-faustinus-jovita
+2030-02-16 saturday time-after-epiphany 6 ef-time-after-epiphany-6-saturday class-4 green
+2030-02-17 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2030-02-18 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +simeon
+2030-02-19 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet
+2030-02-20 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2030-02-21 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2030-02-22 friday septuagesima 1 chair-of-st-peter class-2 white +paul
+2030-02-23 saturday septuagesima 1 peter-damien class-3 white
+2030-02-24 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +matthias
+2030-02-25 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2030-02-26 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2030-02-27 wednesday septuagesima 2 gabriel-of-our-lady-of-sorrows class-3 white
+2030-02-28 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2030-03-01 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2030-03-02 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2030-03-03 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2030-03-04 monday septuagesima 3 casimir class-3 white +lucius
+2030-03-05 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2030-03-06 wednesday lent - ef-ash-wednesday class-1 violet +sts-felicitas-perpetua
+2030-03-07 thursday lent - ef-lent-after-ashes-thursday class-3 violet +thomas-aquinas
+2030-03-08 friday lent - ef-lent-after-ashes-friday class-3 violet +john-of-god
+2030-03-09 saturday lent - ef-lent-after-ashes-saturday class-3 violet +frances-rome
+2030-03-10 sunday lent 1 ef-lent-sunday-1 class-2 violet +forty-holy-martyrs-of-sebaste
+2030-03-11 monday lent 1 ef-lent-1-monday class-3 violet
+2030-03-12 tuesday lent 1 ef-lent-1-tuesday class-3 violet +gregory-the-great
+2030-03-13 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2030-03-14 thursday lent 1 ef-lent-1-thursday class-3 violet
+2030-03-15 friday lent 1 ef-lent-1-friday class-3 violet
+2030-03-16 saturday lent 1 ef-lent-1-saturday class-3 violet
+2030-03-17 sunday lent 2 ef-lent-sunday-2 class-2 violet +patrick
+2030-03-18 monday lent 2 ef-lent-2-monday class-3 violet +cyril-of-jerusalem
+2030-03-19 tuesday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2030-03-20 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2030-03-21 thursday lent 2 ef-lent-2-thursday class-3 violet +benedict
+2030-03-22 friday lent 2 ef-lent-2-friday class-3 violet
+2030-03-23 saturday lent 2 ef-lent-2-saturday class-3 violet
+2030-03-24 sunday lent 3 ef-lent-sunday-3 class-2 violet +gabriel-the-archangel
+2030-03-25 monday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2030-03-26 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2030-03-27 wednesday lent 3 ef-lent-3-wednesday class-3 violet +john-damascene
+2030-03-28 thursday lent 3 ef-lent-3-thursday class-3 violet +john-of-capistrano
+2030-03-29 friday lent 3 ef-lent-3-friday class-3 violet
+2030-03-30 saturday lent 3 ef-lent-3-saturday class-3 violet
+2030-03-31 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2030-04-01 monday lent 4 ef-lent-4-monday class-3 violet
+2030-04-02 tuesday lent 4 ef-lent-4-tuesday class-3 violet +francis-of-paola
+2030-04-03 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2030-04-04 thursday lent 4 ef-lent-4-thursday class-3 violet +isidore-of-seville
+2030-04-05 friday lent 4 ef-lent-4-friday class-3 violet +vincent-ferrer
+2030-04-06 saturday lent 4 ef-lent-4-saturday class-3 violet
+2030-04-07 sunday passiontide 1 ef-passion-sunday class-1 violet
+2030-04-08 monday passiontide - ef-passiontide-0-monday class-3 violet
+2030-04-09 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2030-04-10 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2030-04-11 thursday passiontide - ef-passiontide-0-thursday class-3 violet +leo-the-great
+2030-04-12 friday passiontide - ef-passiontide-0-friday class-3 violet
+2030-04-13 saturday passiontide - ef-passiontide-0-saturday class-3 violet +hermenegild
+2030-04-14 sunday passiontide 2 ef-palm-sunday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2030-04-15 monday passiontide - ef-passiontide-0-monday class-1 violet
+2030-04-16 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2030-04-17 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +anicetus
+2030-04-18 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2030-04-19 friday passiontide - ef-passiontide-0-friday class-1 violet
+2030-04-20 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2030-04-21 sunday easter 1 ef-easter-sunday class-1 white +anselm
+2030-04-22 monday easter 1 ef-easter-1-monday class-1 white +sts-soter-caius
+2030-04-23 tuesday easter 1 ef-easter-1-tuesday class-1 white +george
+2030-04-24 wednesday easter 1 ef-easter-1-wednesday class-1 white +fidelis-of-sigmaringen
+2030-04-25 thursday easter 1 ef-easter-1-thursday class-1 white +mark
+2030-04-26 friday easter 1 ef-easter-1-friday class-1 white +sts-cletus-marcellinus
+2030-04-27 saturday easter 1 ef-easter-1-saturday class-1 white +peter-canisius
+2030-04-28 sunday easter 2 ef-low-sunday class-1 white +paul-of-the-cross
+2030-04-29 monday easter 2 peter-of-verona class-3 red
+2030-04-30 tuesday easter 2 catherine-of-siena class-3 white
+2030-05-01 wednesday easter 2 joseph-the-workman class-1 white
+2030-05-02 thursday easter 2 athanasius class-3 white
+2030-05-03 friday easter 2 ef-easter-2-friday class-4 white +sts-alexander-companions
+2030-05-04 saturday easter 2 monica class-3 white
+2030-05-05 sunday easter 3 ef-easter-sunday-3 class-2 white +pius-v
+2030-05-06 monday easter 3 ef-easter-3-monday class-4 white
+2030-05-07 tuesday easter 3 stanislaus class-3 red
+2030-05-08 wednesday easter 3 ef-easter-3-wednesday class-4 white
+2030-05-09 thursday easter 3 gregory-of-nazianzen class-3 white
+2030-05-10 friday easter 3 antoninus class-3 white +gordiano-and-epimacho
+2030-05-11 saturday easter 3 sts-philip-james class-2 red
+2030-05-12 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-nereus-achilleus-domitilla-pancras
+2030-05-13 monday easter 4 robert-bellarmine class-3 white
+2030-05-14 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2030-05-15 wednesday easter 4 john-baptist-de-la-salle class-3 white
+2030-05-16 thursday easter 4 ef-easter-4-thursday class-4 white +ubaldus
+2030-05-17 friday easter 4 paschal-baylon class-3 white
+2030-05-18 saturday easter 4 venantius class-3 red
+2030-05-19 sunday easter 5 ef-easter-sunday-5 class-2 white +peter-celestine +pudentiana-virginis
+2030-05-20 monday easter 5 bernardine-of-siena class-3 white
+2030-05-21 tuesday easter 5 ef-easter-5-tuesday class-4 white
+2030-05-22 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2030-05-23 thursday easter 5 ef-easter-5-thursday class-4 white
+2030-05-24 friday easter 5 ef-easter-5-friday class-4 white
+2030-05-25 saturday easter 5 gregory-vii class-3 white +urban-pope-and-martyr
+2030-05-26 sunday easter 6 ef-easter-sunday-6 class-2 white +philip-neri +eleutherius
+2030-05-27 monday easter 6 bede-the-venerable class-3 white +john-i
+2030-05-28 tuesday easter 6 augustine-of-canterbury class-3 white
+2030-05-29 wednesday easter - ef-ascension-vigil class-2 white +mary-magdalene-de-pazzi
+2030-05-30 thursday easter - ef-ascension class-1 white +felix-i
+2030-05-31 friday easter 6 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2030-06-01 saturday easter 6 angela-merici class-3 white
+2030-06-02 sunday easter 7 ef-easter-sunday-7 class-2 white +sts-marcellinus-peter-erasmus
+2030-06-03 monday easter 7 ef-easter-7-monday class-4 white
+2030-06-04 tuesday easter 7 francis-caracciolo class-3 white
+2030-06-05 wednesday easter 7 boniface class-3 red
+2030-06-06 thursday easter 7 norbert class-3 white
+2030-06-07 friday easter 7 ef-easter-7-friday class-4 white
+2030-06-08 saturday easter - ef-pentecost-vigil class-1 red
+2030-06-09 sunday easter - ef-pentecost class-1 red +sts-primus-felicianus
+2030-06-10 monday easter 8 ef-easter-8-monday class-1 red +margaret-of-scotland
+2030-06-11 tuesday easter 8 ef-easter-8-tuesday class-1 red +barnabas
+2030-06-12 wednesday easter 8 ef-easter-8-wednesday class-1 red +john-of-san-fecundo +basilidus
+2030-06-13 thursday easter 8 ef-easter-8-thursday class-1 red +anthony-of-padua
+2030-06-14 friday easter 8 ef-easter-8-friday class-1 red +basil-the-great
+2030-06-15 saturday easter 8 ef-easter-8-saturday class-1 red +vitus
+2030-06-16 sunday time-after-pentecost 1 ef-trinity class-1 white
+2030-06-17 monday time-after-pentecost 1 gregory-barbarigo class-3 white
+2030-06-18 tuesday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2030-06-19 wednesday time-after-pentecost 1 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2030-06-20 thursday time-after-pentecost - ef-corpus-christi class-1 white +silverius
+2030-06-21 friday time-after-pentecost 1 aloysius-gongzaga class-3 white
+2030-06-22 saturday time-after-pentecost 1 paulinus-of-nola class-3 white
+2030-06-23 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +vigil-of-the-nativity-of-st-john-the-baptist
+2030-06-24 monday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2030-06-25 tuesday time-after-pentecost 2 william class-3 white
+2030-06-26 wednesday time-after-pentecost 2 sts-john-paul class-3 red
+2030-06-27 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2030-06-28 friday time-after-pentecost - ef-sacred-heart class-1 white +vigil-of-sts-peter-paul
+2030-06-29 saturday time-after-pentecost 2 sts-peter-paul class-1 red
+2030-06-30 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +in-commemoratione-sancti-pauli-apostoli
+2030-07-01 monday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2030-07-02 tuesday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2030-07-03 wednesday time-after-pentecost 3 irenaeus class-3 red
+2030-07-04 thursday time-after-pentecost 3 ef-time-after-pentecost-3-thursday class-4 green
+2030-07-05 friday time-after-pentecost 3 anthony-mary-zaccariah class-3 white
+2030-07-06 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2030-07-07 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +sts-cyril-methodius
+2030-07-08 monday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2030-07-09 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2030-07-10 wednesday time-after-pentecost 4 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2030-07-11 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green +pius-i
+2030-07-12 friday time-after-pentecost 4 john-gualbert class-3 red +naboris-et-felicis
+2030-07-13 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2030-07-14 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +bonaventure
+2030-07-15 monday time-after-pentecost 5 henry-the-emperor class-3 white
+2030-07-16 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green +our-lady-of-mt-carmel
+2030-07-17 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green +alexis
+2030-07-18 thursday time-after-pentecost 5 camillus-de-lellis class-3 red +symphorosa-and-sons
+2030-07-19 friday time-after-pentecost 5 vincent-de-paul class-3 white
+2030-07-20 saturday time-after-pentecost 5 jerome-emiliani class-3 red +margaret
+2030-07-21 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +laurence-of-brindisi +praxedis-virginis
+2030-07-22 monday time-after-pentecost 6 mary-magdalene class-3 white
+2030-07-23 tuesday time-after-pentecost 6 apollinaris class-3 white +liborii
+2030-07-24 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +christina
+2030-07-25 thursday time-after-pentecost 6 james-the-greater class-2 red +christopher
+2030-07-26 friday time-after-pentecost 6 anne-mother-of-the-blessed-virgin class-2 white
+2030-07-27 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +pantaleon
+2030-07-28 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +sts-nazarius-celsus-st-victor-i-st-innocent-i
+2030-07-29 monday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2030-07-30 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green +sts-abdon-sennen
+2030-07-31 wednesday time-after-pentecost 7 ignatius-loyola class-3 white
+2030-08-01 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +holy-machabees
+2030-08-02 friday time-after-pentecost 7 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2030-08-03 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green
+2030-08-04 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +dominic
+2030-08-05 monday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2030-08-06 tuesday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2030-08-07 wednesday time-after-pentecost 8 cajetan class-3 white +donatus
+2030-08-08 thursday time-after-pentecost 8 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2030-08-09 friday time-after-pentecost 8 vigil-of-st-lawrence class-3 red +romanus
+2030-08-10 saturday time-after-pentecost 8 lawrence class-2 red
+2030-08-11 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +sts-tiburtius-susanna
+2030-08-12 monday time-after-pentecost 9 clare class-3 white
+2030-08-13 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +sts-hippolytus-cassian
+2030-08-14 wednesday time-after-pentecost 9 vigil-of-the-assumption class-2 white
+2030-08-15 thursday time-after-pentecost 9 assumption-of-the-blessed-virgin-mary class-1 white
+2030-08-16 friday time-after-pentecost 9 joachim-father-of-the-blessed-virgin class-2 white
+2030-08-17 saturday time-after-pentecost 9 hyacinth class-3 white
+2030-08-18 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +agapitus
+2030-08-19 monday time-after-pentecost 10 john-eudes class-3 white
+2030-08-20 tuesday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2030-08-21 wednesday time-after-pentecost 10 jane-frances-de-chantal class-3 white
+2030-08-22 thursday time-after-pentecost 10 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2030-08-23 friday time-after-pentecost 10 philip-benizi class-3 white
+2030-08-24 saturday time-after-pentecost 10 bartholomew class-2 red
+2030-08-25 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +louis-ix
+2030-08-26 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +zephyrinus
+2030-08-27 tuesday time-after-pentecost 11 joseph-calasance class-3 white
+2030-08-28 wednesday time-after-pentecost 11 augustine class-3 red +hermes
+2030-08-29 thursday time-after-pentecost 11 beheading-of-st-john-the-baptist class-3 red +sabina
+2030-08-30 friday time-after-pentecost 11 rose-of-lima class-3 red +sts-felix-and-adauctus
+2030-08-31 saturday time-after-pentecost 11 raymond-nonnatus class-3 white
+2030-09-01 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +giles +twelve-holy-brothers-martyrs
+2030-09-02 monday time-after-pentecost 12 stephen-of-hungary class-3 white
+2030-09-03 tuesday time-after-pentecost 12 pius-x class-3 white
+2030-09-04 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green
+2030-09-05 thursday time-after-pentecost 12 lawrence-justinian class-3 white
+2030-09-06 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green
+2030-09-07 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green
+2030-09-08 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +nativity-of-the-blessed-virgin-mary +hadriani
+2030-09-09 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green +gorgonius
+2030-09-10 tuesday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2030-09-11 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +sts-protus-hyacinth
+2030-09-12 thursday time-after-pentecost 13 most-holy-name-of-mary class-3 white
+2030-09-13 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green
+2030-09-14 saturday time-after-pentecost 13 exaltation-of-the-holy-cross class-2 red
+2030-09-15 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +seven-sorrows-of-the-blessed-virgin-mary +nicomedes
+2030-09-16 monday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2030-09-17 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +stigmata-of-st-francis
+2030-09-18 wednesday time-after-pentecost 14 ef-september-ember-wed class-2 violet +joseph-of-cupertino
+2030-09-19 thursday time-after-pentecost 14 januarius-companions class-3 red
+2030-09-20 friday time-after-pentecost 14 ef-september-ember-fri class-2 violet +sts-eustace-companions
+2030-09-21 saturday time-after-pentecost 14 ef-september-ember-sat class-2 violet +matthew
+2030-09-22 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +thomas-of-villanova +maurice-and-companions-martyrs
+2030-09-23 monday time-after-pentecost 15 linus class-3 red +thecla
+2030-09-24 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +our-lady-of-ransom
+2030-09-25 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green
+2030-09-26 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +sts-cyprian-justina
+2030-09-27 friday time-after-pentecost 15 sts-cosmas-damian class-3 red
+2030-09-28 saturday time-after-pentecost 15 wenceslaus class-3 red
+2030-09-29 sunday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2030-09-30 monday time-after-pentecost 16 jerome class-3 white
+2030-10-01 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +remigius
+2030-10-02 wednesday time-after-pentecost 16 holy-guardian-angels class-3 white
+2030-10-03 thursday time-after-pentecost 16 theresa-of-the-infant-jesus class-3 white
+2030-10-04 friday time-after-pentecost 16 francis-of-assisi class-3 white
+2030-10-05 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +placid-companions
+2030-10-06 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +bruno
+2030-10-07 monday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2030-10-08 tuesday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2030-10-09 wednesday time-after-pentecost 17 john-leonardi class-3 white +dionysius-and-companions
+2030-10-10 thursday time-after-pentecost 17 francis-borgia class-3 white
+2030-10-11 friday time-after-pentecost 17 maternity-of-the-blessed-virgin-mary class-2 white
+2030-10-12 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green
+2030-10-13 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +edward
+2030-10-14 monday time-after-pentecost 18 callistus-i class-3 red
+2030-10-15 tuesday time-after-pentecost 18 teresa-of-avila class-3 white
+2030-10-16 wednesday time-after-pentecost 18 hedwig class-3 white
+2030-10-17 thursday time-after-pentecost 18 margaret-mary-alacoque class-3 white
+2030-10-18 friday time-after-pentecost 18 luke-the-evangelist class-2 red
+2030-10-19 saturday time-after-pentecost 18 peter-of-alcantara class-3 white
+2030-10-20 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +john-cantius
+2030-10-21 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +hilarion +ursula-and-companions
+2030-10-22 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green
+2030-10-23 wednesday time-after-pentecost 19 anthony-mary-claret class-3 white
+2030-10-24 thursday time-after-pentecost 19 raphael-the-archangel class-3 white
+2030-10-25 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +sts-chrysanthus-daria
+2030-10-26 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green
+2030-10-27 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2030-10-28 monday time-after-pentecost 20 sts-simon-jude class-2 red
+2030-10-29 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green
+2030-10-30 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2030-10-31 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2030-11-01 friday time-after-pentecost 20 all-saints class-1 white
+2030-11-02 saturday time-after-pentecost 20 commemoration-of-all-souls class-1 black
+2030-11-03 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2030-11-04 monday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2030-11-05 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2030-11-06 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2030-11-07 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2030-11-08 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green +four-holy-crowned-martyrs
+2030-11-09 saturday time-after-pentecost 21 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2030-11-10 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +andrew-avellino +sts-tryphonis-respicii-et-nymphae
+2030-11-11 monday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2030-11-12 tuesday time-after-pentecost 22 martin-i class-3 red
+2030-11-13 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green +didacus
+2030-11-14 thursday time-after-pentecost 22 josaphat class-3 white
+2030-11-15 friday time-after-pentecost 22 albert-the-great class-3 white
+2030-11-16 saturday time-after-pentecost 22 gertrude-the-great class-3 white
+2030-11-17 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +gregory-the-wonderworker
+2030-11-18 monday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2030-11-19 tuesday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2030-11-20 wednesday time-after-pentecost 23 felix-of-valois class-3 white
+2030-11-21 thursday time-after-pentecost 23 presentation-of-the-blessed-virgin-mary class-3 white
+2030-11-22 friday time-after-pentecost 23 cecilia class-3 red
+2030-11-23 saturday time-after-pentecost 23 clement-i class-3 red +felicity
+2030-11-24 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +john-of-the-cross +chrysogonus
+2030-11-25 monday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2030-11-26 tuesday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2030-11-27 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2030-11-28 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2030-11-29 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +saturninus
+2030-11-30 saturday time-after-pentecost 24 andrew class-2 red
+2030-12-01 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2030-12-02 monday advent 1 vivian class-3 red
+2030-12-03 tuesday advent 1 francis-xavier class-3 white
+2030-12-04 wednesday advent 1 peter-chrysologus class-3 white
+2030-12-05 thursday advent 1 ef-advent-1-thursday class-3 violet +sabbas
+2030-12-06 friday advent 1 nicholas class-3 white
+2030-12-07 saturday advent 1 ambrose class-3 white
+2030-12-08 sunday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2030-12-09 monday advent 2 ef-advent-2-monday class-3 violet
+2030-12-10 tuesday advent 2 ef-advent-2-tuesday class-3 violet +melchiades
+2030-12-11 wednesday advent 2 damasus-i class-3 white
+2030-12-12 thursday advent 2 ef-advent-2-thursday class-3 violet
+2030-12-13 friday advent 2 lucy class-3 red
+2030-12-14 saturday advent 2 ef-advent-2-saturday class-3 violet
+2030-12-15 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2030-12-16 monday advent 3 eusebius class-3 red
+2030-12-17 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2030-12-18 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2030-12-19 thursday advent 3 ef-advent-3-thursday class-3 violet
+2030-12-20 friday advent 3 ef-advent-ember-fri class-2 violet
+2030-12-21 saturday advent 3 ef-advent-ember-sat class-2 violet +thomas
+2030-12-22 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2030-12-23 monday advent 4 ef-advent-4-monday class-3 violet
+2030-12-24 tuesday advent 4 vigil-of-christmas class-1 violet
+2030-12-25 wednesday christmas - ef-nativity class-1 white
+2030-12-26 thursday christmas - stephen class-2 red
+2030-12-27 friday christmas - john-the-evangelist class-2 white
+2030-12-28 saturday christmas - holy-innocents class-2 red
+2030-12-29 sunday christmas - ef-christmas-sunday-0 class-2 white +thomas-becket
+2030-12-30 monday christmas - ef-christmas-0-monday class-4 white
+2030-12-31 tuesday christmas - ef-christmas-0-tuesday class-4 white +silvester
+2031-01-01 wednesday christmas - ef-circumcision class-1 white
+2031-01-02 thursday christmas - ef-christmas-0-thursday class-4 white
+2031-01-03 friday christmas - ef-christmas-0-friday class-4 white
+2031-01-04 saturday christmas - ef-christmas-0-saturday class-4 white
+2031-01-05 sunday christmas - ef-christmas-sunday-0 class-2 white +telesphorus-pope-and-martyr
+2031-01-06 monday time-after-epiphany - ef-epiphany class-1 white
+2031-01-07 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2031-01-08 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2031-01-09 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2031-01-10 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2031-01-11 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green +hyginus-pope-and-martyr
+2031-01-12 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2031-01-13 monday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2031-01-14 tuesday time-after-epiphany 2 hilary class-3 white +felicis
+2031-01-15 wednesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2031-01-16 thursday time-after-epiphany 2 marcellus-i class-3 red
+2031-01-17 friday time-after-epiphany 2 anthony class-3 white
+2031-01-18 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +prisca
+2031-01-19 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +canute-martyr +sts-marius-martha-audifax-abachum
+2031-01-20 monday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2031-01-21 tuesday time-after-epiphany 3 agnes class-3 red
+2031-01-22 wednesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2031-01-23 thursday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2031-01-24 friday time-after-epiphany 3 timothy class-3 red
+2031-01-25 saturday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2031-01-26 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +polycarp
+2031-01-27 monday time-after-epiphany 4 john-chrysostom class-3 white
+2031-01-28 tuesday time-after-epiphany 4 peter-nolasco class-3 white
+2031-01-29 wednesday time-after-epiphany 4 francis-de-sales class-3 white
+2031-01-30 thursday time-after-epiphany 4 martina class-3 red
+2031-01-31 friday time-after-epiphany 4 john-bosco class-3 white
+2031-02-01 saturday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2031-02-02 sunday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2031-02-03 monday time-after-epiphany 5 ef-time-after-epiphany-5-monday class-4 green +blaise
+2031-02-04 tuesday time-after-epiphany 5 andrew-corsini class-3 white
+2031-02-05 wednesday time-after-epiphany 5 agatha class-3 red
+2031-02-06 thursday time-after-epiphany 5 titus class-3 white +dorothy
+2031-02-07 friday time-after-epiphany 5 romuald class-3 white
+2031-02-08 saturday time-after-epiphany 5 john-of-matha class-3 white
+2031-02-09 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +cyril-of-alexandria +appollonia
+2031-02-10 monday septuagesima 1 scholastica class-3 white
+2031-02-11 tuesday septuagesima 1 our-lady-of-lourdes class-3 white
+2031-02-12 wednesday septuagesima 1 seven-holy-servite-founders class-3 white
+2031-02-13 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2031-02-14 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet +valentine
+2031-02-15 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet +sts-faustinus-jovita
+2031-02-16 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2031-02-17 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2031-02-18 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +simeon
+2031-02-19 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2031-02-20 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2031-02-21 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2031-02-22 saturday septuagesima 2 chair-of-st-peter class-2 white +paul
+2031-02-23 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +peter-damien
+2031-02-24 monday septuagesima 3 matthias class-2 red
+2031-02-25 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2031-02-26 wednesday lent - ef-ash-wednesday class-1 violet
+2031-02-27 thursday lent - ef-lent-after-ashes-thursday class-3 violet +gabriel-of-our-lady-of-sorrows
+2031-02-28 friday lent - ef-lent-after-ashes-friday class-3 violet
+2031-03-01 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2031-03-02 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2031-03-03 monday lent 1 ef-lent-1-monday class-3 violet
+2031-03-04 tuesday lent 1 ef-lent-1-tuesday class-3 violet +casimir +lucius
+2031-03-05 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2031-03-06 thursday lent 1 ef-lent-1-thursday class-3 violet +sts-felicitas-perpetua
+2031-03-07 friday lent 1 ef-lent-1-friday class-3 violet +thomas-aquinas
+2031-03-08 saturday lent 1 ef-lent-1-saturday class-3 violet +john-of-god
+2031-03-09 sunday lent 2 ef-lent-sunday-2 class-2 violet +frances-rome
+2031-03-10 monday lent 2 ef-lent-2-monday class-3 violet +forty-holy-martyrs-of-sebaste
+2031-03-11 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2031-03-12 wednesday lent 2 ef-lent-2-wednesday class-3 violet +gregory-the-great
+2031-03-13 thursday lent 2 ef-lent-2-thursday class-3 violet
+2031-03-14 friday lent 2 ef-lent-2-friday class-3 violet
+2031-03-15 saturday lent 2 ef-lent-2-saturday class-3 violet
+2031-03-16 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2031-03-17 monday lent 3 ef-lent-3-monday class-3 violet +patrick
+2031-03-18 tuesday lent 3 ef-lent-3-tuesday class-3 violet +cyril-of-jerusalem
+2031-03-19 wednesday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2031-03-20 thursday lent 3 ef-lent-3-thursday class-3 violet
+2031-03-21 friday lent 3 ef-lent-3-friday class-3 violet +benedict
+2031-03-22 saturday lent 3 ef-lent-3-saturday class-3 violet
+2031-03-23 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2031-03-24 monday lent 4 ef-lent-4-monday class-3 violet +gabriel-the-archangel
+2031-03-25 tuesday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2031-03-26 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2031-03-27 thursday lent 4 ef-lent-4-thursday class-3 violet +john-damascene
+2031-03-28 friday lent 4 ef-lent-4-friday class-3 violet +john-of-capistrano
+2031-03-29 saturday lent 4 ef-lent-4-saturday class-3 violet
+2031-03-30 sunday passiontide 1 ef-passion-sunday class-1 violet
+2031-03-31 monday passiontide - ef-passiontide-0-monday class-3 violet
+2031-04-01 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2031-04-02 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +francis-of-paola
+2031-04-03 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2031-04-04 friday passiontide - ef-passiontide-0-friday class-3 violet +isidore-of-seville
+2031-04-05 saturday passiontide - ef-passiontide-0-saturday class-3 violet +vincent-ferrer
+2031-04-06 sunday passiontide 2 ef-palm-sunday class-1 violet
+2031-04-07 monday passiontide - ef-passiontide-0-monday class-1 violet
+2031-04-08 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2031-04-09 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2031-04-10 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2031-04-11 friday passiontide - ef-passiontide-0-friday class-1 violet +leo-the-great
+2031-04-12 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2031-04-13 sunday easter 1 ef-easter-sunday class-1 white +hermenegild
+2031-04-14 monday easter 1 ef-easter-1-monday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2031-04-15 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2031-04-16 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2031-04-17 thursday easter 1 ef-easter-1-thursday class-1 white +anicetus
+2031-04-18 friday easter 1 ef-easter-1-friday class-1 white
+2031-04-19 saturday easter 1 ef-easter-1-saturday class-1 white
+2031-04-20 sunday easter 2 ef-low-sunday class-1 white
+2031-04-21 monday easter 2 anselm class-3 white
+2031-04-22 tuesday easter 2 sts-soter-caius class-3 red
+2031-04-23 wednesday easter 2 ef-easter-2-wednesday class-4 white +george
+2031-04-24 thursday easter 2 fidelis-of-sigmaringen class-3 red
+2031-04-25 friday easter 2 mark class-2 red
+2031-04-26 saturday easter 2 sts-cletus-marcellinus class-3 red
+2031-04-27 sunday easter 3 ef-easter-sunday-3 class-2 white +peter-canisius
+2031-04-28 monday easter 3 paul-of-the-cross class-3 white
+2031-04-29 tuesday easter 3 peter-of-verona class-3 red
+2031-04-30 wednesday easter 3 catherine-of-siena class-3 white
+2031-05-01 thursday easter 3 joseph-the-workman class-1 white
+2031-05-02 friday easter 3 athanasius class-3 white
+2031-05-03 saturday easter 3 ef-easter-3-saturday class-4 white +sts-alexander-companions
+2031-05-04 sunday easter 4 ef-easter-sunday-4 class-2 white +monica
+2031-05-05 monday easter 4 pius-v class-3 white
+2031-05-06 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2031-05-07 wednesday easter 4 stanislaus class-3 red
+2031-05-08 thursday easter 4 ef-easter-4-thursday class-4 white
+2031-05-09 friday easter 4 gregory-of-nazianzen class-3 white
+2031-05-10 saturday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2031-05-11 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-philip-james
+2031-05-12 monday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2031-05-13 tuesday easter 5 robert-bellarmine class-3 white
+2031-05-14 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2031-05-15 thursday easter 5 john-baptist-de-la-salle class-3 white
+2031-05-16 friday easter 5 ef-easter-5-friday class-4 white +ubaldus
+2031-05-17 saturday easter 5 paschal-baylon class-3 white
+2031-05-18 sunday easter 6 ef-easter-sunday-6 class-2 white +venantius
+2031-05-19 monday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2031-05-20 tuesday easter 6 bernardine-of-siena class-3 white
+2031-05-21 wednesday easter - ef-ascension-vigil class-2 white
+2031-05-22 thursday easter - ef-ascension class-1 white
+2031-05-23 friday easter 6 ef-easter-6-friday class-4 white
+2031-05-24 saturday easter 6 ef-easter-6-saturday class-4 white
+2031-05-25 sunday easter 7 ef-easter-sunday-7 class-2 white +gregory-vii +urban-pope-and-martyr
+2031-05-26 monday easter 7 philip-neri class-3 white +eleutherius
+2031-05-27 tuesday easter 7 bede-the-venerable class-3 white +john-i
+2031-05-28 wednesday easter 7 augustine-of-canterbury class-3 white
+2031-05-29 thursday easter 7 mary-magdalene-de-pazzi class-3 white
+2031-05-30 friday easter 7 ef-easter-7-friday class-4 white +felix-i
+2031-05-31 saturday easter - ef-pentecost-vigil class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2031-06-01 sunday easter - ef-pentecost class-1 red +angela-merici
+2031-06-02 monday easter 8 ef-easter-8-monday class-1 red +sts-marcellinus-peter-erasmus
+2031-06-03 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2031-06-04 wednesday easter 8 ef-easter-8-wednesday class-1 red +francis-caracciolo
+2031-06-05 thursday easter 8 ef-easter-8-thursday class-1 red +boniface
+2031-06-06 friday easter 8 ef-easter-8-friday class-1 red +norbert
+2031-06-07 saturday easter 8 ef-easter-8-saturday class-1 red
+2031-06-08 sunday time-after-pentecost 1 ef-trinity class-1 white
+2031-06-09 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green +sts-primus-felicianus
+2031-06-10 tuesday time-after-pentecost 1 margaret-of-scotland class-3 white
+2031-06-11 wednesday time-after-pentecost 1 barnabas class-3 red
+2031-06-12 thursday time-after-pentecost - ef-corpus-christi class-1 white +john-of-san-fecundo +basilidus
+2031-06-13 friday time-after-pentecost 1 anthony-of-padua class-3 white
+2031-06-14 saturday time-after-pentecost 1 basil-the-great class-3 white
+2031-06-15 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +vitus
+2031-06-16 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2031-06-17 tuesday time-after-pentecost 2 gregory-barbarigo class-3 white
+2031-06-18 wednesday time-after-pentecost 2 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2031-06-19 thursday time-after-pentecost 2 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2031-06-20 friday time-after-pentecost - ef-sacred-heart class-1 white +silverius
+2031-06-21 saturday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2031-06-22 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +paulinus-of-nola
+2031-06-23 monday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2031-06-24 tuesday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2031-06-25 wednesday time-after-pentecost 3 william class-3 white
+2031-06-26 thursday time-after-pentecost 3 sts-john-paul class-3 red
+2031-06-27 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green
+2031-06-28 saturday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2031-06-29 sunday time-after-pentecost 4 sts-peter-paul class-1 red
+2031-06-30 monday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2031-07-01 tuesday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2031-07-02 wednesday time-after-pentecost 4 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2031-07-03 thursday time-after-pentecost 4 irenaeus class-3 red
+2031-07-04 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green
+2031-07-05 saturday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2031-07-06 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2031-07-07 monday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2031-07-08 tuesday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2031-07-09 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2031-07-10 thursday time-after-pentecost 5 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2031-07-11 friday time-after-pentecost 5 ef-time-after-pentecost-5-friday class-4 green +pius-i
+2031-07-12 saturday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2031-07-13 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2031-07-14 monday time-after-pentecost 6 bonaventure class-3 white
+2031-07-15 tuesday time-after-pentecost 6 henry-the-emperor class-3 white
+2031-07-16 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +our-lady-of-mt-carmel
+2031-07-17 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green +alexis
+2031-07-18 friday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2031-07-19 saturday time-after-pentecost 6 vincent-de-paul class-3 white
+2031-07-20 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +jerome-emiliani +margaret
+2031-07-21 monday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2031-07-22 tuesday time-after-pentecost 7 mary-magdalene class-3 white
+2031-07-23 wednesday time-after-pentecost 7 apollinaris class-3 white +liborii
+2031-07-24 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +christina
+2031-07-25 friday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2031-07-26 saturday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2031-07-27 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +pantaleon
+2031-07-28 monday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2031-07-29 tuesday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2031-07-30 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +sts-abdon-sennen
+2031-07-31 thursday time-after-pentecost 8 ignatius-loyola class-3 white
+2031-08-01 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +holy-machabees
+2031-08-02 saturday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2031-08-03 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green
+2031-08-04 monday time-after-pentecost 9 dominic class-3 white
+2031-08-05 tuesday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2031-08-06 wednesday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2031-08-07 thursday time-after-pentecost 9 cajetan class-3 white +donatus
+2031-08-08 friday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2031-08-09 saturday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2031-08-10 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +lawrence
+2031-08-11 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green +sts-tiburtius-susanna
+2031-08-12 tuesday time-after-pentecost 10 clare class-3 white
+2031-08-13 wednesday time-after-pentecost 10 ef-time-after-pentecost-10-wednesday class-4 green +sts-hippolytus-cassian
+2031-08-14 thursday time-after-pentecost 10 vigil-of-the-assumption class-2 white
+2031-08-15 friday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2031-08-16 saturday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2031-08-17 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +hyacinth
+2031-08-18 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +agapitus
+2031-08-19 tuesday time-after-pentecost 11 john-eudes class-3 white
+2031-08-20 wednesday time-after-pentecost 11 bernard-of-clairvaux class-3 white
+2031-08-21 thursday time-after-pentecost 11 jane-frances-de-chantal class-3 white
+2031-08-22 friday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2031-08-23 saturday time-after-pentecost 11 philip-benizi class-3 white
+2031-08-24 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +bartholomew
+2031-08-25 monday time-after-pentecost 12 louis-ix class-3 white
+2031-08-26 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +zephyrinus
+2031-08-27 wednesday time-after-pentecost 12 joseph-calasance class-3 white
+2031-08-28 thursday time-after-pentecost 12 augustine class-3 red +hermes
+2031-08-29 friday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2031-08-30 saturday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2031-08-31 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +raymond-nonnatus
+2031-09-01 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green +giles +twelve-holy-brothers-martyrs
+2031-09-02 tuesday time-after-pentecost 13 stephen-of-hungary class-3 white
+2031-09-03 wednesday time-after-pentecost 13 pius-x class-3 white
+2031-09-04 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green
+2031-09-05 friday time-after-pentecost 13 lawrence-justinian class-3 white
+2031-09-06 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green
+2031-09-07 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green
+2031-09-08 monday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2031-09-09 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +gorgonius
+2031-09-10 wednesday time-after-pentecost 14 nicholas-of-tolentino class-3 white
+2031-09-11 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green +sts-protus-hyacinth
+2031-09-12 friday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2031-09-13 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green
+2031-09-14 sunday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2031-09-15 monday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2031-09-16 tuesday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2031-09-17 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green +stigmata-of-st-francis
+2031-09-18 thursday time-after-pentecost 15 joseph-of-cupertino class-3 white
+2031-09-19 friday time-after-pentecost 15 januarius-companions class-3 red
+2031-09-20 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +sts-eustace-companions
+2031-09-21 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +matthew
+2031-09-22 monday time-after-pentecost 16 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2031-09-23 tuesday time-after-pentecost 16 linus class-3 red +thecla
+2031-09-24 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +our-lady-of-ransom
+2031-09-25 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green
+2031-09-26 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +sts-cyprian-justina
+2031-09-27 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +sts-cosmas-damian
+2031-09-28 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +wenceslaus
+2031-09-29 monday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2031-09-30 tuesday time-after-pentecost 17 jerome class-3 white
+2031-10-01 wednesday time-after-pentecost 17 ef-time-after-pentecost-17-wednesday class-4 green +remigius
+2031-10-02 thursday time-after-pentecost 17 holy-guardian-angels class-3 white
+2031-10-03 friday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2031-10-04 saturday time-after-pentecost 17 francis-of-assisi class-3 white
+2031-10-05 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +placid-companions
+2031-10-06 monday time-after-pentecost 18 bruno class-3 white
+2031-10-07 tuesday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2031-10-08 wednesday time-after-pentecost 18 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2031-10-09 thursday time-after-pentecost 18 john-leonardi class-3 white +dionysius-and-companions
+2031-10-10 friday time-after-pentecost 18 francis-borgia class-3 white
+2031-10-11 saturday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2031-10-12 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green
+2031-10-13 monday time-after-pentecost 19 edward class-3 white
+2031-10-14 tuesday time-after-pentecost 19 callistus-i class-3 red
+2031-10-15 wednesday time-after-pentecost 19 teresa-of-avila class-3 white
+2031-10-16 thursday time-after-pentecost 19 hedwig class-3 white
+2031-10-17 friday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2031-10-18 saturday time-after-pentecost 19 luke-the-evangelist class-2 red
+2031-10-19 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +peter-of-alcantara
+2031-10-20 monday time-after-pentecost 20 john-cantius class-3 white
+2031-10-21 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green +hilarion +ursula-and-companions
+2031-10-22 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2031-10-23 thursday time-after-pentecost 20 anthony-mary-claret class-3 white
+2031-10-24 friday time-after-pentecost 20 raphael-the-archangel class-3 white
+2031-10-25 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green +sts-chrysanthus-daria
+2031-10-26 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2031-10-27 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2031-10-28 tuesday time-after-pentecost 21 sts-simon-jude class-2 red
+2031-10-29 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2031-10-30 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2031-10-31 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2031-11-01 saturday time-after-pentecost 21 all-saints class-1 white
+2031-11-02 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2031-11-03 monday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2031-11-04 tuesday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2031-11-05 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green
+2031-11-06 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2031-11-07 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2031-11-08 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green +four-holy-crowned-martyrs
+2031-11-09 sunday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2031-11-10 monday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2031-11-11 tuesday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2031-11-12 wednesday time-after-pentecost 23 martin-i class-3 red
+2031-11-13 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green +didacus
+2031-11-14 friday time-after-pentecost 23 josaphat class-3 white
+2031-11-15 saturday time-after-pentecost 23 albert-the-great class-3 white
+2031-11-16 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +gertrude-the-great
+2031-11-17 monday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2031-11-18 tuesday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2031-11-19 wednesday time-after-pentecost 24 elizabeth-of-hungary class-3 white +pontian
+2031-11-20 thursday time-after-pentecost 24 felix-of-valois class-3 white
+2031-11-21 friday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2031-11-22 saturday time-after-pentecost 24 cecilia class-3 red
+2031-11-23 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +clement-i +felicity
+2031-11-24 monday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2031-11-25 tuesday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2031-11-26 wednesday time-after-pentecost 25 sylvester class-3 white +peter-of-alexandria
+2031-11-27 thursday time-after-pentecost 25 ef-time-after-pentecost-25-thursday class-4 green
+2031-11-28 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green
+2031-11-29 saturday time-after-pentecost 25 ef-time-after-pentecost-25-saturday class-4 green +saturninus
+2031-11-30 sunday advent 1 ef-advent-sunday-1 class-1 violet +andrew
+2031-12-01 monday advent 1 ef-advent-1-monday class-3 violet
+2031-12-02 tuesday advent 1 vivian class-3 red
+2031-12-03 wednesday advent 1 francis-xavier class-3 white
+2031-12-04 thursday advent 1 peter-chrysologus class-3 white
+2031-12-05 friday advent 1 ef-advent-1-friday class-3 violet +sabbas
+2031-12-06 saturday advent 1 nicholas class-3 white
+2031-12-07 sunday advent 2 ef-advent-sunday-2 class-2 violet +ambrose
+2031-12-08 monday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2031-12-09 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2031-12-10 wednesday advent 2 ef-advent-2-wednesday class-3 violet +melchiades
+2031-12-11 thursday advent 2 damasus-i class-3 white
+2031-12-12 friday advent 2 ef-advent-2-friday class-3 violet
+2031-12-13 saturday advent 2 lucy class-3 red
+2031-12-14 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2031-12-15 monday advent 3 ef-advent-3-monday class-3 violet
+2031-12-16 tuesday advent 3 eusebius class-3 red
+2031-12-17 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2031-12-18 thursday advent 3 ef-advent-3-thursday class-3 violet
+2031-12-19 friday advent 3 ef-advent-ember-fri class-2 violet
+2031-12-20 saturday advent 3 ef-advent-ember-sat class-2 violet
+2031-12-21 sunday advent 4 ef-advent-sunday-4 class-2 violet +thomas
+2031-12-22 monday advent 4 ef-advent-4-monday class-3 violet
+2031-12-23 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2031-12-24 wednesday advent 4 vigil-of-christmas class-1 violet
+2031-12-25 thursday christmas - ef-nativity class-1 white
+2031-12-26 friday christmas - stephen class-2 red
+2031-12-27 saturday christmas - john-the-evangelist class-2 white
+2031-12-28 sunday christmas - ef-christmas-sunday-0 class-2 white +holy-innocents
+2031-12-29 monday christmas - ef-christmas-0-monday class-4 white +thomas-becket
+2031-12-30 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2031-12-31 wednesday christmas - ef-christmas-0-wednesday class-4 white +silvester
+2032-01-01 thursday christmas - ef-circumcision class-1 white
+2032-01-02 friday christmas - ef-christmas-0-friday class-4 white
+2032-01-03 saturday christmas - ef-christmas-0-saturday class-4 white
+2032-01-04 sunday christmas - ef-christmas-sunday-0 class-2 white
+2032-01-05 monday christmas - ef-christmas-0-monday class-4 white +telesphorus-pope-and-martyr
+2032-01-06 tuesday time-after-epiphany - ef-epiphany class-1 white
+2032-01-07 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2032-01-08 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2032-01-09 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2032-01-10 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2032-01-11 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green +hyginus-pope-and-martyr
+2032-01-12 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2032-01-13 tuesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2032-01-14 wednesday time-after-epiphany 2 hilary class-3 white +felicis
+2032-01-15 thursday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2032-01-16 friday time-after-epiphany 2 marcellus-i class-3 red
+2032-01-17 saturday time-after-epiphany 2 anthony class-3 white
+2032-01-18 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +prisca
+2032-01-19 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2032-01-20 tuesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2032-01-21 wednesday time-after-epiphany 3 agnes class-3 red
+2032-01-22 thursday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2032-01-23 friday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2032-01-24 saturday time-after-epiphany 3 timothy class-3 red
+2032-01-25 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +conversion-of-st-paul +peter
+2032-01-26 monday septuagesima 1 polycarp class-3 red
+2032-01-27 tuesday septuagesima 1 john-chrysostom class-3 white
+2032-01-28 wednesday septuagesima 1 peter-nolasco class-3 white
+2032-01-29 thursday septuagesima 1 francis-de-sales class-3 white
+2032-01-30 friday septuagesima 1 martina class-3 red
+2032-01-31 saturday septuagesima 1 john-bosco class-3 white
+2032-02-01 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +ignatius-of-antioch
+2032-02-02 monday septuagesima 2 purification-of-the-blessed-virgin-mary class-2 white
+2032-02-03 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +blaise
+2032-02-04 wednesday septuagesima 2 andrew-corsini class-3 white
+2032-02-05 thursday septuagesima 2 agatha class-3 red
+2032-02-06 friday septuagesima 2 titus class-3 white +dorothy
+2032-02-07 saturday septuagesima 2 romuald class-3 white
+2032-02-08 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +john-of-matha
+2032-02-09 monday septuagesima 3 cyril-of-alexandria class-3 white +appollonia
+2032-02-10 tuesday septuagesima 3 scholastica class-3 white
+2032-02-11 wednesday lent - ef-ash-wednesday class-1 violet +our-lady-of-lourdes
+2032-02-12 thursday lent - ef-lent-after-ashes-thursday class-3 violet +seven-holy-servite-founders
+2032-02-13 friday lent - ef-lent-after-ashes-friday class-3 violet
+2032-02-14 saturday lent - ef-lent-after-ashes-saturday class-3 violet +valentine
+2032-02-15 sunday lent 1 ef-lent-sunday-1 class-2 violet +sts-faustinus-jovita
+2032-02-16 monday lent 1 ef-lent-1-monday class-3 violet
+2032-02-17 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2032-02-18 wednesday lent 1 ef-lent-1-wednesday class-3 violet +simeon
+2032-02-19 thursday lent 1 ef-lent-1-thursday class-3 violet
+2032-02-20 friday lent 1 ef-lent-1-friday class-3 violet
+2032-02-21 saturday lent 1 ef-lent-1-saturday class-3 violet
+2032-02-22 sunday lent 2 ef-lent-sunday-2 class-2 violet +chair-of-st-peter +paul
+2032-02-23 monday lent 2 ef-lent-2-monday class-3 violet +peter-damien
+2032-02-24 tuesday lent 2 matthias class-2 red
+2032-02-25 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2032-02-26 thursday lent 2 ef-lent-2-thursday class-3 violet
+2032-02-27 friday lent 2 ef-lent-2-friday class-3 violet +gabriel-of-our-lady-of-sorrows
+2032-02-28 saturday lent 2 ef-lent-2-saturday class-3 violet
+2032-02-29 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2032-03-01 monday lent 3 ef-lent-3-monday class-3 violet
+2032-03-02 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2032-03-03 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2032-03-04 thursday lent 3 ef-lent-3-thursday class-3 violet +casimir +lucius
+2032-03-05 friday lent 3 ef-lent-3-friday class-3 violet
+2032-03-06 saturday lent 3 ef-lent-3-saturday class-3 violet +sts-felicitas-perpetua
+2032-03-07 sunday lent 4 ef-lent-sunday-4 class-2 violet +thomas-aquinas
+2032-03-08 monday lent 4 ef-lent-4-monday class-3 violet +john-of-god
+2032-03-09 tuesday lent 4 ef-lent-4-tuesday class-3 violet +frances-rome
+2032-03-10 wednesday lent 4 ef-lent-4-wednesday class-3 violet +forty-holy-martyrs-of-sebaste
+2032-03-11 thursday lent 4 ef-lent-4-thursday class-3 violet
+2032-03-12 friday lent 4 ef-lent-4-friday class-3 violet +gregory-the-great
+2032-03-13 saturday lent 4 ef-lent-4-saturday class-3 violet
+2032-03-14 sunday passiontide 1 ef-passion-sunday class-1 violet
+2032-03-15 monday passiontide - ef-passiontide-0-monday class-3 violet
+2032-03-16 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2032-03-17 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +patrick
+2032-03-18 thursday passiontide - ef-passiontide-0-thursday class-3 violet +cyril-of-jerusalem
+2032-03-19 friday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2032-03-20 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2032-03-21 sunday passiontide 2 ef-palm-sunday class-1 violet +benedict
+2032-03-22 monday passiontide - ef-passiontide-0-monday class-1 violet
+2032-03-23 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2032-03-24 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +gabriel-the-archangel
+2032-03-25 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2032-03-26 friday passiontide - ef-passiontide-0-friday class-1 violet
+2032-03-27 saturday passiontide - ef-passiontide-0-saturday class-1 violet +john-damascene
+2032-03-28 sunday easter 1 ef-easter-sunday class-1 white +john-of-capistrano
+2032-03-29 monday easter 1 ef-easter-1-monday class-1 white
+2032-03-30 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2032-03-31 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2032-04-01 thursday easter 1 ef-easter-1-thursday class-1 white
+2032-04-02 friday easter 1 ef-easter-1-friday class-1 white +francis-of-paola
+2032-04-03 saturday easter 1 ef-easter-1-saturday class-1 white
+2032-04-04 sunday easter 2 ef-low-sunday class-1 white +isidore-of-seville
+2032-04-05 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white +vincent-ferrer
+2032-04-06 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2032-04-07 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2032-04-08 thursday easter 2 ef-easter-2-thursday class-4 white
+2032-04-09 friday easter 2 ef-easter-2-friday class-4 white
+2032-04-10 saturday easter 2 ef-easter-2-saturday class-4 white
+2032-04-11 sunday easter 3 ef-easter-sunday-3 class-2 white +leo-the-great
+2032-04-12 monday easter 3 ef-easter-3-monday class-4 white
+2032-04-13 tuesday easter 3 hermenegild class-3 red
+2032-04-14 wednesday easter 3 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2032-04-15 thursday easter 3 ef-easter-3-thursday class-4 white
+2032-04-16 friday easter 3 ef-easter-3-friday class-4 white
+2032-04-17 saturday easter 3 ef-easter-3-saturday class-4 white +anicetus
+2032-04-18 sunday easter 4 ef-easter-sunday-4 class-2 white
+2032-04-19 monday easter 4 ef-easter-4-monday class-4 white
+2032-04-20 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2032-04-21 wednesday easter 4 anselm class-3 white
+2032-04-22 thursday easter 4 sts-soter-caius class-3 red
+2032-04-23 friday easter 4 ef-easter-4-friday class-4 white +george
+2032-04-24 saturday easter 4 fidelis-of-sigmaringen class-3 red
+2032-04-25 sunday easter 5 ef-easter-sunday-5 class-2 white +mark
+2032-04-26 monday easter 5 sts-cletus-marcellinus class-3 red
+2032-04-27 tuesday easter 5 peter-canisius class-3 white
+2032-04-28 wednesday easter 5 paul-of-the-cross class-3 white
+2032-04-29 thursday easter 5 peter-of-verona class-3 red
+2032-04-30 friday easter 5 catherine-of-siena class-3 white
+2032-05-01 saturday easter 5 joseph-the-workman class-1 white
+2032-05-02 sunday easter 6 ef-easter-sunday-6 class-2 white +athanasius
+2032-05-03 monday easter 6 ef-easter-6-monday class-4 white +sts-alexander-companions
+2032-05-04 tuesday easter 6 monica class-3 white
+2032-05-05 wednesday easter - ef-ascension-vigil class-2 white +pius-v
+2032-05-06 thursday easter - ef-ascension class-1 white
+2032-05-07 friday easter 6 stanislaus class-3 red
+2032-05-08 saturday easter 6 ef-easter-6-saturday class-4 white
+2032-05-09 sunday easter 7 ef-easter-sunday-7 class-2 white +gregory-of-nazianzen
+2032-05-10 monday easter 7 antoninus class-3 white +gordiano-and-epimacho
+2032-05-11 tuesday easter 7 sts-philip-james class-2 red
+2032-05-12 wednesday easter 7 sts-nereus-achilleus-domitilla-pancras class-3 red
+2032-05-13 thursday easter 7 robert-bellarmine class-3 white
+2032-05-14 friday easter 7 ef-easter-7-friday class-4 white
+2032-05-15 saturday easter - ef-pentecost-vigil class-1 red +john-baptist-de-la-salle
+2032-05-16 sunday easter - ef-pentecost class-1 red +ubaldus
+2032-05-17 monday easter 8 ef-easter-8-monday class-1 red +paschal-baylon
+2032-05-18 tuesday easter 8 ef-easter-8-tuesday class-1 red +venantius
+2032-05-19 wednesday easter 8 ef-easter-8-wednesday class-1 red +peter-celestine +pudentiana-virginis
+2032-05-20 thursday easter 8 ef-easter-8-thursday class-1 red +bernardine-of-siena
+2032-05-21 friday easter 8 ef-easter-8-friday class-1 red
+2032-05-22 saturday easter 8 ef-easter-8-saturday class-1 red
+2032-05-23 sunday time-after-pentecost 1 ef-trinity class-1 white
+2032-05-24 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2032-05-25 tuesday time-after-pentecost 1 gregory-vii class-3 white +urban-pope-and-martyr
+2032-05-26 wednesday time-after-pentecost 1 philip-neri class-3 white +eleutherius
+2032-05-27 thursday time-after-pentecost - ef-corpus-christi class-1 white +bede-the-venerable +john-i
+2032-05-28 friday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2032-05-29 saturday time-after-pentecost 1 mary-magdalene-de-pazzi class-3 white
+2032-05-30 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +felix-i
+2032-05-31 monday time-after-pentecost 2 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2032-06-01 tuesday time-after-pentecost 2 angela-merici class-3 white
+2032-06-02 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green +sts-marcellinus-peter-erasmus
+2032-06-03 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2032-06-04 friday time-after-pentecost - ef-sacred-heart class-1 white +francis-caracciolo
+2032-06-05 saturday time-after-pentecost 2 boniface class-3 red
+2032-06-06 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +norbert
+2032-06-07 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green
+2032-06-08 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2032-06-09 wednesday time-after-pentecost 3 ef-time-after-pentecost-3-wednesday class-4 green +sts-primus-felicianus
+2032-06-10 thursday time-after-pentecost 3 margaret-of-scotland class-3 white
+2032-06-11 friday time-after-pentecost 3 barnabas class-3 red
+2032-06-12 saturday time-after-pentecost 3 john-of-san-fecundo class-3 red +basilidus
+2032-06-13 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +anthony-of-padua
+2032-06-14 monday time-after-pentecost 4 basil-the-great class-3 white
+2032-06-15 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green +vitus
+2032-06-16 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2032-06-17 thursday time-after-pentecost 4 gregory-barbarigo class-3 white
+2032-06-18 friday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2032-06-19 saturday time-after-pentecost 4 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2032-06-20 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +silverius
+2032-06-21 monday time-after-pentecost 5 aloysius-gongzaga class-3 white
+2032-06-22 tuesday time-after-pentecost 5 paulinus-of-nola class-3 white
+2032-06-23 wednesday time-after-pentecost 5 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2032-06-24 thursday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2032-06-25 friday time-after-pentecost 5 william class-3 white
+2032-06-26 saturday time-after-pentecost 5 sts-john-paul class-3 red
+2032-06-27 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2032-06-28 monday time-after-pentecost 6 vigil-of-sts-peter-paul class-2 violet
+2032-06-29 tuesday time-after-pentecost 6 sts-peter-paul class-1 red
+2032-06-30 wednesday time-after-pentecost 6 in-commemoratione-sancti-pauli-apostoli class-3 red
+2032-07-01 thursday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2032-07-02 friday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2032-07-03 saturday time-after-pentecost 6 irenaeus class-3 red
+2032-07-04 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green
+2032-07-05 monday time-after-pentecost 7 anthony-mary-zaccariah class-3 white
+2032-07-06 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green
+2032-07-07 wednesday time-after-pentecost 7 sts-cyril-methodius class-3 white
+2032-07-08 thursday time-after-pentecost 7 elizabeth-of-portugal class-3 white
+2032-07-09 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green
+2032-07-10 saturday time-after-pentecost 7 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2032-07-11 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +pius-i
+2032-07-12 monday time-after-pentecost 8 john-gualbert class-3 red +naboris-et-felicis
+2032-07-13 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green
+2032-07-14 wednesday time-after-pentecost 8 bonaventure class-3 white
+2032-07-15 thursday time-after-pentecost 8 henry-the-emperor class-3 white
+2032-07-16 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +our-lady-of-mt-carmel
+2032-07-17 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +alexis
+2032-07-18 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +camillus-de-lellis +symphorosa-and-sons
+2032-07-19 monday time-after-pentecost 9 vincent-de-paul class-3 white
+2032-07-20 tuesday time-after-pentecost 9 jerome-emiliani class-3 red +margaret
+2032-07-21 wednesday time-after-pentecost 9 laurence-of-brindisi class-3 white +praxedis-virginis
+2032-07-22 thursday time-after-pentecost 9 mary-magdalene class-3 white
+2032-07-23 friday time-after-pentecost 9 apollinaris class-3 white +liborii
+2032-07-24 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +christina
+2032-07-25 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +james-the-greater +christopher
+2032-07-26 monday time-after-pentecost 10 anne-mother-of-the-blessed-virgin class-2 white
+2032-07-27 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +pantaleon
+2032-07-28 wednesday time-after-pentecost 10 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2032-07-29 thursday time-after-pentecost 10 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2032-07-30 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +sts-abdon-sennen
+2032-07-31 saturday time-after-pentecost 10 ignatius-loyola class-3 white
+2032-08-01 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +holy-machabees
+2032-08-02 monday time-after-pentecost 11 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2032-08-03 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green
+2032-08-04 wednesday time-after-pentecost 11 dominic class-3 white
+2032-08-05 thursday time-after-pentecost 11 dedication-of-the-basilica-of-st-mary-major class-3 white
+2032-08-06 friday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2032-08-07 saturday time-after-pentecost 11 cajetan class-3 white +donatus
+2032-08-08 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +john-mary-vianney +cyriacus-largus-and-smaragdus-martyrs
+2032-08-09 monday time-after-pentecost 12 vigil-of-st-lawrence class-3 red +romanus
+2032-08-10 tuesday time-after-pentecost 12 lawrence class-2 red
+2032-08-11 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green +sts-tiburtius-susanna
+2032-08-12 thursday time-after-pentecost 12 clare class-3 white
+2032-08-13 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green +sts-hippolytus-cassian
+2032-08-14 saturday time-after-pentecost 12 vigil-of-the-assumption class-2 white
+2032-08-15 sunday time-after-pentecost 13 assumption-of-the-blessed-virgin-mary class-1 white
+2032-08-16 monday time-after-pentecost 13 joachim-father-of-the-blessed-virgin class-2 white
+2032-08-17 tuesday time-after-pentecost 13 hyacinth class-3 white
+2032-08-18 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +agapitus
+2032-08-19 thursday time-after-pentecost 13 john-eudes class-3 white
+2032-08-20 friday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2032-08-21 saturday time-after-pentecost 13 jane-frances-de-chantal class-3 white
+2032-08-22 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +immaculate-heart-of-mary +sts-timothy-hippolytus-and-symphorianus-martyrs
+2032-08-23 monday time-after-pentecost 14 philip-benizi class-3 white
+2032-08-24 tuesday time-after-pentecost 14 bartholomew class-2 red
+2032-08-25 wednesday time-after-pentecost 14 louis-ix class-3 white
+2032-08-26 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green +zephyrinus
+2032-08-27 friday time-after-pentecost 14 joseph-calasance class-3 white
+2032-08-28 saturday time-after-pentecost 14 augustine class-3 red +hermes
+2032-08-29 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +beheading-of-st-john-the-baptist +sabina
+2032-08-30 monday time-after-pentecost 15 rose-of-lima class-3 red +sts-felix-and-adauctus
+2032-08-31 tuesday time-after-pentecost 15 raymond-nonnatus class-3 white
+2032-09-01 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green +giles +twelve-holy-brothers-martyrs
+2032-09-02 thursday time-after-pentecost 15 stephen-of-hungary class-3 white
+2032-09-03 friday time-after-pentecost 15 pius-x class-3 white
+2032-09-04 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green
+2032-09-05 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +lawrence-justinian
+2032-09-06 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green
+2032-09-07 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green
+2032-09-08 wednesday time-after-pentecost 16 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2032-09-09 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +gorgonius
+2032-09-10 friday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2032-09-11 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +sts-protus-hyacinth
+2032-09-12 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +most-holy-name-of-mary
+2032-09-13 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green
+2032-09-14 tuesday time-after-pentecost 17 exaltation-of-the-holy-cross class-2 red
+2032-09-15 wednesday time-after-pentecost 17 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2032-09-16 thursday time-after-pentecost 17 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2032-09-17 friday time-after-pentecost 17 ef-time-after-pentecost-17-friday class-4 green +stigmata-of-st-francis
+2032-09-18 saturday time-after-pentecost 17 joseph-of-cupertino class-3 white
+2032-09-19 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +januarius-companions
+2032-09-20 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +sts-eustace-companions
+2032-09-21 tuesday time-after-pentecost 18 matthew class-2 red
+2032-09-22 wednesday time-after-pentecost 18 ef-september-ember-wed class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2032-09-23 thursday time-after-pentecost 18 linus class-3 red +thecla
+2032-09-24 friday time-after-pentecost 18 ef-september-ember-fri class-2 violet +our-lady-of-ransom
+2032-09-25 saturday time-after-pentecost 18 ef-september-ember-sat class-2 violet
+2032-09-26 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +sts-cyprian-justina
+2032-09-27 monday time-after-pentecost 19 sts-cosmas-damian class-3 red
+2032-09-28 tuesday time-after-pentecost 19 wenceslaus class-3 red
+2032-09-29 wednesday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2032-09-30 thursday time-after-pentecost 19 jerome class-3 white
+2032-10-01 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +remigius
+2032-10-02 saturday time-after-pentecost 19 holy-guardian-angels class-3 white
+2032-10-03 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +theresa-of-the-infant-jesus
+2032-10-04 monday time-after-pentecost 20 francis-of-assisi class-3 white
+2032-10-05 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green +placid-companions
+2032-10-06 wednesday time-after-pentecost 20 bruno class-3 white
+2032-10-07 thursday time-after-pentecost 20 our-lady-of-the-rosary class-2 white +mark-i
+2032-10-08 friday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2032-10-09 saturday time-after-pentecost 20 john-leonardi class-3 white +dionysius-and-companions
+2032-10-10 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +francis-borgia
+2032-10-11 monday time-after-pentecost 21 maternity-of-the-blessed-virgin-mary class-2 white
+2032-10-12 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2032-10-13 wednesday time-after-pentecost 21 edward class-3 white
+2032-10-14 thursday time-after-pentecost 21 callistus-i class-3 red
+2032-10-15 friday time-after-pentecost 21 teresa-of-avila class-3 white
+2032-10-16 saturday time-after-pentecost 21 hedwig class-3 white
+2032-10-17 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +margaret-mary-alacoque
+2032-10-18 monday time-after-pentecost 22 luke-the-evangelist class-2 red
+2032-10-19 tuesday time-after-pentecost 22 peter-of-alcantara class-3 white
+2032-10-20 wednesday time-after-pentecost 22 john-cantius class-3 white
+2032-10-21 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green +hilarion +ursula-and-companions
+2032-10-22 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2032-10-23 saturday time-after-pentecost 22 anthony-mary-claret class-3 white
+2032-10-24 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +raphael-the-archangel
+2032-10-25 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green +sts-chrysanthus-daria
+2032-10-26 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2032-10-27 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2032-10-28 thursday time-after-pentecost 23 sts-simon-jude class-2 red
+2032-10-29 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2032-10-30 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2032-10-31 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2032-11-01 monday time-after-pentecost 24 all-saints class-1 white
+2032-11-02 tuesday time-after-pentecost 24 commemoration-of-all-souls class-1 black
+2032-11-03 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2032-11-04 thursday time-after-pentecost 24 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2032-11-05 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green
+2032-11-06 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green
+2032-11-07 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green
+2032-11-08 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green +four-holy-crowned-martyrs
+2032-11-09 tuesday time-after-pentecost 25 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2032-11-10 wednesday time-after-pentecost 25 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2032-11-11 thursday time-after-pentecost 25 martin-of-tours class-3 white +menna
+2032-11-12 friday time-after-pentecost 25 martin-i class-3 red
+2032-11-13 saturday time-after-pentecost 25 ef-time-after-pentecost-25-saturday class-4 green +didacus
+2032-11-14 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +josaphat
+2032-11-15 monday time-after-pentecost 26 albert-the-great class-3 white
+2032-11-16 tuesday time-after-pentecost 26 gertrude-the-great class-3 white
+2032-11-17 wednesday time-after-pentecost 26 gregory-the-wonderworker class-3 white
+2032-11-18 thursday time-after-pentecost 26 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2032-11-19 friday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2032-11-20 saturday time-after-pentecost 26 felix-of-valois class-3 white
+2032-11-21 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +presentation-of-the-blessed-virgin-mary
+2032-11-22 monday time-after-pentecost 27 cecilia class-3 red
+2032-11-23 tuesday time-after-pentecost 27 clement-i class-3 red +felicity
+2032-11-24 wednesday time-after-pentecost 27 john-of-the-cross class-3 white +chrysogonus
+2032-11-25 thursday time-after-pentecost 27 catherine-of-alexandria class-3 red
+2032-11-26 friday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2032-11-27 saturday time-after-pentecost 27 ef-time-after-pentecost-27-saturday class-4 green
+2032-11-28 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2032-11-29 monday advent 1 ef-advent-1-monday class-3 violet +saturninus
+2032-11-30 tuesday advent 1 andrew class-2 red
+2032-12-01 wednesday advent 1 ef-advent-1-wednesday class-3 violet
+2032-12-02 thursday advent 1 vivian class-3 red
+2032-12-03 friday advent 1 francis-xavier class-3 white
+2032-12-04 saturday advent 1 peter-chrysologus class-3 white
+2032-12-05 sunday advent 2 ef-advent-sunday-2 class-2 violet +sabbas
+2032-12-06 monday advent 2 nicholas class-3 white
+2032-12-07 tuesday advent 2 ambrose class-3 white
+2032-12-08 wednesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2032-12-09 thursday advent 2 ef-advent-2-thursday class-3 violet
+2032-12-10 friday advent 2 ef-advent-2-friday class-3 violet +melchiades
+2032-12-11 saturday advent 2 damasus-i class-3 white
+2032-12-12 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2032-12-13 monday advent 3 lucy class-3 red
+2032-12-14 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2032-12-15 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2032-12-16 thursday advent 3 eusebius class-3 red
+2032-12-17 friday advent 3 ef-advent-ember-fri class-2 violet
+2032-12-18 saturday advent 3 ef-advent-ember-sat class-2 violet
+2032-12-19 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2032-12-20 monday advent 4 ef-advent-4-monday class-3 violet
+2032-12-21 tuesday advent 4 thomas class-2 red
+2032-12-22 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2032-12-23 thursday advent 4 ef-advent-4-thursday class-3 violet
+2032-12-24 friday advent 4 vigil-of-christmas class-1 violet
+2032-12-25 saturday christmas - ef-nativity class-1 white
+2032-12-26 sunday christmas - ef-christmas-sunday-0 class-2 white +stephen
+2032-12-27 monday christmas - john-the-evangelist class-2 white
+2032-12-28 tuesday christmas - holy-innocents class-2 red
+2032-12-29 wednesday christmas - ef-christmas-0-wednesday class-4 white +thomas-becket
+2032-12-30 thursday christmas - ef-christmas-0-thursday class-4 white
+2032-12-31 friday christmas - ef-christmas-0-friday class-4 white +silvester
+2033-01-01 saturday christmas - ef-circumcision class-1 white
+2033-01-02 sunday christmas - ef-christmas-sunday-0 class-2 white
+2033-01-03 monday christmas - ef-christmas-0-monday class-4 white
+2033-01-04 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2033-01-05 wednesday christmas - ef-christmas-0-wednesday class-4 white +telesphorus-pope-and-martyr
+2033-01-06 thursday time-after-epiphany - ef-epiphany class-1 white
+2033-01-07 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2033-01-08 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2033-01-09 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2033-01-10 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2033-01-11 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green +hyginus-pope-and-martyr
+2033-01-12 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2033-01-13 thursday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2033-01-14 friday time-after-epiphany 2 hilary class-3 white +felicis
+2033-01-15 saturday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2033-01-16 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +marcellus-i
+2033-01-17 monday time-after-epiphany 2 anthony class-3 white
+2033-01-18 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +prisca
+2033-01-19 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2033-01-20 thursday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2033-01-21 friday time-after-epiphany 3 agnes class-3 red
+2033-01-22 saturday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2033-01-23 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +raymond-of-pe-afort +emerentiana
+2033-01-24 monday time-after-epiphany 3 timothy class-3 red
+2033-01-25 tuesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2033-01-26 wednesday time-after-epiphany 3 polycarp class-3 red
+2033-01-27 thursday time-after-epiphany 4 john-chrysostom class-3 white
+2033-01-28 friday time-after-epiphany 4 peter-nolasco class-3 white
+2033-01-29 saturday time-after-epiphany 4 francis-de-sales class-3 white
+2033-01-30 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +martina
+2033-01-31 monday time-after-epiphany 4 john-bosco class-3 white
+2033-02-01 tuesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2033-02-02 wednesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2033-02-03 thursday time-after-epiphany 5 ef-time-after-epiphany-5-thursday class-4 green +blaise
+2033-02-04 friday time-after-epiphany 5 andrew-corsini class-3 white
+2033-02-05 saturday time-after-epiphany 5 agatha class-3 red
+2033-02-06 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +titus +dorothy
+2033-02-07 monday time-after-epiphany 5 romuald class-3 white
+2033-02-08 tuesday time-after-epiphany 5 john-of-matha class-3 white
+2033-02-09 wednesday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2033-02-10 thursday time-after-epiphany 6 scholastica class-3 white
+2033-02-11 friday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2033-02-12 saturday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2033-02-13 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2033-02-14 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +valentine
+2033-02-15 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +sts-faustinus-jovita
+2033-02-16 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2033-02-17 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2033-02-18 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet +simeon
+2033-02-19 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet
+2033-02-20 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2033-02-21 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2033-02-22 tuesday septuagesima 2 chair-of-st-peter class-2 white +paul
+2033-02-23 wednesday septuagesima 2 peter-damien class-3 white
+2033-02-24 thursday septuagesima 2 matthias class-2 red
+2033-02-25 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2033-02-26 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2033-02-27 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +gabriel-of-our-lady-of-sorrows
+2033-02-28 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2033-03-01 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2033-03-02 wednesday lent - ef-ash-wednesday class-1 violet
+2033-03-03 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2033-03-04 friday lent - ef-lent-after-ashes-friday class-3 violet +casimir +lucius
+2033-03-05 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2033-03-06 sunday lent 1 ef-lent-sunday-1 class-2 violet +sts-felicitas-perpetua
+2033-03-07 monday lent 1 ef-lent-1-monday class-3 violet +thomas-aquinas
+2033-03-08 tuesday lent 1 ef-lent-1-tuesday class-3 violet +john-of-god
+2033-03-09 wednesday lent 1 ef-lent-1-wednesday class-3 violet +frances-rome
+2033-03-10 thursday lent 1 ef-lent-1-thursday class-3 violet +forty-holy-martyrs-of-sebaste
+2033-03-11 friday lent 1 ef-lent-1-friday class-3 violet
+2033-03-12 saturday lent 1 ef-lent-1-saturday class-3 violet +gregory-the-great
+2033-03-13 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2033-03-14 monday lent 2 ef-lent-2-monday class-3 violet
+2033-03-15 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2033-03-16 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2033-03-17 thursday lent 2 ef-lent-2-thursday class-3 violet +patrick
+2033-03-18 friday lent 2 ef-lent-2-friday class-3 violet +cyril-of-jerusalem
+2033-03-19 saturday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2033-03-20 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2033-03-21 monday lent 3 ef-lent-3-monday class-3 violet +benedict
+2033-03-22 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2033-03-23 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2033-03-24 thursday lent 3 ef-lent-3-thursday class-3 violet +gabriel-the-archangel
+2033-03-25 friday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2033-03-26 saturday lent 3 ef-lent-3-saturday class-3 violet
+2033-03-27 sunday lent 4 ef-lent-sunday-4 class-2 violet +john-damascene
+2033-03-28 monday lent 4 ef-lent-4-monday class-3 violet +john-of-capistrano
+2033-03-29 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2033-03-30 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2033-03-31 thursday lent 4 ef-lent-4-thursday class-3 violet
+2033-04-01 friday lent 4 ef-lent-4-friday class-3 violet
+2033-04-02 saturday lent 4 ef-lent-4-saturday class-3 violet +francis-of-paola
+2033-04-03 sunday passiontide 1 ef-passion-sunday class-1 violet
+2033-04-04 monday passiontide - ef-passiontide-0-monday class-3 violet +isidore-of-seville
+2033-04-05 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +vincent-ferrer
+2033-04-06 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2033-04-07 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2033-04-08 friday passiontide - ef-passiontide-0-friday class-3 violet
+2033-04-09 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2033-04-10 sunday passiontide 2 ef-palm-sunday class-1 violet
+2033-04-11 monday passiontide - ef-passiontide-0-monday class-1 violet +leo-the-great
+2033-04-12 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2033-04-13 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +hermenegild
+2033-04-14 thursday passiontide - ef-passiontide-0-thursday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2033-04-15 friday passiontide - ef-passiontide-0-friday class-1 violet
+2033-04-16 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2033-04-17 sunday easter 1 ef-easter-sunday class-1 white +anicetus
+2033-04-18 monday easter 1 ef-easter-1-monday class-1 white
+2033-04-19 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2033-04-20 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2033-04-21 thursday easter 1 ef-easter-1-thursday class-1 white +anselm
+2033-04-22 friday easter 1 ef-easter-1-friday class-1 white +sts-soter-caius
+2033-04-23 saturday easter 1 ef-easter-1-saturday class-1 white +george
+2033-04-24 sunday easter 2 ef-low-sunday class-1 white +fidelis-of-sigmaringen
+2033-04-25 monday easter 2 mark class-2 red
+2033-04-26 tuesday easter 2 sts-cletus-marcellinus class-3 red
+2033-04-27 wednesday easter 2 peter-canisius class-3 white
+2033-04-28 thursday easter 2 paul-of-the-cross class-3 white
+2033-04-29 friday easter 2 peter-of-verona class-3 red
+2033-04-30 saturday easter 2 catherine-of-siena class-3 white
+2033-05-01 sunday easter 3 joseph-the-workman class-1 white
+2033-05-02 monday easter 3 athanasius class-3 white
+2033-05-03 tuesday easter 3 ef-easter-3-tuesday class-4 white +sts-alexander-companions
+2033-05-04 wednesday easter 3 monica class-3 white
+2033-05-05 thursday easter 3 pius-v class-3 white
+2033-05-06 friday easter 3 ef-easter-3-friday class-4 white
+2033-05-07 saturday easter 3 stanislaus class-3 red
+2033-05-08 sunday easter 4 ef-easter-sunday-4 class-2 white
+2033-05-09 monday easter 4 gregory-of-nazianzen class-3 white
+2033-05-10 tuesday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2033-05-11 wednesday easter 4 sts-philip-james class-2 red
+2033-05-12 thursday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2033-05-13 friday easter 4 robert-bellarmine class-3 white
+2033-05-14 saturday easter 4 ef-easter-4-saturday class-4 white
+2033-05-15 sunday easter 5 ef-easter-sunday-5 class-2 white +john-baptist-de-la-salle
+2033-05-16 monday easter 5 ef-easter-5-monday class-4 white +ubaldus
+2033-05-17 tuesday easter 5 paschal-baylon class-3 white
+2033-05-18 wednesday easter 5 venantius class-3 red
+2033-05-19 thursday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2033-05-20 friday easter 5 bernardine-of-siena class-3 white
+2033-05-21 saturday easter 5 ef-easter-5-saturday class-4 white
+2033-05-22 sunday easter 6 ef-easter-sunday-6 class-2 white
+2033-05-23 monday easter 6 ef-easter-6-monday class-4 white
+2033-05-24 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2033-05-25 wednesday easter - ef-ascension-vigil class-2 white +gregory-vii +urban-pope-and-martyr
+2033-05-26 thursday easter - ef-ascension class-1 white +philip-neri +eleutherius
+2033-05-27 friday easter 6 bede-the-venerable class-3 white +john-i
+2033-05-28 saturday easter 6 augustine-of-canterbury class-3 white
+2033-05-29 sunday easter 7 ef-easter-sunday-7 class-2 white +mary-magdalene-de-pazzi
+2033-05-30 monday easter 7 ef-easter-7-monday class-4 white +felix-i
+2033-05-31 tuesday easter 7 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2033-06-01 wednesday easter 7 angela-merici class-3 white
+2033-06-02 thursday easter 7 ef-easter-7-thursday class-4 white +sts-marcellinus-peter-erasmus
+2033-06-03 friday easter 7 ef-easter-7-friday class-4 white
+2033-06-04 saturday easter - ef-pentecost-vigil class-1 red +francis-caracciolo
+2033-06-05 sunday easter - ef-pentecost class-1 red +boniface
+2033-06-06 monday easter 8 ef-easter-8-monday class-1 red +norbert
+2033-06-07 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2033-06-08 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2033-06-09 thursday easter 8 ef-easter-8-thursday class-1 red +sts-primus-felicianus
+2033-06-10 friday easter 8 ef-easter-8-friday class-1 red +margaret-of-scotland
+2033-06-11 saturday easter 8 ef-easter-8-saturday class-1 red +barnabas
+2033-06-12 sunday time-after-pentecost 1 ef-trinity class-1 white +john-of-san-fecundo +basilidus
+2033-06-13 monday time-after-pentecost 1 anthony-of-padua class-3 white
+2033-06-14 tuesday time-after-pentecost 1 basil-the-great class-3 white
+2033-06-15 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green +vitus
+2033-06-16 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2033-06-17 friday time-after-pentecost 1 gregory-barbarigo class-3 white
+2033-06-18 saturday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2033-06-19 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +julia-of-falconieri +sts-gervasius-and-protasius
+2033-06-20 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green +silverius
+2033-06-21 tuesday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2033-06-22 wednesday time-after-pentecost 2 paulinus-of-nola class-3 white
+2033-06-23 thursday time-after-pentecost 2 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2033-06-24 friday time-after-pentecost - ef-sacred-heart class-1 white
+2033-06-25 saturday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white +william
+2033-06-26 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +sts-john-paul
+2033-06-27 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green
+2033-06-28 tuesday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2033-06-29 wednesday time-after-pentecost 3 sts-peter-paul class-1 red
+2033-06-30 thursday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2033-07-01 friday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2033-07-02 saturday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2033-07-03 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +irenaeus
+2033-07-04 monday time-after-pentecost 4 ef-time-after-pentecost-4-monday class-4 green
+2033-07-05 tuesday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2033-07-06 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2033-07-07 thursday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2033-07-08 friday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2033-07-09 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2033-07-10 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +seven-holy-brothers-and-sts-rufina-secunda
+2033-07-11 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green +pius-i
+2033-07-12 tuesday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2033-07-13 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2033-07-14 thursday time-after-pentecost 5 bonaventure class-3 white
+2033-07-15 friday time-after-pentecost 5 henry-the-emperor class-3 white
+2033-07-16 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green +our-lady-of-mt-carmel
+2033-07-17 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +alexis
+2033-07-18 monday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2033-07-19 tuesday time-after-pentecost 6 vincent-de-paul class-3 white
+2033-07-20 wednesday time-after-pentecost 6 jerome-emiliani class-3 red +margaret
+2033-07-21 thursday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2033-07-22 friday time-after-pentecost 6 mary-magdalene class-3 white
+2033-07-23 saturday time-after-pentecost 6 apollinaris class-3 white +liborii
+2033-07-24 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +christina
+2033-07-25 monday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2033-07-26 tuesday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2033-07-27 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +pantaleon
+2033-07-28 thursday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2033-07-29 friday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2033-07-30 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green +sts-abdon-sennen
+2033-07-31 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +ignatius-loyola
+2033-08-01 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +holy-machabees
+2033-08-02 tuesday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2033-08-03 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green
+2033-08-04 thursday time-after-pentecost 8 dominic class-3 white
+2033-08-05 friday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2033-08-06 saturday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2033-08-07 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +cajetan +donatus
+2033-08-08 monday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2033-08-09 tuesday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2033-08-10 wednesday time-after-pentecost 9 lawrence class-2 red
+2033-08-11 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +sts-tiburtius-susanna
+2033-08-12 friday time-after-pentecost 9 clare class-3 white
+2033-08-13 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +sts-hippolytus-cassian
+2033-08-14 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +vigil-of-the-assumption
+2033-08-15 monday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2033-08-16 tuesday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2033-08-17 wednesday time-after-pentecost 10 hyacinth class-3 white
+2033-08-18 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +agapitus
+2033-08-19 friday time-after-pentecost 10 john-eudes class-3 white
+2033-08-20 saturday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2033-08-21 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +jane-frances-de-chantal
+2033-08-22 monday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2033-08-23 tuesday time-after-pentecost 11 philip-benizi class-3 white
+2033-08-24 wednesday time-after-pentecost 11 bartholomew class-2 red
+2033-08-25 thursday time-after-pentecost 11 louis-ix class-3 white
+2033-08-26 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +zephyrinus
+2033-08-27 saturday time-after-pentecost 11 joseph-calasance class-3 white
+2033-08-28 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +augustine +hermes
+2033-08-29 monday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2033-08-30 tuesday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2033-08-31 wednesday time-after-pentecost 12 raymond-nonnatus class-3 white
+2033-09-01 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green +giles +twelve-holy-brothers-martyrs
+2033-09-02 friday time-after-pentecost 12 stephen-of-hungary class-3 white
+2033-09-03 saturday time-after-pentecost 12 pius-x class-3 white
+2033-09-04 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green
+2033-09-05 monday time-after-pentecost 13 lawrence-justinian class-3 white
+2033-09-06 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green
+2033-09-07 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green
+2033-09-08 thursday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2033-09-09 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green +gorgonius
+2033-09-10 saturday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2033-09-11 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +sts-protus-hyacinth
+2033-09-12 monday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2033-09-13 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green
+2033-09-14 wednesday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2033-09-15 thursday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2033-09-16 friday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2033-09-17 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +stigmata-of-st-francis
+2033-09-18 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +joseph-of-cupertino
+2033-09-19 monday time-after-pentecost 15 januarius-companions class-3 red
+2033-09-20 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +sts-eustace-companions
+2033-09-21 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +matthew
+2033-09-22 thursday time-after-pentecost 15 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2033-09-23 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +linus +thecla
+2033-09-24 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +our-lady-of-ransom
+2033-09-25 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2033-09-26 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green +sts-cyprian-justina
+2033-09-27 tuesday time-after-pentecost 16 sts-cosmas-damian class-3 red
+2033-09-28 wednesday time-after-pentecost 16 wenceslaus class-3 red
+2033-09-29 thursday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2033-09-30 friday time-after-pentecost 16 jerome class-3 white
+2033-10-01 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +remigius
+2033-10-02 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +holy-guardian-angels
+2033-10-03 monday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2033-10-04 tuesday time-after-pentecost 17 francis-of-assisi class-3 white
+2033-10-05 wednesday time-after-pentecost 17 ef-time-after-pentecost-17-wednesday class-4 green +placid-companions
+2033-10-06 thursday time-after-pentecost 17 bruno class-3 white
+2033-10-07 friday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2033-10-08 saturday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2033-10-09 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +john-leonardi +dionysius-and-companions
+2033-10-10 monday time-after-pentecost 18 francis-borgia class-3 white
+2033-10-11 tuesday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2033-10-12 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green
+2033-10-13 thursday time-after-pentecost 18 edward class-3 white
+2033-10-14 friday time-after-pentecost 18 callistus-i class-3 red
+2033-10-15 saturday time-after-pentecost 18 teresa-of-avila class-3 white
+2033-10-16 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +hedwig
+2033-10-17 monday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2033-10-18 tuesday time-after-pentecost 19 luke-the-evangelist class-2 red
+2033-10-19 wednesday time-after-pentecost 19 peter-of-alcantara class-3 white
+2033-10-20 thursday time-after-pentecost 19 john-cantius class-3 white
+2033-10-21 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +hilarion +ursula-and-companions
+2033-10-22 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green
+2033-10-23 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +anthony-mary-claret
+2033-10-24 monday time-after-pentecost 20 raphael-the-archangel class-3 white
+2033-10-25 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green +sts-chrysanthus-daria
+2033-10-26 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2033-10-27 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2033-10-28 friday time-after-pentecost 20 sts-simon-jude class-2 red
+2033-10-29 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2033-10-30 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2033-10-31 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2033-11-01 tuesday time-after-pentecost 21 all-saints class-1 white
+2033-11-02 wednesday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2033-11-03 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2033-11-04 friday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2033-11-05 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2033-11-06 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2033-11-07 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2033-11-08 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green +four-holy-crowned-martyrs
+2033-11-09 wednesday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2033-11-10 thursday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2033-11-11 friday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2033-11-12 saturday time-after-pentecost 22 martin-i class-3 red
+2033-11-13 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +didacus
+2033-11-14 monday time-after-pentecost 23 josaphat class-3 white
+2033-11-15 tuesday time-after-pentecost 23 albert-the-great class-3 white
+2033-11-16 wednesday time-after-pentecost 23 gertrude-the-great class-3 white
+2033-11-17 thursday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2033-11-18 friday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2033-11-19 saturday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2033-11-20 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +felix-of-valois
+2033-11-21 monday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2033-11-22 tuesday time-after-pentecost 24 cecilia class-3 red
+2033-11-23 wednesday time-after-pentecost 24 clement-i class-3 red +felicity
+2033-11-24 thursday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2033-11-25 friday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2033-11-26 saturday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2033-11-27 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2033-11-28 monday advent 1 ef-advent-1-monday class-3 violet
+2033-11-29 tuesday advent 1 ef-advent-1-tuesday class-3 violet +saturninus
+2033-11-30 wednesday advent 1 andrew class-2 red
+2033-12-01 thursday advent 1 ef-advent-1-thursday class-3 violet
+2033-12-02 friday advent 1 vivian class-3 red
+2033-12-03 saturday advent 1 francis-xavier class-3 white
+2033-12-04 sunday advent 2 ef-advent-sunday-2 class-2 violet +peter-chrysologus
+2033-12-05 monday advent 2 ef-advent-2-monday class-3 violet +sabbas
+2033-12-06 tuesday advent 2 nicholas class-3 white
+2033-12-07 wednesday advent 2 ambrose class-3 white
+2033-12-08 thursday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2033-12-09 friday advent 2 ef-advent-2-friday class-3 violet
+2033-12-10 saturday advent 2 ef-advent-2-saturday class-3 violet +melchiades
+2033-12-11 sunday advent 3 ef-advent-sunday-3 class-2 violet +damasus-i
+2033-12-12 monday advent 3 ef-advent-3-monday class-3 violet
+2033-12-13 tuesday advent 3 lucy class-3 red
+2033-12-14 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2033-12-15 thursday advent 3 ef-advent-3-thursday class-3 violet
+2033-12-16 friday advent 3 ef-advent-ember-fri class-2 violet +eusebius
+2033-12-17 saturday advent 3 ef-advent-ember-sat class-2 violet
+2033-12-18 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2033-12-19 monday advent 4 ef-advent-4-monday class-3 violet
+2033-12-20 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2033-12-21 wednesday advent 4 thomas class-2 red
+2033-12-22 thursday advent 4 ef-advent-4-thursday class-3 violet
+2033-12-23 friday advent 4 ef-advent-4-friday class-3 violet
+2033-12-24 saturday advent 4 vigil-of-christmas class-1 violet
+2033-12-25 sunday christmas - ef-nativity class-1 white
+2033-12-26 monday christmas - stephen class-2 red
+2033-12-27 tuesday christmas - john-the-evangelist class-2 white
+2033-12-28 wednesday christmas - holy-innocents class-2 red
+2033-12-29 thursday christmas - ef-christmas-0-thursday class-4 white +thomas-becket
+2033-12-30 friday christmas - ef-christmas-0-friday class-4 white
+2033-12-31 saturday christmas - ef-christmas-0-saturday class-4 white +silvester
+2034-01-01 sunday christmas - ef-circumcision class-1 white
+2034-01-02 monday christmas - ef-christmas-0-monday class-4 white
+2034-01-03 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2034-01-04 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2034-01-05 thursday christmas - ef-christmas-0-thursday class-4 white +telesphorus-pope-and-martyr
+2034-01-06 friday time-after-epiphany - ef-epiphany class-1 white
+2034-01-07 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2034-01-08 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2034-01-09 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2034-01-10 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2034-01-11 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green +hyginus-pope-and-martyr
+2034-01-12 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2034-01-13 friday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2034-01-14 saturday time-after-epiphany 2 hilary class-3 white +felicis
+2034-01-15 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +paul-the-first-hermit +maur-abbot
+2034-01-16 monday time-after-epiphany 2 marcellus-i class-3 red
+2034-01-17 tuesday time-after-epiphany 2 anthony class-3 white
+2034-01-18 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +prisca
+2034-01-19 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2034-01-20 friday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2034-01-21 saturday time-after-epiphany 3 agnes class-3 red
+2034-01-22 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-vincent-anastasius
+2034-01-23 monday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2034-01-24 tuesday time-after-epiphany 3 timothy class-3 red
+2034-01-25 wednesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2034-01-26 thursday time-after-epiphany 3 polycarp class-3 red
+2034-01-27 friday time-after-epiphany 4 john-chrysostom class-3 white
+2034-01-28 saturday time-after-epiphany 4 peter-nolasco class-3 white
+2034-01-29 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +francis-de-sales
+2034-01-30 monday time-after-epiphany 4 martina class-3 red
+2034-01-31 tuesday time-after-epiphany 4 john-bosco class-3 white
+2034-02-01 wednesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2034-02-02 thursday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2034-02-03 friday time-after-epiphany 5 ef-time-after-epiphany-5-friday class-4 green +blaise
+2034-02-04 saturday time-after-epiphany 5 andrew-corsini class-3 white
+2034-02-05 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +agatha
+2034-02-06 monday septuagesima 1 titus class-3 white +dorothy
+2034-02-07 tuesday septuagesima 1 romuald class-3 white
+2034-02-08 wednesday septuagesima 1 john-of-matha class-3 white
+2034-02-09 thursday septuagesima 1 cyril-of-alexandria class-3 white +appollonia
+2034-02-10 friday septuagesima 1 scholastica class-3 white
+2034-02-11 saturday septuagesima 1 our-lady-of-lourdes class-3 white
+2034-02-12 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +seven-holy-servite-founders
+2034-02-13 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2034-02-14 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +valentine
+2034-02-15 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet +sts-faustinus-jovita
+2034-02-16 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2034-02-17 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2034-02-18 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +simeon
+2034-02-19 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2034-02-20 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2034-02-21 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2034-02-22 wednesday lent - ef-ash-wednesday class-1 violet +chair-of-st-peter +paul
+2034-02-23 thursday lent - ef-lent-after-ashes-thursday class-3 violet +peter-damien
+2034-02-24 friday lent - matthias class-2 red
+2034-02-25 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2034-02-26 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2034-02-27 monday lent 1 ef-lent-1-monday class-3 violet +gabriel-of-our-lady-of-sorrows
+2034-02-28 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2034-03-01 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2034-03-02 thursday lent 1 ef-lent-1-thursday class-3 violet
+2034-03-03 friday lent 1 ef-lent-1-friday class-3 violet
+2034-03-04 saturday lent 1 ef-lent-1-saturday class-3 violet +casimir +lucius
+2034-03-05 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2034-03-06 monday lent 2 ef-lent-2-monday class-3 violet +sts-felicitas-perpetua
+2034-03-07 tuesday lent 2 ef-lent-2-tuesday class-3 violet +thomas-aquinas
+2034-03-08 wednesday lent 2 ef-lent-2-wednesday class-3 violet +john-of-god
+2034-03-09 thursday lent 2 ef-lent-2-thursday class-3 violet +frances-rome
+2034-03-10 friday lent 2 ef-lent-2-friday class-3 violet +forty-holy-martyrs-of-sebaste
+2034-03-11 saturday lent 2 ef-lent-2-saturday class-3 violet
+2034-03-12 sunday lent 3 ef-lent-sunday-3 class-2 violet +gregory-the-great
+2034-03-13 monday lent 3 ef-lent-3-monday class-3 violet
+2034-03-14 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2034-03-15 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2034-03-16 thursday lent 3 ef-lent-3-thursday class-3 violet
+2034-03-17 friday lent 3 ef-lent-3-friday class-3 violet +patrick
+2034-03-18 saturday lent 3 ef-lent-3-saturday class-3 violet +cyril-of-jerusalem
+2034-03-19 sunday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2034-03-20 monday lent 4 ef-lent-4-monday class-3 violet
+2034-03-21 tuesday lent 4 ef-lent-4-tuesday class-3 violet +benedict
+2034-03-22 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2034-03-23 thursday lent 4 ef-lent-4-thursday class-3 violet
+2034-03-24 friday lent 4 ef-lent-4-friday class-3 violet +gabriel-the-archangel
+2034-03-25 saturday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2034-03-26 sunday passiontide 1 ef-passion-sunday class-1 violet
+2034-03-27 monday passiontide - ef-passiontide-0-monday class-3 violet +john-damascene
+2034-03-28 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +john-of-capistrano
+2034-03-29 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2034-03-30 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2034-03-31 friday passiontide - ef-passiontide-0-friday class-3 violet
+2034-04-01 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2034-04-02 sunday passiontide 2 ef-palm-sunday class-1 violet +francis-of-paola
+2034-04-03 monday passiontide - ef-passiontide-0-monday class-1 violet
+2034-04-04 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +isidore-of-seville
+2034-04-05 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +vincent-ferrer
+2034-04-06 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2034-04-07 friday passiontide - ef-passiontide-0-friday class-1 violet
+2034-04-08 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2034-04-09 sunday easter 1 ef-easter-sunday class-1 white
+2034-04-10 monday easter 1 ef-easter-1-monday class-1 white
+2034-04-11 tuesday easter 1 ef-easter-1-tuesday class-1 white +leo-the-great
+2034-04-12 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2034-04-13 thursday easter 1 ef-easter-1-thursday class-1 white +hermenegild
+2034-04-14 friday easter 1 ef-easter-1-friday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2034-04-15 saturday easter 1 ef-easter-1-saturday class-1 white
+2034-04-16 sunday easter 2 ef-low-sunday class-1 white
+2034-04-17 monday easter 2 ef-easter-2-monday class-4 white +anicetus
+2034-04-18 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2034-04-19 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2034-04-20 thursday easter 2 ef-easter-2-thursday class-4 white
+2034-04-21 friday easter 2 anselm class-3 white
+2034-04-22 saturday easter 2 sts-soter-caius class-3 red
+2034-04-23 sunday easter 3 ef-easter-sunday-3 class-2 white +george
+2034-04-24 monday easter 3 fidelis-of-sigmaringen class-3 red
+2034-04-25 tuesday easter 3 mark class-2 red
+2034-04-26 wednesday easter 3 sts-cletus-marcellinus class-3 red
+2034-04-27 thursday easter 3 peter-canisius class-3 white
+2034-04-28 friday easter 3 paul-of-the-cross class-3 white
+2034-04-29 saturday easter 3 peter-of-verona class-3 red
+2034-04-30 sunday easter 4 ef-easter-sunday-4 class-2 white +catherine-of-siena
+2034-05-01 monday easter 4 joseph-the-workman class-1 white
+2034-05-02 tuesday easter 4 athanasius class-3 white
+2034-05-03 wednesday easter 4 ef-easter-4-wednesday class-4 white +sts-alexander-companions
+2034-05-04 thursday easter 4 monica class-3 white
+2034-05-05 friday easter 4 pius-v class-3 white
+2034-05-06 saturday easter 4 ef-easter-4-saturday class-4 white
+2034-05-07 sunday easter 5 ef-easter-sunday-5 class-2 white +stanislaus
+2034-05-08 monday easter 5 ef-easter-5-monday class-4 white
+2034-05-09 tuesday easter 5 gregory-of-nazianzen class-3 white
+2034-05-10 wednesday easter 5 antoninus class-3 white +gordiano-and-epimacho
+2034-05-11 thursday easter 5 sts-philip-james class-2 red
+2034-05-12 friday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2034-05-13 saturday easter 5 robert-bellarmine class-3 white
+2034-05-14 sunday easter 6 ef-easter-sunday-6 class-2 white
+2034-05-15 monday easter 6 john-baptist-de-la-salle class-3 white
+2034-05-16 tuesday easter 6 ef-easter-6-tuesday class-4 white +ubaldus
+2034-05-17 wednesday easter - ef-ascension-vigil class-2 white +paschal-baylon
+2034-05-18 thursday easter - ef-ascension class-1 white +venantius
+2034-05-19 friday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2034-05-20 saturday easter 6 bernardine-of-siena class-3 white
+2034-05-21 sunday easter 7 ef-easter-sunday-7 class-2 white
+2034-05-22 monday easter 7 ef-easter-7-monday class-4 white
+2034-05-23 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2034-05-24 wednesday easter 7 ef-easter-7-wednesday class-4 white
+2034-05-25 thursday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2034-05-26 friday easter 7 philip-neri class-3 white +eleutherius
+2034-05-27 saturday easter - ef-pentecost-vigil class-1 red +bede-the-venerable +john-i
+2034-05-28 sunday easter - ef-pentecost class-1 red +augustine-of-canterbury
+2034-05-29 monday easter 8 ef-easter-8-monday class-1 red +mary-magdalene-de-pazzi
+2034-05-30 tuesday easter 8 ef-easter-8-tuesday class-1 red +felix-i
+2034-05-31 wednesday easter 8 ef-easter-8-wednesday class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2034-06-01 thursday easter 8 ef-easter-8-thursday class-1 red +angela-merici
+2034-06-02 friday easter 8 ef-easter-8-friday class-1 red +sts-marcellinus-peter-erasmus
+2034-06-03 saturday easter 8 ef-easter-8-saturday class-1 red
+2034-06-04 sunday time-after-pentecost 1 ef-trinity class-1 white +francis-caracciolo
+2034-06-05 monday time-after-pentecost 1 boniface class-3 red
+2034-06-06 tuesday time-after-pentecost 1 norbert class-3 white
+2034-06-07 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2034-06-08 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2034-06-09 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green +sts-primus-felicianus
+2034-06-10 saturday time-after-pentecost 1 margaret-of-scotland class-3 white
+2034-06-11 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +barnabas
+2034-06-12 monday time-after-pentecost 2 john-of-san-fecundo class-3 red +basilidus
+2034-06-13 tuesday time-after-pentecost 2 anthony-of-padua class-3 white
+2034-06-14 wednesday time-after-pentecost 2 basil-the-great class-3 white
+2034-06-15 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green +vitus
+2034-06-16 friday time-after-pentecost - ef-sacred-heart class-1 white
+2034-06-17 saturday time-after-pentecost 2 gregory-barbarigo class-3 white
+2034-06-18 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +ephrem-of-syria +marcus-and-marcellianus
+2034-06-19 monday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2034-06-20 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green +silverius
+2034-06-21 wednesday time-after-pentecost 3 aloysius-gongzaga class-3 white
+2034-06-22 thursday time-after-pentecost 3 paulinus-of-nola class-3 white
+2034-06-23 friday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2034-06-24 saturday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2034-06-25 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +william
+2034-06-26 monday time-after-pentecost 4 sts-john-paul class-3 red
+2034-06-27 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2034-06-28 wednesday time-after-pentecost 4 vigil-of-sts-peter-paul class-2 violet
+2034-06-29 thursday time-after-pentecost 4 sts-peter-paul class-1 red
+2034-06-30 friday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2034-07-01 saturday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2034-07-02 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +visitation-of-the-blessed-virgin-mary +processus-and-martinian
+2034-07-03 monday time-after-pentecost 5 irenaeus class-3 red
+2034-07-04 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green
+2034-07-05 wednesday time-after-pentecost 5 anthony-mary-zaccariah class-3 white
+2034-07-06 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2034-07-07 friday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2034-07-08 saturday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2034-07-09 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2034-07-10 monday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2034-07-11 tuesday time-after-pentecost 6 ef-time-after-pentecost-6-tuesday class-4 green +pius-i
+2034-07-12 wednesday time-after-pentecost 6 john-gualbert class-3 red +naboris-et-felicis
+2034-07-13 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2034-07-14 friday time-after-pentecost 6 bonaventure class-3 white
+2034-07-15 saturday time-after-pentecost 6 henry-the-emperor class-3 white
+2034-07-16 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +our-lady-of-mt-carmel
+2034-07-17 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +alexis
+2034-07-18 tuesday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2034-07-19 wednesday time-after-pentecost 7 vincent-de-paul class-3 white
+2034-07-20 thursday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2034-07-21 friday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2034-07-22 saturday time-after-pentecost 7 mary-magdalene class-3 white
+2034-07-23 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +apollinaris +liborii
+2034-07-24 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +christina
+2034-07-25 tuesday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2034-07-26 wednesday time-after-pentecost 8 anne-mother-of-the-blessed-virgin class-2 white
+2034-07-27 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +pantaleon
+2034-07-28 friday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2034-07-29 saturday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2034-07-30 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +sts-abdon-sennen
+2034-07-31 monday time-after-pentecost 9 ignatius-loyola class-3 white
+2034-08-01 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +holy-machabees
+2034-08-02 wednesday time-after-pentecost 9 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2034-08-03 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green
+2034-08-04 friday time-after-pentecost 9 dominic class-3 white
+2034-08-05 saturday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2034-08-06 sunday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2034-08-07 monday time-after-pentecost 10 cajetan class-3 white +donatus
+2034-08-08 tuesday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2034-08-09 wednesday time-after-pentecost 10 vigil-of-st-lawrence class-3 red +romanus
+2034-08-10 thursday time-after-pentecost 10 lawrence class-2 red
+2034-08-11 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +sts-tiburtius-susanna
+2034-08-12 saturday time-after-pentecost 10 clare class-3 white
+2034-08-13 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +sts-hippolytus-cassian
+2034-08-14 monday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2034-08-15 tuesday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2034-08-16 wednesday time-after-pentecost 11 joachim-father-of-the-blessed-virgin class-2 white
+2034-08-17 thursday time-after-pentecost 11 hyacinth class-3 white
+2034-08-18 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +agapitus
+2034-08-19 saturday time-after-pentecost 11 john-eudes class-3 white
+2034-08-20 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +bernard-of-clairvaux
+2034-08-21 monday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2034-08-22 tuesday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2034-08-23 wednesday time-after-pentecost 12 philip-benizi class-3 white
+2034-08-24 thursday time-after-pentecost 12 bartholomew class-2 red
+2034-08-25 friday time-after-pentecost 12 louis-ix class-3 white
+2034-08-26 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +zephyrinus
+2034-08-27 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +joseph-calasance
+2034-08-28 monday time-after-pentecost 13 augustine class-3 red +hermes
+2034-08-29 tuesday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2034-08-30 wednesday time-after-pentecost 13 rose-of-lima class-3 red +sts-felix-and-adauctus
+2034-08-31 thursday time-after-pentecost 13 raymond-nonnatus class-3 white
+2034-09-01 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green +giles +twelve-holy-brothers-martyrs
+2034-09-02 saturday time-after-pentecost 13 stephen-of-hungary class-3 white
+2034-09-03 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +pius-x
+2034-09-04 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green
+2034-09-05 tuesday time-after-pentecost 14 lawrence-justinian class-3 white
+2034-09-06 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green
+2034-09-07 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green
+2034-09-08 friday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2034-09-09 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +gorgonius
+2034-09-10 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +nicholas-of-tolentino
+2034-09-11 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green +sts-protus-hyacinth
+2034-09-12 tuesday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2034-09-13 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green
+2034-09-14 thursday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2034-09-15 friday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2034-09-16 saturday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2034-09-17 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +stigmata-of-st-francis
+2034-09-18 monday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2034-09-19 tuesday time-after-pentecost 16 januarius-companions class-3 red
+2034-09-20 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +sts-eustace-companions
+2034-09-21 thursday time-after-pentecost 16 matthew class-2 red
+2034-09-22 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2034-09-23 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +linus +thecla
+2034-09-24 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +our-lady-of-ransom
+2034-09-25 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green
+2034-09-26 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +sts-cyprian-justina
+2034-09-27 wednesday time-after-pentecost 17 sts-cosmas-damian class-3 red
+2034-09-28 thursday time-after-pentecost 17 wenceslaus class-3 red
+2034-09-29 friday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2034-09-30 saturday time-after-pentecost 17 jerome class-3 white
+2034-10-01 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +remigius
+2034-10-02 monday time-after-pentecost 18 holy-guardian-angels class-3 white
+2034-10-03 tuesday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2034-10-04 wednesday time-after-pentecost 18 francis-of-assisi class-3 white
+2034-10-05 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +placid-companions
+2034-10-06 friday time-after-pentecost 18 bruno class-3 white
+2034-10-07 saturday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2034-10-08 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +bridget-of-sweden +sergio-baccho-marcello-and-apulejo-martyrs
+2034-10-09 monday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2034-10-10 tuesday time-after-pentecost 19 francis-borgia class-3 white
+2034-10-11 wednesday time-after-pentecost 19 maternity-of-the-blessed-virgin-mary class-2 white
+2034-10-12 thursday time-after-pentecost 19 ef-time-after-pentecost-19-thursday class-4 green
+2034-10-13 friday time-after-pentecost 19 edward class-3 white
+2034-10-14 saturday time-after-pentecost 19 callistus-i class-3 red
+2034-10-15 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +teresa-of-avila
+2034-10-16 monday time-after-pentecost 20 hedwig class-3 white
+2034-10-17 tuesday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2034-10-18 wednesday time-after-pentecost 20 luke-the-evangelist class-2 red
+2034-10-19 thursday time-after-pentecost 20 peter-of-alcantara class-3 white
+2034-10-20 friday time-after-pentecost 20 john-cantius class-3 white
+2034-10-21 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green +hilarion +ursula-and-companions
+2034-10-22 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2034-10-23 monday time-after-pentecost 21 anthony-mary-claret class-3 white
+2034-10-24 tuesday time-after-pentecost 21 raphael-the-archangel class-3 white
+2034-10-25 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green +sts-chrysanthus-daria
+2034-10-26 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2034-10-27 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2034-10-28 saturday time-after-pentecost 21 sts-simon-jude class-2 red
+2034-10-29 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2034-10-30 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2034-10-31 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2034-11-01 wednesday time-after-pentecost 22 all-saints class-1 white
+2034-11-02 thursday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2034-11-03 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2034-11-04 saturday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2034-11-05 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green
+2034-11-06 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2034-11-07 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2034-11-08 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green +four-holy-crowned-martyrs
+2034-11-09 thursday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2034-11-10 friday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2034-11-11 saturday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2034-11-12 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-i
+2034-11-13 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green +didacus
+2034-11-14 tuesday time-after-pentecost 24 josaphat class-3 white
+2034-11-15 wednesday time-after-pentecost 24 albert-the-great class-3 white
+2034-11-16 thursday time-after-pentecost 24 gertrude-the-great class-3 white
+2034-11-17 friday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2034-11-18 saturday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2034-11-19 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +elizabeth-of-hungary +pontian
+2034-11-20 monday time-after-pentecost 25 felix-of-valois class-3 white
+2034-11-21 tuesday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2034-11-22 wednesday time-after-pentecost 25 cecilia class-3 red
+2034-11-23 thursday time-after-pentecost 25 clement-i class-3 red +felicity
+2034-11-24 friday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2034-11-25 saturday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2034-11-26 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +sylvester +peter-of-alexandria
+2034-11-27 monday time-after-pentecost 26 ef-time-after-pentecost-26-monday class-4 green
+2034-11-28 tuesday time-after-pentecost 26 ef-time-after-pentecost-26-tuesday class-4 green
+2034-11-29 wednesday time-after-pentecost 26 ef-time-after-pentecost-26-wednesday class-4 green +saturninus
+2034-11-30 thursday time-after-pentecost 26 andrew class-2 red
+2034-12-01 friday time-after-pentecost 26 ef-time-after-pentecost-26-friday class-4 green
+2034-12-02 saturday time-after-pentecost 26 vivian class-3 red
+2034-12-03 sunday advent 1 ef-advent-sunday-1 class-1 violet +francis-xavier
+2034-12-04 monday advent 1 peter-chrysologus class-3 white
+2034-12-05 tuesday advent 1 ef-advent-1-tuesday class-3 violet +sabbas
+2034-12-06 wednesday advent 1 nicholas class-3 white
+2034-12-07 thursday advent 1 ambrose class-3 white
+2034-12-08 friday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2034-12-09 saturday advent 1 ef-advent-1-saturday class-3 violet
+2034-12-10 sunday advent 2 ef-advent-sunday-2 class-2 violet +melchiades
+2034-12-11 monday advent 2 damasus-i class-3 white
+2034-12-12 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2034-12-13 wednesday advent 2 lucy class-3 red
+2034-12-14 thursday advent 2 ef-advent-2-thursday class-3 violet
+2034-12-15 friday advent 2 ef-advent-2-friday class-3 violet
+2034-12-16 saturday advent 2 eusebius class-3 red
+2034-12-17 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2034-12-18 monday advent 3 ef-advent-3-monday class-3 violet
+2034-12-19 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2034-12-20 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2034-12-21 thursday advent 3 thomas class-2 red
+2034-12-22 friday advent 3 ef-advent-ember-fri class-2 violet
+2034-12-23 saturday advent 3 ef-advent-ember-sat class-2 violet
+2034-12-24 sunday advent 4 vigil-of-christmas class-1 violet
+2034-12-25 monday christmas - ef-nativity class-1 white
+2034-12-26 tuesday christmas - stephen class-2 red
+2034-12-27 wednesday christmas - john-the-evangelist class-2 white
+2034-12-28 thursday christmas - holy-innocents class-2 red
+2034-12-29 friday christmas - ef-christmas-0-friday class-4 white +thomas-becket
+2034-12-30 saturday christmas - ef-christmas-0-saturday class-4 white
+2034-12-31 sunday christmas - ef-christmas-sunday-0 class-2 white +silvester
+2035-01-01 monday christmas - ef-circumcision class-1 white
+2035-01-02 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2035-01-03 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2035-01-04 thursday christmas - ef-christmas-0-thursday class-4 white
+2035-01-05 friday christmas - ef-christmas-0-friday class-4 white +telesphorus-pope-and-martyr
+2035-01-06 saturday time-after-epiphany - ef-epiphany class-1 white
+2035-01-07 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2035-01-08 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2035-01-09 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2035-01-10 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2035-01-11 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green +hyginus-pope-and-martyr
+2035-01-12 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2035-01-13 saturday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2035-01-14 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +hilary +felicis
+2035-01-15 monday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2035-01-16 tuesday time-after-epiphany 2 marcellus-i class-3 red
+2035-01-17 wednesday time-after-epiphany 2 anthony class-3 white
+2035-01-18 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +prisca
+2035-01-19 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2035-01-20 saturday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2035-01-21 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +agnes
+2035-01-22 monday septuagesima 1 sts-vincent-anastasius class-3 red
+2035-01-23 tuesday septuagesima 1 raymond-of-pe-afort class-3 white +emerentiana
+2035-01-24 wednesday septuagesima 1 timothy class-3 red
+2035-01-25 thursday septuagesima 1 conversion-of-st-paul class-3 white +peter
+2035-01-26 friday septuagesima 1 polycarp class-3 red
+2035-01-27 saturday septuagesima 1 john-chrysostom class-3 white
+2035-01-28 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +peter-nolasco
+2035-01-29 monday septuagesima 2 francis-de-sales class-3 white
+2035-01-30 tuesday septuagesima 2 martina class-3 red
+2035-01-31 wednesday septuagesima 2 john-bosco class-3 white
+2035-02-01 thursday septuagesima 2 ignatius-of-antioch class-3 red
+2035-02-02 friday septuagesima 2 purification-of-the-blessed-virgin-mary class-2 white
+2035-02-03 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +blaise
+2035-02-04 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +andrew-corsini
+2035-02-05 monday septuagesima 3 agatha class-3 red
+2035-02-06 tuesday septuagesima 3 titus class-3 white +dorothy
+2035-02-07 wednesday lent - ef-ash-wednesday class-1 violet +romuald
+2035-02-08 thursday lent - ef-lent-after-ashes-thursday class-3 violet +john-of-matha
+2035-02-09 friday lent - ef-lent-after-ashes-friday class-3 violet +cyril-of-alexandria +appollonia
+2035-02-10 saturday lent - ef-lent-after-ashes-saturday class-3 violet +scholastica
+2035-02-11 sunday lent 1 ef-lent-sunday-1 class-2 violet +our-lady-of-lourdes
+2035-02-12 monday lent 1 ef-lent-1-monday class-3 violet +seven-holy-servite-founders
+2035-02-13 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2035-02-14 wednesday lent 1 ef-lent-1-wednesday class-3 violet +valentine
+2035-02-15 thursday lent 1 ef-lent-1-thursday class-3 violet +sts-faustinus-jovita
+2035-02-16 friday lent 1 ef-lent-1-friday class-3 violet
+2035-02-17 saturday lent 1 ef-lent-1-saturday class-3 violet
+2035-02-18 sunday lent 2 ef-lent-sunday-2 class-2 violet +simeon
+2035-02-19 monday lent 2 ef-lent-2-monday class-3 violet
+2035-02-20 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2035-02-21 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2035-02-22 thursday lent 2 chair-of-st-peter class-2 white +paul
+2035-02-23 friday lent 2 ef-lent-2-friday class-3 violet +peter-damien
+2035-02-24 saturday lent 2 matthias class-2 red
+2035-02-25 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2035-02-26 monday lent 3 ef-lent-3-monday class-3 violet
+2035-02-27 tuesday lent 3 ef-lent-3-tuesday class-3 violet +gabriel-of-our-lady-of-sorrows
+2035-02-28 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2035-03-01 thursday lent 3 ef-lent-3-thursday class-3 violet
+2035-03-02 friday lent 3 ef-lent-3-friday class-3 violet
+2035-03-03 saturday lent 3 ef-lent-3-saturday class-3 violet
+2035-03-04 sunday lent 4 ef-lent-sunday-4 class-2 violet +casimir +lucius
+2035-03-05 monday lent 4 ef-lent-4-monday class-3 violet
+2035-03-06 tuesday lent 4 ef-lent-4-tuesday class-3 violet +sts-felicitas-perpetua
+2035-03-07 wednesday lent 4 ef-lent-4-wednesday class-3 violet +thomas-aquinas
+2035-03-08 thursday lent 4 ef-lent-4-thursday class-3 violet +john-of-god
+2035-03-09 friday lent 4 ef-lent-4-friday class-3 violet +frances-rome
+2035-03-10 saturday lent 4 ef-lent-4-saturday class-3 violet +forty-holy-martyrs-of-sebaste
+2035-03-11 sunday passiontide 1 ef-passion-sunday class-1 violet
+2035-03-12 monday passiontide - ef-passiontide-0-monday class-3 violet +gregory-the-great
+2035-03-13 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2035-03-14 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2035-03-15 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2035-03-16 friday passiontide - ef-passiontide-0-friday class-3 violet
+2035-03-17 saturday passiontide - ef-passiontide-0-saturday class-3 violet +patrick
+2035-03-18 sunday passiontide 2 ef-palm-sunday class-1 violet +cyril-of-jerusalem
+2035-03-19 monday passiontide - ef-passiontide-0-monday class-1 violet
+2035-03-20 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2035-03-21 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +benedict
+2035-03-22 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2035-03-23 friday passiontide - ef-passiontide-0-friday class-1 violet
+2035-03-24 saturday passiontide - ef-passiontide-0-saturday class-1 violet +gabriel-the-archangel
+2035-03-25 sunday easter 1 ef-easter-sunday class-1 white
+2035-03-26 monday easter 1 ef-easter-1-monday class-1 white
+2035-03-27 tuesday easter 1 ef-easter-1-tuesday class-1 white +john-damascene
+2035-03-28 wednesday easter 1 ef-easter-1-wednesday class-1 white +john-of-capistrano
+2035-03-29 thursday easter 1 ef-easter-1-thursday class-1 white
+2035-03-30 friday easter 1 ef-easter-1-friday class-1 white
+2035-03-31 saturday easter 1 ef-easter-1-saturday class-1 white
+2035-04-01 sunday easter 2 ef-low-sunday class-1 white
+2035-04-02 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white +joseph-spouse-of-the-bl-virgin-mary +francis-of-paola
+2035-04-03 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2035-04-04 wednesday easter 2 ef-easter-2-wednesday class-4 white +isidore-of-seville
+2035-04-05 thursday easter 2 ef-easter-2-thursday class-4 white +vincent-ferrer
+2035-04-06 friday easter 2 ef-easter-2-friday class-4 white
+2035-04-07 saturday easter 2 ef-easter-2-saturday class-4 white
+2035-04-08 sunday easter 3 ef-easter-sunday-3 class-2 white
+2035-04-09 monday easter 3 ef-easter-3-monday class-4 white
+2035-04-10 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2035-04-11 wednesday easter 3 leo-the-great class-3 white
+2035-04-12 thursday easter 3 ef-easter-3-thursday class-4 white
+2035-04-13 friday easter 3 hermenegild class-3 red
+2035-04-14 saturday easter 3 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2035-04-15 sunday easter 4 ef-easter-sunday-4 class-2 white
+2035-04-16 monday easter 4 ef-easter-4-monday class-4 white
+2035-04-17 tuesday easter 4 ef-easter-4-tuesday class-4 white +anicetus
+2035-04-18 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2035-04-19 thursday easter 4 ef-easter-4-thursday class-4 white
+2035-04-20 friday easter 4 ef-easter-4-friday class-4 white
+2035-04-21 saturday easter 4 anselm class-3 white
+2035-04-22 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-soter-caius
+2035-04-23 monday easter 5 ef-easter-5-monday class-4 white +george
+2035-04-24 tuesday easter 5 fidelis-of-sigmaringen class-3 red
+2035-04-25 wednesday easter 5 mark class-2 red
+2035-04-26 thursday easter 5 sts-cletus-marcellinus class-3 red
+2035-04-27 friday easter 5 peter-canisius class-3 white
+2035-04-28 saturday easter 5 paul-of-the-cross class-3 white
+2035-04-29 sunday easter 6 ef-easter-sunday-6 class-2 white +peter-of-verona
+2035-04-30 monday easter 6 catherine-of-siena class-3 white
+2035-05-01 tuesday easter 6 joseph-the-workman class-1 white
+2035-05-02 wednesday easter - ef-ascension-vigil class-2 white +athanasius
+2035-05-03 thursday easter - ef-ascension class-1 white +sts-alexander-companions
+2035-05-04 friday easter 6 monica class-3 white
+2035-05-05 saturday easter 6 pius-v class-3 white
+2035-05-06 sunday easter 7 ef-easter-sunday-7 class-2 white
+2035-05-07 monday easter 7 stanislaus class-3 red
+2035-05-08 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2035-05-09 wednesday easter 7 gregory-of-nazianzen class-3 white
+2035-05-10 thursday easter 7 antoninus class-3 white +gordiano-and-epimacho
+2035-05-11 friday easter 7 sts-philip-james class-2 red
+2035-05-12 saturday easter - ef-pentecost-vigil class-1 red +sts-nereus-achilleus-domitilla-pancras
+2035-05-13 sunday easter - ef-pentecost class-1 red +robert-bellarmine
+2035-05-14 monday easter 8 ef-easter-8-monday class-1 red
+2035-05-15 tuesday easter 8 ef-easter-8-tuesday class-1 red +john-baptist-de-la-salle
+2035-05-16 wednesday easter 8 ef-easter-8-wednesday class-1 red +ubaldus
+2035-05-17 thursday easter 8 ef-easter-8-thursday class-1 red +paschal-baylon
+2035-05-18 friday easter 8 ef-easter-8-friday class-1 red +venantius
+2035-05-19 saturday easter 8 ef-easter-8-saturday class-1 red +peter-celestine +pudentiana-virginis
+2035-05-20 sunday time-after-pentecost 1 ef-trinity class-1 white +bernardine-of-siena
+2035-05-21 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2035-05-22 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green
+2035-05-23 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2035-05-24 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2035-05-25 friday time-after-pentecost 1 gregory-vii class-3 white +urban-pope-and-martyr
+2035-05-26 saturday time-after-pentecost 1 philip-neri class-3 white +eleutherius
+2035-05-27 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +bede-the-venerable +john-i
+2035-05-28 monday time-after-pentecost 2 augustine-of-canterbury class-3 white
+2035-05-29 tuesday time-after-pentecost 2 mary-magdalene-de-pazzi class-3 white
+2035-05-30 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green +felix-i
+2035-05-31 thursday time-after-pentecost 2 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2035-06-01 friday time-after-pentecost - ef-sacred-heart class-1 white +angela-merici
+2035-06-02 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green +sts-marcellinus-peter-erasmus
+2035-06-03 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green
+2035-06-04 monday time-after-pentecost 3 francis-caracciolo class-3 white
+2035-06-05 tuesday time-after-pentecost 3 boniface class-3 red
+2035-06-06 wednesday time-after-pentecost 3 norbert class-3 white
+2035-06-07 thursday time-after-pentecost 3 ef-time-after-pentecost-3-thursday class-4 green
+2035-06-08 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green
+2035-06-09 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green +sts-primus-felicianus
+2035-06-10 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +margaret-of-scotland
+2035-06-11 monday time-after-pentecost 4 barnabas class-3 red
+2035-06-12 tuesday time-after-pentecost 4 john-of-san-fecundo class-3 red +basilidus
+2035-06-13 wednesday time-after-pentecost 4 anthony-of-padua class-3 white
+2035-06-14 thursday time-after-pentecost 4 basil-the-great class-3 white
+2035-06-15 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green +vitus
+2035-06-16 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2035-06-17 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +gregory-barbarigo
+2035-06-18 monday time-after-pentecost 5 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2035-06-19 tuesday time-after-pentecost 5 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2035-06-20 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green +silverius
+2035-06-21 thursday time-after-pentecost 5 aloysius-gongzaga class-3 white
+2035-06-22 friday time-after-pentecost 5 paulinus-of-nola class-3 white
+2035-06-23 saturday time-after-pentecost 5 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2035-06-24 sunday time-after-pentecost 6 nativity-of-st-john-the-baptist class-1 white
+2035-06-25 monday time-after-pentecost 6 william class-3 white
+2035-06-26 tuesday time-after-pentecost 6 sts-john-paul class-3 red
+2035-06-27 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green
+2035-06-28 thursday time-after-pentecost 6 vigil-of-sts-peter-paul class-2 violet
+2035-06-29 friday time-after-pentecost 6 sts-peter-paul class-1 red
+2035-06-30 saturday time-after-pentecost 6 in-commemoratione-sancti-pauli-apostoli class-3 red
+2035-07-01 sunday time-after-pentecost 7 precious-blood-of-our-lord-jesus-christ class-1 red
+2035-07-02 monday time-after-pentecost 7 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2035-07-03 tuesday time-after-pentecost 7 irenaeus class-3 red
+2035-07-04 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green
+2035-07-05 thursday time-after-pentecost 7 anthony-mary-zaccariah class-3 white
+2035-07-06 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green
+2035-07-07 saturday time-after-pentecost 7 sts-cyril-methodius class-3 white
+2035-07-08 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +elizabeth-of-portugal
+2035-07-09 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green
+2035-07-10 tuesday time-after-pentecost 8 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2035-07-11 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +pius-i
+2035-07-12 thursday time-after-pentecost 8 john-gualbert class-3 red +naboris-et-felicis
+2035-07-13 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green
+2035-07-14 saturday time-after-pentecost 8 bonaventure class-3 white
+2035-07-15 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +henry-the-emperor
+2035-07-16 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +our-lady-of-mt-carmel
+2035-07-17 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +alexis
+2035-07-18 wednesday time-after-pentecost 9 camillus-de-lellis class-3 red +symphorosa-and-sons
+2035-07-19 thursday time-after-pentecost 9 vincent-de-paul class-3 white
+2035-07-20 friday time-after-pentecost 9 jerome-emiliani class-3 red +margaret
+2035-07-21 saturday time-after-pentecost 9 laurence-of-brindisi class-3 white +praxedis-virginis
+2035-07-22 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +mary-magdalene
+2035-07-23 monday time-after-pentecost 10 apollinaris class-3 white +liborii
+2035-07-24 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +christina
+2035-07-25 wednesday time-after-pentecost 10 james-the-greater class-2 red +christopher
+2035-07-26 thursday time-after-pentecost 10 anne-mother-of-the-blessed-virgin class-2 white
+2035-07-27 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +pantaleon
+2035-07-28 saturday time-after-pentecost 10 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2035-07-29 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +martha +felicis-simplicii-faustini-et-beatricis
+2035-07-30 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +sts-abdon-sennen
+2035-07-31 tuesday time-after-pentecost 11 ignatius-loyola class-3 white
+2035-08-01 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green +holy-machabees
+2035-08-02 thursday time-after-pentecost 11 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2035-08-03 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green
+2035-08-04 saturday time-after-pentecost 11 dominic class-3 white
+2035-08-05 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +dedication-of-the-basilica-of-st-mary-major
+2035-08-06 monday time-after-pentecost 12 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2035-08-07 tuesday time-after-pentecost 12 cajetan class-3 white +donatus
+2035-08-08 wednesday time-after-pentecost 12 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2035-08-09 thursday time-after-pentecost 12 vigil-of-st-lawrence class-3 red +romanus
+2035-08-10 friday time-after-pentecost 12 lawrence class-2 red
+2035-08-11 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +sts-tiburtius-susanna
+2035-08-12 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +clare
+2035-08-13 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green +sts-hippolytus-cassian
+2035-08-14 tuesday time-after-pentecost 13 vigil-of-the-assumption class-2 white
+2035-08-15 wednesday time-after-pentecost 13 assumption-of-the-blessed-virgin-mary class-1 white
+2035-08-16 thursday time-after-pentecost 13 joachim-father-of-the-blessed-virgin class-2 white
+2035-08-17 friday time-after-pentecost 13 hyacinth class-3 white
+2035-08-18 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +agapitus
+2035-08-19 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +john-eudes
+2035-08-20 monday time-after-pentecost 14 bernard-of-clairvaux class-3 white
+2035-08-21 tuesday time-after-pentecost 14 jane-frances-de-chantal class-3 white
+2035-08-22 wednesday time-after-pentecost 14 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2035-08-23 thursday time-after-pentecost 14 philip-benizi class-3 white
+2035-08-24 friday time-after-pentecost 14 bartholomew class-2 red
+2035-08-25 saturday time-after-pentecost 14 louis-ix class-3 white
+2035-08-26 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +zephyrinus
+2035-08-27 monday time-after-pentecost 15 joseph-calasance class-3 white
+2035-08-28 tuesday time-after-pentecost 15 augustine class-3 red +hermes
+2035-08-29 wednesday time-after-pentecost 15 beheading-of-st-john-the-baptist class-3 red +sabina
+2035-08-30 thursday time-after-pentecost 15 rose-of-lima class-3 red +sts-felix-and-adauctus
+2035-08-31 friday time-after-pentecost 15 raymond-nonnatus class-3 white
+2035-09-01 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +giles +twelve-holy-brothers-martyrs
+2035-09-02 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +stephen-of-hungary
+2035-09-03 monday time-after-pentecost 16 pius-x class-3 white
+2035-09-04 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green
+2035-09-05 wednesday time-after-pentecost 16 lawrence-justinian class-3 white
+2035-09-06 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green
+2035-09-07 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green
+2035-09-08 saturday time-after-pentecost 16 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2035-09-09 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +gorgonius
+2035-09-10 monday time-after-pentecost 17 nicholas-of-tolentino class-3 white
+2035-09-11 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +sts-protus-hyacinth
+2035-09-12 wednesday time-after-pentecost 17 most-holy-name-of-mary class-3 white
+2035-09-13 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green
+2035-09-14 friday time-after-pentecost 17 exaltation-of-the-holy-cross class-2 red
+2035-09-15 saturday time-after-pentecost 17 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2035-09-16 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-cornelius-cyprian +sts-euphemia-lucy-and-geminianus
+2035-09-17 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +stigmata-of-st-francis
+2035-09-18 tuesday time-after-pentecost 18 joseph-of-cupertino class-3 white
+2035-09-19 wednesday time-after-pentecost 18 ef-september-ember-wed class-2 violet +januarius-companions
+2035-09-20 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +sts-eustace-companions
+2035-09-21 friday time-after-pentecost 18 ef-september-ember-fri class-2 violet +matthew
+2035-09-22 saturday time-after-pentecost 18 ef-september-ember-sat class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2035-09-23 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +linus +thecla
+2035-09-24 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +our-lady-of-ransom
+2035-09-25 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green
+2035-09-26 wednesday time-after-pentecost 19 ef-time-after-pentecost-19-wednesday class-4 green +sts-cyprian-justina
+2035-09-27 thursday time-after-pentecost 19 sts-cosmas-damian class-3 red
+2035-09-28 friday time-after-pentecost 19 wenceslaus class-3 red
+2035-09-29 saturday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2035-09-30 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +jerome
+2035-10-01 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green +remigius
+2035-10-02 tuesday time-after-pentecost 20 holy-guardian-angels class-3 white
+2035-10-03 wednesday time-after-pentecost 20 theresa-of-the-infant-jesus class-3 white
+2035-10-04 thursday time-after-pentecost 20 francis-of-assisi class-3 white
+2035-10-05 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green +placid-companions
+2035-10-06 saturday time-after-pentecost 20 bruno class-3 white
+2035-10-07 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +our-lady-of-the-rosary +mark-i
+2035-10-08 monday time-after-pentecost 21 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2035-10-09 tuesday time-after-pentecost 21 john-leonardi class-3 white +dionysius-and-companions
+2035-10-10 wednesday time-after-pentecost 21 francis-borgia class-3 white
+2035-10-11 thursday time-after-pentecost 21 maternity-of-the-blessed-virgin-mary class-2 white
+2035-10-12 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2035-10-13 saturday time-after-pentecost 21 edward class-3 white
+2035-10-14 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +callistus-i
+2035-10-15 monday time-after-pentecost 22 teresa-of-avila class-3 white
+2035-10-16 tuesday time-after-pentecost 22 hedwig class-3 white
+2035-10-17 wednesday time-after-pentecost 22 margaret-mary-alacoque class-3 white
+2035-10-18 thursday time-after-pentecost 22 luke-the-evangelist class-2 red
+2035-10-19 friday time-after-pentecost 22 peter-of-alcantara class-3 white
+2035-10-20 saturday time-after-pentecost 22 john-cantius class-3 white
+2035-10-21 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +hilarion +ursula-and-companions
+2035-10-22 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2035-10-23 tuesday time-after-pentecost 23 anthony-mary-claret class-3 white
+2035-10-24 wednesday time-after-pentecost 23 raphael-the-archangel class-3 white
+2035-10-25 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green +sts-chrysanthus-daria
+2035-10-26 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2035-10-27 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2035-10-28 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-simon-jude
+2035-10-29 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green
+2035-10-30 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green
+2035-10-31 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2035-11-01 thursday time-after-pentecost 24 all-saints class-1 white
+2035-11-02 friday time-after-pentecost 24 commemoration-of-all-souls class-1 black
+2035-11-03 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green
+2035-11-04 sunday time-after-pentecost 4 ef-time-after-epiphany-sunday-4 class-2 green +charles-borromeo +sts-vitalis-and-agricola-martyrs
+2035-11-05 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green
+2035-11-06 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green
+2035-11-07 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green
+2035-11-08 thursday time-after-pentecost 25 ef-time-after-pentecost-25-thursday class-4 green +four-holy-crowned-martyrs
+2035-11-09 friday time-after-pentecost 25 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2035-11-10 saturday time-after-pentecost 25 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2035-11-11 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-of-tours +menna
+2035-11-12 monday time-after-pentecost 26 martin-i class-3 red
+2035-11-13 tuesday time-after-pentecost 26 ef-time-after-pentecost-26-tuesday class-4 green +didacus
+2035-11-14 wednesday time-after-pentecost 26 josaphat class-3 white
+2035-11-15 thursday time-after-pentecost 26 albert-the-great class-3 white
+2035-11-16 friday time-after-pentecost 26 gertrude-the-great class-3 white
+2035-11-17 saturday time-after-pentecost 26 gregory-the-wonderworker class-3 white
+2035-11-18 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +dedication-of-the-basilicas-of-sts-peter-paul
+2035-11-19 monday time-after-pentecost 27 elizabeth-of-hungary class-3 white +pontian
+2035-11-20 tuesday time-after-pentecost 27 felix-of-valois class-3 white
+2035-11-21 wednesday time-after-pentecost 27 presentation-of-the-blessed-virgin-mary class-3 white
+2035-11-22 thursday time-after-pentecost 27 cecilia class-3 red
+2035-11-23 friday time-after-pentecost 27 clement-i class-3 red +felicity
+2035-11-24 saturday time-after-pentecost 27 john-of-the-cross class-3 white +chrysogonus
+2035-11-25 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +catherine-of-alexandria
+2035-11-26 monday time-after-pentecost 28 sylvester class-3 white +peter-of-alexandria
+2035-11-27 tuesday time-after-pentecost 28 ef-time-after-pentecost-28-tuesday class-4 green
+2035-11-28 wednesday time-after-pentecost 28 ef-time-after-pentecost-28-wednesday class-4 green
+2035-11-29 thursday time-after-pentecost 28 ef-time-after-pentecost-28-thursday class-4 green +saturninus
+2035-11-30 friday time-after-pentecost 28 andrew class-2 red
+2035-12-01 saturday time-after-pentecost 28 ef-time-after-pentecost-28-saturday class-4 green
+2035-12-02 sunday advent 1 ef-advent-sunday-1 class-1 violet +vivian
+2035-12-03 monday advent 1 francis-xavier class-3 white
+2035-12-04 tuesday advent 1 peter-chrysologus class-3 white
+2035-12-05 wednesday advent 1 ef-advent-1-wednesday class-3 violet +sabbas
+2035-12-06 thursday advent 1 nicholas class-3 white
+2035-12-07 friday advent 1 ambrose class-3 white
+2035-12-08 saturday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2035-12-09 sunday advent 2 ef-advent-sunday-2 class-2 violet
+2035-12-10 monday advent 2 ef-advent-2-monday class-3 violet +melchiades
+2035-12-11 tuesday advent 2 damasus-i class-3 white
+2035-12-12 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2035-12-13 thursday advent 2 lucy class-3 red
+2035-12-14 friday advent 2 ef-advent-2-friday class-3 violet
+2035-12-15 saturday advent 2 ef-advent-2-saturday class-3 violet
+2035-12-16 sunday advent 3 ef-advent-sunday-3 class-2 violet +eusebius
+2035-12-17 monday advent 3 ef-advent-3-monday class-3 violet
+2035-12-18 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2035-12-19 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2035-12-20 thursday advent 3 ef-advent-3-thursday class-3 violet
+2035-12-21 friday advent 3 ef-advent-ember-fri class-2 violet +thomas
+2035-12-22 saturday advent 3 ef-advent-ember-sat class-2 violet
+2035-12-23 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2035-12-24 monday advent 4 vigil-of-christmas class-1 violet
+2035-12-25 tuesday christmas - ef-nativity class-1 white
+2035-12-26 wednesday christmas - stephen class-2 red
+2035-12-27 thursday christmas - john-the-evangelist class-2 white
+2035-12-28 friday christmas - holy-innocents class-2 red
+2035-12-29 saturday christmas - ef-christmas-0-saturday class-4 white +thomas-becket
+2035-12-30 sunday christmas - ef-christmas-sunday-0 class-2 white
+2035-12-31 monday christmas - ef-christmas-0-monday class-4 white +silvester
+2036-01-01 tuesday christmas - ef-circumcision class-1 white
+2036-01-02 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2036-01-03 thursday christmas - ef-christmas-0-thursday class-4 white
+2036-01-04 friday christmas - ef-christmas-0-friday class-4 white
+2036-01-05 saturday christmas - ef-christmas-0-saturday class-4 white +telesphorus-pope-and-martyr
+2036-01-06 sunday time-after-epiphany - ef-epiphany class-1 white
+2036-01-07 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2036-01-08 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2036-01-09 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2036-01-10 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2036-01-11 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green +hyginus-pope-and-martyr
+2036-01-12 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2036-01-13 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +commemoration-of-the-baptism-of-the-lord
+2036-01-14 monday time-after-epiphany 2 hilary class-3 white +felicis
+2036-01-15 tuesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2036-01-16 wednesday time-after-epiphany 2 marcellus-i class-3 red
+2036-01-17 thursday time-after-epiphany 2 anthony class-3 white
+2036-01-18 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +prisca
+2036-01-19 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2036-01-20 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-fabian-sebastian
+2036-01-21 monday time-after-epiphany 3 agnes class-3 red
+2036-01-22 tuesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2036-01-23 wednesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2036-01-24 thursday time-after-epiphany 3 timothy class-3 red
+2036-01-25 friday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2036-01-26 saturday time-after-epiphany 3 polycarp class-3 red
+2036-01-27 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +john-chrysostom
+2036-01-28 monday time-after-epiphany 4 peter-nolasco class-3 white
+2036-01-29 tuesday time-after-epiphany 4 francis-de-sales class-3 white
+2036-01-30 wednesday time-after-epiphany 4 martina class-3 red
+2036-01-31 thursday time-after-epiphany 4 john-bosco class-3 white
+2036-02-01 friday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2036-02-02 saturday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2036-02-03 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +blaise
+2036-02-04 monday time-after-epiphany 5 andrew-corsini class-3 white
+2036-02-05 tuesday time-after-epiphany 5 agatha class-3 red
+2036-02-06 wednesday time-after-epiphany 5 titus class-3 white +dorothy
+2036-02-07 thursday time-after-epiphany 5 romuald class-3 white
+2036-02-08 friday time-after-epiphany 5 john-of-matha class-3 white
+2036-02-09 saturday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2036-02-10 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +scholastica
+2036-02-11 monday septuagesima 1 our-lady-of-lourdes class-3 white
+2036-02-12 tuesday septuagesima 1 seven-holy-servite-founders class-3 white
+2036-02-13 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2036-02-14 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet +valentine
+2036-02-15 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet +sts-faustinus-jovita
+2036-02-16 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet
+2036-02-17 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2036-02-18 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet +simeon
+2036-02-19 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2036-02-20 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2036-02-21 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2036-02-22 friday septuagesima 2 chair-of-st-peter class-2 white +paul
+2036-02-23 saturday septuagesima 2 peter-damien class-3 white
+2036-02-24 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +matthias
+2036-02-25 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2036-02-26 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2036-02-27 wednesday lent - ef-ash-wednesday class-1 violet +gabriel-of-our-lady-of-sorrows
+2036-02-28 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2036-02-29 friday lent - ef-lent-after-ashes-friday class-3 violet
+2036-03-01 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2036-03-02 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2036-03-03 monday lent 1 ef-lent-1-monday class-3 violet
+2036-03-04 tuesday lent 1 ef-lent-1-tuesday class-3 violet +casimir +lucius
+2036-03-05 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2036-03-06 thursday lent 1 ef-lent-1-thursday class-3 violet +sts-felicitas-perpetua
+2036-03-07 friday lent 1 ef-lent-1-friday class-3 violet +thomas-aquinas
+2036-03-08 saturday lent 1 ef-lent-1-saturday class-3 violet +john-of-god
+2036-03-09 sunday lent 2 ef-lent-sunday-2 class-2 violet +frances-rome
+2036-03-10 monday lent 2 ef-lent-2-monday class-3 violet +forty-holy-martyrs-of-sebaste
+2036-03-11 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2036-03-12 wednesday lent 2 ef-lent-2-wednesday class-3 violet +gregory-the-great
+2036-03-13 thursday lent 2 ef-lent-2-thursday class-3 violet
+2036-03-14 friday lent 2 ef-lent-2-friday class-3 violet
+2036-03-15 saturday lent 2 ef-lent-2-saturday class-3 violet
+2036-03-16 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2036-03-17 monday lent 3 ef-lent-3-monday class-3 violet +patrick
+2036-03-18 tuesday lent 3 ef-lent-3-tuesday class-3 violet +cyril-of-jerusalem
+2036-03-19 wednesday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2036-03-20 thursday lent 3 ef-lent-3-thursday class-3 violet
+2036-03-21 friday lent 3 ef-lent-3-friday class-3 violet +benedict
+2036-03-22 saturday lent 3 ef-lent-3-saturday class-3 violet
+2036-03-23 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2036-03-24 monday lent 4 ef-lent-4-monday class-3 violet +gabriel-the-archangel
+2036-03-25 tuesday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2036-03-26 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2036-03-27 thursday lent 4 ef-lent-4-thursday class-3 violet +john-damascene
+2036-03-28 friday lent 4 ef-lent-4-friday class-3 violet +john-of-capistrano
+2036-03-29 saturday lent 4 ef-lent-4-saturday class-3 violet
+2036-03-30 sunday passiontide 1 ef-passion-sunday class-1 violet
+2036-03-31 monday passiontide - ef-passiontide-0-monday class-3 violet
+2036-04-01 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2036-04-02 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +francis-of-paola
+2036-04-03 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2036-04-04 friday passiontide - ef-passiontide-0-friday class-3 violet +isidore-of-seville
+2036-04-05 saturday passiontide - ef-passiontide-0-saturday class-3 violet +vincent-ferrer
+2036-04-06 sunday passiontide 2 ef-palm-sunday class-1 violet
+2036-04-07 monday passiontide - ef-passiontide-0-monday class-1 violet
+2036-04-08 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2036-04-09 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2036-04-10 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2036-04-11 friday passiontide - ef-passiontide-0-friday class-1 violet +leo-the-great
+2036-04-12 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2036-04-13 sunday easter 1 ef-easter-sunday class-1 white +hermenegild
+2036-04-14 monday easter 1 ef-easter-1-monday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2036-04-15 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2036-04-16 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2036-04-17 thursday easter 1 ef-easter-1-thursday class-1 white +anicetus
+2036-04-18 friday easter 1 ef-easter-1-friday class-1 white
+2036-04-19 saturday easter 1 ef-easter-1-saturday class-1 white
+2036-04-20 sunday easter 2 ef-low-sunday class-1 white
+2036-04-21 monday easter 2 anselm class-3 white
+2036-04-22 tuesday easter 2 sts-soter-caius class-3 red
+2036-04-23 wednesday easter 2 ef-easter-2-wednesday class-4 white +george
+2036-04-24 thursday easter 2 fidelis-of-sigmaringen class-3 red
+2036-04-25 friday easter 2 mark class-2 red
+2036-04-26 saturday easter 2 sts-cletus-marcellinus class-3 red
+2036-04-27 sunday easter 3 ef-easter-sunday-3 class-2 white +peter-canisius
+2036-04-28 monday easter 3 paul-of-the-cross class-3 white
+2036-04-29 tuesday easter 3 peter-of-verona class-3 red
+2036-04-30 wednesday easter 3 catherine-of-siena class-3 white
+2036-05-01 thursday easter 3 joseph-the-workman class-1 white
+2036-05-02 friday easter 3 athanasius class-3 white
+2036-05-03 saturday easter 3 ef-easter-3-saturday class-4 white +sts-alexander-companions
+2036-05-04 sunday easter 4 ef-easter-sunday-4 class-2 white +monica
+2036-05-05 monday easter 4 pius-v class-3 white
+2036-05-06 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2036-05-07 wednesday easter 4 stanislaus class-3 red
+2036-05-08 thursday easter 4 ef-easter-4-thursday class-4 white
+2036-05-09 friday easter 4 gregory-of-nazianzen class-3 white
+2036-05-10 saturday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2036-05-11 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-philip-james
+2036-05-12 monday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2036-05-13 tuesday easter 5 robert-bellarmine class-3 white
+2036-05-14 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2036-05-15 thursday easter 5 john-baptist-de-la-salle class-3 white
+2036-05-16 friday easter 5 ef-easter-5-friday class-4 white +ubaldus
+2036-05-17 saturday easter 5 paschal-baylon class-3 white
+2036-05-18 sunday easter 6 ef-easter-sunday-6 class-2 white +venantius
+2036-05-19 monday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2036-05-20 tuesday easter 6 bernardine-of-siena class-3 white
+2036-05-21 wednesday easter - ef-ascension-vigil class-2 white
+2036-05-22 thursday easter - ef-ascension class-1 white
+2036-05-23 friday easter 6 ef-easter-6-friday class-4 white
+2036-05-24 saturday easter 6 ef-easter-6-saturday class-4 white
+2036-05-25 sunday easter 7 ef-easter-sunday-7 class-2 white +gregory-vii +urban-pope-and-martyr
+2036-05-26 monday easter 7 philip-neri class-3 white +eleutherius
+2036-05-27 tuesday easter 7 bede-the-venerable class-3 white +john-i
+2036-05-28 wednesday easter 7 augustine-of-canterbury class-3 white
+2036-05-29 thursday easter 7 mary-magdalene-de-pazzi class-3 white
+2036-05-30 friday easter 7 ef-easter-7-friday class-4 white +felix-i
+2036-05-31 saturday easter - ef-pentecost-vigil class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2036-06-01 sunday easter - ef-pentecost class-1 red +angela-merici
+2036-06-02 monday easter 8 ef-easter-8-monday class-1 red +sts-marcellinus-peter-erasmus
+2036-06-03 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2036-06-04 wednesday easter 8 ef-easter-8-wednesday class-1 red +francis-caracciolo
+2036-06-05 thursday easter 8 ef-easter-8-thursday class-1 red +boniface
+2036-06-06 friday easter 8 ef-easter-8-friday class-1 red +norbert
+2036-06-07 saturday easter 8 ef-easter-8-saturday class-1 red
+2036-06-08 sunday time-after-pentecost 1 ef-trinity class-1 white
+2036-06-09 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green +sts-primus-felicianus
+2036-06-10 tuesday time-after-pentecost 1 margaret-of-scotland class-3 white
+2036-06-11 wednesday time-after-pentecost 1 barnabas class-3 red
+2036-06-12 thursday time-after-pentecost - ef-corpus-christi class-1 white +john-of-san-fecundo +basilidus
+2036-06-13 friday time-after-pentecost 1 anthony-of-padua class-3 white
+2036-06-14 saturday time-after-pentecost 1 basil-the-great class-3 white
+2036-06-15 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +vitus
+2036-06-16 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2036-06-17 tuesday time-after-pentecost 2 gregory-barbarigo class-3 white
+2036-06-18 wednesday time-after-pentecost 2 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2036-06-19 thursday time-after-pentecost 2 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2036-06-20 friday time-after-pentecost - ef-sacred-heart class-1 white +silverius
+2036-06-21 saturday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2036-06-22 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +paulinus-of-nola
+2036-06-23 monday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2036-06-24 tuesday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2036-06-25 wednesday time-after-pentecost 3 william class-3 white
+2036-06-26 thursday time-after-pentecost 3 sts-john-paul class-3 red
+2036-06-27 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green
+2036-06-28 saturday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2036-06-29 sunday time-after-pentecost 4 sts-peter-paul class-1 red
+2036-06-30 monday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2036-07-01 tuesday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2036-07-02 wednesday time-after-pentecost 4 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2036-07-03 thursday time-after-pentecost 4 irenaeus class-3 red
+2036-07-04 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green
+2036-07-05 saturday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2036-07-06 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green
+2036-07-07 monday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2036-07-08 tuesday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2036-07-09 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2036-07-10 thursday time-after-pentecost 5 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2036-07-11 friday time-after-pentecost 5 ef-time-after-pentecost-5-friday class-4 green +pius-i
+2036-07-12 saturday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2036-07-13 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2036-07-14 monday time-after-pentecost 6 bonaventure class-3 white
+2036-07-15 tuesday time-after-pentecost 6 henry-the-emperor class-3 white
+2036-07-16 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +our-lady-of-mt-carmel
+2036-07-17 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green +alexis
+2036-07-18 friday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2036-07-19 saturday time-after-pentecost 6 vincent-de-paul class-3 white
+2036-07-20 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +jerome-emiliani +margaret
+2036-07-21 monday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2036-07-22 tuesday time-after-pentecost 7 mary-magdalene class-3 white
+2036-07-23 wednesday time-after-pentecost 7 apollinaris class-3 white +liborii
+2036-07-24 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +christina
+2036-07-25 friday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2036-07-26 saturday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2036-07-27 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +pantaleon
+2036-07-28 monday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2036-07-29 tuesday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2036-07-30 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +sts-abdon-sennen
+2036-07-31 thursday time-after-pentecost 8 ignatius-loyola class-3 white
+2036-08-01 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +holy-machabees
+2036-08-02 saturday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2036-08-03 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green
+2036-08-04 monday time-after-pentecost 9 dominic class-3 white
+2036-08-05 tuesday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2036-08-06 wednesday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2036-08-07 thursday time-after-pentecost 9 cajetan class-3 white +donatus
+2036-08-08 friday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2036-08-09 saturday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2036-08-10 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +lawrence
+2036-08-11 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green +sts-tiburtius-susanna
+2036-08-12 tuesday time-after-pentecost 10 clare class-3 white
+2036-08-13 wednesday time-after-pentecost 10 ef-time-after-pentecost-10-wednesday class-4 green +sts-hippolytus-cassian
+2036-08-14 thursday time-after-pentecost 10 vigil-of-the-assumption class-2 white
+2036-08-15 friday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2036-08-16 saturday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2036-08-17 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +hyacinth
+2036-08-18 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +agapitus
+2036-08-19 tuesday time-after-pentecost 11 john-eudes class-3 white
+2036-08-20 wednesday time-after-pentecost 11 bernard-of-clairvaux class-3 white
+2036-08-21 thursday time-after-pentecost 11 jane-frances-de-chantal class-3 white
+2036-08-22 friday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2036-08-23 saturday time-after-pentecost 11 philip-benizi class-3 white
+2036-08-24 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +bartholomew
+2036-08-25 monday time-after-pentecost 12 louis-ix class-3 white
+2036-08-26 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +zephyrinus
+2036-08-27 wednesday time-after-pentecost 12 joseph-calasance class-3 white
+2036-08-28 thursday time-after-pentecost 12 augustine class-3 red +hermes
+2036-08-29 friday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2036-08-30 saturday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2036-08-31 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +raymond-nonnatus
+2036-09-01 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green +giles +twelve-holy-brothers-martyrs
+2036-09-02 tuesday time-after-pentecost 13 stephen-of-hungary class-3 white
+2036-09-03 wednesday time-after-pentecost 13 pius-x class-3 white
+2036-09-04 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green
+2036-09-05 friday time-after-pentecost 13 lawrence-justinian class-3 white
+2036-09-06 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green
+2036-09-07 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green
+2036-09-08 monday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2036-09-09 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +gorgonius
+2036-09-10 wednesday time-after-pentecost 14 nicholas-of-tolentino class-3 white
+2036-09-11 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green +sts-protus-hyacinth
+2036-09-12 friday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2036-09-13 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green
+2036-09-14 sunday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2036-09-15 monday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2036-09-16 tuesday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2036-09-17 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green +stigmata-of-st-francis
+2036-09-18 thursday time-after-pentecost 15 joseph-of-cupertino class-3 white
+2036-09-19 friday time-after-pentecost 15 januarius-companions class-3 red
+2036-09-20 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +sts-eustace-companions
+2036-09-21 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +matthew
+2036-09-22 monday time-after-pentecost 16 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2036-09-23 tuesday time-after-pentecost 16 linus class-3 red +thecla
+2036-09-24 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +our-lady-of-ransom
+2036-09-25 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green
+2036-09-26 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +sts-cyprian-justina
+2036-09-27 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +sts-cosmas-damian
+2036-09-28 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +wenceslaus
+2036-09-29 monday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2036-09-30 tuesday time-after-pentecost 17 jerome class-3 white
+2036-10-01 wednesday time-after-pentecost 17 ef-time-after-pentecost-17-wednesday class-4 green +remigius
+2036-10-02 thursday time-after-pentecost 17 holy-guardian-angels class-3 white
+2036-10-03 friday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2036-10-04 saturday time-after-pentecost 17 francis-of-assisi class-3 white
+2036-10-05 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +placid-companions
+2036-10-06 monday time-after-pentecost 18 bruno class-3 white
+2036-10-07 tuesday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2036-10-08 wednesday time-after-pentecost 18 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2036-10-09 thursday time-after-pentecost 18 john-leonardi class-3 white +dionysius-and-companions
+2036-10-10 friday time-after-pentecost 18 francis-borgia class-3 white
+2036-10-11 saturday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2036-10-12 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green
+2036-10-13 monday time-after-pentecost 19 edward class-3 white
+2036-10-14 tuesday time-after-pentecost 19 callistus-i class-3 red
+2036-10-15 wednesday time-after-pentecost 19 teresa-of-avila class-3 white
+2036-10-16 thursday time-after-pentecost 19 hedwig class-3 white
+2036-10-17 friday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2036-10-18 saturday time-after-pentecost 19 luke-the-evangelist class-2 red
+2036-10-19 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +peter-of-alcantara
+2036-10-20 monday time-after-pentecost 20 john-cantius class-3 white
+2036-10-21 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green +hilarion +ursula-and-companions
+2036-10-22 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2036-10-23 thursday time-after-pentecost 20 anthony-mary-claret class-3 white
+2036-10-24 friday time-after-pentecost 20 raphael-the-archangel class-3 white
+2036-10-25 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green +sts-chrysanthus-daria
+2036-10-26 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2036-10-27 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2036-10-28 tuesday time-after-pentecost 21 sts-simon-jude class-2 red
+2036-10-29 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2036-10-30 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2036-10-31 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2036-11-01 saturday time-after-pentecost 21 all-saints class-1 white
+2036-11-02 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2036-11-03 monday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2036-11-04 tuesday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2036-11-05 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green
+2036-11-06 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2036-11-07 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2036-11-08 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green +four-holy-crowned-martyrs
+2036-11-09 sunday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2036-11-10 monday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2036-11-11 tuesday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2036-11-12 wednesday time-after-pentecost 23 martin-i class-3 red
+2036-11-13 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green +didacus
+2036-11-14 friday time-after-pentecost 23 josaphat class-3 white
+2036-11-15 saturday time-after-pentecost 23 albert-the-great class-3 white
+2036-11-16 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +gertrude-the-great
+2036-11-17 monday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2036-11-18 tuesday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2036-11-19 wednesday time-after-pentecost 24 elizabeth-of-hungary class-3 white +pontian
+2036-11-20 thursday time-after-pentecost 24 felix-of-valois class-3 white
+2036-11-21 friday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2036-11-22 saturday time-after-pentecost 24 cecilia class-3 red
+2036-11-23 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +clement-i +felicity
+2036-11-24 monday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2036-11-25 tuesday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2036-11-26 wednesday time-after-pentecost 25 sylvester class-3 white +peter-of-alexandria
+2036-11-27 thursday time-after-pentecost 25 ef-time-after-pentecost-25-thursday class-4 green
+2036-11-28 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green
+2036-11-29 saturday time-after-pentecost 25 ef-time-after-pentecost-25-saturday class-4 green +saturninus
+2036-11-30 sunday advent 1 ef-advent-sunday-1 class-1 violet +andrew
+2036-12-01 monday advent 1 ef-advent-1-monday class-3 violet
+2036-12-02 tuesday advent 1 vivian class-3 red
+2036-12-03 wednesday advent 1 francis-xavier class-3 white
+2036-12-04 thursday advent 1 peter-chrysologus class-3 white
+2036-12-05 friday advent 1 ef-advent-1-friday class-3 violet +sabbas
+2036-12-06 saturday advent 1 nicholas class-3 white
+2036-12-07 sunday advent 2 ef-advent-sunday-2 class-2 violet +ambrose
+2036-12-08 monday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2036-12-09 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2036-12-10 wednesday advent 2 ef-advent-2-wednesday class-3 violet +melchiades
+2036-12-11 thursday advent 2 damasus-i class-3 white
+2036-12-12 friday advent 2 ef-advent-2-friday class-3 violet
+2036-12-13 saturday advent 2 lucy class-3 red
+2036-12-14 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2036-12-15 monday advent 3 ef-advent-3-monday class-3 violet
+2036-12-16 tuesday advent 3 eusebius class-3 red
+2036-12-17 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2036-12-18 thursday advent 3 ef-advent-3-thursday class-3 violet
+2036-12-19 friday advent 3 ef-advent-ember-fri class-2 violet
+2036-12-20 saturday advent 3 ef-advent-ember-sat class-2 violet
+2036-12-21 sunday advent 4 ef-advent-sunday-4 class-2 violet +thomas
+2036-12-22 monday advent 4 ef-advent-4-monday class-3 violet
+2036-12-23 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2036-12-24 wednesday advent 4 vigil-of-christmas class-1 violet
+2036-12-25 thursday christmas - ef-nativity class-1 white
+2036-12-26 friday christmas - stephen class-2 red
+2036-12-27 saturday christmas - john-the-evangelist class-2 white
+2036-12-28 sunday christmas - ef-christmas-sunday-0 class-2 white +holy-innocents
+2036-12-29 monday christmas - ef-christmas-0-monday class-4 white +thomas-becket
+2036-12-30 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2036-12-31 wednesday christmas - ef-christmas-0-wednesday class-4 white +silvester
+2037-01-01 thursday christmas - ef-circumcision class-1 white
+2037-01-02 friday christmas - ef-christmas-0-friday class-4 white
+2037-01-03 saturday christmas - ef-christmas-0-saturday class-4 white
+2037-01-04 sunday christmas - ef-christmas-sunday-0 class-2 white
+2037-01-05 monday christmas - ef-christmas-0-monday class-4 white +telesphorus-pope-and-martyr
+2037-01-06 tuesday time-after-epiphany - ef-epiphany class-1 white
+2037-01-07 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2037-01-08 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2037-01-09 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2037-01-10 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2037-01-11 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green +hyginus-pope-and-martyr
+2037-01-12 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2037-01-13 tuesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2037-01-14 wednesday time-after-epiphany 2 hilary class-3 white +felicis
+2037-01-15 thursday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2037-01-16 friday time-after-epiphany 2 marcellus-i class-3 red
+2037-01-17 saturday time-after-epiphany 2 anthony class-3 white
+2037-01-18 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +prisca
+2037-01-19 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2037-01-20 tuesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2037-01-21 wednesday time-after-epiphany 3 agnes class-3 red
+2037-01-22 thursday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2037-01-23 friday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2037-01-24 saturday time-after-epiphany 3 timothy class-3 red
+2037-01-25 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +conversion-of-st-paul +peter
+2037-01-26 monday time-after-epiphany 3 polycarp class-3 red
+2037-01-27 tuesday time-after-epiphany 4 john-chrysostom class-3 white
+2037-01-28 wednesday time-after-epiphany 4 peter-nolasco class-3 white
+2037-01-29 thursday time-after-epiphany 4 francis-de-sales class-3 white
+2037-01-30 friday time-after-epiphany 4 martina class-3 red
+2037-01-31 saturday time-after-epiphany 4 john-bosco class-3 white
+2037-02-01 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +ignatius-of-antioch
+2037-02-02 monday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2037-02-03 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet +blaise
+2037-02-04 wednesday septuagesima 1 andrew-corsini class-3 white
+2037-02-05 thursday septuagesima 1 agatha class-3 red
+2037-02-06 friday septuagesima 1 titus class-3 white +dorothy
+2037-02-07 saturday septuagesima 1 romuald class-3 white
+2037-02-08 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +john-of-matha
+2037-02-09 monday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2037-02-10 tuesday septuagesima 2 scholastica class-3 white
+2037-02-11 wednesday septuagesima 2 our-lady-of-lourdes class-3 white
+2037-02-12 thursday septuagesima 2 seven-holy-servite-founders class-3 white
+2037-02-13 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2037-02-14 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +valentine
+2037-02-15 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +sts-faustinus-jovita
+2037-02-16 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2037-02-17 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2037-02-18 wednesday lent - ef-ash-wednesday class-1 violet +simeon
+2037-02-19 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2037-02-20 friday lent - ef-lent-after-ashes-friday class-3 violet
+2037-02-21 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2037-02-22 sunday lent 1 ef-lent-sunday-1 class-2 violet +chair-of-st-peter +paul
+2037-02-23 monday lent 1 ef-lent-1-monday class-3 violet +peter-damien
+2037-02-24 tuesday lent 1 matthias class-2 red
+2037-02-25 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2037-02-26 thursday lent 1 ef-lent-1-thursday class-3 violet
+2037-02-27 friday lent 1 ef-lent-1-friday class-3 violet +gabriel-of-our-lady-of-sorrows
+2037-02-28 saturday lent 1 ef-lent-1-saturday class-3 violet
+2037-03-01 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2037-03-02 monday lent 2 ef-lent-2-monday class-3 violet
+2037-03-03 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2037-03-04 wednesday lent 2 ef-lent-2-wednesday class-3 violet +casimir +lucius
+2037-03-05 thursday lent 2 ef-lent-2-thursday class-3 violet
+2037-03-06 friday lent 2 ef-lent-2-friday class-3 violet +sts-felicitas-perpetua
+2037-03-07 saturday lent 2 ef-lent-2-saturday class-3 violet +thomas-aquinas
+2037-03-08 sunday lent 3 ef-lent-sunday-3 class-2 violet +john-of-god
+2037-03-09 monday lent 3 ef-lent-3-monday class-3 violet +frances-rome
+2037-03-10 tuesday lent 3 ef-lent-3-tuesday class-3 violet +forty-holy-martyrs-of-sebaste
+2037-03-11 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2037-03-12 thursday lent 3 ef-lent-3-thursday class-3 violet +gregory-the-great
+2037-03-13 friday lent 3 ef-lent-3-friday class-3 violet
+2037-03-14 saturday lent 3 ef-lent-3-saturday class-3 violet
+2037-03-15 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2037-03-16 monday lent 4 ef-lent-4-monday class-3 violet
+2037-03-17 tuesday lent 4 ef-lent-4-tuesday class-3 violet +patrick
+2037-03-18 wednesday lent 4 ef-lent-4-wednesday class-3 violet +cyril-of-jerusalem
+2037-03-19 thursday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2037-03-20 friday lent 4 ef-lent-4-friday class-3 violet
+2037-03-21 saturday lent 4 ef-lent-4-saturday class-3 violet +benedict
+2037-03-22 sunday passiontide 1 ef-passion-sunday class-1 violet
+2037-03-23 monday passiontide - ef-passiontide-0-monday class-3 violet
+2037-03-24 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +gabriel-the-archangel
+2037-03-25 wednesday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2037-03-26 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2037-03-27 friday passiontide - ef-passiontide-0-friday class-3 violet +john-damascene
+2037-03-28 saturday passiontide - ef-passiontide-0-saturday class-3 violet +john-of-capistrano
+2037-03-29 sunday passiontide 2 ef-palm-sunday class-1 violet
+2037-03-30 monday passiontide - ef-passiontide-0-monday class-1 violet
+2037-03-31 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2037-04-01 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2037-04-02 thursday passiontide - ef-passiontide-0-thursday class-1 violet +francis-of-paola
+2037-04-03 friday passiontide - ef-passiontide-0-friday class-1 violet
+2037-04-04 saturday passiontide - ef-passiontide-0-saturday class-1 violet +isidore-of-seville
+2037-04-05 sunday easter 1 ef-easter-sunday class-1 white +vincent-ferrer
+2037-04-06 monday easter 1 ef-easter-1-monday class-1 white
+2037-04-07 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2037-04-08 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2037-04-09 thursday easter 1 ef-easter-1-thursday class-1 white
+2037-04-10 friday easter 1 ef-easter-1-friday class-1 white
+2037-04-11 saturday easter 1 ef-easter-1-saturday class-1 white +leo-the-great
+2037-04-12 sunday easter 2 ef-low-sunday class-1 white
+2037-04-13 monday easter 2 hermenegild class-3 red
+2037-04-14 tuesday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2037-04-15 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2037-04-16 thursday easter 2 ef-easter-2-thursday class-4 white
+2037-04-17 friday easter 2 ef-easter-2-friday class-4 white +anicetus
+2037-04-18 saturday easter 2 ef-easter-2-saturday class-4 white
+2037-04-19 sunday easter 3 ef-easter-sunday-3 class-2 white
+2037-04-20 monday easter 3 ef-easter-3-monday class-4 white
+2037-04-21 tuesday easter 3 anselm class-3 white
+2037-04-22 wednesday easter 3 sts-soter-caius class-3 red
+2037-04-23 thursday easter 3 ef-easter-3-thursday class-4 white +george
+2037-04-24 friday easter 3 fidelis-of-sigmaringen class-3 red
+2037-04-25 saturday easter 3 mark class-2 red
+2037-04-26 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-cletus-marcellinus
+2037-04-27 monday easter 4 peter-canisius class-3 white
+2037-04-28 tuesday easter 4 paul-of-the-cross class-3 white
+2037-04-29 wednesday easter 4 peter-of-verona class-3 red
+2037-04-30 thursday easter 4 catherine-of-siena class-3 white
+2037-05-01 friday easter 4 joseph-the-workman class-1 white
+2037-05-02 saturday easter 4 athanasius class-3 white
+2037-05-03 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-alexander-companions
+2037-05-04 monday easter 5 monica class-3 white
+2037-05-05 tuesday easter 5 pius-v class-3 white
+2037-05-06 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2037-05-07 thursday easter 5 stanislaus class-3 red
+2037-05-08 friday easter 5 ef-easter-5-friday class-4 white
+2037-05-09 saturday easter 5 gregory-of-nazianzen class-3 white
+2037-05-10 sunday easter 6 ef-easter-sunday-6 class-2 white +antoninus +gordiano-and-epimacho
+2037-05-11 monday easter 6 sts-philip-james class-2 red
+2037-05-12 tuesday easter 6 sts-nereus-achilleus-domitilla-pancras class-3 red
+2037-05-13 wednesday easter - ef-ascension-vigil class-2 white +robert-bellarmine
+2037-05-14 thursday easter - ef-ascension class-1 white
+2037-05-15 friday easter 6 john-baptist-de-la-salle class-3 white
+2037-05-16 saturday easter 6 ef-easter-6-saturday class-4 white +ubaldus
+2037-05-17 sunday easter 7 ef-easter-sunday-7 class-2 white +paschal-baylon
+2037-05-18 monday easter 7 venantius class-3 red
+2037-05-19 tuesday easter 7 peter-celestine class-3 white +pudentiana-virginis
+2037-05-20 wednesday easter 7 bernardine-of-siena class-3 white
+2037-05-21 thursday easter 7 ef-easter-7-thursday class-4 white
+2037-05-22 friday easter 7 ef-easter-7-friday class-4 white
+2037-05-23 saturday easter - ef-pentecost-vigil class-1 red
+2037-05-24 sunday easter - ef-pentecost class-1 red
+2037-05-25 monday easter 8 ef-easter-8-monday class-1 red +gregory-vii +urban-pope-and-martyr
+2037-05-26 tuesday easter 8 ef-easter-8-tuesday class-1 red +philip-neri +eleutherius
+2037-05-27 wednesday easter 8 ef-easter-8-wednesday class-1 red +bede-the-venerable +john-i
+2037-05-28 thursday easter 8 ef-easter-8-thursday class-1 red +augustine-of-canterbury
+2037-05-29 friday easter 8 ef-easter-8-friday class-1 red +mary-magdalene-de-pazzi
+2037-05-30 saturday easter 8 ef-easter-8-saturday class-1 red +felix-i
+2037-05-31 sunday time-after-pentecost 1 ef-trinity class-1 white +queenship-of-the-blessed-virgin-mary +petronilla
+2037-06-01 monday time-after-pentecost 1 angela-merici class-3 white
+2037-06-02 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green +sts-marcellinus-peter-erasmus
+2037-06-03 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2037-06-04 thursday time-after-pentecost - ef-corpus-christi class-1 white +francis-caracciolo
+2037-06-05 friday time-after-pentecost 1 boniface class-3 red
+2037-06-06 saturday time-after-pentecost 1 norbert class-3 white
+2037-06-07 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2037-06-08 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2037-06-09 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green +sts-primus-felicianus
+2037-06-10 wednesday time-after-pentecost 2 margaret-of-scotland class-3 white
+2037-06-11 thursday time-after-pentecost 2 barnabas class-3 red
+2037-06-12 friday time-after-pentecost - ef-sacred-heart class-1 white +john-of-san-fecundo +basilidus
+2037-06-13 saturday time-after-pentecost 2 anthony-of-padua class-3 white
+2037-06-14 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +basil-the-great
+2037-06-15 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green +vitus
+2037-06-16 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2037-06-17 wednesday time-after-pentecost 3 gregory-barbarigo class-3 white
+2037-06-18 thursday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2037-06-19 friday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2037-06-20 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green +silverius
+2037-06-21 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +aloysius-gongzaga
+2037-06-22 monday time-after-pentecost 4 paulinus-of-nola class-3 white
+2037-06-23 tuesday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2037-06-24 wednesday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2037-06-25 thursday time-after-pentecost 4 william class-3 white
+2037-06-26 friday time-after-pentecost 4 sts-john-paul class-3 red
+2037-06-27 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2037-06-28 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +vigil-of-sts-peter-paul
+2037-06-29 monday time-after-pentecost 5 sts-peter-paul class-1 red
+2037-06-30 tuesday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2037-07-01 wednesday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2037-07-02 thursday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2037-07-03 friday time-after-pentecost 5 irenaeus class-3 red
+2037-07-04 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green
+2037-07-05 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +anthony-mary-zaccariah
+2037-07-06 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2037-07-07 tuesday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2037-07-08 wednesday time-after-pentecost 6 elizabeth-of-portugal class-3 white
+2037-07-09 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2037-07-10 friday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2037-07-11 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +pius-i
+2037-07-12 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +john-gualbert +naboris-et-felicis
+2037-07-13 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2037-07-14 tuesday time-after-pentecost 7 bonaventure class-3 white
+2037-07-15 wednesday time-after-pentecost 7 henry-the-emperor class-3 white
+2037-07-16 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +our-lady-of-mt-carmel
+2037-07-17 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +alexis
+2037-07-18 saturday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2037-07-19 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +vincent-de-paul
+2037-07-20 monday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2037-07-21 tuesday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2037-07-22 wednesday time-after-pentecost 8 mary-magdalene class-3 white
+2037-07-23 thursday time-after-pentecost 8 apollinaris class-3 white +liborii
+2037-07-24 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +christina
+2037-07-25 saturday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2037-07-26 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +anne-mother-of-the-blessed-virgin
+2037-07-27 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +pantaleon
+2037-07-28 tuesday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2037-07-29 wednesday time-after-pentecost 9 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2037-07-30 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +sts-abdon-sennen
+2037-07-31 friday time-after-pentecost 9 ignatius-loyola class-3 white
+2037-08-01 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +holy-machabees
+2037-08-02 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +alphonsus-liguori +stephen-i-pope-and-martyr
+2037-08-03 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green
+2037-08-04 tuesday time-after-pentecost 10 dominic class-3 white
+2037-08-05 wednesday time-after-pentecost 10 dedication-of-the-basilica-of-st-mary-major class-3 white
+2037-08-06 thursday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2037-08-07 friday time-after-pentecost 10 cajetan class-3 white +donatus
+2037-08-08 saturday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2037-08-09 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +vigil-of-st-lawrence +romanus
+2037-08-10 monday time-after-pentecost 11 lawrence class-2 red
+2037-08-11 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green +sts-tiburtius-susanna
+2037-08-12 wednesday time-after-pentecost 11 clare class-3 white
+2037-08-13 thursday time-after-pentecost 11 ef-time-after-pentecost-11-thursday class-4 green +sts-hippolytus-cassian
+2037-08-14 friday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2037-08-15 saturday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2037-08-16 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +joachim-father-of-the-blessed-virgin
+2037-08-17 monday time-after-pentecost 12 hyacinth class-3 white
+2037-08-18 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +agapitus
+2037-08-19 wednesday time-after-pentecost 12 john-eudes class-3 white
+2037-08-20 thursday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2037-08-21 friday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2037-08-22 saturday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2037-08-23 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +philip-benizi
+2037-08-24 monday time-after-pentecost 13 bartholomew class-2 red
+2037-08-25 tuesday time-after-pentecost 13 louis-ix class-3 white
+2037-08-26 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +zephyrinus
+2037-08-27 thursday time-after-pentecost 13 joseph-calasance class-3 white
+2037-08-28 friday time-after-pentecost 13 augustine class-3 red +hermes
+2037-08-29 saturday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2037-08-30 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +rose-of-lima +sts-felix-and-adauctus
+2037-08-31 monday time-after-pentecost 14 raymond-nonnatus class-3 white
+2037-09-01 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +giles +twelve-holy-brothers-martyrs
+2037-09-02 wednesday time-after-pentecost 14 stephen-of-hungary class-3 white
+2037-09-03 thursday time-after-pentecost 14 pius-x class-3 white
+2037-09-04 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green
+2037-09-05 saturday time-after-pentecost 14 lawrence-justinian class-3 white
+2037-09-06 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green
+2037-09-07 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green
+2037-09-08 tuesday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2037-09-09 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green +gorgonius
+2037-09-10 thursday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2037-09-11 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green +sts-protus-hyacinth
+2037-09-12 saturday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2037-09-13 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2037-09-14 monday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2037-09-15 tuesday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2037-09-16 wednesday time-after-pentecost 16 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2037-09-17 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +stigmata-of-st-francis
+2037-09-18 friday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2037-09-19 saturday time-after-pentecost 16 januarius-companions class-3 red
+2037-09-20 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-eustace-companions
+2037-09-21 monday time-after-pentecost 17 matthew class-2 red
+2037-09-22 tuesday time-after-pentecost 17 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2037-09-23 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +linus +thecla
+2037-09-24 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +our-lady-of-ransom
+2037-09-25 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet
+2037-09-26 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +sts-cyprian-justina
+2037-09-27 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-cosmas-damian
+2037-09-28 monday time-after-pentecost 18 wenceslaus class-3 red
+2037-09-29 tuesday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2037-09-30 wednesday time-after-pentecost 18 jerome class-3 white
+2037-10-01 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +remigius
+2037-10-02 friday time-after-pentecost 18 holy-guardian-angels class-3 white
+2037-10-03 saturday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2037-10-04 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +francis-of-assisi
+2037-10-05 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +placid-companions
+2037-10-06 tuesday time-after-pentecost 19 bruno class-3 white
+2037-10-07 wednesday time-after-pentecost 19 our-lady-of-the-rosary class-2 white +mark-i
+2037-10-08 thursday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2037-10-09 friday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2037-10-10 saturday time-after-pentecost 19 francis-borgia class-3 white
+2037-10-11 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +maternity-of-the-blessed-virgin-mary
+2037-10-12 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green
+2037-10-13 tuesday time-after-pentecost 20 edward class-3 white
+2037-10-14 wednesday time-after-pentecost 20 callistus-i class-3 red
+2037-10-15 thursday time-after-pentecost 20 teresa-of-avila class-3 white
+2037-10-16 friday time-after-pentecost 20 hedwig class-3 white
+2037-10-17 saturday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2037-10-18 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +luke-the-evangelist
+2037-10-19 monday time-after-pentecost 21 peter-of-alcantara class-3 white
+2037-10-20 tuesday time-after-pentecost 21 john-cantius class-3 white
+2037-10-21 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green +hilarion +ursula-and-companions
+2037-10-22 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2037-10-23 friday time-after-pentecost 21 anthony-mary-claret class-3 white
+2037-10-24 saturday time-after-pentecost 21 raphael-the-archangel class-3 white
+2037-10-25 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-chrysanthus-daria
+2037-10-26 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2037-10-27 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2037-10-28 wednesday time-after-pentecost 22 sts-simon-jude class-2 red
+2037-10-29 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2037-10-30 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2037-10-31 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2037-11-01 sunday time-after-pentecost 23 all-saints class-1 white
+2037-11-02 monday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2037-11-03 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2037-11-04 wednesday time-after-pentecost 23 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2037-11-05 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2037-11-06 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2037-11-07 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2037-11-08 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +four-holy-crowned-martyrs
+2037-11-09 monday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2037-11-10 tuesday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2037-11-11 wednesday time-after-pentecost 24 martin-of-tours class-3 white +menna
+2037-11-12 thursday time-after-pentecost 24 martin-i class-3 red
+2037-11-13 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +didacus
+2037-11-14 saturday time-after-pentecost 24 josaphat class-3 white
+2037-11-15 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +albert-the-great
+2037-11-16 monday time-after-pentecost 25 gertrude-the-great class-3 white
+2037-11-17 tuesday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2037-11-18 wednesday time-after-pentecost 25 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2037-11-19 thursday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2037-11-20 friday time-after-pentecost 25 felix-of-valois class-3 white
+2037-11-21 saturday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2037-11-22 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +cecilia
+2037-11-23 monday time-after-pentecost 26 clement-i class-3 red +felicity
+2037-11-24 tuesday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2037-11-25 wednesday time-after-pentecost 26 catherine-of-alexandria class-3 red
+2037-11-26 thursday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2037-11-27 friday time-after-pentecost 26 ef-time-after-pentecost-26-friday class-4 green
+2037-11-28 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green
+2037-11-29 sunday advent 1 ef-advent-sunday-1 class-1 violet +saturninus
+2037-11-30 monday advent 1 andrew class-2 red
+2037-12-01 tuesday advent 1 ef-advent-1-tuesday class-3 violet
+2037-12-02 wednesday advent 1 vivian class-3 red
+2037-12-03 thursday advent 1 francis-xavier class-3 white
+2037-12-04 friday advent 1 peter-chrysologus class-3 white
+2037-12-05 saturday advent 1 ef-advent-1-saturday class-3 violet +sabbas
+2037-12-06 sunday advent 2 ef-advent-sunday-2 class-2 violet +nicholas
+2037-12-07 monday advent 2 ambrose class-3 white
+2037-12-08 tuesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2037-12-09 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2037-12-10 thursday advent 2 ef-advent-2-thursday class-3 violet +melchiades
+2037-12-11 friday advent 2 damasus-i class-3 white
+2037-12-12 saturday advent 2 ef-advent-2-saturday class-3 violet
+2037-12-13 sunday advent 3 ef-advent-sunday-3 class-2 violet +lucy
+2037-12-14 monday advent 3 ef-advent-3-monday class-3 violet
+2037-12-15 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2037-12-16 wednesday advent 3 ef-advent-ember-wed class-2 violet +eusebius
+2037-12-17 thursday advent 3 ef-advent-3-thursday class-3 violet
+2037-12-18 friday advent 3 ef-advent-ember-fri class-2 violet
+2037-12-19 saturday advent 3 ef-advent-ember-sat class-2 violet
+2037-12-20 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2037-12-21 monday advent 4 thomas class-2 red
+2037-12-22 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2037-12-23 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2037-12-24 thursday advent 4 vigil-of-christmas class-1 violet
+2037-12-25 friday christmas - ef-nativity class-1 white
+2037-12-26 saturday christmas - stephen class-2 red
+2037-12-27 sunday christmas - ef-christmas-sunday-0 class-2 white +john-the-evangelist
+2037-12-28 monday christmas - holy-innocents class-2 red
+2037-12-29 tuesday christmas - ef-christmas-0-tuesday class-4 white +thomas-becket
+2037-12-30 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2037-12-31 thursday christmas - ef-christmas-0-thursday class-4 white +silvester
+2038-01-01 friday christmas - ef-circumcision class-1 white
+2038-01-02 saturday christmas - ef-christmas-0-saturday class-4 white
+2038-01-03 sunday christmas - ef-christmas-sunday-0 class-2 white
+2038-01-04 monday christmas - ef-christmas-0-monday class-4 white
+2038-01-05 tuesday christmas - ef-christmas-0-tuesday class-4 white +telesphorus-pope-and-martyr
+2038-01-06 wednesday time-after-epiphany - ef-epiphany class-1 white
+2038-01-07 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2038-01-08 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2038-01-09 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2038-01-10 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2038-01-11 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green +hyginus-pope-and-martyr
+2038-01-12 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2038-01-13 wednesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2038-01-14 thursday time-after-epiphany 2 hilary class-3 white +felicis
+2038-01-15 friday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2038-01-16 saturday time-after-epiphany 2 marcellus-i class-3 red
+2038-01-17 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +anthony
+2038-01-18 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +prisca
+2038-01-19 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2038-01-20 wednesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2038-01-21 thursday time-after-epiphany 3 agnes class-3 red
+2038-01-22 friday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2038-01-23 saturday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2038-01-24 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +timothy
+2038-01-25 monday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2038-01-26 tuesday time-after-epiphany 3 polycarp class-3 red
+2038-01-27 wednesday time-after-epiphany 4 john-chrysostom class-3 white
+2038-01-28 thursday time-after-epiphany 4 peter-nolasco class-3 white
+2038-01-29 friday time-after-epiphany 4 francis-de-sales class-3 white
+2038-01-30 saturday time-after-epiphany 4 martina class-3 red
+2038-01-31 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +john-bosco
+2038-02-01 monday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2038-02-02 tuesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2038-02-03 wednesday time-after-epiphany 5 ef-time-after-epiphany-5-wednesday class-4 green +blaise
+2038-02-04 thursday time-after-epiphany 5 andrew-corsini class-3 white
+2038-02-05 friday time-after-epiphany 5 agatha class-3 red
+2038-02-06 saturday time-after-epiphany 5 titus class-3 white +dorothy
+2038-02-07 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +romuald
+2038-02-08 monday time-after-epiphany 5 john-of-matha class-3 white
+2038-02-09 tuesday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2038-02-10 wednesday time-after-epiphany 6 scholastica class-3 white
+2038-02-11 thursday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2038-02-12 friday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2038-02-13 saturday time-after-epiphany 6 ef-time-after-epiphany-6-saturday class-4 green
+2038-02-14 sunday time-after-epiphany 6 ef-time-after-epiphany-sunday-6 class-2 green +valentine
+2038-02-15 monday time-after-epiphany 6 ef-time-after-epiphany-6-monday class-4 green +sts-faustinus-jovita
+2038-02-16 tuesday time-after-epiphany 6 ef-time-after-epiphany-6-tuesday class-4 green
+2038-02-17 wednesday time-after-epiphany 7 ef-time-after-epiphany-7-wednesday class-4 green
+2038-02-18 thursday time-after-epiphany 7 ef-time-after-epiphany-7-thursday class-4 green +simeon
+2038-02-19 friday time-after-epiphany 7 ef-time-after-epiphany-7-friday class-4 green
+2038-02-20 saturday time-after-epiphany 7 ef-time-after-epiphany-7-saturday class-4 green
+2038-02-21 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2038-02-22 monday septuagesima 1 chair-of-st-peter class-2 white +paul
+2038-02-23 tuesday septuagesima 1 peter-damien class-3 white
+2038-02-24 wednesday septuagesima 1 matthias class-2 red
+2038-02-25 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2038-02-26 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2038-02-27 saturday septuagesima 1 gabriel-of-our-lady-of-sorrows class-3 white
+2038-02-28 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2038-03-01 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2038-03-02 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2038-03-03 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2038-03-04 thursday septuagesima 2 casimir class-3 white +lucius
+2038-03-05 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2038-03-06 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +sts-felicitas-perpetua
+2038-03-07 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +thomas-aquinas
+2038-03-08 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet +john-of-god
+2038-03-09 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet +frances-rome
+2038-03-10 wednesday lent - ef-ash-wednesday class-1 violet +forty-holy-martyrs-of-sebaste
+2038-03-11 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2038-03-12 friday lent - ef-lent-after-ashes-friday class-3 violet +gregory-the-great
+2038-03-13 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2038-03-14 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2038-03-15 monday lent 1 ef-lent-1-monday class-3 violet
+2038-03-16 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2038-03-17 wednesday lent 1 ef-lent-1-wednesday class-3 violet +patrick
+2038-03-18 thursday lent 1 ef-lent-1-thursday class-3 violet +cyril-of-jerusalem
+2038-03-19 friday lent 1 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2038-03-20 saturday lent 1 ef-lent-1-saturday class-3 violet
+2038-03-21 sunday lent 2 ef-lent-sunday-2 class-2 violet +benedict
+2038-03-22 monday lent 2 ef-lent-2-monday class-3 violet
+2038-03-23 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2038-03-24 wednesday lent 2 ef-lent-2-wednesday class-3 violet +gabriel-the-archangel
+2038-03-25 thursday lent 2 annunciation-of-the-blessed-virgin-mary class-1 white
+2038-03-26 friday lent 2 ef-lent-2-friday class-3 violet
+2038-03-27 saturday lent 2 ef-lent-2-saturday class-3 violet +john-damascene
+2038-03-28 sunday lent 3 ef-lent-sunday-3 class-2 violet +john-of-capistrano
+2038-03-29 monday lent 3 ef-lent-3-monday class-3 violet
+2038-03-30 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2038-03-31 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2038-04-01 thursday lent 3 ef-lent-3-thursday class-3 violet
+2038-04-02 friday lent 3 ef-lent-3-friday class-3 violet +francis-of-paola
+2038-04-03 saturday lent 3 ef-lent-3-saturday class-3 violet
+2038-04-04 sunday lent 4 ef-lent-sunday-4 class-2 violet +isidore-of-seville
+2038-04-05 monday lent 4 ef-lent-4-monday class-3 violet +vincent-ferrer
+2038-04-06 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2038-04-07 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2038-04-08 thursday lent 4 ef-lent-4-thursday class-3 violet
+2038-04-09 friday lent 4 ef-lent-4-friday class-3 violet
+2038-04-10 saturday lent 4 ef-lent-4-saturday class-3 violet
+2038-04-11 sunday passiontide 1 ef-passion-sunday class-1 violet +leo-the-great
+2038-04-12 monday passiontide - ef-passiontide-0-monday class-3 violet
+2038-04-13 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +hermenegild
+2038-04-14 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2038-04-15 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2038-04-16 friday passiontide - ef-passiontide-0-friday class-3 violet
+2038-04-17 saturday passiontide - ef-passiontide-0-saturday class-3 violet +anicetus
+2038-04-18 sunday passiontide 2 ef-palm-sunday class-1 violet
+2038-04-19 monday passiontide - ef-passiontide-0-monday class-1 violet
+2038-04-20 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2038-04-21 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +anselm
+2038-04-22 thursday passiontide - ef-passiontide-0-thursday class-1 violet +sts-soter-caius
+2038-04-23 friday passiontide - ef-passiontide-0-friday class-1 violet +george
+2038-04-24 saturday passiontide - ef-passiontide-0-saturday class-1 violet +fidelis-of-sigmaringen
+2038-04-25 sunday easter 1 ef-easter-sunday class-1 white +mark
+2038-04-26 monday easter 1 ef-easter-1-monday class-1 white +sts-cletus-marcellinus
+2038-04-27 tuesday easter 1 ef-easter-1-tuesday class-1 white +peter-canisius
+2038-04-28 wednesday easter 1 ef-easter-1-wednesday class-1 white +paul-of-the-cross
+2038-04-29 thursday easter 1 ef-easter-1-thursday class-1 white +peter-of-verona
+2038-04-30 friday easter 1 ef-easter-1-friday class-1 white +catherine-of-siena
+2038-05-01 saturday easter 1 ef-easter-1-saturday class-1 white
+2038-05-02 sunday easter 2 ef-low-sunday class-1 white +athanasius
+2038-05-03 monday easter 2 joseph-the-workman class-1 white +sts-alexander-companions
+2038-05-04 tuesday easter 2 monica class-3 white
+2038-05-05 wednesday easter 2 pius-v class-3 white
+2038-05-06 thursday easter 2 ef-easter-2-thursday class-4 white
+2038-05-07 friday easter 2 stanislaus class-3 red
+2038-05-08 saturday easter 2 ef-easter-2-saturday class-4 white
+2038-05-09 sunday easter 3 ef-easter-sunday-3 class-2 white +gregory-of-nazianzen
+2038-05-10 monday easter 3 antoninus class-3 white +gordiano-and-epimacho
+2038-05-11 tuesday easter 3 sts-philip-james class-2 red
+2038-05-12 wednesday easter 3 sts-nereus-achilleus-domitilla-pancras class-3 red
+2038-05-13 thursday easter 3 robert-bellarmine class-3 white
+2038-05-14 friday easter 3 ef-easter-3-friday class-4 white
+2038-05-15 saturday easter 3 john-baptist-de-la-salle class-3 white
+2038-05-16 sunday easter 4 ef-easter-sunday-4 class-2 white +ubaldus
+2038-05-17 monday easter 4 paschal-baylon class-3 white
+2038-05-18 tuesday easter 4 venantius class-3 red
+2038-05-19 wednesday easter 4 peter-celestine class-3 white +pudentiana-virginis
+2038-05-20 thursday easter 4 bernardine-of-siena class-3 white
+2038-05-21 friday easter 4 ef-easter-4-friday class-4 white
+2038-05-22 saturday easter 4 ef-easter-4-saturday class-4 white
+2038-05-23 sunday easter 5 ef-easter-sunday-5 class-2 white
+2038-05-24 monday easter 5 ef-easter-5-monday class-4 white
+2038-05-25 tuesday easter 5 gregory-vii class-3 white +urban-pope-and-martyr
+2038-05-26 wednesday easter 5 philip-neri class-3 white +eleutherius
+2038-05-27 thursday easter 5 bede-the-venerable class-3 white +john-i
+2038-05-28 friday easter 5 augustine-of-canterbury class-3 white
+2038-05-29 saturday easter 5 mary-magdalene-de-pazzi class-3 white
+2038-05-30 sunday easter 6 ef-easter-sunday-6 class-2 white +felix-i
+2038-05-31 monday easter 6 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2038-06-01 tuesday easter 6 angela-merici class-3 white
+2038-06-02 wednesday easter - ef-ascension-vigil class-2 white +sts-marcellinus-peter-erasmus
+2038-06-03 thursday easter - ef-ascension class-1 white
+2038-06-04 friday easter 6 francis-caracciolo class-3 white
+2038-06-05 saturday easter 6 boniface class-3 red
+2038-06-06 sunday easter 7 ef-easter-sunday-7 class-2 white +norbert
+2038-06-07 monday easter 7 ef-easter-7-monday class-4 white
+2038-06-08 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2038-06-09 wednesday easter 7 ef-easter-7-wednesday class-4 white +sts-primus-felicianus
+2038-06-10 thursday easter 7 margaret-of-scotland class-3 white
+2038-06-11 friday easter 7 barnabas class-3 red
+2038-06-12 saturday easter - ef-pentecost-vigil class-1 red +john-of-san-fecundo +basilidus
+2038-06-13 sunday easter - ef-pentecost class-1 red +anthony-of-padua
+2038-06-14 monday easter 8 ef-easter-8-monday class-1 red +basil-the-great
+2038-06-15 tuesday easter 8 ef-easter-8-tuesday class-1 red +vitus
+2038-06-16 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2038-06-17 thursday easter 8 ef-easter-8-thursday class-1 red +gregory-barbarigo
+2038-06-18 friday easter 8 ef-easter-8-friday class-1 red +ephrem-of-syria +marcus-and-marcellianus
+2038-06-19 saturday easter 8 ef-easter-8-saturday class-1 red +julia-of-falconieri +sts-gervasius-and-protasius
+2038-06-20 sunday time-after-pentecost 1 ef-trinity class-1 white +silverius
+2038-06-21 monday time-after-pentecost 1 aloysius-gongzaga class-3 white
+2038-06-22 tuesday time-after-pentecost 1 paulinus-of-nola class-3 white
+2038-06-23 wednesday time-after-pentecost 1 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2038-06-24 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2038-06-25 friday time-after-pentecost 1 nativity-of-st-john-the-baptist class-1 white +william
+2038-06-26 saturday time-after-pentecost 1 sts-john-paul class-3 red
+2038-06-27 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2038-06-28 monday time-after-pentecost 2 vigil-of-sts-peter-paul class-2 violet
+2038-06-29 tuesday time-after-pentecost 2 sts-peter-paul class-1 red
+2038-06-30 wednesday time-after-pentecost 2 in-commemoratione-sancti-pauli-apostoli class-3 red
+2038-07-01 thursday time-after-pentecost 2 precious-blood-of-our-lord-jesus-christ class-1 red
+2038-07-02 friday time-after-pentecost - ef-sacred-heart class-1 white +visitation-of-the-blessed-virgin-mary +processus-and-martinian
+2038-07-03 saturday time-after-pentecost 2 irenaeus class-3 red
+2038-07-04 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green
+2038-07-05 monday time-after-pentecost 3 anthony-mary-zaccariah class-3 white
+2038-07-06 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2038-07-07 wednesday time-after-pentecost 3 sts-cyril-methodius class-3 white
+2038-07-08 thursday time-after-pentecost 3 elizabeth-of-portugal class-3 white
+2038-07-09 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green
+2038-07-10 saturday time-after-pentecost 3 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2038-07-11 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +pius-i
+2038-07-12 monday time-after-pentecost 4 john-gualbert class-3 red +naboris-et-felicis
+2038-07-13 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2038-07-14 wednesday time-after-pentecost 4 bonaventure class-3 white
+2038-07-15 thursday time-after-pentecost 4 henry-the-emperor class-3 white
+2038-07-16 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green +our-lady-of-mt-carmel
+2038-07-17 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green +alexis
+2038-07-18 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +camillus-de-lellis +symphorosa-and-sons
+2038-07-19 monday time-after-pentecost 5 vincent-de-paul class-3 white
+2038-07-20 tuesday time-after-pentecost 5 jerome-emiliani class-3 red +margaret
+2038-07-21 wednesday time-after-pentecost 5 laurence-of-brindisi class-3 white +praxedis-virginis
+2038-07-22 thursday time-after-pentecost 5 mary-magdalene class-3 white
+2038-07-23 friday time-after-pentecost 5 apollinaris class-3 white +liborii
+2038-07-24 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green +christina
+2038-07-25 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +james-the-greater +christopher
+2038-07-26 monday time-after-pentecost 6 anne-mother-of-the-blessed-virgin class-2 white
+2038-07-27 tuesday time-after-pentecost 6 ef-time-after-pentecost-6-tuesday class-4 green +pantaleon
+2038-07-28 wednesday time-after-pentecost 6 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2038-07-29 thursday time-after-pentecost 6 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2038-07-30 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green +sts-abdon-sennen
+2038-07-31 saturday time-after-pentecost 6 ignatius-loyola class-3 white
+2038-08-01 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +holy-machabees
+2038-08-02 monday time-after-pentecost 7 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2038-08-03 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green
+2038-08-04 wednesday time-after-pentecost 7 dominic class-3 white
+2038-08-05 thursday time-after-pentecost 7 dedication-of-the-basilica-of-st-mary-major class-3 white
+2038-08-06 friday time-after-pentecost 7 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2038-08-07 saturday time-after-pentecost 7 cajetan class-3 white +donatus
+2038-08-08 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +john-mary-vianney +cyriacus-largus-and-smaragdus-martyrs
+2038-08-09 monday time-after-pentecost 8 vigil-of-st-lawrence class-3 red +romanus
+2038-08-10 tuesday time-after-pentecost 8 lawrence class-2 red
+2038-08-11 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +sts-tiburtius-susanna
+2038-08-12 thursday time-after-pentecost 8 clare class-3 white
+2038-08-13 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +sts-hippolytus-cassian
+2038-08-14 saturday time-after-pentecost 8 vigil-of-the-assumption class-2 white
+2038-08-15 sunday time-after-pentecost 9 assumption-of-the-blessed-virgin-mary class-1 white
+2038-08-16 monday time-after-pentecost 9 joachim-father-of-the-blessed-virgin class-2 white
+2038-08-17 tuesday time-after-pentecost 9 hyacinth class-3 white
+2038-08-18 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +agapitus
+2038-08-19 thursday time-after-pentecost 9 john-eudes class-3 white
+2038-08-20 friday time-after-pentecost 9 bernard-of-clairvaux class-3 white
+2038-08-21 saturday time-after-pentecost 9 jane-frances-de-chantal class-3 white
+2038-08-22 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +immaculate-heart-of-mary +sts-timothy-hippolytus-and-symphorianus-martyrs
+2038-08-23 monday time-after-pentecost 10 philip-benizi class-3 white
+2038-08-24 tuesday time-after-pentecost 10 bartholomew class-2 red
+2038-08-25 wednesday time-after-pentecost 10 louis-ix class-3 white
+2038-08-26 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +zephyrinus
+2038-08-27 friday time-after-pentecost 10 joseph-calasance class-3 white
+2038-08-28 saturday time-after-pentecost 10 augustine class-3 red +hermes
+2038-08-29 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +beheading-of-st-john-the-baptist +sabina
+2038-08-30 monday time-after-pentecost 11 rose-of-lima class-3 red +sts-felix-and-adauctus
+2038-08-31 tuesday time-after-pentecost 11 raymond-nonnatus class-3 white
+2038-09-01 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green +giles +twelve-holy-brothers-martyrs
+2038-09-02 thursday time-after-pentecost 11 stephen-of-hungary class-3 white
+2038-09-03 friday time-after-pentecost 11 pius-x class-3 white
+2038-09-04 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green
+2038-09-05 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +lawrence-justinian
+2038-09-06 monday time-after-pentecost 12 ef-time-after-pentecost-12-monday class-4 green
+2038-09-07 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green
+2038-09-08 wednesday time-after-pentecost 12 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2038-09-09 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green +gorgonius
+2038-09-10 friday time-after-pentecost 12 nicholas-of-tolentino class-3 white
+2038-09-11 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +sts-protus-hyacinth
+2038-09-12 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +most-holy-name-of-mary
+2038-09-13 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green
+2038-09-14 tuesday time-after-pentecost 13 exaltation-of-the-holy-cross class-2 red
+2038-09-15 wednesday time-after-pentecost 13 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2038-09-16 thursday time-after-pentecost 13 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2038-09-17 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green +stigmata-of-st-francis
+2038-09-18 saturday time-after-pentecost 13 joseph-of-cupertino class-3 white
+2038-09-19 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +januarius-companions
+2038-09-20 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +sts-eustace-companions
+2038-09-21 tuesday time-after-pentecost 14 matthew class-2 red
+2038-09-22 wednesday time-after-pentecost 14 ef-september-ember-wed class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2038-09-23 thursday time-after-pentecost 14 linus class-3 red +thecla
+2038-09-24 friday time-after-pentecost 14 ef-september-ember-fri class-2 violet +our-lady-of-ransom
+2038-09-25 saturday time-after-pentecost 14 ef-september-ember-sat class-2 violet
+2038-09-26 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +sts-cyprian-justina
+2038-09-27 monday time-after-pentecost 15 sts-cosmas-damian class-3 red
+2038-09-28 tuesday time-after-pentecost 15 wenceslaus class-3 red
+2038-09-29 wednesday time-after-pentecost 15 dedication-of-st-michael-the-archangel class-1 white
+2038-09-30 thursday time-after-pentecost 15 jerome class-3 white
+2038-10-01 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green +remigius
+2038-10-02 saturday time-after-pentecost 15 holy-guardian-angels class-3 white
+2038-10-03 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +theresa-of-the-infant-jesus
+2038-10-04 monday time-after-pentecost 16 francis-of-assisi class-3 white
+2038-10-05 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +placid-companions
+2038-10-06 wednesday time-after-pentecost 16 bruno class-3 white
+2038-10-07 thursday time-after-pentecost 16 our-lady-of-the-rosary class-2 white +mark-i
+2038-10-08 friday time-after-pentecost 16 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2038-10-09 saturday time-after-pentecost 16 john-leonardi class-3 white +dionysius-and-companions
+2038-10-10 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +francis-borgia
+2038-10-11 monday time-after-pentecost 17 maternity-of-the-blessed-virgin-mary class-2 white
+2038-10-12 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green
+2038-10-13 wednesday time-after-pentecost 17 edward class-3 white
+2038-10-14 thursday time-after-pentecost 17 callistus-i class-3 red
+2038-10-15 friday time-after-pentecost 17 teresa-of-avila class-3 white
+2038-10-16 saturday time-after-pentecost 17 hedwig class-3 white
+2038-10-17 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +margaret-mary-alacoque
+2038-10-18 monday time-after-pentecost 18 luke-the-evangelist class-2 red
+2038-10-19 tuesday time-after-pentecost 18 peter-of-alcantara class-3 white
+2038-10-20 wednesday time-after-pentecost 18 john-cantius class-3 white
+2038-10-21 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +hilarion +ursula-and-companions
+2038-10-22 friday time-after-pentecost 18 ef-time-after-pentecost-18-friday class-4 green
+2038-10-23 saturday time-after-pentecost 18 anthony-mary-claret class-3 white
+2038-10-24 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +raphael-the-archangel
+2038-10-25 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +sts-chrysanthus-daria
+2038-10-26 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green
+2038-10-27 wednesday time-after-pentecost 19 ef-time-after-pentecost-19-wednesday class-4 green
+2038-10-28 thursday time-after-pentecost 19 sts-simon-jude class-2 red
+2038-10-29 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green
+2038-10-30 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green
+2038-10-31 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2038-11-01 monday time-after-pentecost 20 all-saints class-1 white
+2038-11-02 tuesday time-after-pentecost 20 commemoration-of-all-souls class-1 black
+2038-11-03 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2038-11-04 thursday time-after-pentecost 20 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2038-11-05 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2038-11-06 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2038-11-07 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2038-11-08 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green +four-holy-crowned-martyrs
+2038-11-09 tuesday time-after-pentecost 21 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2038-11-10 wednesday time-after-pentecost 21 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2038-11-11 thursday time-after-pentecost 21 martin-of-tours class-3 white +menna
+2038-11-12 friday time-after-pentecost 21 martin-i class-3 red
+2038-11-13 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green +didacus
+2038-11-14 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +josaphat
+2038-11-15 monday time-after-pentecost 22 albert-the-great class-3 white
+2038-11-16 tuesday time-after-pentecost 22 gertrude-the-great class-3 white
+2038-11-17 wednesday time-after-pentecost 22 gregory-the-wonderworker class-3 white
+2038-11-18 thursday time-after-pentecost 22 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2038-11-19 friday time-after-pentecost 22 elizabeth-of-hungary class-3 white +pontian
+2038-11-20 saturday time-after-pentecost 22 felix-of-valois class-3 white
+2038-11-21 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +presentation-of-the-blessed-virgin-mary
+2038-11-22 monday time-after-pentecost 23 cecilia class-3 red
+2038-11-23 tuesday time-after-pentecost 23 clement-i class-3 red +felicity
+2038-11-24 wednesday time-after-pentecost 23 john-of-the-cross class-3 white +chrysogonus
+2038-11-25 thursday time-after-pentecost 23 catherine-of-alexandria class-3 red
+2038-11-26 friday time-after-pentecost 23 sylvester class-3 white +peter-of-alexandria
+2038-11-27 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2038-11-28 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2038-11-29 monday advent 1 ef-advent-1-monday class-3 violet +saturninus
+2038-11-30 tuesday advent 1 andrew class-2 red
+2038-12-01 wednesday advent 1 ef-advent-1-wednesday class-3 violet
+2038-12-02 thursday advent 1 vivian class-3 red
+2038-12-03 friday advent 1 francis-xavier class-3 white
+2038-12-04 saturday advent 1 peter-chrysologus class-3 white
+2038-12-05 sunday advent 2 ef-advent-sunday-2 class-2 violet +sabbas
+2038-12-06 monday advent 2 nicholas class-3 white
+2038-12-07 tuesday advent 2 ambrose class-3 white
+2038-12-08 wednesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2038-12-09 thursday advent 2 ef-advent-2-thursday class-3 violet
+2038-12-10 friday advent 2 ef-advent-2-friday class-3 violet +melchiades
+2038-12-11 saturday advent 2 damasus-i class-3 white
+2038-12-12 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2038-12-13 monday advent 3 lucy class-3 red
+2038-12-14 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2038-12-15 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2038-12-16 thursday advent 3 eusebius class-3 red
+2038-12-17 friday advent 3 ef-advent-ember-fri class-2 violet
+2038-12-18 saturday advent 3 ef-advent-ember-sat class-2 violet
+2038-12-19 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2038-12-20 monday advent 4 ef-advent-4-monday class-3 violet
+2038-12-21 tuesday advent 4 thomas class-2 red
+2038-12-22 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2038-12-23 thursday advent 4 ef-advent-4-thursday class-3 violet
+2038-12-24 friday advent 4 vigil-of-christmas class-1 violet
+2038-12-25 saturday christmas - ef-nativity class-1 white
+2038-12-26 sunday christmas - ef-christmas-sunday-0 class-2 white +stephen
+2038-12-27 monday christmas - john-the-evangelist class-2 white
+2038-12-28 tuesday christmas - holy-innocents class-2 red
+2038-12-29 wednesday christmas - ef-christmas-0-wednesday class-4 white +thomas-becket
+2038-12-30 thursday christmas - ef-christmas-0-thursday class-4 white
+2038-12-31 friday christmas - ef-christmas-0-friday class-4 white +silvester
+2039-01-01 saturday christmas - ef-circumcision class-1 white
+2039-01-02 sunday christmas - ef-christmas-sunday-0 class-2 white
+2039-01-03 monday christmas - ef-christmas-0-monday class-4 white
+2039-01-04 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2039-01-05 wednesday christmas - ef-christmas-0-wednesday class-4 white +telesphorus-pope-and-martyr
+2039-01-06 thursday time-after-epiphany - ef-epiphany class-1 white
+2039-01-07 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2039-01-08 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2039-01-09 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2039-01-10 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2039-01-11 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green +hyginus-pope-and-martyr
+2039-01-12 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2039-01-13 thursday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2039-01-14 friday time-after-epiphany 2 hilary class-3 white +felicis
+2039-01-15 saturday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2039-01-16 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +marcellus-i
+2039-01-17 monday time-after-epiphany 2 anthony class-3 white
+2039-01-18 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +prisca
+2039-01-19 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2039-01-20 thursday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2039-01-21 friday time-after-epiphany 3 agnes class-3 red
+2039-01-22 saturday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2039-01-23 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +raymond-of-pe-afort +emerentiana
+2039-01-24 monday time-after-epiphany 3 timothy class-3 red
+2039-01-25 tuesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2039-01-26 wednesday time-after-epiphany 3 polycarp class-3 red
+2039-01-27 thursday time-after-epiphany 4 john-chrysostom class-3 white
+2039-01-28 friday time-after-epiphany 4 peter-nolasco class-3 white
+2039-01-29 saturday time-after-epiphany 4 francis-de-sales class-3 white
+2039-01-30 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +martina
+2039-01-31 monday time-after-epiphany 4 john-bosco class-3 white
+2039-02-01 tuesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2039-02-02 wednesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2039-02-03 thursday time-after-epiphany 5 ef-time-after-epiphany-5-thursday class-4 green +blaise
+2039-02-04 friday time-after-epiphany 5 andrew-corsini class-3 white
+2039-02-05 saturday time-after-epiphany 5 agatha class-3 red
+2039-02-06 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +titus +dorothy
+2039-02-07 monday septuagesima 1 romuald class-3 white
+2039-02-08 tuesday septuagesima 1 john-of-matha class-3 white
+2039-02-09 wednesday septuagesima 1 cyril-of-alexandria class-3 white +appollonia
+2039-02-10 thursday septuagesima 1 scholastica class-3 white
+2039-02-11 friday septuagesima 1 our-lady-of-lourdes class-3 white
+2039-02-12 saturday septuagesima 1 seven-holy-servite-founders class-3 white
+2039-02-13 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2039-02-14 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet +valentine
+2039-02-15 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +sts-faustinus-jovita
+2039-02-16 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2039-02-17 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2039-02-18 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet +simeon
+2039-02-19 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2039-02-20 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2039-02-21 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2039-02-22 tuesday septuagesima 3 chair-of-st-peter class-2 white +paul
+2039-02-23 wednesday lent - ef-ash-wednesday class-1 violet +peter-damien
+2039-02-24 thursday lent - matthias class-2 red
+2039-02-25 friday lent - ef-lent-after-ashes-friday class-3 violet
+2039-02-26 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2039-02-27 sunday lent 1 ef-lent-sunday-1 class-2 violet +gabriel-of-our-lady-of-sorrows
+2039-02-28 monday lent 1 ef-lent-1-monday class-3 violet
+2039-03-01 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2039-03-02 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2039-03-03 thursday lent 1 ef-lent-1-thursday class-3 violet
+2039-03-04 friday lent 1 ef-lent-1-friday class-3 violet +casimir +lucius
+2039-03-05 saturday lent 1 ef-lent-1-saturday class-3 violet
+2039-03-06 sunday lent 2 ef-lent-sunday-2 class-2 violet +sts-felicitas-perpetua
+2039-03-07 monday lent 2 ef-lent-2-monday class-3 violet +thomas-aquinas
+2039-03-08 tuesday lent 2 ef-lent-2-tuesday class-3 violet +john-of-god
+2039-03-09 wednesday lent 2 ef-lent-2-wednesday class-3 violet +frances-rome
+2039-03-10 thursday lent 2 ef-lent-2-thursday class-3 violet +forty-holy-martyrs-of-sebaste
+2039-03-11 friday lent 2 ef-lent-2-friday class-3 violet
+2039-03-12 saturday lent 2 ef-lent-2-saturday class-3 violet +gregory-the-great
+2039-03-13 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2039-03-14 monday lent 3 ef-lent-3-monday class-3 violet
+2039-03-15 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2039-03-16 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2039-03-17 thursday lent 3 ef-lent-3-thursday class-3 violet +patrick
+2039-03-18 friday lent 3 ef-lent-3-friday class-3 violet +cyril-of-jerusalem
+2039-03-19 saturday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2039-03-20 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2039-03-21 monday lent 4 ef-lent-4-monday class-3 violet +benedict
+2039-03-22 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2039-03-23 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2039-03-24 thursday lent 4 ef-lent-4-thursday class-3 violet +gabriel-the-archangel
+2039-03-25 friday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2039-03-26 saturday lent 4 ef-lent-4-saturday class-3 violet
+2039-03-27 sunday passiontide 1 ef-passion-sunday class-1 violet +john-damascene
+2039-03-28 monday passiontide - ef-passiontide-0-monday class-3 violet +john-of-capistrano
+2039-03-29 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2039-03-30 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2039-03-31 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2039-04-01 friday passiontide - ef-passiontide-0-friday class-3 violet
+2039-04-02 saturday passiontide - ef-passiontide-0-saturday class-3 violet +francis-of-paola
+2039-04-03 sunday passiontide 2 ef-palm-sunday class-1 violet
+2039-04-04 monday passiontide - ef-passiontide-0-monday class-1 violet +isidore-of-seville
+2039-04-05 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +vincent-ferrer
+2039-04-06 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2039-04-07 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2039-04-08 friday passiontide - ef-passiontide-0-friday class-1 violet
+2039-04-09 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2039-04-10 sunday easter 1 ef-easter-sunday class-1 white
+2039-04-11 monday easter 1 ef-easter-1-monday class-1 white +leo-the-great
+2039-04-12 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2039-04-13 wednesday easter 1 ef-easter-1-wednesday class-1 white +hermenegild
+2039-04-14 thursday easter 1 ef-easter-1-thursday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2039-04-15 friday easter 1 ef-easter-1-friday class-1 white
+2039-04-16 saturday easter 1 ef-easter-1-saturday class-1 white
+2039-04-17 sunday easter 2 ef-low-sunday class-1 white +anicetus
+2039-04-18 monday easter 2 ef-easter-2-monday class-4 white
+2039-04-19 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2039-04-20 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2039-04-21 thursday easter 2 anselm class-3 white
+2039-04-22 friday easter 2 sts-soter-caius class-3 red
+2039-04-23 saturday easter 2 ef-easter-2-saturday class-4 white +george
+2039-04-24 sunday easter 3 ef-easter-sunday-3 class-2 white +fidelis-of-sigmaringen
+2039-04-25 monday easter 3 mark class-2 red
+2039-04-26 tuesday easter 3 sts-cletus-marcellinus class-3 red
+2039-04-27 wednesday easter 3 peter-canisius class-3 white
+2039-04-28 thursday easter 3 paul-of-the-cross class-3 white
+2039-04-29 friday easter 3 peter-of-verona class-3 red
+2039-04-30 saturday easter 3 catherine-of-siena class-3 white
+2039-05-01 sunday easter 4 joseph-the-workman class-1 white
+2039-05-02 monday easter 4 athanasius class-3 white
+2039-05-03 tuesday easter 4 ef-easter-4-tuesday class-4 white +sts-alexander-companions
+2039-05-04 wednesday easter 4 monica class-3 white
+2039-05-05 thursday easter 4 pius-v class-3 white
+2039-05-06 friday easter 4 ef-easter-4-friday class-4 white
+2039-05-07 saturday easter 4 stanislaus class-3 red
+2039-05-08 sunday easter 5 ef-easter-sunday-5 class-2 white
+2039-05-09 monday easter 5 gregory-of-nazianzen class-3 white
+2039-05-10 tuesday easter 5 antoninus class-3 white +gordiano-and-epimacho
+2039-05-11 wednesday easter 5 sts-philip-james class-2 red
+2039-05-12 thursday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2039-05-13 friday easter 5 robert-bellarmine class-3 white
+2039-05-14 saturday easter 5 ef-easter-5-saturday class-4 white
+2039-05-15 sunday easter 6 ef-easter-sunday-6 class-2 white +john-baptist-de-la-salle
+2039-05-16 monday easter 6 ef-easter-6-monday class-4 white +ubaldus
+2039-05-17 tuesday easter 6 paschal-baylon class-3 white
+2039-05-18 wednesday easter - ef-ascension-vigil class-2 white +venantius
+2039-05-19 thursday easter - ef-ascension class-1 white +peter-celestine +pudentiana-virginis
+2039-05-20 friday easter 6 bernardine-of-siena class-3 white
+2039-05-21 saturday easter 6 ef-easter-6-saturday class-4 white
+2039-05-22 sunday easter 7 ef-easter-sunday-7 class-2 white
+2039-05-23 monday easter 7 ef-easter-7-monday class-4 white
+2039-05-24 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2039-05-25 wednesday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2039-05-26 thursday easter 7 philip-neri class-3 white +eleutherius
+2039-05-27 friday easter 7 bede-the-venerable class-3 white +john-i
+2039-05-28 saturday easter - ef-pentecost-vigil class-1 red +augustine-of-canterbury
+2039-05-29 sunday easter - ef-pentecost class-1 red +mary-magdalene-de-pazzi
+2039-05-30 monday easter 8 ef-easter-8-monday class-1 red +felix-i
+2039-05-31 tuesday easter 8 ef-easter-8-tuesday class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2039-06-01 wednesday easter 8 ef-easter-8-wednesday class-1 red +angela-merici
+2039-06-02 thursday easter 8 ef-easter-8-thursday class-1 red +sts-marcellinus-peter-erasmus
+2039-06-03 friday easter 8 ef-easter-8-friday class-1 red
+2039-06-04 saturday easter 8 ef-easter-8-saturday class-1 red +francis-caracciolo
+2039-06-05 sunday time-after-pentecost 1 ef-trinity class-1 white +boniface
+2039-06-06 monday time-after-pentecost 1 norbert class-3 white
+2039-06-07 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green
+2039-06-08 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2039-06-09 thursday time-after-pentecost - ef-corpus-christi class-1 white +sts-primus-felicianus
+2039-06-10 friday time-after-pentecost 1 margaret-of-scotland class-3 white
+2039-06-11 saturday time-after-pentecost 1 barnabas class-3 red
+2039-06-12 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +john-of-san-fecundo +basilidus
+2039-06-13 monday time-after-pentecost 2 anthony-of-padua class-3 white
+2039-06-14 tuesday time-after-pentecost 2 basil-the-great class-3 white
+2039-06-15 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green +vitus
+2039-06-16 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2039-06-17 friday time-after-pentecost - ef-sacred-heart class-1 white +gregory-barbarigo
+2039-06-18 saturday time-after-pentecost 2 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2039-06-19 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +julia-of-falconieri +sts-gervasius-and-protasius
+2039-06-20 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green +silverius
+2039-06-21 tuesday time-after-pentecost 3 aloysius-gongzaga class-3 white
+2039-06-22 wednesday time-after-pentecost 3 paulinus-of-nola class-3 white
+2039-06-23 thursday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2039-06-24 friday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2039-06-25 saturday time-after-pentecost 3 william class-3 white
+2039-06-26 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +sts-john-paul
+2039-06-27 monday time-after-pentecost 4 ef-time-after-pentecost-4-monday class-4 green
+2039-06-28 tuesday time-after-pentecost 4 vigil-of-sts-peter-paul class-2 violet
+2039-06-29 wednesday time-after-pentecost 4 sts-peter-paul class-1 red
+2039-06-30 thursday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2039-07-01 friday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2039-07-02 saturday time-after-pentecost 4 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2039-07-03 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +irenaeus
+2039-07-04 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green
+2039-07-05 tuesday time-after-pentecost 5 anthony-mary-zaccariah class-3 white
+2039-07-06 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2039-07-07 thursday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2039-07-08 friday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2039-07-09 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green
+2039-07-10 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +seven-holy-brothers-and-sts-rufina-secunda
+2039-07-11 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green +pius-i
+2039-07-12 tuesday time-after-pentecost 6 john-gualbert class-3 red +naboris-et-felicis
+2039-07-13 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green
+2039-07-14 thursday time-after-pentecost 6 bonaventure class-3 white
+2039-07-15 friday time-after-pentecost 6 henry-the-emperor class-3 white
+2039-07-16 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +our-lady-of-mt-carmel
+2039-07-17 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +alexis
+2039-07-18 monday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2039-07-19 tuesday time-after-pentecost 7 vincent-de-paul class-3 white
+2039-07-20 wednesday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2039-07-21 thursday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2039-07-22 friday time-after-pentecost 7 mary-magdalene class-3 white
+2039-07-23 saturday time-after-pentecost 7 apollinaris class-3 white +liborii
+2039-07-24 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +christina
+2039-07-25 monday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2039-07-26 tuesday time-after-pentecost 8 anne-mother-of-the-blessed-virgin class-2 white
+2039-07-27 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +pantaleon
+2039-07-28 thursday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2039-07-29 friday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2039-07-30 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +sts-abdon-sennen
+2039-07-31 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +ignatius-loyola
+2039-08-01 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +holy-machabees
+2039-08-02 tuesday time-after-pentecost 9 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2039-08-03 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green
+2039-08-04 thursday time-after-pentecost 9 dominic class-3 white
+2039-08-05 friday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2039-08-06 saturday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2039-08-07 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +cajetan +donatus
+2039-08-08 monday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2039-08-09 tuesday time-after-pentecost 10 vigil-of-st-lawrence class-3 red +romanus
+2039-08-10 wednesday time-after-pentecost 10 lawrence class-2 red
+2039-08-11 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +sts-tiburtius-susanna
+2039-08-12 friday time-after-pentecost 10 clare class-3 white
+2039-08-13 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green +sts-hippolytus-cassian
+2039-08-14 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +vigil-of-the-assumption
+2039-08-15 monday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2039-08-16 tuesday time-after-pentecost 11 joachim-father-of-the-blessed-virgin class-2 white
+2039-08-17 wednesday time-after-pentecost 11 hyacinth class-3 white
+2039-08-18 thursday time-after-pentecost 11 ef-time-after-pentecost-11-thursday class-4 green +agapitus
+2039-08-19 friday time-after-pentecost 11 john-eudes class-3 white
+2039-08-20 saturday time-after-pentecost 11 bernard-of-clairvaux class-3 white
+2039-08-21 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +jane-frances-de-chantal
+2039-08-22 monday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2039-08-23 tuesday time-after-pentecost 12 philip-benizi class-3 white
+2039-08-24 wednesday time-after-pentecost 12 bartholomew class-2 red
+2039-08-25 thursday time-after-pentecost 12 louis-ix class-3 white
+2039-08-26 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green +zephyrinus
+2039-08-27 saturday time-after-pentecost 12 joseph-calasance class-3 white
+2039-08-28 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +augustine +hermes
+2039-08-29 monday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2039-08-30 tuesday time-after-pentecost 13 rose-of-lima class-3 red +sts-felix-and-adauctus
+2039-08-31 wednesday time-after-pentecost 13 raymond-nonnatus class-3 white
+2039-09-01 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +giles +twelve-holy-brothers-martyrs
+2039-09-02 friday time-after-pentecost 13 stephen-of-hungary class-3 white
+2039-09-03 saturday time-after-pentecost 13 pius-x class-3 white
+2039-09-04 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green
+2039-09-05 monday time-after-pentecost 14 lawrence-justinian class-3 white
+2039-09-06 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green
+2039-09-07 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green
+2039-09-08 thursday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2039-09-09 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green +gorgonius
+2039-09-10 saturday time-after-pentecost 14 nicholas-of-tolentino class-3 white
+2039-09-11 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +sts-protus-hyacinth
+2039-09-12 monday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2039-09-13 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green
+2039-09-14 wednesday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2039-09-15 thursday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2039-09-16 friday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2039-09-17 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +stigmata-of-st-francis
+2039-09-18 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +joseph-of-cupertino
+2039-09-19 monday time-after-pentecost 16 januarius-companions class-3 red
+2039-09-20 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +sts-eustace-companions
+2039-09-21 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +matthew
+2039-09-22 thursday time-after-pentecost 16 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2039-09-23 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +linus +thecla
+2039-09-24 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +our-lady-of-ransom
+2039-09-25 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green
+2039-09-26 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +sts-cyprian-justina
+2039-09-27 tuesday time-after-pentecost 17 sts-cosmas-damian class-3 red
+2039-09-28 wednesday time-after-pentecost 17 wenceslaus class-3 red
+2039-09-29 thursday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2039-09-30 friday time-after-pentecost 17 jerome class-3 white
+2039-10-01 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green +remigius
+2039-10-02 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +holy-guardian-angels
+2039-10-03 monday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2039-10-04 tuesday time-after-pentecost 18 francis-of-assisi class-3 white
+2039-10-05 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green +placid-companions
+2039-10-06 thursday time-after-pentecost 18 bruno class-3 white
+2039-10-07 friday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2039-10-08 saturday time-after-pentecost 18 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2039-10-09 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +john-leonardi +dionysius-and-companions
+2039-10-10 monday time-after-pentecost 19 francis-borgia class-3 white
+2039-10-11 tuesday time-after-pentecost 19 maternity-of-the-blessed-virgin-mary class-2 white
+2039-10-12 wednesday time-after-pentecost 19 ef-time-after-pentecost-19-wednesday class-4 green
+2039-10-13 thursday time-after-pentecost 19 edward class-3 white
+2039-10-14 friday time-after-pentecost 19 callistus-i class-3 red
+2039-10-15 saturday time-after-pentecost 19 teresa-of-avila class-3 white
+2039-10-16 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +hedwig
+2039-10-17 monday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2039-10-18 tuesday time-after-pentecost 20 luke-the-evangelist class-2 red
+2039-10-19 wednesday time-after-pentecost 20 peter-of-alcantara class-3 white
+2039-10-20 thursday time-after-pentecost 20 john-cantius class-3 white
+2039-10-21 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green +hilarion +ursula-and-companions
+2039-10-22 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2039-10-23 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +anthony-mary-claret
+2039-10-24 monday time-after-pentecost 21 raphael-the-archangel class-3 white
+2039-10-25 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green +sts-chrysanthus-daria
+2039-10-26 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2039-10-27 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2039-10-28 friday time-after-pentecost 21 sts-simon-jude class-2 red
+2039-10-29 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2039-10-30 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2039-10-31 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2039-11-01 tuesday time-after-pentecost 22 all-saints class-1 white
+2039-11-02 wednesday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2039-11-03 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2039-11-04 friday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2039-11-05 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2039-11-06 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green
+2039-11-07 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2039-11-08 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green +four-holy-crowned-martyrs
+2039-11-09 wednesday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2039-11-10 thursday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2039-11-11 friday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2039-11-12 saturday time-after-pentecost 23 martin-i class-3 red
+2039-11-13 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +didacus
+2039-11-14 monday time-after-pentecost 24 josaphat class-3 white
+2039-11-15 tuesday time-after-pentecost 24 albert-the-great class-3 white
+2039-11-16 wednesday time-after-pentecost 24 gertrude-the-great class-3 white
+2039-11-17 thursday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2039-11-18 friday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2039-11-19 saturday time-after-pentecost 24 elizabeth-of-hungary class-3 white +pontian
+2039-11-20 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +felix-of-valois
+2039-11-21 monday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2039-11-22 tuesday time-after-pentecost 25 cecilia class-3 red
+2039-11-23 wednesday time-after-pentecost 25 clement-i class-3 red +felicity
+2039-11-24 thursday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2039-11-25 friday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2039-11-26 saturday time-after-pentecost 25 sylvester class-3 white +peter-of-alexandria
+2039-11-27 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2039-11-28 monday advent 1 ef-advent-1-monday class-3 violet
+2039-11-29 tuesday advent 1 ef-advent-1-tuesday class-3 violet +saturninus
+2039-11-30 wednesday advent 1 andrew class-2 red
+2039-12-01 thursday advent 1 ef-advent-1-thursday class-3 violet
+2039-12-02 friday advent 1 vivian class-3 red
+2039-12-03 saturday advent 1 francis-xavier class-3 white
+2039-12-04 sunday advent 2 ef-advent-sunday-2 class-2 violet +peter-chrysologus
+2039-12-05 monday advent 2 ef-advent-2-monday class-3 violet +sabbas
+2039-12-06 tuesday advent 2 nicholas class-3 white
+2039-12-07 wednesday advent 2 ambrose class-3 white
+2039-12-08 thursday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2039-12-09 friday advent 2 ef-advent-2-friday class-3 violet
+2039-12-10 saturday advent 2 ef-advent-2-saturday class-3 violet +melchiades
+2039-12-11 sunday advent 3 ef-advent-sunday-3 class-2 violet +damasus-i
+2039-12-12 monday advent 3 ef-advent-3-monday class-3 violet
+2039-12-13 tuesday advent 3 lucy class-3 red
+2039-12-14 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2039-12-15 thursday advent 3 ef-advent-3-thursday class-3 violet
+2039-12-16 friday advent 3 ef-advent-ember-fri class-2 violet +eusebius
+2039-12-17 saturday advent 3 ef-advent-ember-sat class-2 violet
+2039-12-18 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2039-12-19 monday advent 4 ef-advent-4-monday class-3 violet
+2039-12-20 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2039-12-21 wednesday advent 4 thomas class-2 red
+2039-12-22 thursday advent 4 ef-advent-4-thursday class-3 violet
+2039-12-23 friday advent 4 ef-advent-4-friday class-3 violet
+2039-12-24 saturday advent 4 vigil-of-christmas class-1 violet
+2039-12-25 sunday christmas - ef-nativity class-1 white
+2039-12-26 monday christmas - stephen class-2 red
+2039-12-27 tuesday christmas - john-the-evangelist class-2 white
+2039-12-28 wednesday christmas - holy-innocents class-2 red
+2039-12-29 thursday christmas - ef-christmas-0-thursday class-4 white +thomas-becket
+2039-12-30 friday christmas - ef-christmas-0-friday class-4 white
+2039-12-31 saturday christmas - ef-christmas-0-saturday class-4 white +silvester
+2040-01-01 sunday christmas - ef-circumcision class-1 white
+2040-01-02 monday christmas - ef-christmas-0-monday class-4 white
+2040-01-03 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2040-01-04 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2040-01-05 thursday christmas - ef-christmas-0-thursday class-4 white +telesphorus-pope-and-martyr
+2040-01-06 friday time-after-epiphany - ef-epiphany class-1 white
+2040-01-07 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2040-01-08 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2040-01-09 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2040-01-10 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2040-01-11 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green +hyginus-pope-and-martyr
+2040-01-12 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2040-01-13 friday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2040-01-14 saturday time-after-epiphany 2 hilary class-3 white +felicis
+2040-01-15 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +paul-the-first-hermit +maur-abbot
+2040-01-16 monday time-after-epiphany 2 marcellus-i class-3 red
+2040-01-17 tuesday time-after-epiphany 2 anthony class-3 white
+2040-01-18 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +prisca
+2040-01-19 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2040-01-20 friday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2040-01-21 saturday time-after-epiphany 3 agnes class-3 red
+2040-01-22 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-vincent-anastasius
+2040-01-23 monday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2040-01-24 tuesday time-after-epiphany 3 timothy class-3 red
+2040-01-25 wednesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2040-01-26 thursday time-after-epiphany 3 polycarp class-3 red
+2040-01-27 friday time-after-epiphany 4 john-chrysostom class-3 white
+2040-01-28 saturday time-after-epiphany 4 peter-nolasco class-3 white
+2040-01-29 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +francis-de-sales
+2040-01-30 monday septuagesima 1 martina class-3 red
+2040-01-31 tuesday septuagesima 1 john-bosco class-3 white
+2040-02-01 wednesday septuagesima 1 ignatius-of-antioch class-3 red
+2040-02-02 thursday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2040-02-03 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet +blaise
+2040-02-04 saturday septuagesima 1 andrew-corsini class-3 white
+2040-02-05 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +agatha
+2040-02-06 monday septuagesima 2 titus class-3 white +dorothy
+2040-02-07 tuesday septuagesima 2 romuald class-3 white
+2040-02-08 wednesday septuagesima 2 john-of-matha class-3 white
+2040-02-09 thursday septuagesima 2 cyril-of-alexandria class-3 white +appollonia
+2040-02-10 friday septuagesima 2 scholastica class-3 white
+2040-02-11 saturday septuagesima 2 our-lady-of-lourdes class-3 white
+2040-02-12 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +seven-holy-servite-founders
+2040-02-13 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2040-02-14 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet +valentine
+2040-02-15 wednesday lent - ef-ash-wednesday class-1 violet +sts-faustinus-jovita
+2040-02-16 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2040-02-17 friday lent - ef-lent-after-ashes-friday class-3 violet
+2040-02-18 saturday lent - ef-lent-after-ashes-saturday class-3 violet +simeon
+2040-02-19 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2040-02-20 monday lent 1 ef-lent-1-monday class-3 violet
+2040-02-21 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2040-02-22 wednesday lent 1 chair-of-st-peter class-2 white +paul
+2040-02-23 thursday lent 1 ef-lent-1-thursday class-3 violet +peter-damien
+2040-02-24 friday lent 1 matthias class-2 red
+2040-02-25 saturday lent 1 ef-lent-1-saturday class-3 violet
+2040-02-26 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2040-02-27 monday lent 2 ef-lent-2-monday class-3 violet +gabriel-of-our-lady-of-sorrows
+2040-02-28 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2040-02-29 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2040-03-01 thursday lent 2 ef-lent-2-thursday class-3 violet
+2040-03-02 friday lent 2 ef-lent-2-friday class-3 violet
+2040-03-03 saturday lent 2 ef-lent-2-saturday class-3 violet
+2040-03-04 sunday lent 3 ef-lent-sunday-3 class-2 violet +casimir +lucius
+2040-03-05 monday lent 3 ef-lent-3-monday class-3 violet
+2040-03-06 tuesday lent 3 ef-lent-3-tuesday class-3 violet +sts-felicitas-perpetua
+2040-03-07 wednesday lent 3 ef-lent-3-wednesday class-3 violet +thomas-aquinas
+2040-03-08 thursday lent 3 ef-lent-3-thursday class-3 violet +john-of-god
+2040-03-09 friday lent 3 ef-lent-3-friday class-3 violet +frances-rome
+2040-03-10 saturday lent 3 ef-lent-3-saturday class-3 violet +forty-holy-martyrs-of-sebaste
+2040-03-11 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2040-03-12 monday lent 4 ef-lent-4-monday class-3 violet +gregory-the-great
+2040-03-13 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2040-03-14 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2040-03-15 thursday lent 4 ef-lent-4-thursday class-3 violet
+2040-03-16 friday lent 4 ef-lent-4-friday class-3 violet
+2040-03-17 saturday lent 4 ef-lent-4-saturday class-3 violet +patrick
+2040-03-18 sunday passiontide 1 ef-passion-sunday class-1 violet +cyril-of-jerusalem
+2040-03-19 monday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2040-03-20 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2040-03-21 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +benedict
+2040-03-22 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2040-03-23 friday passiontide - ef-passiontide-0-friday class-3 violet
+2040-03-24 saturday passiontide - ef-passiontide-0-saturday class-3 violet +gabriel-the-archangel
+2040-03-25 sunday passiontide 2 ef-palm-sunday class-1 violet
+2040-03-26 monday passiontide - ef-passiontide-0-monday class-1 violet
+2040-03-27 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +john-damascene
+2040-03-28 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +john-of-capistrano
+2040-03-29 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2040-03-30 friday passiontide - ef-passiontide-0-friday class-1 violet
+2040-03-31 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2040-04-01 sunday easter 1 ef-easter-sunday class-1 white
+2040-04-02 monday easter 1 ef-easter-1-monday class-1 white +francis-of-paola
+2040-04-03 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2040-04-04 wednesday easter 1 ef-easter-1-wednesday class-1 white +isidore-of-seville
+2040-04-05 thursday easter 1 ef-easter-1-thursday class-1 white +vincent-ferrer
+2040-04-06 friday easter 1 ef-easter-1-friday class-1 white
+2040-04-07 saturday easter 1 ef-easter-1-saturday class-1 white
+2040-04-08 sunday easter 2 ef-low-sunday class-1 white
+2040-04-09 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white
+2040-04-10 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2040-04-11 wednesday easter 2 leo-the-great class-3 white
+2040-04-12 thursday easter 2 ef-easter-2-thursday class-4 white
+2040-04-13 friday easter 2 hermenegild class-3 red
+2040-04-14 saturday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2040-04-15 sunday easter 3 ef-easter-sunday-3 class-2 white
+2040-04-16 monday easter 3 ef-easter-3-monday class-4 white
+2040-04-17 tuesday easter 3 ef-easter-3-tuesday class-4 white +anicetus
+2040-04-18 wednesday easter 3 ef-easter-3-wednesday class-4 white
+2040-04-19 thursday easter 3 ef-easter-3-thursday class-4 white
+2040-04-20 friday easter 3 ef-easter-3-friday class-4 white
+2040-04-21 saturday easter 3 anselm class-3 white
+2040-04-22 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-soter-caius
+2040-04-23 monday easter 4 ef-easter-4-monday class-4 white +george
+2040-04-24 tuesday easter 4 fidelis-of-sigmaringen class-3 red
+2040-04-25 wednesday easter 4 mark class-2 red
+2040-04-26 thursday easter 4 sts-cletus-marcellinus class-3 red
+2040-04-27 friday easter 4 peter-canisius class-3 white
+2040-04-28 saturday easter 4 paul-of-the-cross class-3 white
+2040-04-29 sunday easter 5 ef-easter-sunday-5 class-2 white +peter-of-verona
+2040-04-30 monday easter 5 catherine-of-siena class-3 white
+2040-05-01 tuesday easter 5 joseph-the-workman class-1 white
+2040-05-02 wednesday easter 5 athanasius class-3 white
+2040-05-03 thursday easter 5 ef-easter-5-thursday class-4 white +sts-alexander-companions
+2040-05-04 friday easter 5 monica class-3 white
+2040-05-05 saturday easter 5 pius-v class-3 white
+2040-05-06 sunday easter 6 ef-easter-sunday-6 class-2 white
+2040-05-07 monday easter 6 stanislaus class-3 red
+2040-05-08 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2040-05-09 wednesday easter - ef-ascension-vigil class-2 white +gregory-of-nazianzen
+2040-05-10 thursday easter - ef-ascension class-1 white +antoninus +gordiano-and-epimacho
+2040-05-11 friday easter 6 sts-philip-james class-2 red
+2040-05-12 saturday easter 6 sts-nereus-achilleus-domitilla-pancras class-3 red
+2040-05-13 sunday easter 7 ef-easter-sunday-7 class-2 white +robert-bellarmine
+2040-05-14 monday easter 7 ef-easter-7-monday class-4 white
+2040-05-15 tuesday easter 7 john-baptist-de-la-salle class-3 white
+2040-05-16 wednesday easter 7 ef-easter-7-wednesday class-4 white +ubaldus
+2040-05-17 thursday easter 7 paschal-baylon class-3 white
+2040-05-18 friday easter 7 venantius class-3 red
+2040-05-19 saturday easter - ef-pentecost-vigil class-1 red +peter-celestine +pudentiana-virginis
+2040-05-20 sunday easter - ef-pentecost class-1 red +bernardine-of-siena
+2040-05-21 monday easter 8 ef-easter-8-monday class-1 red
+2040-05-22 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2040-05-23 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2040-05-24 thursday easter 8 ef-easter-8-thursday class-1 red
+2040-05-25 friday easter 8 ef-easter-8-friday class-1 red +gregory-vii +urban-pope-and-martyr
+2040-05-26 saturday easter 8 ef-easter-8-saturday class-1 red +philip-neri +eleutherius
+2040-05-27 sunday time-after-pentecost 1 ef-trinity class-1 white +bede-the-venerable +john-i
+2040-05-28 monday time-after-pentecost 1 augustine-of-canterbury class-3 white
+2040-05-29 tuesday time-after-pentecost 1 mary-magdalene-de-pazzi class-3 white
+2040-05-30 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green +felix-i
+2040-05-31 thursday time-after-pentecost - ef-corpus-christi class-1 white +queenship-of-the-blessed-virgin-mary +petronilla
+2040-06-01 friday time-after-pentecost 1 angela-merici class-3 white
+2040-06-02 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green +sts-marcellinus-peter-erasmus
+2040-06-03 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2040-06-04 monday time-after-pentecost 2 francis-caracciolo class-3 white
+2040-06-05 tuesday time-after-pentecost 2 boniface class-3 red
+2040-06-06 wednesday time-after-pentecost 2 norbert class-3 white
+2040-06-07 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2040-06-08 friday time-after-pentecost - ef-sacred-heart class-1 white
+2040-06-09 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green +sts-primus-felicianus
+2040-06-10 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +margaret-of-scotland
+2040-06-11 monday time-after-pentecost 3 barnabas class-3 red
+2040-06-12 tuesday time-after-pentecost 3 john-of-san-fecundo class-3 red +basilidus
+2040-06-13 wednesday time-after-pentecost 3 anthony-of-padua class-3 white
+2040-06-14 thursday time-after-pentecost 3 basil-the-great class-3 white
+2040-06-15 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green +vitus
+2040-06-16 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2040-06-17 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +gregory-barbarigo
+2040-06-18 monday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2040-06-19 tuesday time-after-pentecost 4 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2040-06-20 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green +silverius
+2040-06-21 thursday time-after-pentecost 4 aloysius-gongzaga class-3 white
+2040-06-22 friday time-after-pentecost 4 paulinus-of-nola class-3 white
+2040-06-23 saturday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2040-06-24 sunday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2040-06-25 monday time-after-pentecost 5 william class-3 white
+2040-06-26 tuesday time-after-pentecost 5 sts-john-paul class-3 red
+2040-06-27 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2040-06-28 thursday time-after-pentecost 5 vigil-of-sts-peter-paul class-2 violet
+2040-06-29 friday time-after-pentecost 5 sts-peter-paul class-1 red
+2040-06-30 saturday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2040-07-01 sunday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2040-07-02 monday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2040-07-03 tuesday time-after-pentecost 6 irenaeus class-3 red
+2040-07-04 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green
+2040-07-05 thursday time-after-pentecost 6 anthony-mary-zaccariah class-3 white
+2040-07-06 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green
+2040-07-07 saturday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2040-07-08 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +elizabeth-of-portugal
+2040-07-09 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2040-07-10 tuesday time-after-pentecost 7 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2040-07-11 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +pius-i
+2040-07-12 thursday time-after-pentecost 7 john-gualbert class-3 red +naboris-et-felicis
+2040-07-13 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green
+2040-07-14 saturday time-after-pentecost 7 bonaventure class-3 white
+2040-07-15 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +henry-the-emperor
+2040-07-16 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +our-lady-of-mt-carmel
+2040-07-17 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +alexis
+2040-07-18 wednesday time-after-pentecost 8 camillus-de-lellis class-3 red +symphorosa-and-sons
+2040-07-19 thursday time-after-pentecost 8 vincent-de-paul class-3 white
+2040-07-20 friday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2040-07-21 saturday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2040-07-22 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +mary-magdalene
+2040-07-23 monday time-after-pentecost 9 apollinaris class-3 white +liborii
+2040-07-24 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +christina
+2040-07-25 wednesday time-after-pentecost 9 james-the-greater class-2 red +christopher
+2040-07-26 thursday time-after-pentecost 9 anne-mother-of-the-blessed-virgin class-2 white
+2040-07-27 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +pantaleon
+2040-07-28 saturday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2040-07-29 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +martha +felicis-simplicii-faustini-et-beatricis
+2040-07-30 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green +sts-abdon-sennen
+2040-07-31 tuesday time-after-pentecost 10 ignatius-loyola class-3 white
+2040-08-01 wednesday time-after-pentecost 10 ef-time-after-pentecost-10-wednesday class-4 green +holy-machabees
+2040-08-02 thursday time-after-pentecost 10 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2040-08-03 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green
+2040-08-04 saturday time-after-pentecost 10 dominic class-3 white
+2040-08-05 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +dedication-of-the-basilica-of-st-mary-major
+2040-08-06 monday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2040-08-07 tuesday time-after-pentecost 11 cajetan class-3 white +donatus
+2040-08-08 wednesday time-after-pentecost 11 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2040-08-09 thursday time-after-pentecost 11 vigil-of-st-lawrence class-3 red +romanus
+2040-08-10 friday time-after-pentecost 11 lawrence class-2 red
+2040-08-11 saturday time-after-pentecost 11 ef-time-after-pentecost-11-saturday class-4 green +sts-tiburtius-susanna
+2040-08-12 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +clare
+2040-08-13 monday time-after-pentecost 12 ef-time-after-pentecost-12-monday class-4 green +sts-hippolytus-cassian
+2040-08-14 tuesday time-after-pentecost 12 vigil-of-the-assumption class-2 white
+2040-08-15 wednesday time-after-pentecost 12 assumption-of-the-blessed-virgin-mary class-1 white
+2040-08-16 thursday time-after-pentecost 12 joachim-father-of-the-blessed-virgin class-2 white
+2040-08-17 friday time-after-pentecost 12 hyacinth class-3 white
+2040-08-18 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +agapitus
+2040-08-19 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +john-eudes
+2040-08-20 monday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2040-08-21 tuesday time-after-pentecost 13 jane-frances-de-chantal class-3 white
+2040-08-22 wednesday time-after-pentecost 13 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2040-08-23 thursday time-after-pentecost 13 philip-benizi class-3 white
+2040-08-24 friday time-after-pentecost 13 bartholomew class-2 red
+2040-08-25 saturday time-after-pentecost 13 louis-ix class-3 white
+2040-08-26 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +zephyrinus
+2040-08-27 monday time-after-pentecost 14 joseph-calasance class-3 white
+2040-08-28 tuesday time-after-pentecost 14 augustine class-3 red +hermes
+2040-08-29 wednesday time-after-pentecost 14 beheading-of-st-john-the-baptist class-3 red +sabina
+2040-08-30 thursday time-after-pentecost 14 rose-of-lima class-3 red +sts-felix-and-adauctus
+2040-08-31 friday time-after-pentecost 14 raymond-nonnatus class-3 white
+2040-09-01 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +giles +twelve-holy-brothers-martyrs
+2040-09-02 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +stephen-of-hungary
+2040-09-03 monday time-after-pentecost 15 pius-x class-3 white
+2040-09-04 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green
+2040-09-05 wednesday time-after-pentecost 15 lawrence-justinian class-3 white
+2040-09-06 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green
+2040-09-07 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green
+2040-09-08 saturday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2040-09-09 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +gorgonius
+2040-09-10 monday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2040-09-11 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +sts-protus-hyacinth
+2040-09-12 wednesday time-after-pentecost 16 most-holy-name-of-mary class-3 white
+2040-09-13 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green
+2040-09-14 friday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2040-09-15 saturday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2040-09-16 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-cornelius-cyprian +sts-euphemia-lucy-and-geminianus
+2040-09-17 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +stigmata-of-st-francis
+2040-09-18 tuesday time-after-pentecost 17 joseph-of-cupertino class-3 white
+2040-09-19 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +januarius-companions
+2040-09-20 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +sts-eustace-companions
+2040-09-21 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet +matthew
+2040-09-22 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2040-09-23 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +linus +thecla
+2040-09-24 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +our-lady-of-ransom
+2040-09-25 tuesday time-after-pentecost 18 ef-time-after-pentecost-18-tuesday class-4 green
+2040-09-26 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green +sts-cyprian-justina
+2040-09-27 thursday time-after-pentecost 18 sts-cosmas-damian class-3 red
+2040-09-28 friday time-after-pentecost 18 wenceslaus class-3 red
+2040-09-29 saturday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2040-09-30 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +jerome
+2040-10-01 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +remigius
+2040-10-02 tuesday time-after-pentecost 19 holy-guardian-angels class-3 white
+2040-10-03 wednesday time-after-pentecost 19 theresa-of-the-infant-jesus class-3 white
+2040-10-04 thursday time-after-pentecost 19 francis-of-assisi class-3 white
+2040-10-05 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +placid-companions
+2040-10-06 saturday time-after-pentecost 19 bruno class-3 white
+2040-10-07 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +our-lady-of-the-rosary +mark-i
+2040-10-08 monday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2040-10-09 tuesday time-after-pentecost 20 john-leonardi class-3 white +dionysius-and-companions
+2040-10-10 wednesday time-after-pentecost 20 francis-borgia class-3 white
+2040-10-11 thursday time-after-pentecost 20 maternity-of-the-blessed-virgin-mary class-2 white
+2040-10-12 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2040-10-13 saturday time-after-pentecost 20 edward class-3 white
+2040-10-14 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +callistus-i
+2040-10-15 monday time-after-pentecost 21 teresa-of-avila class-3 white
+2040-10-16 tuesday time-after-pentecost 21 hedwig class-3 white
+2040-10-17 wednesday time-after-pentecost 21 margaret-mary-alacoque class-3 white
+2040-10-18 thursday time-after-pentecost 21 luke-the-evangelist class-2 red
+2040-10-19 friday time-after-pentecost 21 peter-of-alcantara class-3 white
+2040-10-20 saturday time-after-pentecost 21 john-cantius class-3 white
+2040-10-21 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +hilarion +ursula-and-companions
+2040-10-22 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2040-10-23 tuesday time-after-pentecost 22 anthony-mary-claret class-3 white
+2040-10-24 wednesday time-after-pentecost 22 raphael-the-archangel class-3 white
+2040-10-25 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green +sts-chrysanthus-daria
+2040-10-26 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2040-10-27 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2040-10-28 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-simon-jude
+2040-10-29 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2040-10-30 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2040-10-31 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2040-11-01 thursday time-after-pentecost 23 all-saints class-1 white
+2040-11-02 friday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2040-11-03 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2040-11-04 sunday time-after-pentecost 4 ef-time-after-epiphany-sunday-4 class-2 green +charles-borromeo +sts-vitalis-and-agricola-martyrs
+2040-11-05 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green
+2040-11-06 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green
+2040-11-07 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2040-11-08 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green +four-holy-crowned-martyrs
+2040-11-09 friday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2040-11-10 saturday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2040-11-11 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-of-tours +menna
+2040-11-12 monday time-after-pentecost 25 martin-i class-3 red
+2040-11-13 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green +didacus
+2040-11-14 wednesday time-after-pentecost 25 josaphat class-3 white
+2040-11-15 thursday time-after-pentecost 25 albert-the-great class-3 white
+2040-11-16 friday time-after-pentecost 25 gertrude-the-great class-3 white
+2040-11-17 saturday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2040-11-18 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +dedication-of-the-basilicas-of-sts-peter-paul
+2040-11-19 monday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2040-11-20 tuesday time-after-pentecost 26 felix-of-valois class-3 white
+2040-11-21 wednesday time-after-pentecost 26 presentation-of-the-blessed-virgin-mary class-3 white
+2040-11-22 thursday time-after-pentecost 26 cecilia class-3 red
+2040-11-23 friday time-after-pentecost 26 clement-i class-3 red +felicity
+2040-11-24 saturday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2040-11-25 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +catherine-of-alexandria
+2040-11-26 monday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2040-11-27 tuesday time-after-pentecost 27 ef-time-after-pentecost-27-tuesday class-4 green
+2040-11-28 wednesday time-after-pentecost 27 ef-time-after-pentecost-27-wednesday class-4 green
+2040-11-29 thursday time-after-pentecost 27 ef-time-after-pentecost-27-thursday class-4 green +saturninus
+2040-11-30 friday time-after-pentecost 27 andrew class-2 red
+2040-12-01 saturday time-after-pentecost 27 ef-time-after-pentecost-27-saturday class-4 green
+2040-12-02 sunday advent 1 ef-advent-sunday-1 class-1 violet +vivian
+2040-12-03 monday advent 1 francis-xavier class-3 white
+2040-12-04 tuesday advent 1 peter-chrysologus class-3 white
+2040-12-05 wednesday advent 1 ef-advent-1-wednesday class-3 violet +sabbas
+2040-12-06 thursday advent 1 nicholas class-3 white
+2040-12-07 friday advent 1 ambrose class-3 white
+2040-12-08 saturday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2040-12-09 sunday advent 2 ef-advent-sunday-2 class-2 violet
+2040-12-10 monday advent 2 ef-advent-2-monday class-3 violet +melchiades
+2040-12-11 tuesday advent 2 damasus-i class-3 white
+2040-12-12 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2040-12-13 thursday advent 2 lucy class-3 red
+2040-12-14 friday advent 2 ef-advent-2-friday class-3 violet
+2040-12-15 saturday advent 2 ef-advent-2-saturday class-3 violet
+2040-12-16 sunday advent 3 ef-advent-sunday-3 class-2 violet +eusebius
+2040-12-17 monday advent 3 ef-advent-3-monday class-3 violet
+2040-12-18 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2040-12-19 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2040-12-20 thursday advent 3 ef-advent-3-thursday class-3 violet
+2040-12-21 friday advent 3 ef-advent-ember-fri class-2 violet +thomas
+2040-12-22 saturday advent 3 ef-advent-ember-sat class-2 violet
+2040-12-23 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2040-12-24 monday advent 4 vigil-of-christmas class-1 violet
+2040-12-25 tuesday christmas - ef-nativity class-1 white
+2040-12-26 wednesday christmas - stephen class-2 red
+2040-12-27 thursday christmas - john-the-evangelist class-2 white
+2040-12-28 friday christmas - holy-innocents class-2 red
+2040-12-29 saturday christmas - ef-christmas-0-saturday class-4 white +thomas-becket
+2040-12-30 sunday christmas - ef-christmas-sunday-0 class-2 white
+2040-12-31 monday christmas - ef-christmas-0-monday class-4 white +silvester
+2041-01-01 tuesday christmas - ef-circumcision class-1 white
+2041-01-02 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2041-01-03 thursday christmas - ef-christmas-0-thursday class-4 white
+2041-01-04 friday christmas - ef-christmas-0-friday class-4 white
+2041-01-05 saturday christmas - ef-christmas-0-saturday class-4 white +telesphorus-pope-and-martyr
+2041-01-06 sunday time-after-epiphany - ef-epiphany class-1 white
+2041-01-07 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2041-01-08 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2041-01-09 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2041-01-10 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2041-01-11 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green +hyginus-pope-and-martyr
+2041-01-12 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2041-01-13 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +commemoration-of-the-baptism-of-the-lord
+2041-01-14 monday time-after-epiphany 2 hilary class-3 white +felicis
+2041-01-15 tuesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2041-01-16 wednesday time-after-epiphany 2 marcellus-i class-3 red
+2041-01-17 thursday time-after-epiphany 2 anthony class-3 white
+2041-01-18 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +prisca
+2041-01-19 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2041-01-20 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-fabian-sebastian
+2041-01-21 monday time-after-epiphany 3 agnes class-3 red
+2041-01-22 tuesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2041-01-23 wednesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2041-01-24 thursday time-after-epiphany 3 timothy class-3 red
+2041-01-25 friday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2041-01-26 saturday time-after-epiphany 3 polycarp class-3 red
+2041-01-27 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +john-chrysostom
+2041-01-28 monday time-after-epiphany 4 peter-nolasco class-3 white
+2041-01-29 tuesday time-after-epiphany 4 francis-de-sales class-3 white
+2041-01-30 wednesday time-after-epiphany 4 martina class-3 red
+2041-01-31 thursday time-after-epiphany 4 john-bosco class-3 white
+2041-02-01 friday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2041-02-02 saturday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2041-02-03 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +blaise
+2041-02-04 monday time-after-epiphany 5 andrew-corsini class-3 white
+2041-02-05 tuesday time-after-epiphany 5 agatha class-3 red
+2041-02-06 wednesday time-after-epiphany 5 titus class-3 white +dorothy
+2041-02-07 thursday time-after-epiphany 5 romuald class-3 white
+2041-02-08 friday time-after-epiphany 5 john-of-matha class-3 white
+2041-02-09 saturday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2041-02-10 sunday time-after-epiphany 6 ef-time-after-epiphany-sunday-6 class-2 green +scholastica
+2041-02-11 monday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2041-02-12 tuesday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2041-02-13 wednesday time-after-epiphany 6 ef-time-after-epiphany-6-wednesday class-4 green
+2041-02-14 thursday time-after-epiphany 6 ef-time-after-epiphany-6-thursday class-4 green +valentine
+2041-02-15 friday time-after-epiphany 6 ef-time-after-epiphany-6-friday class-4 green +sts-faustinus-jovita
+2041-02-16 saturday time-after-epiphany 6 ef-time-after-epiphany-6-saturday class-4 green
+2041-02-17 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet
+2041-02-18 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +simeon
+2041-02-19 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet
+2041-02-20 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2041-02-21 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet
+2041-02-22 friday septuagesima 1 chair-of-st-peter class-2 white +paul
+2041-02-23 saturday septuagesima 1 peter-damien class-3 white
+2041-02-24 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +matthias
+2041-02-25 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2041-02-26 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2041-02-27 wednesday septuagesima 2 gabriel-of-our-lady-of-sorrows class-3 white
+2041-02-28 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2041-03-01 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2041-03-02 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2041-03-03 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2041-03-04 monday septuagesima 3 casimir class-3 white +lucius
+2041-03-05 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2041-03-06 wednesday lent - ef-ash-wednesday class-1 violet +sts-felicitas-perpetua
+2041-03-07 thursday lent - ef-lent-after-ashes-thursday class-3 violet +thomas-aquinas
+2041-03-08 friday lent - ef-lent-after-ashes-friday class-3 violet +john-of-god
+2041-03-09 saturday lent - ef-lent-after-ashes-saturday class-3 violet +frances-rome
+2041-03-10 sunday lent 1 ef-lent-sunday-1 class-2 violet +forty-holy-martyrs-of-sebaste
+2041-03-11 monday lent 1 ef-lent-1-monday class-3 violet
+2041-03-12 tuesday lent 1 ef-lent-1-tuesday class-3 violet +gregory-the-great
+2041-03-13 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2041-03-14 thursday lent 1 ef-lent-1-thursday class-3 violet
+2041-03-15 friday lent 1 ef-lent-1-friday class-3 violet
+2041-03-16 saturday lent 1 ef-lent-1-saturday class-3 violet
+2041-03-17 sunday lent 2 ef-lent-sunday-2 class-2 violet +patrick
+2041-03-18 monday lent 2 ef-lent-2-monday class-3 violet +cyril-of-jerusalem
+2041-03-19 tuesday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2041-03-20 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2041-03-21 thursday lent 2 ef-lent-2-thursday class-3 violet +benedict
+2041-03-22 friday lent 2 ef-lent-2-friday class-3 violet
+2041-03-23 saturday lent 2 ef-lent-2-saturday class-3 violet
+2041-03-24 sunday lent 3 ef-lent-sunday-3 class-2 violet +gabriel-the-archangel
+2041-03-25 monday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2041-03-26 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2041-03-27 wednesday lent 3 ef-lent-3-wednesday class-3 violet +john-damascene
+2041-03-28 thursday lent 3 ef-lent-3-thursday class-3 violet +john-of-capistrano
+2041-03-29 friday lent 3 ef-lent-3-friday class-3 violet
+2041-03-30 saturday lent 3 ef-lent-3-saturday class-3 violet
+2041-03-31 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2041-04-01 monday lent 4 ef-lent-4-monday class-3 violet
+2041-04-02 tuesday lent 4 ef-lent-4-tuesday class-3 violet +francis-of-paola
+2041-04-03 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2041-04-04 thursday lent 4 ef-lent-4-thursday class-3 violet +isidore-of-seville
+2041-04-05 friday lent 4 ef-lent-4-friday class-3 violet +vincent-ferrer
+2041-04-06 saturday lent 4 ef-lent-4-saturday class-3 violet
+2041-04-07 sunday passiontide 1 ef-passion-sunday class-1 violet
+2041-04-08 monday passiontide - ef-passiontide-0-monday class-3 violet
+2041-04-09 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2041-04-10 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2041-04-11 thursday passiontide - ef-passiontide-0-thursday class-3 violet +leo-the-great
+2041-04-12 friday passiontide - ef-passiontide-0-friday class-3 violet
+2041-04-13 saturday passiontide - ef-passiontide-0-saturday class-3 violet +hermenegild
+2041-04-14 sunday passiontide 2 ef-palm-sunday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2041-04-15 monday passiontide - ef-passiontide-0-monday class-1 violet
+2041-04-16 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2041-04-17 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +anicetus
+2041-04-18 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2041-04-19 friday passiontide - ef-passiontide-0-friday class-1 violet
+2041-04-20 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2041-04-21 sunday easter 1 ef-easter-sunday class-1 white +anselm
+2041-04-22 monday easter 1 ef-easter-1-monday class-1 white +sts-soter-caius
+2041-04-23 tuesday easter 1 ef-easter-1-tuesday class-1 white +george
+2041-04-24 wednesday easter 1 ef-easter-1-wednesday class-1 white +fidelis-of-sigmaringen
+2041-04-25 thursday easter 1 ef-easter-1-thursday class-1 white +mark
+2041-04-26 friday easter 1 ef-easter-1-friday class-1 white +sts-cletus-marcellinus
+2041-04-27 saturday easter 1 ef-easter-1-saturday class-1 white +peter-canisius
+2041-04-28 sunday easter 2 ef-low-sunday class-1 white +paul-of-the-cross
+2041-04-29 monday easter 2 peter-of-verona class-3 red
+2041-04-30 tuesday easter 2 catherine-of-siena class-3 white
+2041-05-01 wednesday easter 2 joseph-the-workman class-1 white
+2041-05-02 thursday easter 2 athanasius class-3 white
+2041-05-03 friday easter 2 ef-easter-2-friday class-4 white +sts-alexander-companions
+2041-05-04 saturday easter 2 monica class-3 white
+2041-05-05 sunday easter 3 ef-easter-sunday-3 class-2 white +pius-v
+2041-05-06 monday easter 3 ef-easter-3-monday class-4 white
+2041-05-07 tuesday easter 3 stanislaus class-3 red
+2041-05-08 wednesday easter 3 ef-easter-3-wednesday class-4 white
+2041-05-09 thursday easter 3 gregory-of-nazianzen class-3 white
+2041-05-10 friday easter 3 antoninus class-3 white +gordiano-and-epimacho
+2041-05-11 saturday easter 3 sts-philip-james class-2 red
+2041-05-12 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-nereus-achilleus-domitilla-pancras
+2041-05-13 monday easter 4 robert-bellarmine class-3 white
+2041-05-14 tuesday easter 4 ef-easter-4-tuesday class-4 white
+2041-05-15 wednesday easter 4 john-baptist-de-la-salle class-3 white
+2041-05-16 thursday easter 4 ef-easter-4-thursday class-4 white +ubaldus
+2041-05-17 friday easter 4 paschal-baylon class-3 white
+2041-05-18 saturday easter 4 venantius class-3 red
+2041-05-19 sunday easter 5 ef-easter-sunday-5 class-2 white +peter-celestine +pudentiana-virginis
+2041-05-20 monday easter 5 bernardine-of-siena class-3 white
+2041-05-21 tuesday easter 5 ef-easter-5-tuesday class-4 white
+2041-05-22 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2041-05-23 thursday easter 5 ef-easter-5-thursday class-4 white
+2041-05-24 friday easter 5 ef-easter-5-friday class-4 white
+2041-05-25 saturday easter 5 gregory-vii class-3 white +urban-pope-and-martyr
+2041-05-26 sunday easter 6 ef-easter-sunday-6 class-2 white +philip-neri +eleutherius
+2041-05-27 monday easter 6 bede-the-venerable class-3 white +john-i
+2041-05-28 tuesday easter 6 augustine-of-canterbury class-3 white
+2041-05-29 wednesday easter - ef-ascension-vigil class-2 white +mary-magdalene-de-pazzi
+2041-05-30 thursday easter - ef-ascension class-1 white +felix-i
+2041-05-31 friday easter 6 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2041-06-01 saturday easter 6 angela-merici class-3 white
+2041-06-02 sunday easter 7 ef-easter-sunday-7 class-2 white +sts-marcellinus-peter-erasmus
+2041-06-03 monday easter 7 ef-easter-7-monday class-4 white
+2041-06-04 tuesday easter 7 francis-caracciolo class-3 white
+2041-06-05 wednesday easter 7 boniface class-3 red
+2041-06-06 thursday easter 7 norbert class-3 white
+2041-06-07 friday easter 7 ef-easter-7-friday class-4 white
+2041-06-08 saturday easter - ef-pentecost-vigil class-1 red
+2041-06-09 sunday easter - ef-pentecost class-1 red +sts-primus-felicianus
+2041-06-10 monday easter 8 ef-easter-8-monday class-1 red +margaret-of-scotland
+2041-06-11 tuesday easter 8 ef-easter-8-tuesday class-1 red +barnabas
+2041-06-12 wednesday easter 8 ef-easter-8-wednesday class-1 red +john-of-san-fecundo +basilidus
+2041-06-13 thursday easter 8 ef-easter-8-thursday class-1 red +anthony-of-padua
+2041-06-14 friday easter 8 ef-easter-8-friday class-1 red +basil-the-great
+2041-06-15 saturday easter 8 ef-easter-8-saturday class-1 red +vitus
+2041-06-16 sunday time-after-pentecost 1 ef-trinity class-1 white
+2041-06-17 monday time-after-pentecost 1 gregory-barbarigo class-3 white
+2041-06-18 tuesday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2041-06-19 wednesday time-after-pentecost 1 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2041-06-20 thursday time-after-pentecost - ef-corpus-christi class-1 white +silverius
+2041-06-21 friday time-after-pentecost 1 aloysius-gongzaga class-3 white
+2041-06-22 saturday time-after-pentecost 1 paulinus-of-nola class-3 white
+2041-06-23 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +vigil-of-the-nativity-of-st-john-the-baptist
+2041-06-24 monday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2041-06-25 tuesday time-after-pentecost 2 william class-3 white
+2041-06-26 wednesday time-after-pentecost 2 sts-john-paul class-3 red
+2041-06-27 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2041-06-28 friday time-after-pentecost - ef-sacred-heart class-1 white +vigil-of-sts-peter-paul
+2041-06-29 saturday time-after-pentecost 2 sts-peter-paul class-1 red
+2041-06-30 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +in-commemoratione-sancti-pauli-apostoli
+2041-07-01 monday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2041-07-02 tuesday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2041-07-03 wednesday time-after-pentecost 3 irenaeus class-3 red
+2041-07-04 thursday time-after-pentecost 3 ef-time-after-pentecost-3-thursday class-4 green
+2041-07-05 friday time-after-pentecost 3 anthony-mary-zaccariah class-3 white
+2041-07-06 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green
+2041-07-07 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +sts-cyril-methodius
+2041-07-08 monday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2041-07-09 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2041-07-10 wednesday time-after-pentecost 4 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2041-07-11 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green +pius-i
+2041-07-12 friday time-after-pentecost 4 john-gualbert class-3 red +naboris-et-felicis
+2041-07-13 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2041-07-14 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +bonaventure
+2041-07-15 monday time-after-pentecost 5 henry-the-emperor class-3 white
+2041-07-16 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green +our-lady-of-mt-carmel
+2041-07-17 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green +alexis
+2041-07-18 thursday time-after-pentecost 5 camillus-de-lellis class-3 red +symphorosa-and-sons
+2041-07-19 friday time-after-pentecost 5 vincent-de-paul class-3 white
+2041-07-20 saturday time-after-pentecost 5 jerome-emiliani class-3 red +margaret
+2041-07-21 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +laurence-of-brindisi +praxedis-virginis
+2041-07-22 monday time-after-pentecost 6 mary-magdalene class-3 white
+2041-07-23 tuesday time-after-pentecost 6 apollinaris class-3 white +liborii
+2041-07-24 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +christina
+2041-07-25 thursday time-after-pentecost 6 james-the-greater class-2 red +christopher
+2041-07-26 friday time-after-pentecost 6 anne-mother-of-the-blessed-virgin class-2 white
+2041-07-27 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +pantaleon
+2041-07-28 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +sts-nazarius-celsus-st-victor-i-st-innocent-i
+2041-07-29 monday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2041-07-30 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green +sts-abdon-sennen
+2041-07-31 wednesday time-after-pentecost 7 ignatius-loyola class-3 white
+2041-08-01 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +holy-machabees
+2041-08-02 friday time-after-pentecost 7 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2041-08-03 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green
+2041-08-04 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +dominic
+2041-08-05 monday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2041-08-06 tuesday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2041-08-07 wednesday time-after-pentecost 8 cajetan class-3 white +donatus
+2041-08-08 thursday time-after-pentecost 8 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2041-08-09 friday time-after-pentecost 8 vigil-of-st-lawrence class-3 red +romanus
+2041-08-10 saturday time-after-pentecost 8 lawrence class-2 red
+2041-08-11 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +sts-tiburtius-susanna
+2041-08-12 monday time-after-pentecost 9 clare class-3 white
+2041-08-13 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +sts-hippolytus-cassian
+2041-08-14 wednesday time-after-pentecost 9 vigil-of-the-assumption class-2 white
+2041-08-15 thursday time-after-pentecost 9 assumption-of-the-blessed-virgin-mary class-1 white
+2041-08-16 friday time-after-pentecost 9 joachim-father-of-the-blessed-virgin class-2 white
+2041-08-17 saturday time-after-pentecost 9 hyacinth class-3 white
+2041-08-18 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +agapitus
+2041-08-19 monday time-after-pentecost 10 john-eudes class-3 white
+2041-08-20 tuesday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2041-08-21 wednesday time-after-pentecost 10 jane-frances-de-chantal class-3 white
+2041-08-22 thursday time-after-pentecost 10 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2041-08-23 friday time-after-pentecost 10 philip-benizi class-3 white
+2041-08-24 saturday time-after-pentecost 10 bartholomew class-2 red
+2041-08-25 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +louis-ix
+2041-08-26 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +zephyrinus
+2041-08-27 tuesday time-after-pentecost 11 joseph-calasance class-3 white
+2041-08-28 wednesday time-after-pentecost 11 augustine class-3 red +hermes
+2041-08-29 thursday time-after-pentecost 11 beheading-of-st-john-the-baptist class-3 red +sabina
+2041-08-30 friday time-after-pentecost 11 rose-of-lima class-3 red +sts-felix-and-adauctus
+2041-08-31 saturday time-after-pentecost 11 raymond-nonnatus class-3 white
+2041-09-01 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +giles +twelve-holy-brothers-martyrs
+2041-09-02 monday time-after-pentecost 12 stephen-of-hungary class-3 white
+2041-09-03 tuesday time-after-pentecost 12 pius-x class-3 white
+2041-09-04 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green
+2041-09-05 thursday time-after-pentecost 12 lawrence-justinian class-3 white
+2041-09-06 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green
+2041-09-07 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green
+2041-09-08 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +nativity-of-the-blessed-virgin-mary +hadriani
+2041-09-09 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green +gorgonius
+2041-09-10 tuesday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2041-09-11 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +sts-protus-hyacinth
+2041-09-12 thursday time-after-pentecost 13 most-holy-name-of-mary class-3 white
+2041-09-13 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green
+2041-09-14 saturday time-after-pentecost 13 exaltation-of-the-holy-cross class-2 red
+2041-09-15 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +seven-sorrows-of-the-blessed-virgin-mary +nicomedes
+2041-09-16 monday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2041-09-17 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +stigmata-of-st-francis
+2041-09-18 wednesday time-after-pentecost 14 ef-september-ember-wed class-2 violet +joseph-of-cupertino
+2041-09-19 thursday time-after-pentecost 14 januarius-companions class-3 red
+2041-09-20 friday time-after-pentecost 14 ef-september-ember-fri class-2 violet +sts-eustace-companions
+2041-09-21 saturday time-after-pentecost 14 ef-september-ember-sat class-2 violet +matthew
+2041-09-22 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +thomas-of-villanova +maurice-and-companions-martyrs
+2041-09-23 monday time-after-pentecost 15 linus class-3 red +thecla
+2041-09-24 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +our-lady-of-ransom
+2041-09-25 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green
+2041-09-26 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +sts-cyprian-justina
+2041-09-27 friday time-after-pentecost 15 sts-cosmas-damian class-3 red
+2041-09-28 saturday time-after-pentecost 15 wenceslaus class-3 red
+2041-09-29 sunday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2041-09-30 monday time-after-pentecost 16 jerome class-3 white
+2041-10-01 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +remigius
+2041-10-02 wednesday time-after-pentecost 16 holy-guardian-angels class-3 white
+2041-10-03 thursday time-after-pentecost 16 theresa-of-the-infant-jesus class-3 white
+2041-10-04 friday time-after-pentecost 16 francis-of-assisi class-3 white
+2041-10-05 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +placid-companions
+2041-10-06 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +bruno
+2041-10-07 monday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2041-10-08 tuesday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2041-10-09 wednesday time-after-pentecost 17 john-leonardi class-3 white +dionysius-and-companions
+2041-10-10 thursday time-after-pentecost 17 francis-borgia class-3 white
+2041-10-11 friday time-after-pentecost 17 maternity-of-the-blessed-virgin-mary class-2 white
+2041-10-12 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green
+2041-10-13 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +edward
+2041-10-14 monday time-after-pentecost 18 callistus-i class-3 red
+2041-10-15 tuesday time-after-pentecost 18 teresa-of-avila class-3 white
+2041-10-16 wednesday time-after-pentecost 18 hedwig class-3 white
+2041-10-17 thursday time-after-pentecost 18 margaret-mary-alacoque class-3 white
+2041-10-18 friday time-after-pentecost 18 luke-the-evangelist class-2 red
+2041-10-19 saturday time-after-pentecost 18 peter-of-alcantara class-3 white
+2041-10-20 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +john-cantius
+2041-10-21 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +hilarion +ursula-and-companions
+2041-10-22 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green
+2041-10-23 wednesday time-after-pentecost 19 anthony-mary-claret class-3 white
+2041-10-24 thursday time-after-pentecost 19 raphael-the-archangel class-3 white
+2041-10-25 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +sts-chrysanthus-daria
+2041-10-26 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green
+2041-10-27 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2041-10-28 monday time-after-pentecost 20 sts-simon-jude class-2 red
+2041-10-29 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green
+2041-10-30 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2041-10-31 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2041-11-01 friday time-after-pentecost 20 all-saints class-1 white
+2041-11-02 saturday time-after-pentecost 20 commemoration-of-all-souls class-1 black
+2041-11-03 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2041-11-04 monday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2041-11-05 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2041-11-06 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2041-11-07 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2041-11-08 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green +four-holy-crowned-martyrs
+2041-11-09 saturday time-after-pentecost 21 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2041-11-10 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +andrew-avellino +sts-tryphonis-respicii-et-nymphae
+2041-11-11 monday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2041-11-12 tuesday time-after-pentecost 22 martin-i class-3 red
+2041-11-13 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green +didacus
+2041-11-14 thursday time-after-pentecost 22 josaphat class-3 white
+2041-11-15 friday time-after-pentecost 22 albert-the-great class-3 white
+2041-11-16 saturday time-after-pentecost 22 gertrude-the-great class-3 white
+2041-11-17 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +gregory-the-wonderworker
+2041-11-18 monday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2041-11-19 tuesday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2041-11-20 wednesday time-after-pentecost 23 felix-of-valois class-3 white
+2041-11-21 thursday time-after-pentecost 23 presentation-of-the-blessed-virgin-mary class-3 white
+2041-11-22 friday time-after-pentecost 23 cecilia class-3 red
+2041-11-23 saturday time-after-pentecost 23 clement-i class-3 red +felicity
+2041-11-24 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +john-of-the-cross +chrysogonus
+2041-11-25 monday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2041-11-26 tuesday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2041-11-27 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2041-11-28 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2041-11-29 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +saturninus
+2041-11-30 saturday time-after-pentecost 24 andrew class-2 red
+2041-12-01 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2041-12-02 monday advent 1 vivian class-3 red
+2041-12-03 tuesday advent 1 francis-xavier class-3 white
+2041-12-04 wednesday advent 1 peter-chrysologus class-3 white
+2041-12-05 thursday advent 1 ef-advent-1-thursday class-3 violet +sabbas
+2041-12-06 friday advent 1 nicholas class-3 white
+2041-12-07 saturday advent 1 ambrose class-3 white
+2041-12-08 sunday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2041-12-09 monday advent 2 ef-advent-2-monday class-3 violet
+2041-12-10 tuesday advent 2 ef-advent-2-tuesday class-3 violet +melchiades
+2041-12-11 wednesday advent 2 damasus-i class-3 white
+2041-12-12 thursday advent 2 ef-advent-2-thursday class-3 violet
+2041-12-13 friday advent 2 lucy class-3 red
+2041-12-14 saturday advent 2 ef-advent-2-saturday class-3 violet
+2041-12-15 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2041-12-16 monday advent 3 eusebius class-3 red
+2041-12-17 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2041-12-18 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2041-12-19 thursday advent 3 ef-advent-3-thursday class-3 violet
+2041-12-20 friday advent 3 ef-advent-ember-fri class-2 violet
+2041-12-21 saturday advent 3 ef-advent-ember-sat class-2 violet +thomas
+2041-12-22 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2041-12-23 monday advent 4 ef-advent-4-monday class-3 violet
+2041-12-24 tuesday advent 4 vigil-of-christmas class-1 violet
+2041-12-25 wednesday christmas - ef-nativity class-1 white
+2041-12-26 thursday christmas - stephen class-2 red
+2041-12-27 friday christmas - john-the-evangelist class-2 white
+2041-12-28 saturday christmas - holy-innocents class-2 red
+2041-12-29 sunday christmas - ef-christmas-sunday-0 class-2 white +thomas-becket
+2041-12-30 monday christmas - ef-christmas-0-monday class-4 white
+2041-12-31 tuesday christmas - ef-christmas-0-tuesday class-4 white +silvester
+2042-01-01 wednesday christmas - ef-circumcision class-1 white
+2042-01-02 thursday christmas - ef-christmas-0-thursday class-4 white
+2042-01-03 friday christmas - ef-christmas-0-friday class-4 white
+2042-01-04 saturday christmas - ef-christmas-0-saturday class-4 white
+2042-01-05 sunday christmas - ef-christmas-sunday-0 class-2 white +telesphorus-pope-and-martyr
+2042-01-06 monday time-after-epiphany - ef-epiphany class-1 white
+2042-01-07 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2042-01-08 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2042-01-09 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2042-01-10 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2042-01-11 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green +hyginus-pope-and-martyr
+2042-01-12 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2042-01-13 monday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2042-01-14 tuesday time-after-epiphany 2 hilary class-3 white +felicis
+2042-01-15 wednesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2042-01-16 thursday time-after-epiphany 2 marcellus-i class-3 red
+2042-01-17 friday time-after-epiphany 2 anthony class-3 white
+2042-01-18 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +prisca
+2042-01-19 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +canute-martyr +sts-marius-martha-audifax-abachum
+2042-01-20 monday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2042-01-21 tuesday time-after-epiphany 3 agnes class-3 red
+2042-01-22 wednesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2042-01-23 thursday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2042-01-24 friday time-after-epiphany 3 timothy class-3 red
+2042-01-25 saturday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2042-01-26 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +polycarp
+2042-01-27 monday time-after-epiphany 4 john-chrysostom class-3 white
+2042-01-28 tuesday time-after-epiphany 4 peter-nolasco class-3 white
+2042-01-29 wednesday time-after-epiphany 4 francis-de-sales class-3 white
+2042-01-30 thursday time-after-epiphany 4 martina class-3 red
+2042-01-31 friday time-after-epiphany 4 john-bosco class-3 white
+2042-02-01 saturday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2042-02-02 sunday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2042-02-03 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +blaise
+2042-02-04 tuesday septuagesima 1 andrew-corsini class-3 white
+2042-02-05 wednesday septuagesima 1 agatha class-3 red
+2042-02-06 thursday septuagesima 1 titus class-3 white +dorothy
+2042-02-07 friday septuagesima 1 romuald class-3 white
+2042-02-08 saturday septuagesima 1 john-of-matha class-3 white
+2042-02-09 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +cyril-of-alexandria +appollonia
+2042-02-10 monday septuagesima 2 scholastica class-3 white
+2042-02-11 tuesday septuagesima 2 our-lady-of-lourdes class-3 white
+2042-02-12 wednesday septuagesima 2 seven-holy-servite-founders class-3 white
+2042-02-13 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2042-02-14 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet +valentine
+2042-02-15 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +sts-faustinus-jovita
+2042-02-16 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2042-02-17 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2042-02-18 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet +simeon
+2042-02-19 wednesday lent - ef-ash-wednesday class-1 violet
+2042-02-20 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2042-02-21 friday lent - ef-lent-after-ashes-friday class-3 violet
+2042-02-22 saturday lent - chair-of-st-peter class-2 white +paul
+2042-02-23 sunday lent 1 ef-lent-sunday-1 class-2 violet +peter-damien
+2042-02-24 monday lent 1 matthias class-2 red
+2042-02-25 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2042-02-26 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2042-02-27 thursday lent 1 ef-lent-1-thursday class-3 violet +gabriel-of-our-lady-of-sorrows
+2042-02-28 friday lent 1 ef-lent-1-friday class-3 violet
+2042-03-01 saturday lent 1 ef-lent-1-saturday class-3 violet
+2042-03-02 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2042-03-03 monday lent 2 ef-lent-2-monday class-3 violet
+2042-03-04 tuesday lent 2 ef-lent-2-tuesday class-3 violet +casimir +lucius
+2042-03-05 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2042-03-06 thursday lent 2 ef-lent-2-thursday class-3 violet +sts-felicitas-perpetua
+2042-03-07 friday lent 2 ef-lent-2-friday class-3 violet +thomas-aquinas
+2042-03-08 saturday lent 2 ef-lent-2-saturday class-3 violet +john-of-god
+2042-03-09 sunday lent 3 ef-lent-sunday-3 class-2 violet +frances-rome
+2042-03-10 monday lent 3 ef-lent-3-monday class-3 violet +forty-holy-martyrs-of-sebaste
+2042-03-11 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2042-03-12 wednesday lent 3 ef-lent-3-wednesday class-3 violet +gregory-the-great
+2042-03-13 thursday lent 3 ef-lent-3-thursday class-3 violet
+2042-03-14 friday lent 3 ef-lent-3-friday class-3 violet
+2042-03-15 saturday lent 3 ef-lent-3-saturday class-3 violet
+2042-03-16 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2042-03-17 monday lent 4 ef-lent-4-monday class-3 violet +patrick
+2042-03-18 tuesday lent 4 ef-lent-4-tuesday class-3 violet +cyril-of-jerusalem
+2042-03-19 wednesday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2042-03-20 thursday lent 4 ef-lent-4-thursday class-3 violet
+2042-03-21 friday lent 4 ef-lent-4-friday class-3 violet +benedict
+2042-03-22 saturday lent 4 ef-lent-4-saturday class-3 violet
+2042-03-23 sunday passiontide 1 ef-passion-sunday class-1 violet
+2042-03-24 monday passiontide - ef-passiontide-0-monday class-3 violet +gabriel-the-archangel
+2042-03-25 tuesday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2042-03-26 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2042-03-27 thursday passiontide - ef-passiontide-0-thursday class-3 violet +john-damascene
+2042-03-28 friday passiontide - ef-passiontide-0-friday class-3 violet +john-of-capistrano
+2042-03-29 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2042-03-30 sunday passiontide 2 ef-palm-sunday class-1 violet
+2042-03-31 monday passiontide - ef-passiontide-0-monday class-1 violet
+2042-04-01 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2042-04-02 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +francis-of-paola
+2042-04-03 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2042-04-04 friday passiontide - ef-passiontide-0-friday class-1 violet +isidore-of-seville
+2042-04-05 saturday passiontide - ef-passiontide-0-saturday class-1 violet +vincent-ferrer
+2042-04-06 sunday easter 1 ef-easter-sunday class-1 white
+2042-04-07 monday easter 1 ef-easter-1-monday class-1 white
+2042-04-08 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2042-04-09 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2042-04-10 thursday easter 1 ef-easter-1-thursday class-1 white
+2042-04-11 friday easter 1 ef-easter-1-friday class-1 white +leo-the-great
+2042-04-12 saturday easter 1 ef-easter-1-saturday class-1 white
+2042-04-13 sunday easter 2 ef-low-sunday class-1 white +hermenegild
+2042-04-14 monday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2042-04-15 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2042-04-16 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2042-04-17 thursday easter 2 ef-easter-2-thursday class-4 white +anicetus
+2042-04-18 friday easter 2 ef-easter-2-friday class-4 white
+2042-04-19 saturday easter 2 ef-easter-2-saturday class-4 white
+2042-04-20 sunday easter 3 ef-easter-sunday-3 class-2 white
+2042-04-21 monday easter 3 anselm class-3 white
+2042-04-22 tuesday easter 3 sts-soter-caius class-3 red
+2042-04-23 wednesday easter 3 ef-easter-3-wednesday class-4 white +george
+2042-04-24 thursday easter 3 fidelis-of-sigmaringen class-3 red
+2042-04-25 friday easter 3 mark class-2 red
+2042-04-26 saturday easter 3 sts-cletus-marcellinus class-3 red
+2042-04-27 sunday easter 4 ef-easter-sunday-4 class-2 white +peter-canisius
+2042-04-28 monday easter 4 paul-of-the-cross class-3 white
+2042-04-29 tuesday easter 4 peter-of-verona class-3 red
+2042-04-30 wednesday easter 4 catherine-of-siena class-3 white
+2042-05-01 thursday easter 4 joseph-the-workman class-1 white
+2042-05-02 friday easter 4 athanasius class-3 white
+2042-05-03 saturday easter 4 ef-easter-4-saturday class-4 white +sts-alexander-companions
+2042-05-04 sunday easter 5 ef-easter-sunday-5 class-2 white +monica
+2042-05-05 monday easter 5 pius-v class-3 white
+2042-05-06 tuesday easter 5 ef-easter-5-tuesday class-4 white
+2042-05-07 wednesday easter 5 stanislaus class-3 red
+2042-05-08 thursday easter 5 ef-easter-5-thursday class-4 white
+2042-05-09 friday easter 5 gregory-of-nazianzen class-3 white
+2042-05-10 saturday easter 5 antoninus class-3 white +gordiano-and-epimacho
+2042-05-11 sunday easter 6 ef-easter-sunday-6 class-2 white +sts-philip-james
+2042-05-12 monday easter 6 sts-nereus-achilleus-domitilla-pancras class-3 red
+2042-05-13 tuesday easter 6 robert-bellarmine class-3 white
+2042-05-14 wednesday easter - ef-ascension-vigil class-2 white
+2042-05-15 thursday easter - ef-ascension class-1 white +john-baptist-de-la-salle
+2042-05-16 friday easter 6 ef-easter-6-friday class-4 white +ubaldus
+2042-05-17 saturday easter 6 paschal-baylon class-3 white
+2042-05-18 sunday easter 7 ef-easter-sunday-7 class-2 white +venantius
+2042-05-19 monday easter 7 peter-celestine class-3 white +pudentiana-virginis
+2042-05-20 tuesday easter 7 bernardine-of-siena class-3 white
+2042-05-21 wednesday easter 7 ef-easter-7-wednesday class-4 white
+2042-05-22 thursday easter 7 ef-easter-7-thursday class-4 white
+2042-05-23 friday easter 7 ef-easter-7-friday class-4 white
+2042-05-24 saturday easter - ef-pentecost-vigil class-1 red
+2042-05-25 sunday easter - ef-pentecost class-1 red +gregory-vii +urban-pope-and-martyr
+2042-05-26 monday easter 8 ef-easter-8-monday class-1 red +philip-neri +eleutherius
+2042-05-27 tuesday easter 8 ef-easter-8-tuesday class-1 red +bede-the-venerable +john-i
+2042-05-28 wednesday easter 8 ef-easter-8-wednesday class-1 red +augustine-of-canterbury
+2042-05-29 thursday easter 8 ef-easter-8-thursday class-1 red +mary-magdalene-de-pazzi
+2042-05-30 friday easter 8 ef-easter-8-friday class-1 red +felix-i
+2042-05-31 saturday easter 8 ef-easter-8-saturday class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2042-06-01 sunday time-after-pentecost 1 ef-trinity class-1 white +angela-merici
+2042-06-02 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green +sts-marcellinus-peter-erasmus
+2042-06-03 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green
+2042-06-04 wednesday time-after-pentecost 1 francis-caracciolo class-3 white
+2042-06-05 thursday time-after-pentecost - ef-corpus-christi class-1 white +boniface
+2042-06-06 friday time-after-pentecost 1 norbert class-3 white
+2042-06-07 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green
+2042-06-08 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2042-06-09 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green +sts-primus-felicianus
+2042-06-10 tuesday time-after-pentecost 2 margaret-of-scotland class-3 white
+2042-06-11 wednesday time-after-pentecost 2 barnabas class-3 red
+2042-06-12 thursday time-after-pentecost 2 john-of-san-fecundo class-3 red +basilidus
+2042-06-13 friday time-after-pentecost - ef-sacred-heart class-1 white +anthony-of-padua
+2042-06-14 saturday time-after-pentecost 2 basil-the-great class-3 white
+2042-06-15 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +vitus
+2042-06-16 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green
+2042-06-17 tuesday time-after-pentecost 3 gregory-barbarigo class-3 white
+2042-06-18 wednesday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2042-06-19 thursday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2042-06-20 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green +silverius
+2042-06-21 saturday time-after-pentecost 3 aloysius-gongzaga class-3 white
+2042-06-22 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +paulinus-of-nola
+2042-06-23 monday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2042-06-24 tuesday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2042-06-25 wednesday time-after-pentecost 4 william class-3 white
+2042-06-26 thursday time-after-pentecost 4 sts-john-paul class-3 red
+2042-06-27 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green
+2042-06-28 saturday time-after-pentecost 4 vigil-of-sts-peter-paul class-2 violet
+2042-06-29 sunday time-after-pentecost 5 sts-peter-paul class-1 red
+2042-06-30 monday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2042-07-01 tuesday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2042-07-02 wednesday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2042-07-03 thursday time-after-pentecost 5 irenaeus class-3 red
+2042-07-04 friday time-after-pentecost 5 ef-time-after-pentecost-5-friday class-4 green
+2042-07-05 saturday time-after-pentecost 5 anthony-mary-zaccariah class-3 white
+2042-07-06 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2042-07-07 monday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2042-07-08 tuesday time-after-pentecost 6 elizabeth-of-portugal class-3 white
+2042-07-09 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green
+2042-07-10 thursday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2042-07-11 friday time-after-pentecost 6 ef-time-after-pentecost-6-friday class-4 green +pius-i
+2042-07-12 saturday time-after-pentecost 6 john-gualbert class-3 red +naboris-et-felicis
+2042-07-13 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green
+2042-07-14 monday time-after-pentecost 7 bonaventure class-3 white
+2042-07-15 tuesday time-after-pentecost 7 henry-the-emperor class-3 white
+2042-07-16 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +our-lady-of-mt-carmel
+2042-07-17 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +alexis
+2042-07-18 friday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2042-07-19 saturday time-after-pentecost 7 vincent-de-paul class-3 white
+2042-07-20 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +jerome-emiliani +margaret
+2042-07-21 monday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2042-07-22 tuesday time-after-pentecost 8 mary-magdalene class-3 white
+2042-07-23 wednesday time-after-pentecost 8 apollinaris class-3 white +liborii
+2042-07-24 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +christina
+2042-07-25 friday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2042-07-26 saturday time-after-pentecost 8 anne-mother-of-the-blessed-virgin class-2 white
+2042-07-27 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +pantaleon
+2042-07-28 monday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2042-07-29 tuesday time-after-pentecost 9 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2042-07-30 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +sts-abdon-sennen
+2042-07-31 thursday time-after-pentecost 9 ignatius-loyola class-3 white
+2042-08-01 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +holy-machabees
+2042-08-02 saturday time-after-pentecost 9 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2042-08-03 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green
+2042-08-04 monday time-after-pentecost 10 dominic class-3 white
+2042-08-05 tuesday time-after-pentecost 10 dedication-of-the-basilica-of-st-mary-major class-3 white
+2042-08-06 wednesday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2042-08-07 thursday time-after-pentecost 10 cajetan class-3 white +donatus
+2042-08-08 friday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2042-08-09 saturday time-after-pentecost 10 vigil-of-st-lawrence class-3 red +romanus
+2042-08-10 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +lawrence
+2042-08-11 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +sts-tiburtius-susanna
+2042-08-12 tuesday time-after-pentecost 11 clare class-3 white
+2042-08-13 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green +sts-hippolytus-cassian
+2042-08-14 thursday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2042-08-15 friday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2042-08-16 saturday time-after-pentecost 11 joachim-father-of-the-blessed-virgin class-2 white
+2042-08-17 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +hyacinth
+2042-08-18 monday time-after-pentecost 12 ef-time-after-pentecost-12-monday class-4 green +agapitus
+2042-08-19 tuesday time-after-pentecost 12 john-eudes class-3 white
+2042-08-20 wednesday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2042-08-21 thursday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2042-08-22 friday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2042-08-23 saturday time-after-pentecost 12 philip-benizi class-3 white
+2042-08-24 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +bartholomew
+2042-08-25 monday time-after-pentecost 13 louis-ix class-3 white
+2042-08-26 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green +zephyrinus
+2042-08-27 wednesday time-after-pentecost 13 joseph-calasance class-3 white
+2042-08-28 thursday time-after-pentecost 13 augustine class-3 red +hermes
+2042-08-29 friday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2042-08-30 saturday time-after-pentecost 13 rose-of-lima class-3 red +sts-felix-and-adauctus
+2042-08-31 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +raymond-nonnatus
+2042-09-01 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +giles +twelve-holy-brothers-martyrs
+2042-09-02 tuesday time-after-pentecost 14 stephen-of-hungary class-3 white
+2042-09-03 wednesday time-after-pentecost 14 pius-x class-3 white
+2042-09-04 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green
+2042-09-05 friday time-after-pentecost 14 lawrence-justinian class-3 white
+2042-09-06 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green
+2042-09-07 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green
+2042-09-08 monday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2042-09-09 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +gorgonius
+2042-09-10 wednesday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2042-09-11 thursday time-after-pentecost 15 ef-time-after-pentecost-15-thursday class-4 green +sts-protus-hyacinth
+2042-09-12 friday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2042-09-13 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green
+2042-09-14 sunday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2042-09-15 monday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2042-09-16 tuesday time-after-pentecost 16 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2042-09-17 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green +stigmata-of-st-francis
+2042-09-18 thursday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2042-09-19 friday time-after-pentecost 16 januarius-companions class-3 red
+2042-09-20 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +sts-eustace-companions
+2042-09-21 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +matthew
+2042-09-22 monday time-after-pentecost 17 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2042-09-23 tuesday time-after-pentecost 17 linus class-3 red +thecla
+2042-09-24 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +our-lady-of-ransom
+2042-09-25 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green
+2042-09-26 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet +sts-cyprian-justina
+2042-09-27 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +sts-cosmas-damian
+2042-09-28 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +wenceslaus
+2042-09-29 monday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2042-09-30 tuesday time-after-pentecost 18 jerome class-3 white
+2042-10-01 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green +remigius
+2042-10-02 thursday time-after-pentecost 18 holy-guardian-angels class-3 white
+2042-10-03 friday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2042-10-04 saturday time-after-pentecost 18 francis-of-assisi class-3 white
+2042-10-05 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +placid-companions
+2042-10-06 monday time-after-pentecost 19 bruno class-3 white
+2042-10-07 tuesday time-after-pentecost 19 our-lady-of-the-rosary class-2 white +mark-i
+2042-10-08 wednesday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2042-10-09 thursday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2042-10-10 friday time-after-pentecost 19 francis-borgia class-3 white
+2042-10-11 saturday time-after-pentecost 19 maternity-of-the-blessed-virgin-mary class-2 white
+2042-10-12 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green
+2042-10-13 monday time-after-pentecost 20 edward class-3 white
+2042-10-14 tuesday time-after-pentecost 20 callistus-i class-3 red
+2042-10-15 wednesday time-after-pentecost 20 teresa-of-avila class-3 white
+2042-10-16 thursday time-after-pentecost 20 hedwig class-3 white
+2042-10-17 friday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2042-10-18 saturday time-after-pentecost 20 luke-the-evangelist class-2 red
+2042-10-19 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +peter-of-alcantara
+2042-10-20 monday time-after-pentecost 21 john-cantius class-3 white
+2042-10-21 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green +hilarion +ursula-and-companions
+2042-10-22 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2042-10-23 thursday time-after-pentecost 21 anthony-mary-claret class-3 white
+2042-10-24 friday time-after-pentecost 21 raphael-the-archangel class-3 white
+2042-10-25 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green +sts-chrysanthus-daria
+2042-10-26 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2042-10-27 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2042-10-28 tuesday time-after-pentecost 22 sts-simon-jude class-2 red
+2042-10-29 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green
+2042-10-30 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2042-10-31 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2042-11-01 saturday time-after-pentecost 22 all-saints class-1 white
+2042-11-02 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green
+2042-11-03 monday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2042-11-04 tuesday time-after-pentecost 23 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2042-11-05 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green
+2042-11-06 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2042-11-07 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2042-11-08 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green +four-holy-crowned-martyrs
+2042-11-09 sunday time-after-pentecost 5 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2042-11-10 monday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2042-11-11 tuesday time-after-pentecost 24 martin-of-tours class-3 white +menna
+2042-11-12 wednesday time-after-pentecost 24 martin-i class-3 red
+2042-11-13 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green +didacus
+2042-11-14 friday time-after-pentecost 24 josaphat class-3 white
+2042-11-15 saturday time-after-pentecost 24 albert-the-great class-3 white
+2042-11-16 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +gertrude-the-great
+2042-11-17 monday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2042-11-18 tuesday time-after-pentecost 25 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2042-11-19 wednesday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2042-11-20 thursday time-after-pentecost 25 felix-of-valois class-3 white
+2042-11-21 friday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2042-11-22 saturday time-after-pentecost 25 cecilia class-3 red
+2042-11-23 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +clement-i +felicity
+2042-11-24 monday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2042-11-25 tuesday time-after-pentecost 26 catherine-of-alexandria class-3 red
+2042-11-26 wednesday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2042-11-27 thursday time-after-pentecost 26 ef-time-after-pentecost-26-thursday class-4 green
+2042-11-28 friday time-after-pentecost 26 ef-time-after-pentecost-26-friday class-4 green
+2042-11-29 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green +saturninus
+2042-11-30 sunday advent 1 ef-advent-sunday-1 class-1 violet +andrew
+2042-12-01 monday advent 1 ef-advent-1-monday class-3 violet
+2042-12-02 tuesday advent 1 vivian class-3 red
+2042-12-03 wednesday advent 1 francis-xavier class-3 white
+2042-12-04 thursday advent 1 peter-chrysologus class-3 white
+2042-12-05 friday advent 1 ef-advent-1-friday class-3 violet +sabbas
+2042-12-06 saturday advent 1 nicholas class-3 white
+2042-12-07 sunday advent 2 ef-advent-sunday-2 class-2 violet +ambrose
+2042-12-08 monday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2042-12-09 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2042-12-10 wednesday advent 2 ef-advent-2-wednesday class-3 violet +melchiades
+2042-12-11 thursday advent 2 damasus-i class-3 white
+2042-12-12 friday advent 2 ef-advent-2-friday class-3 violet
+2042-12-13 saturday advent 2 lucy class-3 red
+2042-12-14 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2042-12-15 monday advent 3 ef-advent-3-monday class-3 violet
+2042-12-16 tuesday advent 3 eusebius class-3 red
+2042-12-17 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2042-12-18 thursday advent 3 ef-advent-3-thursday class-3 violet
+2042-12-19 friday advent 3 ef-advent-ember-fri class-2 violet
+2042-12-20 saturday advent 3 ef-advent-ember-sat class-2 violet
+2042-12-21 sunday advent 4 ef-advent-sunday-4 class-2 violet +thomas
+2042-12-22 monday advent 4 ef-advent-4-monday class-3 violet
+2042-12-23 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2042-12-24 wednesday advent 4 vigil-of-christmas class-1 violet
+2042-12-25 thursday christmas - ef-nativity class-1 white
+2042-12-26 friday christmas - stephen class-2 red
+2042-12-27 saturday christmas - john-the-evangelist class-2 white
+2042-12-28 sunday christmas - ef-christmas-sunday-0 class-2 white +holy-innocents
+2042-12-29 monday christmas - ef-christmas-0-monday class-4 white +thomas-becket
+2042-12-30 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2042-12-31 wednesday christmas - ef-christmas-0-wednesday class-4 white +silvester
+2043-01-01 thursday christmas - ef-circumcision class-1 white
+2043-01-02 friday christmas - ef-christmas-0-friday class-4 white
+2043-01-03 saturday christmas - ef-christmas-0-saturday class-4 white
+2043-01-04 sunday christmas - ef-christmas-sunday-0 class-2 white
+2043-01-05 monday christmas - ef-christmas-0-monday class-4 white +telesphorus-pope-and-martyr
+2043-01-06 tuesday time-after-epiphany - ef-epiphany class-1 white
+2043-01-07 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2043-01-08 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2043-01-09 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2043-01-10 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2043-01-11 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green +hyginus-pope-and-martyr
+2043-01-12 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2043-01-13 tuesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2043-01-14 wednesday time-after-epiphany 2 hilary class-3 white +felicis
+2043-01-15 thursday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2043-01-16 friday time-after-epiphany 2 marcellus-i class-3 red
+2043-01-17 saturday time-after-epiphany 2 anthony class-3 white
+2043-01-18 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +prisca
+2043-01-19 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2043-01-20 tuesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2043-01-21 wednesday time-after-epiphany 3 agnes class-3 red
+2043-01-22 thursday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2043-01-23 friday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2043-01-24 saturday time-after-epiphany 3 timothy class-3 red
+2043-01-25 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +conversion-of-st-paul +peter
+2043-01-26 monday septuagesima 1 polycarp class-3 red
+2043-01-27 tuesday septuagesima 1 john-chrysostom class-3 white
+2043-01-28 wednesday septuagesima 1 peter-nolasco class-3 white
+2043-01-29 thursday septuagesima 1 francis-de-sales class-3 white
+2043-01-30 friday septuagesima 1 martina class-3 red
+2043-01-31 saturday septuagesima 1 john-bosco class-3 white
+2043-02-01 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +ignatius-of-antioch
+2043-02-02 monday septuagesima 2 purification-of-the-blessed-virgin-mary class-2 white
+2043-02-03 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +blaise
+2043-02-04 wednesday septuagesima 2 andrew-corsini class-3 white
+2043-02-05 thursday septuagesima 2 agatha class-3 red
+2043-02-06 friday septuagesima 2 titus class-3 white +dorothy
+2043-02-07 saturday septuagesima 2 romuald class-3 white
+2043-02-08 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +john-of-matha
+2043-02-09 monday septuagesima 3 cyril-of-alexandria class-3 white +appollonia
+2043-02-10 tuesday septuagesima 3 scholastica class-3 white
+2043-02-11 wednesday lent - ef-ash-wednesday class-1 violet +our-lady-of-lourdes
+2043-02-12 thursday lent - ef-lent-after-ashes-thursday class-3 violet +seven-holy-servite-founders
+2043-02-13 friday lent - ef-lent-after-ashes-friday class-3 violet
+2043-02-14 saturday lent - ef-lent-after-ashes-saturday class-3 violet +valentine
+2043-02-15 sunday lent 1 ef-lent-sunday-1 class-2 violet +sts-faustinus-jovita
+2043-02-16 monday lent 1 ef-lent-1-monday class-3 violet
+2043-02-17 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2043-02-18 wednesday lent 1 ef-lent-1-wednesday class-3 violet +simeon
+2043-02-19 thursday lent 1 ef-lent-1-thursday class-3 violet
+2043-02-20 friday lent 1 ef-lent-1-friday class-3 violet
+2043-02-21 saturday lent 1 ef-lent-1-saturday class-3 violet
+2043-02-22 sunday lent 2 ef-lent-sunday-2 class-2 violet +chair-of-st-peter +paul
+2043-02-23 monday lent 2 ef-lent-2-monday class-3 violet +peter-damien
+2043-02-24 tuesday lent 2 matthias class-2 red
+2043-02-25 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2043-02-26 thursday lent 2 ef-lent-2-thursday class-3 violet
+2043-02-27 friday lent 2 ef-lent-2-friday class-3 violet +gabriel-of-our-lady-of-sorrows
+2043-02-28 saturday lent 2 ef-lent-2-saturday class-3 violet
+2043-03-01 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2043-03-02 monday lent 3 ef-lent-3-monday class-3 violet
+2043-03-03 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2043-03-04 wednesday lent 3 ef-lent-3-wednesday class-3 violet +casimir +lucius
+2043-03-05 thursday lent 3 ef-lent-3-thursday class-3 violet
+2043-03-06 friday lent 3 ef-lent-3-friday class-3 violet +sts-felicitas-perpetua
+2043-03-07 saturday lent 3 ef-lent-3-saturday class-3 violet +thomas-aquinas
+2043-03-08 sunday lent 4 ef-lent-sunday-4 class-2 violet +john-of-god
+2043-03-09 monday lent 4 ef-lent-4-monday class-3 violet +frances-rome
+2043-03-10 tuesday lent 4 ef-lent-4-tuesday class-3 violet +forty-holy-martyrs-of-sebaste
+2043-03-11 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2043-03-12 thursday lent 4 ef-lent-4-thursday class-3 violet +gregory-the-great
+2043-03-13 friday lent 4 ef-lent-4-friday class-3 violet
+2043-03-14 saturday lent 4 ef-lent-4-saturday class-3 violet
+2043-03-15 sunday passiontide 1 ef-passion-sunday class-1 violet
+2043-03-16 monday passiontide - ef-passiontide-0-monday class-3 violet
+2043-03-17 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +patrick
+2043-03-18 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet +cyril-of-jerusalem
+2043-03-19 thursday passiontide - joseph-spouse-of-the-bl-virgin-mary class-1 white
+2043-03-20 friday passiontide - ef-passiontide-0-friday class-3 violet
+2043-03-21 saturday passiontide - ef-passiontide-0-saturday class-3 violet +benedict
+2043-03-22 sunday passiontide 2 ef-palm-sunday class-1 violet
+2043-03-23 monday passiontide - ef-passiontide-0-monday class-1 violet
+2043-03-24 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +gabriel-the-archangel
+2043-03-25 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2043-03-26 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2043-03-27 friday passiontide - ef-passiontide-0-friday class-1 violet +john-damascene
+2043-03-28 saturday passiontide - ef-passiontide-0-saturday class-1 violet +john-of-capistrano
+2043-03-29 sunday easter 1 ef-easter-sunday class-1 white
+2043-03-30 monday easter 1 ef-easter-1-monday class-1 white
+2043-03-31 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2043-04-01 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2043-04-02 thursday easter 1 ef-easter-1-thursday class-1 white +francis-of-paola
+2043-04-03 friday easter 1 ef-easter-1-friday class-1 white
+2043-04-04 saturday easter 1 ef-easter-1-saturday class-1 white +isidore-of-seville
+2043-04-05 sunday easter 2 ef-low-sunday class-1 white +vincent-ferrer
+2043-04-06 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white
+2043-04-07 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2043-04-08 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2043-04-09 thursday easter 2 ef-easter-2-thursday class-4 white
+2043-04-10 friday easter 2 ef-easter-2-friday class-4 white
+2043-04-11 saturday easter 2 leo-the-great class-3 white
+2043-04-12 sunday easter 3 ef-easter-sunday-3 class-2 white
+2043-04-13 monday easter 3 hermenegild class-3 red
+2043-04-14 tuesday easter 3 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2043-04-15 wednesday easter 3 ef-easter-3-wednesday class-4 white
+2043-04-16 thursday easter 3 ef-easter-3-thursday class-4 white
+2043-04-17 friday easter 3 ef-easter-3-friday class-4 white +anicetus
+2043-04-18 saturday easter 3 ef-easter-3-saturday class-4 white
+2043-04-19 sunday easter 4 ef-easter-sunday-4 class-2 white
+2043-04-20 monday easter 4 ef-easter-4-monday class-4 white
+2043-04-21 tuesday easter 4 anselm class-3 white
+2043-04-22 wednesday easter 4 sts-soter-caius class-3 red
+2043-04-23 thursday easter 4 ef-easter-4-thursday class-4 white +george
+2043-04-24 friday easter 4 fidelis-of-sigmaringen class-3 red
+2043-04-25 saturday easter 4 mark class-2 red
+2043-04-26 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-cletus-marcellinus
+2043-04-27 monday easter 5 peter-canisius class-3 white
+2043-04-28 tuesday easter 5 paul-of-the-cross class-3 white
+2043-04-29 wednesday easter 5 peter-of-verona class-3 red
+2043-04-30 thursday easter 5 catherine-of-siena class-3 white
+2043-05-01 friday easter 5 joseph-the-workman class-1 white
+2043-05-02 saturday easter 5 athanasius class-3 white
+2043-05-03 sunday easter 6 ef-easter-sunday-6 class-2 white +sts-alexander-companions
+2043-05-04 monday easter 6 monica class-3 white
+2043-05-05 tuesday easter 6 pius-v class-3 white
+2043-05-06 wednesday easter - ef-ascension-vigil class-2 white
+2043-05-07 thursday easter - ef-ascension class-1 white +stanislaus
+2043-05-08 friday easter 6 ef-easter-6-friday class-4 white
+2043-05-09 saturday easter 6 gregory-of-nazianzen class-3 white
+2043-05-10 sunday easter 7 ef-easter-sunday-7 class-2 white +antoninus +gordiano-and-epimacho
+2043-05-11 monday easter 7 sts-philip-james class-2 red
+2043-05-12 tuesday easter 7 sts-nereus-achilleus-domitilla-pancras class-3 red
+2043-05-13 wednesday easter 7 robert-bellarmine class-3 white
+2043-05-14 thursday easter 7 ef-easter-7-thursday class-4 white
+2043-05-15 friday easter 7 john-baptist-de-la-salle class-3 white
+2043-05-16 saturday easter - ef-pentecost-vigil class-1 red +ubaldus
+2043-05-17 sunday easter - ef-pentecost class-1 red +paschal-baylon
+2043-05-18 monday easter 8 ef-easter-8-monday class-1 red +venantius
+2043-05-19 tuesday easter 8 ef-easter-8-tuesday class-1 red +peter-celestine +pudentiana-virginis
+2043-05-20 wednesday easter 8 ef-easter-8-wednesday class-1 red +bernardine-of-siena
+2043-05-21 thursday easter 8 ef-easter-8-thursday class-1 red
+2043-05-22 friday easter 8 ef-easter-8-friday class-1 red
+2043-05-23 saturday easter 8 ef-easter-8-saturday class-1 red
+2043-05-24 sunday time-after-pentecost 1 ef-trinity class-1 white
+2043-05-25 monday time-after-pentecost 1 gregory-vii class-3 white +urban-pope-and-martyr
+2043-05-26 tuesday time-after-pentecost 1 philip-neri class-3 white +eleutherius
+2043-05-27 wednesday time-after-pentecost 1 bede-the-venerable class-3 white +john-i
+2043-05-28 thursday time-after-pentecost - ef-corpus-christi class-1 white +augustine-of-canterbury
+2043-05-29 friday time-after-pentecost 1 mary-magdalene-de-pazzi class-3 white
+2043-05-30 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green +felix-i
+2043-05-31 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +queenship-of-the-blessed-virgin-mary +petronilla
+2043-06-01 monday time-after-pentecost 2 angela-merici class-3 white
+2043-06-02 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green +sts-marcellinus-peter-erasmus
+2043-06-03 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green
+2043-06-04 thursday time-after-pentecost 2 francis-caracciolo class-3 white
+2043-06-05 friday time-after-pentecost - ef-sacred-heart class-1 white +boniface
+2043-06-06 saturday time-after-pentecost 2 norbert class-3 white
+2043-06-07 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green
+2043-06-08 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green
+2043-06-09 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green +sts-primus-felicianus
+2043-06-10 wednesday time-after-pentecost 3 margaret-of-scotland class-3 white
+2043-06-11 thursday time-after-pentecost 3 barnabas class-3 red
+2043-06-12 friday time-after-pentecost 3 john-of-san-fecundo class-3 red +basilidus
+2043-06-13 saturday time-after-pentecost 3 anthony-of-padua class-3 white
+2043-06-14 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +basil-the-great
+2043-06-15 monday time-after-pentecost 4 ef-time-after-pentecost-4-monday class-4 green +vitus
+2043-06-16 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2043-06-17 wednesday time-after-pentecost 4 gregory-barbarigo class-3 white
+2043-06-18 thursday time-after-pentecost 4 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2043-06-19 friday time-after-pentecost 4 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2043-06-20 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green +silverius
+2043-06-21 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +aloysius-gongzaga
+2043-06-22 monday time-after-pentecost 5 paulinus-of-nola class-3 white
+2043-06-23 tuesday time-after-pentecost 5 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2043-06-24 wednesday time-after-pentecost 5 nativity-of-st-john-the-baptist class-1 white
+2043-06-25 thursday time-after-pentecost 5 william class-3 white
+2043-06-26 friday time-after-pentecost 5 sts-john-paul class-3 red
+2043-06-27 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green
+2043-06-28 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +vigil-of-sts-peter-paul
+2043-06-29 monday time-after-pentecost 6 sts-peter-paul class-1 red
+2043-06-30 tuesday time-after-pentecost 6 in-commemoratione-sancti-pauli-apostoli class-3 red
+2043-07-01 wednesday time-after-pentecost 6 precious-blood-of-our-lord-jesus-christ class-1 red
+2043-07-02 thursday time-after-pentecost 6 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2043-07-03 friday time-after-pentecost 6 irenaeus class-3 red
+2043-07-04 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green
+2043-07-05 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +anthony-mary-zaccariah
+2043-07-06 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2043-07-07 tuesday time-after-pentecost 7 sts-cyril-methodius class-3 white
+2043-07-08 wednesday time-after-pentecost 7 elizabeth-of-portugal class-3 white
+2043-07-09 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green
+2043-07-10 friday time-after-pentecost 7 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2043-07-11 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green +pius-i
+2043-07-12 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +john-gualbert +naboris-et-felicis
+2043-07-13 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green
+2043-07-14 tuesday time-after-pentecost 8 bonaventure class-3 white
+2043-07-15 wednesday time-after-pentecost 8 henry-the-emperor class-3 white
+2043-07-16 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +our-lady-of-mt-carmel
+2043-07-17 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +alexis
+2043-07-18 saturday time-after-pentecost 8 camillus-de-lellis class-3 red +symphorosa-and-sons
+2043-07-19 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +vincent-de-paul
+2043-07-20 monday time-after-pentecost 9 jerome-emiliani class-3 red +margaret
+2043-07-21 tuesday time-after-pentecost 9 laurence-of-brindisi class-3 white +praxedis-virginis
+2043-07-22 wednesday time-after-pentecost 9 mary-magdalene class-3 white
+2043-07-23 thursday time-after-pentecost 9 apollinaris class-3 white +liborii
+2043-07-24 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +christina
+2043-07-25 saturday time-after-pentecost 9 james-the-greater class-2 red +christopher
+2043-07-26 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +anne-mother-of-the-blessed-virgin
+2043-07-27 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green +pantaleon
+2043-07-28 tuesday time-after-pentecost 10 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2043-07-29 wednesday time-after-pentecost 10 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2043-07-30 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +sts-abdon-sennen
+2043-07-31 friday time-after-pentecost 10 ignatius-loyola class-3 white
+2043-08-01 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green +holy-machabees
+2043-08-02 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +alphonsus-liguori +stephen-i-pope-and-martyr
+2043-08-03 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green
+2043-08-04 tuesday time-after-pentecost 11 dominic class-3 white
+2043-08-05 wednesday time-after-pentecost 11 dedication-of-the-basilica-of-st-mary-major class-3 white
+2043-08-06 thursday time-after-pentecost 11 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2043-08-07 friday time-after-pentecost 11 cajetan class-3 white +donatus
+2043-08-08 saturday time-after-pentecost 11 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2043-08-09 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +vigil-of-st-lawrence +romanus
+2043-08-10 monday time-after-pentecost 12 lawrence class-2 red
+2043-08-11 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +sts-tiburtius-susanna
+2043-08-12 wednesday time-after-pentecost 12 clare class-3 white
+2043-08-13 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green +sts-hippolytus-cassian
+2043-08-14 friday time-after-pentecost 12 vigil-of-the-assumption class-2 white
+2043-08-15 saturday time-after-pentecost 12 assumption-of-the-blessed-virgin-mary class-1 white
+2043-08-16 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +joachim-father-of-the-blessed-virgin
+2043-08-17 monday time-after-pentecost 13 hyacinth class-3 white
+2043-08-18 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green +agapitus
+2043-08-19 wednesday time-after-pentecost 13 john-eudes class-3 white
+2043-08-20 thursday time-after-pentecost 13 bernard-of-clairvaux class-3 white
+2043-08-21 friday time-after-pentecost 13 jane-frances-de-chantal class-3 white
+2043-08-22 saturday time-after-pentecost 13 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2043-08-23 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +philip-benizi
+2043-08-24 monday time-after-pentecost 14 bartholomew class-2 red
+2043-08-25 tuesday time-after-pentecost 14 louis-ix class-3 white
+2043-08-26 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green +zephyrinus
+2043-08-27 thursday time-after-pentecost 14 joseph-calasance class-3 white
+2043-08-28 friday time-after-pentecost 14 augustine class-3 red +hermes
+2043-08-29 saturday time-after-pentecost 14 beheading-of-st-john-the-baptist class-3 red +sabina
+2043-08-30 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +rose-of-lima +sts-felix-and-adauctus
+2043-08-31 monday time-after-pentecost 15 raymond-nonnatus class-3 white
+2043-09-01 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +giles +twelve-holy-brothers-martyrs
+2043-09-02 wednesday time-after-pentecost 15 stephen-of-hungary class-3 white
+2043-09-03 thursday time-after-pentecost 15 pius-x class-3 white
+2043-09-04 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green
+2043-09-05 saturday time-after-pentecost 15 lawrence-justinian class-3 white
+2043-09-06 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2043-09-07 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green
+2043-09-08 tuesday time-after-pentecost 16 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2043-09-09 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green +gorgonius
+2043-09-10 thursday time-after-pentecost 16 nicholas-of-tolentino class-3 white
+2043-09-11 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green +sts-protus-hyacinth
+2043-09-12 saturday time-after-pentecost 16 most-holy-name-of-mary class-3 white
+2043-09-13 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green
+2043-09-14 monday time-after-pentecost 17 exaltation-of-the-holy-cross class-2 red
+2043-09-15 tuesday time-after-pentecost 17 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2043-09-16 wednesday time-after-pentecost 17 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2043-09-17 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +stigmata-of-st-francis
+2043-09-18 friday time-after-pentecost 17 joseph-of-cupertino class-3 white
+2043-09-19 saturday time-after-pentecost 17 januarius-companions class-3 red
+2043-09-20 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-eustace-companions
+2043-09-21 monday time-after-pentecost 18 matthew class-2 red
+2043-09-22 tuesday time-after-pentecost 18 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2043-09-23 wednesday time-after-pentecost 18 ef-september-ember-wed class-2 violet +linus +thecla
+2043-09-24 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +our-lady-of-ransom
+2043-09-25 friday time-after-pentecost 18 ef-september-ember-fri class-2 violet
+2043-09-26 saturday time-after-pentecost 18 ef-september-ember-sat class-2 violet +sts-cyprian-justina
+2043-09-27 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +sts-cosmas-damian
+2043-09-28 monday time-after-pentecost 19 wenceslaus class-3 red
+2043-09-29 tuesday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2043-09-30 wednesday time-after-pentecost 19 jerome class-3 white
+2043-10-01 thursday time-after-pentecost 19 ef-time-after-pentecost-19-thursday class-4 green +remigius
+2043-10-02 friday time-after-pentecost 19 holy-guardian-angels class-3 white
+2043-10-03 saturday time-after-pentecost 19 theresa-of-the-infant-jesus class-3 white
+2043-10-04 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +francis-of-assisi
+2043-10-05 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green +placid-companions
+2043-10-06 tuesday time-after-pentecost 20 bruno class-3 white
+2043-10-07 wednesday time-after-pentecost 20 our-lady-of-the-rosary class-2 white +mark-i
+2043-10-08 thursday time-after-pentecost 20 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2043-10-09 friday time-after-pentecost 20 john-leonardi class-3 white +dionysius-and-companions
+2043-10-10 saturday time-after-pentecost 20 francis-borgia class-3 white
+2043-10-11 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +maternity-of-the-blessed-virgin-mary
+2043-10-12 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2043-10-13 tuesday time-after-pentecost 21 edward class-3 white
+2043-10-14 wednesday time-after-pentecost 21 callistus-i class-3 red
+2043-10-15 thursday time-after-pentecost 21 teresa-of-avila class-3 white
+2043-10-16 friday time-after-pentecost 21 hedwig class-3 white
+2043-10-17 saturday time-after-pentecost 21 margaret-mary-alacoque class-3 white
+2043-10-18 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +luke-the-evangelist
+2043-10-19 monday time-after-pentecost 22 peter-of-alcantara class-3 white
+2043-10-20 tuesday time-after-pentecost 22 john-cantius class-3 white
+2043-10-21 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green +hilarion +ursula-and-companions
+2043-10-22 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2043-10-23 friday time-after-pentecost 22 anthony-mary-claret class-3 white
+2043-10-24 saturday time-after-pentecost 22 raphael-the-archangel class-3 white
+2043-10-25 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-chrysanthus-daria
+2043-10-26 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2043-10-27 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2043-10-28 wednesday time-after-pentecost 23 sts-simon-jude class-2 red
+2043-10-29 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2043-10-30 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2043-10-31 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2043-11-01 sunday time-after-pentecost 4 all-saints class-1 white
+2043-11-02 monday time-after-pentecost 24 commemoration-of-all-souls class-1 black
+2043-11-03 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green
+2043-11-04 wednesday time-after-pentecost 24 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2043-11-05 thursday time-after-pentecost 24 ef-time-after-pentecost-24-thursday class-4 green
+2043-11-06 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green
+2043-11-07 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green
+2043-11-08 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +four-holy-crowned-martyrs
+2043-11-09 monday time-after-pentecost 25 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2043-11-10 tuesday time-after-pentecost 25 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2043-11-11 wednesday time-after-pentecost 25 martin-of-tours class-3 white +menna
+2043-11-12 thursday time-after-pentecost 25 martin-i class-3 red
+2043-11-13 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green +didacus
+2043-11-14 saturday time-after-pentecost 25 josaphat class-3 white
+2043-11-15 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +albert-the-great
+2043-11-16 monday time-after-pentecost 26 gertrude-the-great class-3 white
+2043-11-17 tuesday time-after-pentecost 26 gregory-the-wonderworker class-3 white
+2043-11-18 wednesday time-after-pentecost 26 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2043-11-19 thursday time-after-pentecost 26 elizabeth-of-hungary class-3 white +pontian
+2043-11-20 friday time-after-pentecost 26 felix-of-valois class-3 white
+2043-11-21 saturday time-after-pentecost 26 presentation-of-the-blessed-virgin-mary class-3 white
+2043-11-22 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +cecilia
+2043-11-23 monday time-after-pentecost 27 clement-i class-3 red +felicity
+2043-11-24 tuesday time-after-pentecost 27 john-of-the-cross class-3 white +chrysogonus
+2043-11-25 wednesday time-after-pentecost 27 catherine-of-alexandria class-3 red
+2043-11-26 thursday time-after-pentecost 27 sylvester class-3 white +peter-of-alexandria
+2043-11-27 friday time-after-pentecost 27 ef-time-after-pentecost-27-friday class-4 green
+2043-11-28 saturday time-after-pentecost 27 ef-time-after-pentecost-27-saturday class-4 green
+2043-11-29 sunday advent 1 ef-advent-sunday-1 class-1 violet +saturninus
+2043-11-30 monday advent 1 andrew class-2 red
+2043-12-01 tuesday advent 1 ef-advent-1-tuesday class-3 violet
+2043-12-02 wednesday advent 1 vivian class-3 red
+2043-12-03 thursday advent 1 francis-xavier class-3 white
+2043-12-04 friday advent 1 peter-chrysologus class-3 white
+2043-12-05 saturday advent 1 ef-advent-1-saturday class-3 violet +sabbas
+2043-12-06 sunday advent 2 ef-advent-sunday-2 class-2 violet +nicholas
+2043-12-07 monday advent 2 ambrose class-3 white
+2043-12-08 tuesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2043-12-09 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2043-12-10 thursday advent 2 ef-advent-2-thursday class-3 violet +melchiades
+2043-12-11 friday advent 2 damasus-i class-3 white
+2043-12-12 saturday advent 2 ef-advent-2-saturday class-3 violet
+2043-12-13 sunday advent 3 ef-advent-sunday-3 class-2 violet +lucy
+2043-12-14 monday advent 3 ef-advent-3-monday class-3 violet
+2043-12-15 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2043-12-16 wednesday advent 3 ef-advent-ember-wed class-2 violet +eusebius
+2043-12-17 thursday advent 3 ef-advent-3-thursday class-3 violet
+2043-12-18 friday advent 3 ef-advent-ember-fri class-2 violet
+2043-12-19 saturday advent 3 ef-advent-ember-sat class-2 violet
+2043-12-20 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2043-12-21 monday advent 4 thomas class-2 red
+2043-12-22 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2043-12-23 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2043-12-24 thursday advent 4 vigil-of-christmas class-1 violet
+2043-12-25 friday christmas - ef-nativity class-1 white
+2043-12-26 saturday christmas - stephen class-2 red
+2043-12-27 sunday christmas - ef-christmas-sunday-0 class-2 white +john-the-evangelist
+2043-12-28 monday christmas - holy-innocents class-2 red
+2043-12-29 tuesday christmas - ef-christmas-0-tuesday class-4 white +thomas-becket
+2043-12-30 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2043-12-31 thursday christmas - ef-christmas-0-thursday class-4 white +silvester
+2044-01-01 friday christmas - ef-circumcision class-1 white
+2044-01-02 saturday christmas - ef-christmas-0-saturday class-4 white
+2044-01-03 sunday christmas - ef-christmas-sunday-0 class-2 white
+2044-01-04 monday christmas - ef-christmas-0-monday class-4 white
+2044-01-05 tuesday christmas - ef-christmas-0-tuesday class-4 white +telesphorus-pope-and-martyr
+2044-01-06 wednesday time-after-epiphany - ef-epiphany class-1 white
+2044-01-07 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2044-01-08 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2044-01-09 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2044-01-10 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2044-01-11 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green +hyginus-pope-and-martyr
+2044-01-12 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2044-01-13 wednesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2044-01-14 thursday time-after-epiphany 2 hilary class-3 white +felicis
+2044-01-15 friday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2044-01-16 saturday time-after-epiphany 2 marcellus-i class-3 red
+2044-01-17 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +anthony
+2044-01-18 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +prisca
+2044-01-19 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2044-01-20 wednesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2044-01-21 thursday time-after-epiphany 3 agnes class-3 red
+2044-01-22 friday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2044-01-23 saturday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2044-01-24 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +timothy
+2044-01-25 monday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2044-01-26 tuesday time-after-epiphany 3 polycarp class-3 red
+2044-01-27 wednesday time-after-epiphany 4 john-chrysostom class-3 white
+2044-01-28 thursday time-after-epiphany 4 peter-nolasco class-3 white
+2044-01-29 friday time-after-epiphany 4 francis-de-sales class-3 white
+2044-01-30 saturday time-after-epiphany 4 martina class-3 red
+2044-01-31 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +john-bosco
+2044-02-01 monday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2044-02-02 tuesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2044-02-03 wednesday time-after-epiphany 5 ef-time-after-epiphany-5-wednesday class-4 green +blaise
+2044-02-04 thursday time-after-epiphany 5 andrew-corsini class-3 white
+2044-02-05 friday time-after-epiphany 5 agatha class-3 red
+2044-02-06 saturday time-after-epiphany 5 titus class-3 white +dorothy
+2044-02-07 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +romuald
+2044-02-08 monday time-after-epiphany 5 john-of-matha class-3 white
+2044-02-09 tuesday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2044-02-10 wednesday time-after-epiphany 6 scholastica class-3 white
+2044-02-11 thursday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2044-02-12 friday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2044-02-13 saturday time-after-epiphany 6 ef-time-after-epiphany-6-saturday class-4 green
+2044-02-14 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +valentine
+2044-02-15 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +sts-faustinus-jovita
+2044-02-16 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet
+2044-02-17 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2044-02-18 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet +simeon
+2044-02-19 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2044-02-20 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet
+2044-02-21 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2044-02-22 monday septuagesima 2 chair-of-st-peter class-2 white +paul
+2044-02-23 tuesday septuagesima 2 peter-damien class-3 white
+2044-02-24 wednesday septuagesima 2 matthias class-2 red
+2044-02-25 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2044-02-26 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2044-02-27 saturday septuagesima 2 gabriel-of-our-lady-of-sorrows class-3 white
+2044-02-28 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2044-02-29 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2044-03-01 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2044-03-02 wednesday lent - ef-ash-wednesday class-1 violet
+2044-03-03 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2044-03-04 friday lent - ef-lent-after-ashes-friday class-3 violet +casimir +lucius
+2044-03-05 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2044-03-06 sunday lent 1 ef-lent-sunday-1 class-2 violet +sts-felicitas-perpetua
+2044-03-07 monday lent 1 ef-lent-1-monday class-3 violet +thomas-aquinas
+2044-03-08 tuesday lent 1 ef-lent-1-tuesday class-3 violet +john-of-god
+2044-03-09 wednesday lent 1 ef-lent-1-wednesday class-3 violet +frances-rome
+2044-03-10 thursday lent 1 ef-lent-1-thursday class-3 violet +forty-holy-martyrs-of-sebaste
+2044-03-11 friday lent 1 ef-lent-1-friday class-3 violet
+2044-03-12 saturday lent 1 ef-lent-1-saturday class-3 violet +gregory-the-great
+2044-03-13 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2044-03-14 monday lent 2 ef-lent-2-monday class-3 violet
+2044-03-15 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2044-03-16 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2044-03-17 thursday lent 2 ef-lent-2-thursday class-3 violet +patrick
+2044-03-18 friday lent 2 ef-lent-2-friday class-3 violet +cyril-of-jerusalem
+2044-03-19 saturday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2044-03-20 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2044-03-21 monday lent 3 ef-lent-3-monday class-3 violet +benedict
+2044-03-22 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2044-03-23 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2044-03-24 thursday lent 3 ef-lent-3-thursday class-3 violet +gabriel-the-archangel
+2044-03-25 friday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2044-03-26 saturday lent 3 ef-lent-3-saturday class-3 violet
+2044-03-27 sunday lent 4 ef-lent-sunday-4 class-2 violet +john-damascene
+2044-03-28 monday lent 4 ef-lent-4-monday class-3 violet +john-of-capistrano
+2044-03-29 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2044-03-30 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2044-03-31 thursday lent 4 ef-lent-4-thursday class-3 violet
+2044-04-01 friday lent 4 ef-lent-4-friday class-3 violet
+2044-04-02 saturday lent 4 ef-lent-4-saturday class-3 violet +francis-of-paola
+2044-04-03 sunday passiontide 1 ef-passion-sunday class-1 violet
+2044-04-04 monday passiontide - ef-passiontide-0-monday class-3 violet +isidore-of-seville
+2044-04-05 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +vincent-ferrer
+2044-04-06 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2044-04-07 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2044-04-08 friday passiontide - ef-passiontide-0-friday class-3 violet
+2044-04-09 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2044-04-10 sunday passiontide 2 ef-palm-sunday class-1 violet
+2044-04-11 monday passiontide - ef-passiontide-0-monday class-1 violet +leo-the-great
+2044-04-12 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2044-04-13 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +hermenegild
+2044-04-14 thursday passiontide - ef-passiontide-0-thursday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2044-04-15 friday passiontide - ef-passiontide-0-friday class-1 violet
+2044-04-16 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2044-04-17 sunday easter 1 ef-easter-sunday class-1 white +anicetus
+2044-04-18 monday easter 1 ef-easter-1-monday class-1 white
+2044-04-19 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2044-04-20 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2044-04-21 thursday easter 1 ef-easter-1-thursday class-1 white +anselm
+2044-04-22 friday easter 1 ef-easter-1-friday class-1 white +sts-soter-caius
+2044-04-23 saturday easter 1 ef-easter-1-saturday class-1 white +george
+2044-04-24 sunday easter 2 ef-low-sunday class-1 white +fidelis-of-sigmaringen
+2044-04-25 monday easter 2 mark class-2 red
+2044-04-26 tuesday easter 2 sts-cletus-marcellinus class-3 red
+2044-04-27 wednesday easter 2 peter-canisius class-3 white
+2044-04-28 thursday easter 2 paul-of-the-cross class-3 white
+2044-04-29 friday easter 2 peter-of-verona class-3 red
+2044-04-30 saturday easter 2 catherine-of-siena class-3 white
+2044-05-01 sunday easter 3 joseph-the-workman class-1 white
+2044-05-02 monday easter 3 athanasius class-3 white
+2044-05-03 tuesday easter 3 ef-easter-3-tuesday class-4 white +sts-alexander-companions
+2044-05-04 wednesday easter 3 monica class-3 white
+2044-05-05 thursday easter 3 pius-v class-3 white
+2044-05-06 friday easter 3 ef-easter-3-friday class-4 white
+2044-05-07 saturday easter 3 stanislaus class-3 red
+2044-05-08 sunday easter 4 ef-easter-sunday-4 class-2 white
+2044-05-09 monday easter 4 gregory-of-nazianzen class-3 white
+2044-05-10 tuesday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2044-05-11 wednesday easter 4 sts-philip-james class-2 red
+2044-05-12 thursday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2044-05-13 friday easter 4 robert-bellarmine class-3 white
+2044-05-14 saturday easter 4 ef-easter-4-saturday class-4 white
+2044-05-15 sunday easter 5 ef-easter-sunday-5 class-2 white +john-baptist-de-la-salle
+2044-05-16 monday easter 5 ef-easter-5-monday class-4 white +ubaldus
+2044-05-17 tuesday easter 5 paschal-baylon class-3 white
+2044-05-18 wednesday easter 5 venantius class-3 red
+2044-05-19 thursday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2044-05-20 friday easter 5 bernardine-of-siena class-3 white
+2044-05-21 saturday easter 5 ef-easter-5-saturday class-4 white
+2044-05-22 sunday easter 6 ef-easter-sunday-6 class-2 white
+2044-05-23 monday easter 6 ef-easter-6-monday class-4 white
+2044-05-24 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2044-05-25 wednesday easter - ef-ascension-vigil class-2 white +gregory-vii +urban-pope-and-martyr
+2044-05-26 thursday easter - ef-ascension class-1 white +philip-neri +eleutherius
+2044-05-27 friday easter 6 bede-the-venerable class-3 white +john-i
+2044-05-28 saturday easter 6 augustine-of-canterbury class-3 white
+2044-05-29 sunday easter 7 ef-easter-sunday-7 class-2 white +mary-magdalene-de-pazzi
+2044-05-30 monday easter 7 ef-easter-7-monday class-4 white +felix-i
+2044-05-31 tuesday easter 7 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2044-06-01 wednesday easter 7 angela-merici class-3 white
+2044-06-02 thursday easter 7 ef-easter-7-thursday class-4 white +sts-marcellinus-peter-erasmus
+2044-06-03 friday easter 7 ef-easter-7-friday class-4 white
+2044-06-04 saturday easter - ef-pentecost-vigil class-1 red +francis-caracciolo
+2044-06-05 sunday easter - ef-pentecost class-1 red +boniface
+2044-06-06 monday easter 8 ef-easter-8-monday class-1 red +norbert
+2044-06-07 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2044-06-08 wednesday easter 8 ef-easter-8-wednesday class-1 red
+2044-06-09 thursday easter 8 ef-easter-8-thursday class-1 red +sts-primus-felicianus
+2044-06-10 friday easter 8 ef-easter-8-friday class-1 red +margaret-of-scotland
+2044-06-11 saturday easter 8 ef-easter-8-saturday class-1 red +barnabas
+2044-06-12 sunday time-after-pentecost 1 ef-trinity class-1 white +john-of-san-fecundo +basilidus
+2044-06-13 monday time-after-pentecost 1 anthony-of-padua class-3 white
+2044-06-14 tuesday time-after-pentecost 1 basil-the-great class-3 white
+2044-06-15 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green +vitus
+2044-06-16 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2044-06-17 friday time-after-pentecost 1 gregory-barbarigo class-3 white
+2044-06-18 saturday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2044-06-19 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +julia-of-falconieri +sts-gervasius-and-protasius
+2044-06-20 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green +silverius
+2044-06-21 tuesday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2044-06-22 wednesday time-after-pentecost 2 paulinus-of-nola class-3 white
+2044-06-23 thursday time-after-pentecost 2 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2044-06-24 friday time-after-pentecost - ef-sacred-heart class-1 white
+2044-06-25 saturday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white +william
+2044-06-26 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +sts-john-paul
+2044-06-27 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green
+2044-06-28 tuesday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2044-06-29 wednesday time-after-pentecost 3 sts-peter-paul class-1 red
+2044-06-30 thursday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2044-07-01 friday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2044-07-02 saturday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2044-07-03 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +irenaeus
+2044-07-04 monday time-after-pentecost 4 ef-time-after-pentecost-4-monday class-4 green
+2044-07-05 tuesday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2044-07-06 wednesday time-after-pentecost 4 ef-time-after-pentecost-4-wednesday class-4 green
+2044-07-07 thursday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2044-07-08 friday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2044-07-09 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2044-07-10 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +seven-holy-brothers-and-sts-rufina-secunda
+2044-07-11 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green +pius-i
+2044-07-12 tuesday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2044-07-13 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2044-07-14 thursday time-after-pentecost 5 bonaventure class-3 white
+2044-07-15 friday time-after-pentecost 5 henry-the-emperor class-3 white
+2044-07-16 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green +our-lady-of-mt-carmel
+2044-07-17 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +alexis
+2044-07-18 monday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2044-07-19 tuesday time-after-pentecost 6 vincent-de-paul class-3 white
+2044-07-20 wednesday time-after-pentecost 6 jerome-emiliani class-3 red +margaret
+2044-07-21 thursday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2044-07-22 friday time-after-pentecost 6 mary-magdalene class-3 white
+2044-07-23 saturday time-after-pentecost 6 apollinaris class-3 white +liborii
+2044-07-24 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +christina
+2044-07-25 monday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2044-07-26 tuesday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2044-07-27 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +pantaleon
+2044-07-28 thursday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2044-07-29 friday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2044-07-30 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green +sts-abdon-sennen
+2044-07-31 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +ignatius-loyola
+2044-08-01 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +holy-machabees
+2044-08-02 tuesday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2044-08-03 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green
+2044-08-04 thursday time-after-pentecost 8 dominic class-3 white
+2044-08-05 friday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2044-08-06 saturday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2044-08-07 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +cajetan +donatus
+2044-08-08 monday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2044-08-09 tuesday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2044-08-10 wednesday time-after-pentecost 9 lawrence class-2 red
+2044-08-11 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +sts-tiburtius-susanna
+2044-08-12 friday time-after-pentecost 9 clare class-3 white
+2044-08-13 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +sts-hippolytus-cassian
+2044-08-14 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +vigil-of-the-assumption
+2044-08-15 monday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2044-08-16 tuesday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2044-08-17 wednesday time-after-pentecost 10 hyacinth class-3 white
+2044-08-18 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +agapitus
+2044-08-19 friday time-after-pentecost 10 john-eudes class-3 white
+2044-08-20 saturday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2044-08-21 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +jane-frances-de-chantal
+2044-08-22 monday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2044-08-23 tuesday time-after-pentecost 11 philip-benizi class-3 white
+2044-08-24 wednesday time-after-pentecost 11 bartholomew class-2 red
+2044-08-25 thursday time-after-pentecost 11 louis-ix class-3 white
+2044-08-26 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +zephyrinus
+2044-08-27 saturday time-after-pentecost 11 joseph-calasance class-3 white
+2044-08-28 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +augustine +hermes
+2044-08-29 monday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2044-08-30 tuesday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2044-08-31 wednesday time-after-pentecost 12 raymond-nonnatus class-3 white
+2044-09-01 thursday time-after-pentecost 12 ef-time-after-pentecost-12-thursday class-4 green +giles +twelve-holy-brothers-martyrs
+2044-09-02 friday time-after-pentecost 12 stephen-of-hungary class-3 white
+2044-09-03 saturday time-after-pentecost 12 pius-x class-3 white
+2044-09-04 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green
+2044-09-05 monday time-after-pentecost 13 lawrence-justinian class-3 white
+2044-09-06 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green
+2044-09-07 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green
+2044-09-08 thursday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2044-09-09 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green +gorgonius
+2044-09-10 saturday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2044-09-11 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +sts-protus-hyacinth
+2044-09-12 monday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2044-09-13 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green
+2044-09-14 wednesday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2044-09-15 thursday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2044-09-16 friday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2044-09-17 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +stigmata-of-st-francis
+2044-09-18 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +joseph-of-cupertino
+2044-09-19 monday time-after-pentecost 15 januarius-companions class-3 red
+2044-09-20 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +sts-eustace-companions
+2044-09-21 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +matthew
+2044-09-22 thursday time-after-pentecost 15 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2044-09-23 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +linus +thecla
+2044-09-24 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +our-lady-of-ransom
+2044-09-25 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2044-09-26 monday time-after-pentecost 16 ef-time-after-pentecost-16-monday class-4 green +sts-cyprian-justina
+2044-09-27 tuesday time-after-pentecost 16 sts-cosmas-damian class-3 red
+2044-09-28 wednesday time-after-pentecost 16 wenceslaus class-3 red
+2044-09-29 thursday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2044-09-30 friday time-after-pentecost 16 jerome class-3 white
+2044-10-01 saturday time-after-pentecost 16 ef-time-after-pentecost-16-saturday class-4 green +remigius
+2044-10-02 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +holy-guardian-angels
+2044-10-03 monday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2044-10-04 tuesday time-after-pentecost 17 francis-of-assisi class-3 white
+2044-10-05 wednesday time-after-pentecost 17 ef-time-after-pentecost-17-wednesday class-4 green +placid-companions
+2044-10-06 thursday time-after-pentecost 17 bruno class-3 white
+2044-10-07 friday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2044-10-08 saturday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2044-10-09 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +john-leonardi +dionysius-and-companions
+2044-10-10 monday time-after-pentecost 18 francis-borgia class-3 white
+2044-10-11 tuesday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2044-10-12 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green
+2044-10-13 thursday time-after-pentecost 18 edward class-3 white
+2044-10-14 friday time-after-pentecost 18 callistus-i class-3 red
+2044-10-15 saturday time-after-pentecost 18 teresa-of-avila class-3 white
+2044-10-16 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +hedwig
+2044-10-17 monday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2044-10-18 tuesday time-after-pentecost 19 luke-the-evangelist class-2 red
+2044-10-19 wednesday time-after-pentecost 19 peter-of-alcantara class-3 white
+2044-10-20 thursday time-after-pentecost 19 john-cantius class-3 white
+2044-10-21 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green +hilarion +ursula-and-companions
+2044-10-22 saturday time-after-pentecost 19 ef-time-after-pentecost-19-saturday class-4 green
+2044-10-23 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +anthony-mary-claret
+2044-10-24 monday time-after-pentecost 20 raphael-the-archangel class-3 white
+2044-10-25 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green +sts-chrysanthus-daria
+2044-10-26 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2044-10-27 thursday time-after-pentecost 20 ef-time-after-pentecost-20-thursday class-4 green
+2044-10-28 friday time-after-pentecost 20 sts-simon-jude class-2 red
+2044-10-29 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2044-10-30 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2044-10-31 monday time-after-pentecost 21 ef-time-after-pentecost-21-monday class-4 green
+2044-11-01 tuesday time-after-pentecost 21 all-saints class-1 white
+2044-11-02 wednesday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2044-11-03 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2044-11-04 friday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2044-11-05 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2044-11-06 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2044-11-07 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2044-11-08 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green +four-holy-crowned-martyrs
+2044-11-09 wednesday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2044-11-10 thursday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2044-11-11 friday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2044-11-12 saturday time-after-pentecost 22 martin-i class-3 red
+2044-11-13 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +didacus
+2044-11-14 monday time-after-pentecost 23 josaphat class-3 white
+2044-11-15 tuesday time-after-pentecost 23 albert-the-great class-3 white
+2044-11-16 wednesday time-after-pentecost 23 gertrude-the-great class-3 white
+2044-11-17 thursday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2044-11-18 friday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2044-11-19 saturday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2044-11-20 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +felix-of-valois
+2044-11-21 monday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2044-11-22 tuesday time-after-pentecost 24 cecilia class-3 red
+2044-11-23 wednesday time-after-pentecost 24 clement-i class-3 red +felicity
+2044-11-24 thursday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2044-11-25 friday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2044-11-26 saturday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2044-11-27 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2044-11-28 monday advent 1 ef-advent-1-monday class-3 violet
+2044-11-29 tuesday advent 1 ef-advent-1-tuesday class-3 violet +saturninus
+2044-11-30 wednesday advent 1 andrew class-2 red
+2044-12-01 thursday advent 1 ef-advent-1-thursday class-3 violet
+2044-12-02 friday advent 1 vivian class-3 red
+2044-12-03 saturday advent 1 francis-xavier class-3 white
+2044-12-04 sunday advent 2 ef-advent-sunday-2 class-2 violet +peter-chrysologus
+2044-12-05 monday advent 2 ef-advent-2-monday class-3 violet +sabbas
+2044-12-06 tuesday advent 2 nicholas class-3 white
+2044-12-07 wednesday advent 2 ambrose class-3 white
+2044-12-08 thursday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2044-12-09 friday advent 2 ef-advent-2-friday class-3 violet
+2044-12-10 saturday advent 2 ef-advent-2-saturday class-3 violet +melchiades
+2044-12-11 sunday advent 3 ef-advent-sunday-3 class-2 violet +damasus-i
+2044-12-12 monday advent 3 ef-advent-3-monday class-3 violet
+2044-12-13 tuesday advent 3 lucy class-3 red
+2044-12-14 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2044-12-15 thursday advent 3 ef-advent-3-thursday class-3 violet
+2044-12-16 friday advent 3 ef-advent-ember-fri class-2 violet +eusebius
+2044-12-17 saturday advent 3 ef-advent-ember-sat class-2 violet
+2044-12-18 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2044-12-19 monday advent 4 ef-advent-4-monday class-3 violet
+2044-12-20 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2044-12-21 wednesday advent 4 thomas class-2 red
+2044-12-22 thursday advent 4 ef-advent-4-thursday class-3 violet
+2044-12-23 friday advent 4 ef-advent-4-friday class-3 violet
+2044-12-24 saturday advent 4 vigil-of-christmas class-1 violet
+2044-12-25 sunday christmas - ef-nativity class-1 white
+2044-12-26 monday christmas - stephen class-2 red
+2044-12-27 tuesday christmas - john-the-evangelist class-2 white
+2044-12-28 wednesday christmas - holy-innocents class-2 red
+2044-12-29 thursday christmas - ef-christmas-0-thursday class-4 white +thomas-becket
+2044-12-30 friday christmas - ef-christmas-0-friday class-4 white
+2044-12-31 saturday christmas - ef-christmas-0-saturday class-4 white +silvester
+2045-01-01 sunday christmas - ef-circumcision class-1 white
+2045-01-02 monday christmas - ef-christmas-0-monday class-4 white
+2045-01-03 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2045-01-04 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2045-01-05 thursday christmas - ef-christmas-0-thursday class-4 white +telesphorus-pope-and-martyr
+2045-01-06 friday time-after-epiphany - ef-epiphany class-1 white
+2045-01-07 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2045-01-08 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2045-01-09 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2045-01-10 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2045-01-11 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green +hyginus-pope-and-martyr
+2045-01-12 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2045-01-13 friday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2045-01-14 saturday time-after-epiphany 2 hilary class-3 white +felicis
+2045-01-15 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +paul-the-first-hermit +maur-abbot
+2045-01-16 monday time-after-epiphany 2 marcellus-i class-3 red
+2045-01-17 tuesday time-after-epiphany 2 anthony class-3 white
+2045-01-18 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +prisca
+2045-01-19 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2045-01-20 friday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2045-01-21 saturday time-after-epiphany 3 agnes class-3 red
+2045-01-22 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-vincent-anastasius
+2045-01-23 monday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2045-01-24 tuesday time-after-epiphany 3 timothy class-3 red
+2045-01-25 wednesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2045-01-26 thursday time-after-epiphany 3 polycarp class-3 red
+2045-01-27 friday time-after-epiphany 4 john-chrysostom class-3 white
+2045-01-28 saturday time-after-epiphany 4 peter-nolasco class-3 white
+2045-01-29 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +francis-de-sales
+2045-01-30 monday time-after-epiphany 4 martina class-3 red
+2045-01-31 tuesday time-after-epiphany 4 john-bosco class-3 white
+2045-02-01 wednesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2045-02-02 thursday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2045-02-03 friday time-after-epiphany 5 ef-time-after-epiphany-5-friday class-4 green +blaise
+2045-02-04 saturday time-after-epiphany 5 andrew-corsini class-3 white
+2045-02-05 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +agatha
+2045-02-06 monday septuagesima 1 titus class-3 white +dorothy
+2045-02-07 tuesday septuagesima 1 romuald class-3 white
+2045-02-08 wednesday septuagesima 1 john-of-matha class-3 white
+2045-02-09 thursday septuagesima 1 cyril-of-alexandria class-3 white +appollonia
+2045-02-10 friday septuagesima 1 scholastica class-3 white
+2045-02-11 saturday septuagesima 1 our-lady-of-lourdes class-3 white
+2045-02-12 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +seven-holy-servite-founders
+2045-02-13 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet
+2045-02-14 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +valentine
+2045-02-15 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet +sts-faustinus-jovita
+2045-02-16 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2045-02-17 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2045-02-18 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +simeon
+2045-02-19 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2045-02-20 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2045-02-21 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2045-02-22 wednesday lent - ef-ash-wednesday class-1 violet +chair-of-st-peter +paul
+2045-02-23 thursday lent - ef-lent-after-ashes-thursday class-3 violet +peter-damien
+2045-02-24 friday lent - matthias class-2 red
+2045-02-25 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2045-02-26 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2045-02-27 monday lent 1 ef-lent-1-monday class-3 violet +gabriel-of-our-lady-of-sorrows
+2045-02-28 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2045-03-01 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2045-03-02 thursday lent 1 ef-lent-1-thursday class-3 violet
+2045-03-03 friday lent 1 ef-lent-1-friday class-3 violet
+2045-03-04 saturday lent 1 ef-lent-1-saturday class-3 violet +casimir +lucius
+2045-03-05 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2045-03-06 monday lent 2 ef-lent-2-monday class-3 violet +sts-felicitas-perpetua
+2045-03-07 tuesday lent 2 ef-lent-2-tuesday class-3 violet +thomas-aquinas
+2045-03-08 wednesday lent 2 ef-lent-2-wednesday class-3 violet +john-of-god
+2045-03-09 thursday lent 2 ef-lent-2-thursday class-3 violet +frances-rome
+2045-03-10 friday lent 2 ef-lent-2-friday class-3 violet +forty-holy-martyrs-of-sebaste
+2045-03-11 saturday lent 2 ef-lent-2-saturday class-3 violet
+2045-03-12 sunday lent 3 ef-lent-sunday-3 class-2 violet +gregory-the-great
+2045-03-13 monday lent 3 ef-lent-3-monday class-3 violet
+2045-03-14 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2045-03-15 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2045-03-16 thursday lent 3 ef-lent-3-thursday class-3 violet
+2045-03-17 friday lent 3 ef-lent-3-friday class-3 violet +patrick
+2045-03-18 saturday lent 3 ef-lent-3-saturday class-3 violet +cyril-of-jerusalem
+2045-03-19 sunday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2045-03-20 monday lent 4 ef-lent-4-monday class-3 violet
+2045-03-21 tuesday lent 4 ef-lent-4-tuesday class-3 violet +benedict
+2045-03-22 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2045-03-23 thursday lent 4 ef-lent-4-thursday class-3 violet
+2045-03-24 friday lent 4 ef-lent-4-friday class-3 violet +gabriel-the-archangel
+2045-03-25 saturday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2045-03-26 sunday passiontide 1 ef-passion-sunday class-1 violet
+2045-03-27 monday passiontide - ef-passiontide-0-monday class-3 violet +john-damascene
+2045-03-28 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +john-of-capistrano
+2045-03-29 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2045-03-30 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2045-03-31 friday passiontide - ef-passiontide-0-friday class-3 violet
+2045-04-01 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2045-04-02 sunday passiontide 2 ef-palm-sunday class-1 violet +francis-of-paola
+2045-04-03 monday passiontide - ef-passiontide-0-monday class-1 violet
+2045-04-04 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +isidore-of-seville
+2045-04-05 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +vincent-ferrer
+2045-04-06 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2045-04-07 friday passiontide - ef-passiontide-0-friday class-1 violet
+2045-04-08 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2045-04-09 sunday easter 1 ef-easter-sunday class-1 white
+2045-04-10 monday easter 1 ef-easter-1-monday class-1 white
+2045-04-11 tuesday easter 1 ef-easter-1-tuesday class-1 white +leo-the-great
+2045-04-12 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2045-04-13 thursday easter 1 ef-easter-1-thursday class-1 white +hermenegild
+2045-04-14 friday easter 1 ef-easter-1-friday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2045-04-15 saturday easter 1 ef-easter-1-saturday class-1 white
+2045-04-16 sunday easter 2 ef-low-sunday class-1 white
+2045-04-17 monday easter 2 ef-easter-2-monday class-4 white +anicetus
+2045-04-18 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2045-04-19 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2045-04-20 thursday easter 2 ef-easter-2-thursday class-4 white
+2045-04-21 friday easter 2 anselm class-3 white
+2045-04-22 saturday easter 2 sts-soter-caius class-3 red
+2045-04-23 sunday easter 3 ef-easter-sunday-3 class-2 white +george
+2045-04-24 monday easter 3 fidelis-of-sigmaringen class-3 red
+2045-04-25 tuesday easter 3 mark class-2 red
+2045-04-26 wednesday easter 3 sts-cletus-marcellinus class-3 red
+2045-04-27 thursday easter 3 peter-canisius class-3 white
+2045-04-28 friday easter 3 paul-of-the-cross class-3 white
+2045-04-29 saturday easter 3 peter-of-verona class-3 red
+2045-04-30 sunday easter 4 ef-easter-sunday-4 class-2 white +catherine-of-siena
+2045-05-01 monday easter 4 joseph-the-workman class-1 white
+2045-05-02 tuesday easter 4 athanasius class-3 white
+2045-05-03 wednesday easter 4 ef-easter-4-wednesday class-4 white +sts-alexander-companions
+2045-05-04 thursday easter 4 monica class-3 white
+2045-05-05 friday easter 4 pius-v class-3 white
+2045-05-06 saturday easter 4 ef-easter-4-saturday class-4 white
+2045-05-07 sunday easter 5 ef-easter-sunday-5 class-2 white +stanislaus
+2045-05-08 monday easter 5 ef-easter-5-monday class-4 white
+2045-05-09 tuesday easter 5 gregory-of-nazianzen class-3 white
+2045-05-10 wednesday easter 5 antoninus class-3 white +gordiano-and-epimacho
+2045-05-11 thursday easter 5 sts-philip-james class-2 red
+2045-05-12 friday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2045-05-13 saturday easter 5 robert-bellarmine class-3 white
+2045-05-14 sunday easter 6 ef-easter-sunday-6 class-2 white
+2045-05-15 monday easter 6 john-baptist-de-la-salle class-3 white
+2045-05-16 tuesday easter 6 ef-easter-6-tuesday class-4 white +ubaldus
+2045-05-17 wednesday easter - ef-ascension-vigil class-2 white +paschal-baylon
+2045-05-18 thursday easter - ef-ascension class-1 white +venantius
+2045-05-19 friday easter 6 peter-celestine class-3 white +pudentiana-virginis
+2045-05-20 saturday easter 6 bernardine-of-siena class-3 white
+2045-05-21 sunday easter 7 ef-easter-sunday-7 class-2 white
+2045-05-22 monday easter 7 ef-easter-7-monday class-4 white
+2045-05-23 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2045-05-24 wednesday easter 7 ef-easter-7-wednesday class-4 white
+2045-05-25 thursday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2045-05-26 friday easter 7 philip-neri class-3 white +eleutherius
+2045-05-27 saturday easter - ef-pentecost-vigil class-1 red +bede-the-venerable +john-i
+2045-05-28 sunday easter - ef-pentecost class-1 red +augustine-of-canterbury
+2045-05-29 monday easter 8 ef-easter-8-monday class-1 red +mary-magdalene-de-pazzi
+2045-05-30 tuesday easter 8 ef-easter-8-tuesday class-1 red +felix-i
+2045-05-31 wednesday easter 8 ef-easter-8-wednesday class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2045-06-01 thursday easter 8 ef-easter-8-thursday class-1 red +angela-merici
+2045-06-02 friday easter 8 ef-easter-8-friday class-1 red +sts-marcellinus-peter-erasmus
+2045-06-03 saturday easter 8 ef-easter-8-saturday class-1 red
+2045-06-04 sunday time-after-pentecost 1 ef-trinity class-1 white +francis-caracciolo
+2045-06-05 monday time-after-pentecost 1 boniface class-3 red
+2045-06-06 tuesday time-after-pentecost 1 norbert class-3 white
+2045-06-07 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2045-06-08 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2045-06-09 friday time-after-pentecost 1 ef-time-after-pentecost-1-friday class-4 green +sts-primus-felicianus
+2045-06-10 saturday time-after-pentecost 1 margaret-of-scotland class-3 white
+2045-06-11 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +barnabas
+2045-06-12 monday time-after-pentecost 2 john-of-san-fecundo class-3 red +basilidus
+2045-06-13 tuesday time-after-pentecost 2 anthony-of-padua class-3 white
+2045-06-14 wednesday time-after-pentecost 2 basil-the-great class-3 white
+2045-06-15 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green +vitus
+2045-06-16 friday time-after-pentecost - ef-sacred-heart class-1 white
+2045-06-17 saturday time-after-pentecost 2 gregory-barbarigo class-3 white
+2045-06-18 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +ephrem-of-syria +marcus-and-marcellianus
+2045-06-19 monday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2045-06-20 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green +silverius
+2045-06-21 wednesday time-after-pentecost 3 aloysius-gongzaga class-3 white
+2045-06-22 thursday time-after-pentecost 3 paulinus-of-nola class-3 white
+2045-06-23 friday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2045-06-24 saturday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2045-06-25 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +william
+2045-06-26 monday time-after-pentecost 4 sts-john-paul class-3 red
+2045-06-27 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2045-06-28 wednesday time-after-pentecost 4 vigil-of-sts-peter-paul class-2 violet
+2045-06-29 thursday time-after-pentecost 4 sts-peter-paul class-1 red
+2045-06-30 friday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2045-07-01 saturday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2045-07-02 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +visitation-of-the-blessed-virgin-mary +processus-and-martinian
+2045-07-03 monday time-after-pentecost 5 irenaeus class-3 red
+2045-07-04 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green
+2045-07-05 wednesday time-after-pentecost 5 anthony-mary-zaccariah class-3 white
+2045-07-06 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green
+2045-07-07 friday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2045-07-08 saturday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2045-07-09 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green
+2045-07-10 monday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2045-07-11 tuesday time-after-pentecost 6 ef-time-after-pentecost-6-tuesday class-4 green +pius-i
+2045-07-12 wednesday time-after-pentecost 6 john-gualbert class-3 red +naboris-et-felicis
+2045-07-13 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2045-07-14 friday time-after-pentecost 6 bonaventure class-3 white
+2045-07-15 saturday time-after-pentecost 6 henry-the-emperor class-3 white
+2045-07-16 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +our-lady-of-mt-carmel
+2045-07-17 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green +alexis
+2045-07-18 tuesday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2045-07-19 wednesday time-after-pentecost 7 vincent-de-paul class-3 white
+2045-07-20 thursday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2045-07-21 friday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2045-07-22 saturday time-after-pentecost 7 mary-magdalene class-3 white
+2045-07-23 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +apollinaris +liborii
+2045-07-24 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green +christina
+2045-07-25 tuesday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2045-07-26 wednesday time-after-pentecost 8 anne-mother-of-the-blessed-virgin class-2 white
+2045-07-27 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +pantaleon
+2045-07-28 friday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2045-07-29 saturday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2045-07-30 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +sts-abdon-sennen
+2045-07-31 monday time-after-pentecost 9 ignatius-loyola class-3 white
+2045-08-01 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +holy-machabees
+2045-08-02 wednesday time-after-pentecost 9 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2045-08-03 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green
+2045-08-04 friday time-after-pentecost 9 dominic class-3 white
+2045-08-05 saturday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2045-08-06 sunday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2045-08-07 monday time-after-pentecost 10 cajetan class-3 white +donatus
+2045-08-08 tuesday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2045-08-09 wednesday time-after-pentecost 10 vigil-of-st-lawrence class-3 red +romanus
+2045-08-10 thursday time-after-pentecost 10 lawrence class-2 red
+2045-08-11 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +sts-tiburtius-susanna
+2045-08-12 saturday time-after-pentecost 10 clare class-3 white
+2045-08-13 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +sts-hippolytus-cassian
+2045-08-14 monday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2045-08-15 tuesday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2045-08-16 wednesday time-after-pentecost 11 joachim-father-of-the-blessed-virgin class-2 white
+2045-08-17 thursday time-after-pentecost 11 hyacinth class-3 white
+2045-08-18 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green +agapitus
+2045-08-19 saturday time-after-pentecost 11 john-eudes class-3 white
+2045-08-20 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +bernard-of-clairvaux
+2045-08-21 monday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2045-08-22 tuesday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2045-08-23 wednesday time-after-pentecost 12 philip-benizi class-3 white
+2045-08-24 thursday time-after-pentecost 12 bartholomew class-2 red
+2045-08-25 friday time-after-pentecost 12 louis-ix class-3 white
+2045-08-26 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +zephyrinus
+2045-08-27 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +joseph-calasance
+2045-08-28 monday time-after-pentecost 13 augustine class-3 red +hermes
+2045-08-29 tuesday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2045-08-30 wednesday time-after-pentecost 13 rose-of-lima class-3 red +sts-felix-and-adauctus
+2045-08-31 thursday time-after-pentecost 13 raymond-nonnatus class-3 white
+2045-09-01 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green +giles +twelve-holy-brothers-martyrs
+2045-09-02 saturday time-after-pentecost 13 stephen-of-hungary class-3 white
+2045-09-03 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +pius-x
+2045-09-04 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green
+2045-09-05 tuesday time-after-pentecost 14 lawrence-justinian class-3 white
+2045-09-06 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green
+2045-09-07 thursday time-after-pentecost 14 ef-time-after-pentecost-14-thursday class-4 green
+2045-09-08 friday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2045-09-09 saturday time-after-pentecost 14 ef-time-after-pentecost-14-saturday class-4 green +gorgonius
+2045-09-10 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +nicholas-of-tolentino
+2045-09-11 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green +sts-protus-hyacinth
+2045-09-12 tuesday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2045-09-13 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green
+2045-09-14 thursday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2045-09-15 friday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2045-09-16 saturday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2045-09-17 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +stigmata-of-st-francis
+2045-09-18 monday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2045-09-19 tuesday time-after-pentecost 16 januarius-companions class-3 red
+2045-09-20 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +sts-eustace-companions
+2045-09-21 thursday time-after-pentecost 16 matthew class-2 red
+2045-09-22 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2045-09-23 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +linus +thecla
+2045-09-24 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +our-lady-of-ransom
+2045-09-25 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green
+2045-09-26 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +sts-cyprian-justina
+2045-09-27 wednesday time-after-pentecost 17 sts-cosmas-damian class-3 red
+2045-09-28 thursday time-after-pentecost 17 wenceslaus class-3 red
+2045-09-29 friday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2045-09-30 saturday time-after-pentecost 17 jerome class-3 white
+2045-10-01 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +remigius
+2045-10-02 monday time-after-pentecost 18 holy-guardian-angels class-3 white
+2045-10-03 tuesday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2045-10-04 wednesday time-after-pentecost 18 francis-of-assisi class-3 white
+2045-10-05 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +placid-companions
+2045-10-06 friday time-after-pentecost 18 bruno class-3 white
+2045-10-07 saturday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2045-10-08 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +bridget-of-sweden +sergio-baccho-marcello-and-apulejo-martyrs
+2045-10-09 monday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2045-10-10 tuesday time-after-pentecost 19 francis-borgia class-3 white
+2045-10-11 wednesday time-after-pentecost 19 maternity-of-the-blessed-virgin-mary class-2 white
+2045-10-12 thursday time-after-pentecost 19 ef-time-after-pentecost-19-thursday class-4 green
+2045-10-13 friday time-after-pentecost 19 edward class-3 white
+2045-10-14 saturday time-after-pentecost 19 callistus-i class-3 red
+2045-10-15 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +teresa-of-avila
+2045-10-16 monday time-after-pentecost 20 hedwig class-3 white
+2045-10-17 tuesday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2045-10-18 wednesday time-after-pentecost 20 luke-the-evangelist class-2 red
+2045-10-19 thursday time-after-pentecost 20 peter-of-alcantara class-3 white
+2045-10-20 friday time-after-pentecost 20 john-cantius class-3 white
+2045-10-21 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green +hilarion +ursula-and-companions
+2045-10-22 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green
+2045-10-23 monday time-after-pentecost 21 anthony-mary-claret class-3 white
+2045-10-24 tuesday time-after-pentecost 21 raphael-the-archangel class-3 white
+2045-10-25 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green +sts-chrysanthus-daria
+2045-10-26 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2045-10-27 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2045-10-28 saturday time-after-pentecost 21 sts-simon-jude class-2 red
+2045-10-29 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2045-10-30 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2045-10-31 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2045-11-01 wednesday time-after-pentecost 22 all-saints class-1 white
+2045-11-02 thursday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2045-11-03 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2045-11-04 saturday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2045-11-05 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green
+2045-11-06 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2045-11-07 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2045-11-08 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green +four-holy-crowned-martyrs
+2045-11-09 thursday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2045-11-10 friday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2045-11-11 saturday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2045-11-12 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-i
+2045-11-13 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green +didacus
+2045-11-14 tuesday time-after-pentecost 24 josaphat class-3 white
+2045-11-15 wednesday time-after-pentecost 24 albert-the-great class-3 white
+2045-11-16 thursday time-after-pentecost 24 gertrude-the-great class-3 white
+2045-11-17 friday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2045-11-18 saturday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2045-11-19 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +elizabeth-of-hungary +pontian
+2045-11-20 monday time-after-pentecost 25 felix-of-valois class-3 white
+2045-11-21 tuesday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2045-11-22 wednesday time-after-pentecost 25 cecilia class-3 red
+2045-11-23 thursday time-after-pentecost 25 clement-i class-3 red +felicity
+2045-11-24 friday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2045-11-25 saturday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2045-11-26 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +sylvester +peter-of-alexandria
+2045-11-27 monday time-after-pentecost 26 ef-time-after-pentecost-26-monday class-4 green
+2045-11-28 tuesday time-after-pentecost 26 ef-time-after-pentecost-26-tuesday class-4 green
+2045-11-29 wednesday time-after-pentecost 26 ef-time-after-pentecost-26-wednesday class-4 green +saturninus
+2045-11-30 thursday time-after-pentecost 26 andrew class-2 red
+2045-12-01 friday time-after-pentecost 26 ef-time-after-pentecost-26-friday class-4 green
+2045-12-02 saturday time-after-pentecost 26 vivian class-3 red
+2045-12-03 sunday advent 1 ef-advent-sunday-1 class-1 violet +francis-xavier
+2045-12-04 monday advent 1 peter-chrysologus class-3 white
+2045-12-05 tuesday advent 1 ef-advent-1-tuesday class-3 violet +sabbas
+2045-12-06 wednesday advent 1 nicholas class-3 white
+2045-12-07 thursday advent 1 ambrose class-3 white
+2045-12-08 friday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2045-12-09 saturday advent 1 ef-advent-1-saturday class-3 violet
+2045-12-10 sunday advent 2 ef-advent-sunday-2 class-2 violet +melchiades
+2045-12-11 monday advent 2 damasus-i class-3 white
+2045-12-12 tuesday advent 2 ef-advent-2-tuesday class-3 violet
+2045-12-13 wednesday advent 2 lucy class-3 red
+2045-12-14 thursday advent 2 ef-advent-2-thursday class-3 violet
+2045-12-15 friday advent 2 ef-advent-2-friday class-3 violet
+2045-12-16 saturday advent 2 eusebius class-3 red
+2045-12-17 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2045-12-18 monday advent 3 ef-advent-3-monday class-3 violet
+2045-12-19 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2045-12-20 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2045-12-21 thursday advent 3 thomas class-2 red
+2045-12-22 friday advent 3 ef-advent-ember-fri class-2 violet
+2045-12-23 saturday advent 3 ef-advent-ember-sat class-2 violet
+2045-12-24 sunday advent 4 vigil-of-christmas class-1 violet
+2045-12-25 monday christmas - ef-nativity class-1 white
+2045-12-26 tuesday christmas - stephen class-2 red
+2045-12-27 wednesday christmas - john-the-evangelist class-2 white
+2045-12-28 thursday christmas - holy-innocents class-2 red
+2045-12-29 friday christmas - ef-christmas-0-friday class-4 white +thomas-becket
+2045-12-30 saturday christmas - ef-christmas-0-saturday class-4 white
+2045-12-31 sunday christmas - ef-christmas-sunday-0 class-2 white +silvester
+2046-01-01 monday christmas - ef-circumcision class-1 white
+2046-01-02 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2046-01-03 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2046-01-04 thursday christmas - ef-christmas-0-thursday class-4 white
+2046-01-05 friday christmas - ef-christmas-0-friday class-4 white +telesphorus-pope-and-martyr
+2046-01-06 saturday time-after-epiphany - ef-epiphany class-1 white
+2046-01-07 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2046-01-08 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2046-01-09 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2046-01-10 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2046-01-11 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green +hyginus-pope-and-martyr
+2046-01-12 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2046-01-13 saturday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2046-01-14 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +hilary +felicis
+2046-01-15 monday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2046-01-16 tuesday time-after-epiphany 2 marcellus-i class-3 red
+2046-01-17 wednesday time-after-epiphany 2 anthony class-3 white
+2046-01-18 thursday time-after-epiphany 2 ef-time-after-epiphany-2-thursday class-4 green +prisca
+2046-01-19 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2046-01-20 saturday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2046-01-21 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +agnes
+2046-01-22 monday septuagesima 1 sts-vincent-anastasius class-3 red
+2046-01-23 tuesday septuagesima 1 raymond-of-pe-afort class-3 white +emerentiana
+2046-01-24 wednesday septuagesima 1 timothy class-3 red
+2046-01-25 thursday septuagesima 1 conversion-of-st-paul class-3 white +peter
+2046-01-26 friday septuagesima 1 polycarp class-3 red
+2046-01-27 saturday septuagesima 1 john-chrysostom class-3 white
+2046-01-28 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +peter-nolasco
+2046-01-29 monday septuagesima 2 francis-de-sales class-3 white
+2046-01-30 tuesday septuagesima 2 martina class-3 red
+2046-01-31 wednesday septuagesima 2 john-bosco class-3 white
+2046-02-01 thursday septuagesima 2 ignatius-of-antioch class-3 red
+2046-02-02 friday septuagesima 2 purification-of-the-blessed-virgin-mary class-2 white
+2046-02-03 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +blaise
+2046-02-04 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +andrew-corsini
+2046-02-05 monday septuagesima 3 agatha class-3 red
+2046-02-06 tuesday septuagesima 3 titus class-3 white +dorothy
+2046-02-07 wednesday lent - ef-ash-wednesday class-1 violet +romuald
+2046-02-08 thursday lent - ef-lent-after-ashes-thursday class-3 violet +john-of-matha
+2046-02-09 friday lent - ef-lent-after-ashes-friday class-3 violet +cyril-of-alexandria +appollonia
+2046-02-10 saturday lent - ef-lent-after-ashes-saturday class-3 violet +scholastica
+2046-02-11 sunday lent 1 ef-lent-sunday-1 class-2 violet +our-lady-of-lourdes
+2046-02-12 monday lent 1 ef-lent-1-monday class-3 violet +seven-holy-servite-founders
+2046-02-13 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2046-02-14 wednesday lent 1 ef-lent-1-wednesday class-3 violet +valentine
+2046-02-15 thursday lent 1 ef-lent-1-thursday class-3 violet +sts-faustinus-jovita
+2046-02-16 friday lent 1 ef-lent-1-friday class-3 violet
+2046-02-17 saturday lent 1 ef-lent-1-saturday class-3 violet
+2046-02-18 sunday lent 2 ef-lent-sunday-2 class-2 violet +simeon
+2046-02-19 monday lent 2 ef-lent-2-monday class-3 violet
+2046-02-20 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2046-02-21 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2046-02-22 thursday lent 2 chair-of-st-peter class-2 white +paul
+2046-02-23 friday lent 2 ef-lent-2-friday class-3 violet +peter-damien
+2046-02-24 saturday lent 2 matthias class-2 red
+2046-02-25 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2046-02-26 monday lent 3 ef-lent-3-monday class-3 violet
+2046-02-27 tuesday lent 3 ef-lent-3-tuesday class-3 violet +gabriel-of-our-lady-of-sorrows
+2046-02-28 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2046-03-01 thursday lent 3 ef-lent-3-thursday class-3 violet
+2046-03-02 friday lent 3 ef-lent-3-friday class-3 violet
+2046-03-03 saturday lent 3 ef-lent-3-saturday class-3 violet
+2046-03-04 sunday lent 4 ef-lent-sunday-4 class-2 violet +casimir +lucius
+2046-03-05 monday lent 4 ef-lent-4-monday class-3 violet
+2046-03-06 tuesday lent 4 ef-lent-4-tuesday class-3 violet +sts-felicitas-perpetua
+2046-03-07 wednesday lent 4 ef-lent-4-wednesday class-3 violet +thomas-aquinas
+2046-03-08 thursday lent 4 ef-lent-4-thursday class-3 violet +john-of-god
+2046-03-09 friday lent 4 ef-lent-4-friday class-3 violet +frances-rome
+2046-03-10 saturday lent 4 ef-lent-4-saturday class-3 violet +forty-holy-martyrs-of-sebaste
+2046-03-11 sunday passiontide 1 ef-passion-sunday class-1 violet
+2046-03-12 monday passiontide - ef-passiontide-0-monday class-3 violet +gregory-the-great
+2046-03-13 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2046-03-14 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2046-03-15 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2046-03-16 friday passiontide - ef-passiontide-0-friday class-3 violet
+2046-03-17 saturday passiontide - ef-passiontide-0-saturday class-3 violet +patrick
+2046-03-18 sunday passiontide 2 ef-palm-sunday class-1 violet +cyril-of-jerusalem
+2046-03-19 monday passiontide - ef-passiontide-0-monday class-1 violet
+2046-03-20 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2046-03-21 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +benedict
+2046-03-22 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2046-03-23 friday passiontide - ef-passiontide-0-friday class-1 violet
+2046-03-24 saturday passiontide - ef-passiontide-0-saturday class-1 violet +gabriel-the-archangel
+2046-03-25 sunday easter 1 ef-easter-sunday class-1 white
+2046-03-26 monday easter 1 ef-easter-1-monday class-1 white
+2046-03-27 tuesday easter 1 ef-easter-1-tuesday class-1 white +john-damascene
+2046-03-28 wednesday easter 1 ef-easter-1-wednesday class-1 white +john-of-capistrano
+2046-03-29 thursday easter 1 ef-easter-1-thursday class-1 white
+2046-03-30 friday easter 1 ef-easter-1-friday class-1 white
+2046-03-31 saturday easter 1 ef-easter-1-saturday class-1 white
+2046-04-01 sunday easter 2 ef-low-sunday class-1 white
+2046-04-02 monday easter 2 annunciation-of-the-blessed-virgin-mary class-1 white +joseph-spouse-of-the-bl-virgin-mary +francis-of-paola
+2046-04-03 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2046-04-04 wednesday easter 2 ef-easter-2-wednesday class-4 white +isidore-of-seville
+2046-04-05 thursday easter 2 ef-easter-2-thursday class-4 white +vincent-ferrer
+2046-04-06 friday easter 2 ef-easter-2-friday class-4 white
+2046-04-07 saturday easter 2 ef-easter-2-saturday class-4 white
+2046-04-08 sunday easter 3 ef-easter-sunday-3 class-2 white
+2046-04-09 monday easter 3 ef-easter-3-monday class-4 white
+2046-04-10 tuesday easter 3 ef-easter-3-tuesday class-4 white
+2046-04-11 wednesday easter 3 leo-the-great class-3 white
+2046-04-12 thursday easter 3 ef-easter-3-thursday class-4 white
+2046-04-13 friday easter 3 hermenegild class-3 red
+2046-04-14 saturday easter 3 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2046-04-15 sunday easter 4 ef-easter-sunday-4 class-2 white
+2046-04-16 monday easter 4 ef-easter-4-monday class-4 white
+2046-04-17 tuesday easter 4 ef-easter-4-tuesday class-4 white +anicetus
+2046-04-18 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2046-04-19 thursday easter 4 ef-easter-4-thursday class-4 white
+2046-04-20 friday easter 4 ef-easter-4-friday class-4 white
+2046-04-21 saturday easter 4 anselm class-3 white
+2046-04-22 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-soter-caius
+2046-04-23 monday easter 5 ef-easter-5-monday class-4 white +george
+2046-04-24 tuesday easter 5 fidelis-of-sigmaringen class-3 red
+2046-04-25 wednesday easter 5 mark class-2 red
+2046-04-26 thursday easter 5 sts-cletus-marcellinus class-3 red
+2046-04-27 friday easter 5 peter-canisius class-3 white
+2046-04-28 saturday easter 5 paul-of-the-cross class-3 white
+2046-04-29 sunday easter 6 ef-easter-sunday-6 class-2 white +peter-of-verona
+2046-04-30 monday easter 6 catherine-of-siena class-3 white
+2046-05-01 tuesday easter 6 joseph-the-workman class-1 white
+2046-05-02 wednesday easter - ef-ascension-vigil class-2 white +athanasius
+2046-05-03 thursday easter - ef-ascension class-1 white +sts-alexander-companions
+2046-05-04 friday easter 6 monica class-3 white
+2046-05-05 saturday easter 6 pius-v class-3 white
+2046-05-06 sunday easter 7 ef-easter-sunday-7 class-2 white
+2046-05-07 monday easter 7 stanislaus class-3 red
+2046-05-08 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2046-05-09 wednesday easter 7 gregory-of-nazianzen class-3 white
+2046-05-10 thursday easter 7 antoninus class-3 white +gordiano-and-epimacho
+2046-05-11 friday easter 7 sts-philip-james class-2 red
+2046-05-12 saturday easter - ef-pentecost-vigil class-1 red +sts-nereus-achilleus-domitilla-pancras
+2046-05-13 sunday easter - ef-pentecost class-1 red +robert-bellarmine
+2046-05-14 monday easter 8 ef-easter-8-monday class-1 red
+2046-05-15 tuesday easter 8 ef-easter-8-tuesday class-1 red +john-baptist-de-la-salle
+2046-05-16 wednesday easter 8 ef-easter-8-wednesday class-1 red +ubaldus
+2046-05-17 thursday easter 8 ef-easter-8-thursday class-1 red +paschal-baylon
+2046-05-18 friday easter 8 ef-easter-8-friday class-1 red +venantius
+2046-05-19 saturday easter 8 ef-easter-8-saturday class-1 red +peter-celestine +pudentiana-virginis
+2046-05-20 sunday time-after-pentecost 1 ef-trinity class-1 white +bernardine-of-siena
+2046-05-21 monday time-after-pentecost 1 ef-time-after-pentecost-1-monday class-4 green
+2046-05-22 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green
+2046-05-23 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2046-05-24 thursday time-after-pentecost - ef-corpus-christi class-1 white
+2046-05-25 friday time-after-pentecost 1 gregory-vii class-3 white +urban-pope-and-martyr
+2046-05-26 saturday time-after-pentecost 1 philip-neri class-3 white +eleutherius
+2046-05-27 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +bede-the-venerable +john-i
+2046-05-28 monday time-after-pentecost 2 augustine-of-canterbury class-3 white
+2046-05-29 tuesday time-after-pentecost 2 mary-magdalene-de-pazzi class-3 white
+2046-05-30 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green +felix-i
+2046-05-31 thursday time-after-pentecost 2 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2046-06-01 friday time-after-pentecost - ef-sacred-heart class-1 white +angela-merici
+2046-06-02 saturday time-after-pentecost 2 ef-time-after-pentecost-2-saturday class-4 green +sts-marcellinus-peter-erasmus
+2046-06-03 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green
+2046-06-04 monday time-after-pentecost 3 francis-caracciolo class-3 white
+2046-06-05 tuesday time-after-pentecost 3 boniface class-3 red
+2046-06-06 wednesday time-after-pentecost 3 norbert class-3 white
+2046-06-07 thursday time-after-pentecost 3 ef-time-after-pentecost-3-thursday class-4 green
+2046-06-08 friday time-after-pentecost 3 ef-time-after-pentecost-3-friday class-4 green
+2046-06-09 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green +sts-primus-felicianus
+2046-06-10 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +margaret-of-scotland
+2046-06-11 monday time-after-pentecost 4 barnabas class-3 red
+2046-06-12 tuesday time-after-pentecost 4 john-of-san-fecundo class-3 red +basilidus
+2046-06-13 wednesday time-after-pentecost 4 anthony-of-padua class-3 white
+2046-06-14 thursday time-after-pentecost 4 basil-the-great class-3 white
+2046-06-15 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green +vitus
+2046-06-16 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2046-06-17 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +gregory-barbarigo
+2046-06-18 monday time-after-pentecost 5 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2046-06-19 tuesday time-after-pentecost 5 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2046-06-20 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green +silverius
+2046-06-21 thursday time-after-pentecost 5 aloysius-gongzaga class-3 white
+2046-06-22 friday time-after-pentecost 5 paulinus-of-nola class-3 white
+2046-06-23 saturday time-after-pentecost 5 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2046-06-24 sunday time-after-pentecost 6 nativity-of-st-john-the-baptist class-1 white
+2046-06-25 monday time-after-pentecost 6 william class-3 white
+2046-06-26 tuesday time-after-pentecost 6 sts-john-paul class-3 red
+2046-06-27 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green
+2046-06-28 thursday time-after-pentecost 6 vigil-of-sts-peter-paul class-2 violet
+2046-06-29 friday time-after-pentecost 6 sts-peter-paul class-1 red
+2046-06-30 saturday time-after-pentecost 6 in-commemoratione-sancti-pauli-apostoli class-3 red
+2046-07-01 sunday time-after-pentecost 7 precious-blood-of-our-lord-jesus-christ class-1 red
+2046-07-02 monday time-after-pentecost 7 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2046-07-03 tuesday time-after-pentecost 7 irenaeus class-3 red
+2046-07-04 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green
+2046-07-05 thursday time-after-pentecost 7 anthony-mary-zaccariah class-3 white
+2046-07-06 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green
+2046-07-07 saturday time-after-pentecost 7 sts-cyril-methodius class-3 white
+2046-07-08 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +elizabeth-of-portugal
+2046-07-09 monday time-after-pentecost 8 ef-time-after-pentecost-8-monday class-4 green
+2046-07-10 tuesday time-after-pentecost 8 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2046-07-11 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +pius-i
+2046-07-12 thursday time-after-pentecost 8 john-gualbert class-3 red +naboris-et-felicis
+2046-07-13 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green
+2046-07-14 saturday time-after-pentecost 8 bonaventure class-3 white
+2046-07-15 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +henry-the-emperor
+2046-07-16 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +our-lady-of-mt-carmel
+2046-07-17 tuesday time-after-pentecost 9 ef-time-after-pentecost-9-tuesday class-4 green +alexis
+2046-07-18 wednesday time-after-pentecost 9 camillus-de-lellis class-3 red +symphorosa-and-sons
+2046-07-19 thursday time-after-pentecost 9 vincent-de-paul class-3 white
+2046-07-20 friday time-after-pentecost 9 jerome-emiliani class-3 red +margaret
+2046-07-21 saturday time-after-pentecost 9 laurence-of-brindisi class-3 white +praxedis-virginis
+2046-07-22 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +mary-magdalene
+2046-07-23 monday time-after-pentecost 10 apollinaris class-3 white +liborii
+2046-07-24 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +christina
+2046-07-25 wednesday time-after-pentecost 10 james-the-greater class-2 red +christopher
+2046-07-26 thursday time-after-pentecost 10 anne-mother-of-the-blessed-virgin class-2 white
+2046-07-27 friday time-after-pentecost 10 ef-time-after-pentecost-10-friday class-4 green +pantaleon
+2046-07-28 saturday time-after-pentecost 10 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2046-07-29 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +martha +felicis-simplicii-faustini-et-beatricis
+2046-07-30 monday time-after-pentecost 11 ef-time-after-pentecost-11-monday class-4 green +sts-abdon-sennen
+2046-07-31 tuesday time-after-pentecost 11 ignatius-loyola class-3 white
+2046-08-01 wednesday time-after-pentecost 11 ef-time-after-pentecost-11-wednesday class-4 green +holy-machabees
+2046-08-02 thursday time-after-pentecost 11 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2046-08-03 friday time-after-pentecost 11 ef-time-after-pentecost-11-friday class-4 green
+2046-08-04 saturday time-after-pentecost 11 dominic class-3 white
+2046-08-05 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +dedication-of-the-basilica-of-st-mary-major
+2046-08-06 monday time-after-pentecost 12 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2046-08-07 tuesday time-after-pentecost 12 cajetan class-3 white +donatus
+2046-08-08 wednesday time-after-pentecost 12 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2046-08-09 thursday time-after-pentecost 12 vigil-of-st-lawrence class-3 red +romanus
+2046-08-10 friday time-after-pentecost 12 lawrence class-2 red
+2046-08-11 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green +sts-tiburtius-susanna
+2046-08-12 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +clare
+2046-08-13 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green +sts-hippolytus-cassian
+2046-08-14 tuesday time-after-pentecost 13 vigil-of-the-assumption class-2 white
+2046-08-15 wednesday time-after-pentecost 13 assumption-of-the-blessed-virgin-mary class-1 white
+2046-08-16 thursday time-after-pentecost 13 joachim-father-of-the-blessed-virgin class-2 white
+2046-08-17 friday time-after-pentecost 13 hyacinth class-3 white
+2046-08-18 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +agapitus
+2046-08-19 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +john-eudes
+2046-08-20 monday time-after-pentecost 14 bernard-of-clairvaux class-3 white
+2046-08-21 tuesday time-after-pentecost 14 jane-frances-de-chantal class-3 white
+2046-08-22 wednesday time-after-pentecost 14 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2046-08-23 thursday time-after-pentecost 14 philip-benizi class-3 white
+2046-08-24 friday time-after-pentecost 14 bartholomew class-2 red
+2046-08-25 saturday time-after-pentecost 14 louis-ix class-3 white
+2046-08-26 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +zephyrinus
+2046-08-27 monday time-after-pentecost 15 joseph-calasance class-3 white
+2046-08-28 tuesday time-after-pentecost 15 augustine class-3 red +hermes
+2046-08-29 wednesday time-after-pentecost 15 beheading-of-st-john-the-baptist class-3 red +sabina
+2046-08-30 thursday time-after-pentecost 15 rose-of-lima class-3 red +sts-felix-and-adauctus
+2046-08-31 friday time-after-pentecost 15 raymond-nonnatus class-3 white
+2046-09-01 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +giles +twelve-holy-brothers-martyrs
+2046-09-02 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +stephen-of-hungary
+2046-09-03 monday time-after-pentecost 16 pius-x class-3 white
+2046-09-04 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green
+2046-09-05 wednesday time-after-pentecost 16 lawrence-justinian class-3 white
+2046-09-06 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green
+2046-09-07 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green
+2046-09-08 saturday time-after-pentecost 16 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2046-09-09 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +gorgonius
+2046-09-10 monday time-after-pentecost 17 nicholas-of-tolentino class-3 white
+2046-09-11 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +sts-protus-hyacinth
+2046-09-12 wednesday time-after-pentecost 17 most-holy-name-of-mary class-3 white
+2046-09-13 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green
+2046-09-14 friday time-after-pentecost 17 exaltation-of-the-holy-cross class-2 red
+2046-09-15 saturday time-after-pentecost 17 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2046-09-16 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-cornelius-cyprian +sts-euphemia-lucy-and-geminianus
+2046-09-17 monday time-after-pentecost 18 ef-time-after-pentecost-18-monday class-4 green +stigmata-of-st-francis
+2046-09-18 tuesday time-after-pentecost 18 joseph-of-cupertino class-3 white
+2046-09-19 wednesday time-after-pentecost 18 ef-september-ember-wed class-2 violet +januarius-companions
+2046-09-20 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +sts-eustace-companions
+2046-09-21 friday time-after-pentecost 18 ef-september-ember-fri class-2 violet +matthew
+2046-09-22 saturday time-after-pentecost 18 ef-september-ember-sat class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2046-09-23 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +linus +thecla
+2046-09-24 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +our-lady-of-ransom
+2046-09-25 tuesday time-after-pentecost 19 ef-time-after-pentecost-19-tuesday class-4 green
+2046-09-26 wednesday time-after-pentecost 19 ef-time-after-pentecost-19-wednesday class-4 green +sts-cyprian-justina
+2046-09-27 thursday time-after-pentecost 19 sts-cosmas-damian class-3 red
+2046-09-28 friday time-after-pentecost 19 wenceslaus class-3 red
+2046-09-29 saturday time-after-pentecost 19 dedication-of-st-michael-the-archangel class-1 white
+2046-09-30 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +jerome
+2046-10-01 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green +remigius
+2046-10-02 tuesday time-after-pentecost 20 holy-guardian-angels class-3 white
+2046-10-03 wednesday time-after-pentecost 20 theresa-of-the-infant-jesus class-3 white
+2046-10-04 thursday time-after-pentecost 20 francis-of-assisi class-3 white
+2046-10-05 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green +placid-companions
+2046-10-06 saturday time-after-pentecost 20 bruno class-3 white
+2046-10-07 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +our-lady-of-the-rosary +mark-i
+2046-10-08 monday time-after-pentecost 21 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2046-10-09 tuesday time-after-pentecost 21 john-leonardi class-3 white +dionysius-and-companions
+2046-10-10 wednesday time-after-pentecost 21 francis-borgia class-3 white
+2046-10-11 thursday time-after-pentecost 21 maternity-of-the-blessed-virgin-mary class-2 white
+2046-10-12 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2046-10-13 saturday time-after-pentecost 21 edward class-3 white
+2046-10-14 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green +callistus-i
+2046-10-15 monday time-after-pentecost 22 teresa-of-avila class-3 white
+2046-10-16 tuesday time-after-pentecost 22 hedwig class-3 white
+2046-10-17 wednesday time-after-pentecost 22 margaret-mary-alacoque class-3 white
+2046-10-18 thursday time-after-pentecost 22 luke-the-evangelist class-2 red
+2046-10-19 friday time-after-pentecost 22 peter-of-alcantara class-3 white
+2046-10-20 saturday time-after-pentecost 22 john-cantius class-3 white
+2046-10-21 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +hilarion +ursula-and-companions
+2046-10-22 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2046-10-23 tuesday time-after-pentecost 23 anthony-mary-claret class-3 white
+2046-10-24 wednesday time-after-pentecost 23 raphael-the-archangel class-3 white
+2046-10-25 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green +sts-chrysanthus-daria
+2046-10-26 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2046-10-27 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2046-10-28 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-simon-jude
+2046-10-29 monday time-after-pentecost 24 ef-time-after-pentecost-24-monday class-4 green
+2046-10-30 tuesday time-after-pentecost 24 ef-time-after-pentecost-24-tuesday class-4 green
+2046-10-31 wednesday time-after-pentecost 24 ef-time-after-pentecost-24-wednesday class-4 green
+2046-11-01 thursday time-after-pentecost 24 all-saints class-1 white
+2046-11-02 friday time-after-pentecost 24 commemoration-of-all-souls class-1 black
+2046-11-03 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green
+2046-11-04 sunday time-after-pentecost 4 ef-time-after-epiphany-sunday-4 class-2 green +charles-borromeo +sts-vitalis-and-agricola-martyrs
+2046-11-05 monday time-after-pentecost 25 ef-time-after-pentecost-25-monday class-4 green
+2046-11-06 tuesday time-after-pentecost 25 ef-time-after-pentecost-25-tuesday class-4 green
+2046-11-07 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green
+2046-11-08 thursday time-after-pentecost 25 ef-time-after-pentecost-25-thursday class-4 green +four-holy-crowned-martyrs
+2046-11-09 friday time-after-pentecost 25 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2046-11-10 saturday time-after-pentecost 25 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2046-11-11 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +martin-of-tours +menna
+2046-11-12 monday time-after-pentecost 26 martin-i class-3 red
+2046-11-13 tuesday time-after-pentecost 26 ef-time-after-pentecost-26-tuesday class-4 green +didacus
+2046-11-14 wednesday time-after-pentecost 26 josaphat class-3 white
+2046-11-15 thursday time-after-pentecost 26 albert-the-great class-3 white
+2046-11-16 friday time-after-pentecost 26 gertrude-the-great class-3 white
+2046-11-17 saturday time-after-pentecost 26 gregory-the-wonderworker class-3 white
+2046-11-18 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +dedication-of-the-basilicas-of-sts-peter-paul
+2046-11-19 monday time-after-pentecost 27 elizabeth-of-hungary class-3 white +pontian
+2046-11-20 tuesday time-after-pentecost 27 felix-of-valois class-3 white
+2046-11-21 wednesday time-after-pentecost 27 presentation-of-the-blessed-virgin-mary class-3 white
+2046-11-22 thursday time-after-pentecost 27 cecilia class-3 red
+2046-11-23 friday time-after-pentecost 27 clement-i class-3 red +felicity
+2046-11-24 saturday time-after-pentecost 27 john-of-the-cross class-3 white +chrysogonus
+2046-11-25 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +catherine-of-alexandria
+2046-11-26 monday time-after-pentecost 28 sylvester class-3 white +peter-of-alexandria
+2046-11-27 tuesday time-after-pentecost 28 ef-time-after-pentecost-28-tuesday class-4 green
+2046-11-28 wednesday time-after-pentecost 28 ef-time-after-pentecost-28-wednesday class-4 green
+2046-11-29 thursday time-after-pentecost 28 ef-time-after-pentecost-28-thursday class-4 green +saturninus
+2046-11-30 friday time-after-pentecost 28 andrew class-2 red
+2046-12-01 saturday time-after-pentecost 28 ef-time-after-pentecost-28-saturday class-4 green
+2046-12-02 sunday advent 1 ef-advent-sunday-1 class-1 violet +vivian
+2046-12-03 monday advent 1 francis-xavier class-3 white
+2046-12-04 tuesday advent 1 peter-chrysologus class-3 white
+2046-12-05 wednesday advent 1 ef-advent-1-wednesday class-3 violet +sabbas
+2046-12-06 thursday advent 1 nicholas class-3 white
+2046-12-07 friday advent 1 ambrose class-3 white
+2046-12-08 saturday advent 1 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2046-12-09 sunday advent 2 ef-advent-sunday-2 class-2 violet
+2046-12-10 monday advent 2 ef-advent-2-monday class-3 violet +melchiades
+2046-12-11 tuesday advent 2 damasus-i class-3 white
+2046-12-12 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2046-12-13 thursday advent 2 lucy class-3 red
+2046-12-14 friday advent 2 ef-advent-2-friday class-3 violet
+2046-12-15 saturday advent 2 ef-advent-2-saturday class-3 violet
+2046-12-16 sunday advent 3 ef-advent-sunday-3 class-2 violet +eusebius
+2046-12-17 monday advent 3 ef-advent-3-monday class-3 violet
+2046-12-18 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2046-12-19 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2046-12-20 thursday advent 3 ef-advent-3-thursday class-3 violet
+2046-12-21 friday advent 3 ef-advent-ember-fri class-2 violet +thomas
+2046-12-22 saturday advent 3 ef-advent-ember-sat class-2 violet
+2046-12-23 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2046-12-24 monday advent 4 vigil-of-christmas class-1 violet
+2046-12-25 tuesday christmas - ef-nativity class-1 white
+2046-12-26 wednesday christmas - stephen class-2 red
+2046-12-27 thursday christmas - john-the-evangelist class-2 white
+2046-12-28 friday christmas - holy-innocents class-2 red
+2046-12-29 saturday christmas - ef-christmas-0-saturday class-4 white +thomas-becket
+2046-12-30 sunday christmas - ef-christmas-sunday-0 class-2 white
+2046-12-31 monday christmas - ef-christmas-0-monday class-4 white +silvester
+2047-01-01 tuesday christmas - ef-circumcision class-1 white
+2047-01-02 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2047-01-03 thursday christmas - ef-christmas-0-thursday class-4 white
+2047-01-04 friday christmas - ef-christmas-0-friday class-4 white
+2047-01-05 saturday christmas - ef-christmas-0-saturday class-4 white +telesphorus-pope-and-martyr
+2047-01-06 sunday time-after-epiphany - ef-epiphany class-1 white
+2047-01-07 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2047-01-08 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2047-01-09 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2047-01-10 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2047-01-11 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green +hyginus-pope-and-martyr
+2047-01-12 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2047-01-13 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +commemoration-of-the-baptism-of-the-lord
+2047-01-14 monday time-after-epiphany 2 hilary class-3 white +felicis
+2047-01-15 tuesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2047-01-16 wednesday time-after-epiphany 2 marcellus-i class-3 red
+2047-01-17 thursday time-after-epiphany 2 anthony class-3 white
+2047-01-18 friday time-after-epiphany 2 ef-time-after-epiphany-2-friday class-4 green +prisca
+2047-01-19 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2047-01-20 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +sts-fabian-sebastian
+2047-01-21 monday time-after-epiphany 3 agnes class-3 red
+2047-01-22 tuesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2047-01-23 wednesday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2047-01-24 thursday time-after-epiphany 3 timothy class-3 red
+2047-01-25 friday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2047-01-26 saturday time-after-epiphany 3 polycarp class-3 red
+2047-01-27 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +john-chrysostom
+2047-01-28 monday time-after-epiphany 4 peter-nolasco class-3 white
+2047-01-29 tuesday time-after-epiphany 4 francis-de-sales class-3 white
+2047-01-30 wednesday time-after-epiphany 4 martina class-3 red
+2047-01-31 thursday time-after-epiphany 4 john-bosco class-3 white
+2047-02-01 friday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2047-02-02 saturday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2047-02-03 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +blaise
+2047-02-04 monday time-after-epiphany 5 andrew-corsini class-3 white
+2047-02-05 tuesday time-after-epiphany 5 agatha class-3 red
+2047-02-06 wednesday time-after-epiphany 5 titus class-3 white +dorothy
+2047-02-07 thursday time-after-epiphany 5 romuald class-3 white
+2047-02-08 friday time-after-epiphany 5 john-of-matha class-3 white
+2047-02-09 saturday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2047-02-10 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +scholastica
+2047-02-11 monday septuagesima 1 our-lady-of-lourdes class-3 white
+2047-02-12 tuesday septuagesima 1 seven-holy-servite-founders class-3 white
+2047-02-13 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2047-02-14 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet +valentine
+2047-02-15 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet +sts-faustinus-jovita
+2047-02-16 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet
+2047-02-17 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2047-02-18 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet +simeon
+2047-02-19 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet
+2047-02-20 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2047-02-21 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2047-02-22 friday septuagesima 2 chair-of-st-peter class-2 white +paul
+2047-02-23 saturday septuagesima 2 peter-damien class-3 white
+2047-02-24 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet +matthias
+2047-02-25 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2047-02-26 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2047-02-27 wednesday lent - ef-ash-wednesday class-1 violet +gabriel-of-our-lady-of-sorrows
+2047-02-28 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2047-03-01 friday lent - ef-lent-after-ashes-friday class-3 violet
+2047-03-02 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2047-03-03 sunday lent 1 ef-lent-sunday-1 class-2 violet
+2047-03-04 monday lent 1 ef-lent-1-monday class-3 violet +casimir +lucius
+2047-03-05 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2047-03-06 wednesday lent 1 ef-lent-1-wednesday class-3 violet +sts-felicitas-perpetua
+2047-03-07 thursday lent 1 ef-lent-1-thursday class-3 violet +thomas-aquinas
+2047-03-08 friday lent 1 ef-lent-1-friday class-3 violet +john-of-god
+2047-03-09 saturday lent 1 ef-lent-1-saturday class-3 violet +frances-rome
+2047-03-10 sunday lent 2 ef-lent-sunday-2 class-2 violet +forty-holy-martyrs-of-sebaste
+2047-03-11 monday lent 2 ef-lent-2-monday class-3 violet
+2047-03-12 tuesday lent 2 ef-lent-2-tuesday class-3 violet +gregory-the-great
+2047-03-13 wednesday lent 2 ef-lent-2-wednesday class-3 violet
+2047-03-14 thursday lent 2 ef-lent-2-thursday class-3 violet
+2047-03-15 friday lent 2 ef-lent-2-friday class-3 violet
+2047-03-16 saturday lent 2 ef-lent-2-saturday class-3 violet
+2047-03-17 sunday lent 3 ef-lent-sunday-3 class-2 violet +patrick
+2047-03-18 monday lent 3 ef-lent-3-monday class-3 violet +cyril-of-jerusalem
+2047-03-19 tuesday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2047-03-20 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2047-03-21 thursday lent 3 ef-lent-3-thursday class-3 violet +benedict
+2047-03-22 friday lent 3 ef-lent-3-friday class-3 violet
+2047-03-23 saturday lent 3 ef-lent-3-saturday class-3 violet
+2047-03-24 sunday lent 4 ef-lent-sunday-4 class-2 violet +gabriel-the-archangel
+2047-03-25 monday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2047-03-26 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2047-03-27 wednesday lent 4 ef-lent-4-wednesday class-3 violet +john-damascene
+2047-03-28 thursday lent 4 ef-lent-4-thursday class-3 violet +john-of-capistrano
+2047-03-29 friday lent 4 ef-lent-4-friday class-3 violet
+2047-03-30 saturday lent 4 ef-lent-4-saturday class-3 violet
+2047-03-31 sunday passiontide 1 ef-passion-sunday class-1 violet
+2047-04-01 monday passiontide - ef-passiontide-0-monday class-3 violet
+2047-04-02 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +francis-of-paola
+2047-04-03 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2047-04-04 thursday passiontide - ef-passiontide-0-thursday class-3 violet +isidore-of-seville
+2047-04-05 friday passiontide - ef-passiontide-0-friday class-3 violet +vincent-ferrer
+2047-04-06 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2047-04-07 sunday passiontide 2 ef-palm-sunday class-1 violet
+2047-04-08 monday passiontide - ef-passiontide-0-monday class-1 violet
+2047-04-09 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2047-04-10 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2047-04-11 thursday passiontide - ef-passiontide-0-thursday class-1 violet +leo-the-great
+2047-04-12 friday passiontide - ef-passiontide-0-friday class-1 violet
+2047-04-13 saturday passiontide - ef-passiontide-0-saturday class-1 violet +hermenegild
+2047-04-14 sunday easter 1 ef-easter-sunday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2047-04-15 monday easter 1 ef-easter-1-monday class-1 white
+2047-04-16 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2047-04-17 wednesday easter 1 ef-easter-1-wednesday class-1 white +anicetus
+2047-04-18 thursday easter 1 ef-easter-1-thursday class-1 white
+2047-04-19 friday easter 1 ef-easter-1-friday class-1 white
+2047-04-20 saturday easter 1 ef-easter-1-saturday class-1 white
+2047-04-21 sunday easter 2 ef-low-sunday class-1 white +anselm
+2047-04-22 monday easter 2 sts-soter-caius class-3 red
+2047-04-23 tuesday easter 2 ef-easter-2-tuesday class-4 white +george
+2047-04-24 wednesday easter 2 fidelis-of-sigmaringen class-3 red
+2047-04-25 thursday easter 2 mark class-2 red
+2047-04-26 friday easter 2 sts-cletus-marcellinus class-3 red
+2047-04-27 saturday easter 2 peter-canisius class-3 white
+2047-04-28 sunday easter 3 ef-easter-sunday-3 class-2 white +paul-of-the-cross
+2047-04-29 monday easter 3 peter-of-verona class-3 red
+2047-04-30 tuesday easter 3 catherine-of-siena class-3 white
+2047-05-01 wednesday easter 3 joseph-the-workman class-1 white
+2047-05-02 thursday easter 3 athanasius class-3 white
+2047-05-03 friday easter 3 ef-easter-3-friday class-4 white +sts-alexander-companions
+2047-05-04 saturday easter 3 monica class-3 white
+2047-05-05 sunday easter 4 ef-easter-sunday-4 class-2 white +pius-v
+2047-05-06 monday easter 4 ef-easter-4-monday class-4 white
+2047-05-07 tuesday easter 4 stanislaus class-3 red
+2047-05-08 wednesday easter 4 ef-easter-4-wednesday class-4 white
+2047-05-09 thursday easter 4 gregory-of-nazianzen class-3 white
+2047-05-10 friday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2047-05-11 saturday easter 4 sts-philip-james class-2 red
+2047-05-12 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-nereus-achilleus-domitilla-pancras
+2047-05-13 monday easter 5 robert-bellarmine class-3 white
+2047-05-14 tuesday easter 5 ef-easter-5-tuesday class-4 white
+2047-05-15 wednesday easter 5 john-baptist-de-la-salle class-3 white
+2047-05-16 thursday easter 5 ef-easter-5-thursday class-4 white +ubaldus
+2047-05-17 friday easter 5 paschal-baylon class-3 white
+2047-05-18 saturday easter 5 venantius class-3 red
+2047-05-19 sunday easter 6 ef-easter-sunday-6 class-2 white +peter-celestine +pudentiana-virginis
+2047-05-20 monday easter 6 bernardine-of-siena class-3 white
+2047-05-21 tuesday easter 6 ef-easter-6-tuesday class-4 white
+2047-05-22 wednesday easter - ef-ascension-vigil class-2 white
+2047-05-23 thursday easter - ef-ascension class-1 white
+2047-05-24 friday easter 6 ef-easter-6-friday class-4 white
+2047-05-25 saturday easter 6 gregory-vii class-3 white +urban-pope-and-martyr
+2047-05-26 sunday easter 7 ef-easter-sunday-7 class-2 white +philip-neri +eleutherius
+2047-05-27 monday easter 7 bede-the-venerable class-3 white +john-i
+2047-05-28 tuesday easter 7 augustine-of-canterbury class-3 white
+2047-05-29 wednesday easter 7 mary-magdalene-de-pazzi class-3 white
+2047-05-30 thursday easter 7 ef-easter-7-thursday class-4 white +felix-i
+2047-05-31 friday easter 7 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2047-06-01 saturday easter - ef-pentecost-vigil class-1 red +angela-merici
+2047-06-02 sunday easter - ef-pentecost class-1 red +sts-marcellinus-peter-erasmus
+2047-06-03 monday easter 8 ef-easter-8-monday class-1 red
+2047-06-04 tuesday easter 8 ef-easter-8-tuesday class-1 red +francis-caracciolo
+2047-06-05 wednesday easter 8 ef-easter-8-wednesday class-1 red +boniface
+2047-06-06 thursday easter 8 ef-easter-8-thursday class-1 red +norbert
+2047-06-07 friday easter 8 ef-easter-8-friday class-1 red
+2047-06-08 saturday easter 8 ef-easter-8-saturday class-1 red
+2047-06-09 sunday time-after-pentecost 1 ef-trinity class-1 white +sts-primus-felicianus
+2047-06-10 monday time-after-pentecost 1 margaret-of-scotland class-3 white
+2047-06-11 tuesday time-after-pentecost 1 barnabas class-3 red
+2047-06-12 wednesday time-after-pentecost 1 john-of-san-fecundo class-3 red +basilidus
+2047-06-13 thursday time-after-pentecost - ef-corpus-christi class-1 white +anthony-of-padua
+2047-06-14 friday time-after-pentecost 1 basil-the-great class-3 white
+2047-06-15 saturday time-after-pentecost 1 ef-time-after-pentecost-1-saturday class-4 green +vitus
+2047-06-16 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2047-06-17 monday time-after-pentecost 2 gregory-barbarigo class-3 white
+2047-06-18 tuesday time-after-pentecost 2 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2047-06-19 wednesday time-after-pentecost 2 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2047-06-20 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green +silverius
+2047-06-21 friday time-after-pentecost - ef-sacred-heart class-1 white +aloysius-gongzaga
+2047-06-22 saturday time-after-pentecost 2 paulinus-of-nola class-3 white
+2047-06-23 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +vigil-of-the-nativity-of-st-john-the-baptist
+2047-06-24 monday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2047-06-25 tuesday time-after-pentecost 3 william class-3 white
+2047-06-26 wednesday time-after-pentecost 3 sts-john-paul class-3 red
+2047-06-27 thursday time-after-pentecost 3 ef-time-after-pentecost-3-thursday class-4 green
+2047-06-28 friday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2047-06-29 saturday time-after-pentecost 3 sts-peter-paul class-1 red
+2047-06-30 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +in-commemoratione-sancti-pauli-apostoli
+2047-07-01 monday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2047-07-02 tuesday time-after-pentecost 4 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2047-07-03 wednesday time-after-pentecost 4 irenaeus class-3 red
+2047-07-04 thursday time-after-pentecost 4 ef-time-after-pentecost-4-thursday class-4 green
+2047-07-05 friday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2047-07-06 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2047-07-07 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +sts-cyril-methodius
+2047-07-08 monday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2047-07-09 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green
+2047-07-10 wednesday time-after-pentecost 5 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2047-07-11 thursday time-after-pentecost 5 ef-time-after-pentecost-5-thursday class-4 green +pius-i
+2047-07-12 friday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2047-07-13 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green
+2047-07-14 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +bonaventure
+2047-07-15 monday time-after-pentecost 6 henry-the-emperor class-3 white
+2047-07-16 tuesday time-after-pentecost 6 ef-time-after-pentecost-6-tuesday class-4 green +our-lady-of-mt-carmel
+2047-07-17 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green +alexis
+2047-07-18 thursday time-after-pentecost 6 camillus-de-lellis class-3 red +symphorosa-and-sons
+2047-07-19 friday time-after-pentecost 6 vincent-de-paul class-3 white
+2047-07-20 saturday time-after-pentecost 6 jerome-emiliani class-3 red +margaret
+2047-07-21 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +laurence-of-brindisi +praxedis-virginis
+2047-07-22 monday time-after-pentecost 7 mary-magdalene class-3 white
+2047-07-23 tuesday time-after-pentecost 7 apollinaris class-3 white +liborii
+2047-07-24 wednesday time-after-pentecost 7 ef-time-after-pentecost-7-wednesday class-4 green +christina
+2047-07-25 thursday time-after-pentecost 7 james-the-greater class-2 red +christopher
+2047-07-26 friday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2047-07-27 saturday time-after-pentecost 7 ef-time-after-pentecost-7-saturday class-4 green +pantaleon
+2047-07-28 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +sts-nazarius-celsus-st-victor-i-st-innocent-i
+2047-07-29 monday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2047-07-30 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green +sts-abdon-sennen
+2047-07-31 wednesday time-after-pentecost 8 ignatius-loyola class-3 white
+2047-08-01 thursday time-after-pentecost 8 ef-time-after-pentecost-8-thursday class-4 green +holy-machabees
+2047-08-02 friday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2047-08-03 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green
+2047-08-04 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +dominic
+2047-08-05 monday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2047-08-06 tuesday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2047-08-07 wednesday time-after-pentecost 9 cajetan class-3 white +donatus
+2047-08-08 thursday time-after-pentecost 9 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2047-08-09 friday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2047-08-10 saturday time-after-pentecost 9 lawrence class-2 red
+2047-08-11 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +sts-tiburtius-susanna
+2047-08-12 monday time-after-pentecost 10 clare class-3 white
+2047-08-13 tuesday time-after-pentecost 10 ef-time-after-pentecost-10-tuesday class-4 green +sts-hippolytus-cassian
+2047-08-14 wednesday time-after-pentecost 10 vigil-of-the-assumption class-2 white
+2047-08-15 thursday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2047-08-16 friday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2047-08-17 saturday time-after-pentecost 10 hyacinth class-3 white
+2047-08-18 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +agapitus
+2047-08-19 monday time-after-pentecost 11 john-eudes class-3 white
+2047-08-20 tuesday time-after-pentecost 11 bernard-of-clairvaux class-3 white
+2047-08-21 wednesday time-after-pentecost 11 jane-frances-de-chantal class-3 white
+2047-08-22 thursday time-after-pentecost 11 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2047-08-23 friday time-after-pentecost 11 philip-benizi class-3 white
+2047-08-24 saturday time-after-pentecost 11 bartholomew class-2 red
+2047-08-25 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +louis-ix
+2047-08-26 monday time-after-pentecost 12 ef-time-after-pentecost-12-monday class-4 green +zephyrinus
+2047-08-27 tuesday time-after-pentecost 12 joseph-calasance class-3 white
+2047-08-28 wednesday time-after-pentecost 12 augustine class-3 red +hermes
+2047-08-29 thursday time-after-pentecost 12 beheading-of-st-john-the-baptist class-3 red +sabina
+2047-08-30 friday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2047-08-31 saturday time-after-pentecost 12 raymond-nonnatus class-3 white
+2047-09-01 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +giles +twelve-holy-brothers-martyrs
+2047-09-02 monday time-after-pentecost 13 stephen-of-hungary class-3 white
+2047-09-03 tuesday time-after-pentecost 13 pius-x class-3 white
+2047-09-04 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green
+2047-09-05 thursday time-after-pentecost 13 lawrence-justinian class-3 white
+2047-09-06 friday time-after-pentecost 13 ef-time-after-pentecost-13-friday class-4 green
+2047-09-07 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green
+2047-09-08 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +nativity-of-the-blessed-virgin-mary +hadriani
+2047-09-09 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green +gorgonius
+2047-09-10 tuesday time-after-pentecost 14 nicholas-of-tolentino class-3 white
+2047-09-11 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green +sts-protus-hyacinth
+2047-09-12 thursday time-after-pentecost 14 most-holy-name-of-mary class-3 white
+2047-09-13 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green
+2047-09-14 saturday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2047-09-15 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +seven-sorrows-of-the-blessed-virgin-mary +nicomedes
+2047-09-16 monday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2047-09-17 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green +stigmata-of-st-francis
+2047-09-18 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +joseph-of-cupertino
+2047-09-19 thursday time-after-pentecost 15 januarius-companions class-3 red
+2047-09-20 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +sts-eustace-companions
+2047-09-21 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet +matthew
+2047-09-22 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +thomas-of-villanova +maurice-and-companions-martyrs
+2047-09-23 monday time-after-pentecost 16 linus class-3 red +thecla
+2047-09-24 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +our-lady-of-ransom
+2047-09-25 wednesday time-after-pentecost 16 ef-time-after-pentecost-16-wednesday class-4 green
+2047-09-26 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +sts-cyprian-justina
+2047-09-27 friday time-after-pentecost 16 sts-cosmas-damian class-3 red
+2047-09-28 saturday time-after-pentecost 16 wenceslaus class-3 red
+2047-09-29 sunday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2047-09-30 monday time-after-pentecost 17 jerome class-3 white
+2047-10-01 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +remigius
+2047-10-02 wednesday time-after-pentecost 17 holy-guardian-angels class-3 white
+2047-10-03 thursday time-after-pentecost 17 theresa-of-the-infant-jesus class-3 white
+2047-10-04 friday time-after-pentecost 17 francis-of-assisi class-3 white
+2047-10-05 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green +placid-companions
+2047-10-06 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +bruno
+2047-10-07 monday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2047-10-08 tuesday time-after-pentecost 18 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2047-10-09 wednesday time-after-pentecost 18 john-leonardi class-3 white +dionysius-and-companions
+2047-10-10 thursday time-after-pentecost 18 francis-borgia class-3 white
+2047-10-11 friday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2047-10-12 saturday time-after-pentecost 18 ef-time-after-pentecost-18-saturday class-4 green
+2047-10-13 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +edward
+2047-10-14 monday time-after-pentecost 19 callistus-i class-3 red
+2047-10-15 tuesday time-after-pentecost 19 teresa-of-avila class-3 white
+2047-10-16 wednesday time-after-pentecost 19 hedwig class-3 white
+2047-10-17 thursday time-after-pentecost 19 margaret-mary-alacoque class-3 white
+2047-10-18 friday time-after-pentecost 19 luke-the-evangelist class-2 red
+2047-10-19 saturday time-after-pentecost 19 peter-of-alcantara class-3 white
+2047-10-20 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +john-cantius
+2047-10-21 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green +hilarion +ursula-and-companions
+2047-10-22 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green
+2047-10-23 wednesday time-after-pentecost 20 anthony-mary-claret class-3 white
+2047-10-24 thursday time-after-pentecost 20 raphael-the-archangel class-3 white
+2047-10-25 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green +sts-chrysanthus-daria
+2047-10-26 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2047-10-27 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2047-10-28 monday time-after-pentecost 21 sts-simon-jude class-2 red
+2047-10-29 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green
+2047-10-30 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2047-10-31 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2047-11-01 friday time-after-pentecost 21 all-saints class-1 white
+2047-11-02 saturday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2047-11-03 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2047-11-04 monday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2047-11-05 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2047-11-06 wednesday time-after-pentecost 22 ef-time-after-pentecost-22-wednesday class-4 green
+2047-11-07 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2047-11-08 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green +four-holy-crowned-martyrs
+2047-11-09 saturday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2047-11-10 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +andrew-avellino +sts-tryphonis-respicii-et-nymphae
+2047-11-11 monday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2047-11-12 tuesday time-after-pentecost 23 martin-i class-3 red
+2047-11-13 wednesday time-after-pentecost 23 ef-time-after-pentecost-23-wednesday class-4 green +didacus
+2047-11-14 thursday time-after-pentecost 23 josaphat class-3 white
+2047-11-15 friday time-after-pentecost 23 albert-the-great class-3 white
+2047-11-16 saturday time-after-pentecost 23 gertrude-the-great class-3 white
+2047-11-17 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +gregory-the-wonderworker
+2047-11-18 monday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2047-11-19 tuesday time-after-pentecost 24 elizabeth-of-hungary class-3 white +pontian
+2047-11-20 wednesday time-after-pentecost 24 felix-of-valois class-3 white
+2047-11-21 thursday time-after-pentecost 24 presentation-of-the-blessed-virgin-mary class-3 white
+2047-11-22 friday time-after-pentecost 24 cecilia class-3 red
+2047-11-23 saturday time-after-pentecost 24 clement-i class-3 red +felicity
+2047-11-24 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +john-of-the-cross +chrysogonus
+2047-11-25 monday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2047-11-26 tuesday time-after-pentecost 25 sylvester class-3 white +peter-of-alexandria
+2047-11-27 wednesday time-after-pentecost 25 ef-time-after-pentecost-25-wednesday class-4 green
+2047-11-28 thursday time-after-pentecost 25 ef-time-after-pentecost-25-thursday class-4 green
+2047-11-29 friday time-after-pentecost 25 ef-time-after-pentecost-25-friday class-4 green +saturninus
+2047-11-30 saturday time-after-pentecost 25 andrew class-2 red
+2047-12-01 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2047-12-02 monday advent 1 vivian class-3 red
+2047-12-03 tuesday advent 1 francis-xavier class-3 white
+2047-12-04 wednesday advent 1 peter-chrysologus class-3 white
+2047-12-05 thursday advent 1 ef-advent-1-thursday class-3 violet +sabbas
+2047-12-06 friday advent 1 nicholas class-3 white
+2047-12-07 saturday advent 1 ambrose class-3 white
+2047-12-08 sunday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2047-12-09 monday advent 2 ef-advent-2-monday class-3 violet
+2047-12-10 tuesday advent 2 ef-advent-2-tuesday class-3 violet +melchiades
+2047-12-11 wednesday advent 2 damasus-i class-3 white
+2047-12-12 thursday advent 2 ef-advent-2-thursday class-3 violet
+2047-12-13 friday advent 2 lucy class-3 red
+2047-12-14 saturday advent 2 ef-advent-2-saturday class-3 violet
+2047-12-15 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2047-12-16 monday advent 3 eusebius class-3 red
+2047-12-17 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2047-12-18 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2047-12-19 thursday advent 3 ef-advent-3-thursday class-3 violet
+2047-12-20 friday advent 3 ef-advent-ember-fri class-2 violet
+2047-12-21 saturday advent 3 ef-advent-ember-sat class-2 violet +thomas
+2047-12-22 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2047-12-23 monday advent 4 ef-advent-4-monday class-3 violet
+2047-12-24 tuesday advent 4 vigil-of-christmas class-1 violet
+2047-12-25 wednesday christmas - ef-nativity class-1 white
+2047-12-26 thursday christmas - stephen class-2 red
+2047-12-27 friday christmas - john-the-evangelist class-2 white
+2047-12-28 saturday christmas - holy-innocents class-2 red
+2047-12-29 sunday christmas - ef-christmas-sunday-0 class-2 white +thomas-becket
+2047-12-30 monday christmas - ef-christmas-0-monday class-4 white
+2047-12-31 tuesday christmas - ef-christmas-0-tuesday class-4 white +silvester
+2048-01-01 wednesday christmas - ef-circumcision class-1 white
+2048-01-02 thursday christmas - ef-christmas-0-thursday class-4 white
+2048-01-03 friday christmas - ef-christmas-0-friday class-4 white
+2048-01-04 saturday christmas - ef-christmas-0-saturday class-4 white
+2048-01-05 sunday christmas - ef-christmas-sunday-0 class-2 white +telesphorus-pope-and-martyr
+2048-01-06 monday time-after-epiphany - ef-epiphany class-1 white
+2048-01-07 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2048-01-08 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2048-01-09 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2048-01-10 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2048-01-11 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green +hyginus-pope-and-martyr
+2048-01-12 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2048-01-13 monday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2048-01-14 tuesday time-after-epiphany 2 hilary class-3 white +felicis
+2048-01-15 wednesday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2048-01-16 thursday time-after-epiphany 2 marcellus-i class-3 red
+2048-01-17 friday time-after-epiphany 2 anthony class-3 white
+2048-01-18 saturday time-after-epiphany 2 ef-time-after-epiphany-2-saturday class-4 green +prisca
+2048-01-19 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +canute-martyr +sts-marius-martha-audifax-abachum
+2048-01-20 monday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2048-01-21 tuesday time-after-epiphany 3 agnes class-3 red
+2048-01-22 wednesday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2048-01-23 thursday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2048-01-24 friday time-after-epiphany 3 timothy class-3 red
+2048-01-25 saturday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2048-01-26 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +polycarp
+2048-01-27 monday time-after-epiphany 4 john-chrysostom class-3 white
+2048-01-28 tuesday time-after-epiphany 4 peter-nolasco class-3 white
+2048-01-29 wednesday time-after-epiphany 4 francis-de-sales class-3 white
+2048-01-30 thursday time-after-epiphany 4 martina class-3 red
+2048-01-31 friday time-after-epiphany 4 john-bosco class-3 white
+2048-02-01 saturday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2048-02-02 sunday septuagesima 1 purification-of-the-blessed-virgin-mary class-2 white
+2048-02-03 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +blaise
+2048-02-04 tuesday septuagesima 1 andrew-corsini class-3 white
+2048-02-05 wednesday septuagesima 1 agatha class-3 red
+2048-02-06 thursday septuagesima 1 titus class-3 white +dorothy
+2048-02-07 friday septuagesima 1 romuald class-3 white
+2048-02-08 saturday septuagesima 1 john-of-matha class-3 white
+2048-02-09 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet +cyril-of-alexandria +appollonia
+2048-02-10 monday septuagesima 2 scholastica class-3 white
+2048-02-11 tuesday septuagesima 2 our-lady-of-lourdes class-3 white
+2048-02-12 wednesday septuagesima 2 seven-holy-servite-founders class-3 white
+2048-02-13 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2048-02-14 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet +valentine
+2048-02-15 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet +sts-faustinus-jovita
+2048-02-16 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2048-02-17 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2048-02-18 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet +simeon
+2048-02-19 wednesday lent - ef-ash-wednesday class-1 violet
+2048-02-20 thursday lent - ef-lent-after-ashes-thursday class-3 violet
+2048-02-21 friday lent - ef-lent-after-ashes-friday class-3 violet
+2048-02-22 saturday lent - chair-of-st-peter class-2 white +paul
+2048-02-23 sunday lent 1 ef-lent-sunday-1 class-2 violet +peter-damien
+2048-02-24 monday lent 1 matthias class-2 red
+2048-02-25 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2048-02-26 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2048-02-27 thursday lent 1 ef-lent-1-thursday class-3 violet +gabriel-of-our-lady-of-sorrows
+2048-02-28 friday lent 1 ef-lent-1-friday class-3 violet
+2048-02-29 saturday lent 1 ef-lent-1-saturday class-3 violet
+2048-03-01 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2048-03-02 monday lent 2 ef-lent-2-monday class-3 violet
+2048-03-03 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2048-03-04 wednesday lent 2 ef-lent-2-wednesday class-3 violet +casimir +lucius
+2048-03-05 thursday lent 2 ef-lent-2-thursday class-3 violet
+2048-03-06 friday lent 2 ef-lent-2-friday class-3 violet +sts-felicitas-perpetua
+2048-03-07 saturday lent 2 ef-lent-2-saturday class-3 violet +thomas-aquinas
+2048-03-08 sunday lent 3 ef-lent-sunday-3 class-2 violet +john-of-god
+2048-03-09 monday lent 3 ef-lent-3-monday class-3 violet +frances-rome
+2048-03-10 tuesday lent 3 ef-lent-3-tuesday class-3 violet +forty-holy-martyrs-of-sebaste
+2048-03-11 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2048-03-12 thursday lent 3 ef-lent-3-thursday class-3 violet +gregory-the-great
+2048-03-13 friday lent 3 ef-lent-3-friday class-3 violet
+2048-03-14 saturday lent 3 ef-lent-3-saturday class-3 violet
+2048-03-15 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2048-03-16 monday lent 4 ef-lent-4-monday class-3 violet
+2048-03-17 tuesday lent 4 ef-lent-4-tuesday class-3 violet +patrick
+2048-03-18 wednesday lent 4 ef-lent-4-wednesday class-3 violet +cyril-of-jerusalem
+2048-03-19 thursday lent 4 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2048-03-20 friday lent 4 ef-lent-4-friday class-3 violet
+2048-03-21 saturday lent 4 ef-lent-4-saturday class-3 violet +benedict
+2048-03-22 sunday passiontide 1 ef-passion-sunday class-1 violet
+2048-03-23 monday passiontide - ef-passiontide-0-monday class-3 violet
+2048-03-24 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet +gabriel-the-archangel
+2048-03-25 wednesday passiontide - annunciation-of-the-blessed-virgin-mary class-1 white
+2048-03-26 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2048-03-27 friday passiontide - ef-passiontide-0-friday class-3 violet +john-damascene
+2048-03-28 saturday passiontide - ef-passiontide-0-saturday class-3 violet +john-of-capistrano
+2048-03-29 sunday passiontide 2 ef-palm-sunday class-1 violet
+2048-03-30 monday passiontide - ef-passiontide-0-monday class-1 violet
+2048-03-31 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet
+2048-04-01 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2048-04-02 thursday passiontide - ef-passiontide-0-thursday class-1 violet +francis-of-paola
+2048-04-03 friday passiontide - ef-passiontide-0-friday class-1 violet
+2048-04-04 saturday passiontide - ef-passiontide-0-saturday class-1 violet +isidore-of-seville
+2048-04-05 sunday easter 1 ef-easter-sunday class-1 white +vincent-ferrer
+2048-04-06 monday easter 1 ef-easter-1-monday class-1 white
+2048-04-07 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2048-04-08 wednesday easter 1 ef-easter-1-wednesday class-1 white
+2048-04-09 thursday easter 1 ef-easter-1-thursday class-1 white
+2048-04-10 friday easter 1 ef-easter-1-friday class-1 white
+2048-04-11 saturday easter 1 ef-easter-1-saturday class-1 white +leo-the-great
+2048-04-12 sunday easter 2 ef-low-sunday class-1 white
+2048-04-13 monday easter 2 hermenegild class-3 red
+2048-04-14 tuesday easter 2 justin class-3 red +sts-tiburtius-valerian-et-maximus-martyrs
+2048-04-15 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2048-04-16 thursday easter 2 ef-easter-2-thursday class-4 white
+2048-04-17 friday easter 2 ef-easter-2-friday class-4 white +anicetus
+2048-04-18 saturday easter 2 ef-easter-2-saturday class-4 white
+2048-04-19 sunday easter 3 ef-easter-sunday-3 class-2 white
+2048-04-20 monday easter 3 ef-easter-3-monday class-4 white
+2048-04-21 tuesday easter 3 anselm class-3 white
+2048-04-22 wednesday easter 3 sts-soter-caius class-3 red
+2048-04-23 thursday easter 3 ef-easter-3-thursday class-4 white +george
+2048-04-24 friday easter 3 fidelis-of-sigmaringen class-3 red
+2048-04-25 saturday easter 3 mark class-2 red
+2048-04-26 sunday easter 4 ef-easter-sunday-4 class-2 white +sts-cletus-marcellinus
+2048-04-27 monday easter 4 peter-canisius class-3 white
+2048-04-28 tuesday easter 4 paul-of-the-cross class-3 white
+2048-04-29 wednesday easter 4 peter-of-verona class-3 red
+2048-04-30 thursday easter 4 catherine-of-siena class-3 white
+2048-05-01 friday easter 4 joseph-the-workman class-1 white
+2048-05-02 saturday easter 4 athanasius class-3 white
+2048-05-03 sunday easter 5 ef-easter-sunday-5 class-2 white +sts-alexander-companions
+2048-05-04 monday easter 5 monica class-3 white
+2048-05-05 tuesday easter 5 pius-v class-3 white
+2048-05-06 wednesday easter 5 ef-easter-5-wednesday class-4 white
+2048-05-07 thursday easter 5 stanislaus class-3 red
+2048-05-08 friday easter 5 ef-easter-5-friday class-4 white
+2048-05-09 saturday easter 5 gregory-of-nazianzen class-3 white
+2048-05-10 sunday easter 6 ef-easter-sunday-6 class-2 white +antoninus +gordiano-and-epimacho
+2048-05-11 monday easter 6 sts-philip-james class-2 red
+2048-05-12 tuesday easter 6 sts-nereus-achilleus-domitilla-pancras class-3 red
+2048-05-13 wednesday easter - ef-ascension-vigil class-2 white +robert-bellarmine
+2048-05-14 thursday easter - ef-ascension class-1 white
+2048-05-15 friday easter 6 john-baptist-de-la-salle class-3 white
+2048-05-16 saturday easter 6 ef-easter-6-saturday class-4 white +ubaldus
+2048-05-17 sunday easter 7 ef-easter-sunday-7 class-2 white +paschal-baylon
+2048-05-18 monday easter 7 venantius class-3 red
+2048-05-19 tuesday easter 7 peter-celestine class-3 white +pudentiana-virginis
+2048-05-20 wednesday easter 7 bernardine-of-siena class-3 white
+2048-05-21 thursday easter 7 ef-easter-7-thursday class-4 white
+2048-05-22 friday easter 7 ef-easter-7-friday class-4 white
+2048-05-23 saturday easter - ef-pentecost-vigil class-1 red
+2048-05-24 sunday easter - ef-pentecost class-1 red
+2048-05-25 monday easter 8 ef-easter-8-monday class-1 red +gregory-vii +urban-pope-and-martyr
+2048-05-26 tuesday easter 8 ef-easter-8-tuesday class-1 red +philip-neri +eleutherius
+2048-05-27 wednesday easter 8 ef-easter-8-wednesday class-1 red +bede-the-venerable +john-i
+2048-05-28 thursday easter 8 ef-easter-8-thursday class-1 red +augustine-of-canterbury
+2048-05-29 friday easter 8 ef-easter-8-friday class-1 red +mary-magdalene-de-pazzi
+2048-05-30 saturday easter 8 ef-easter-8-saturday class-1 red +felix-i
+2048-05-31 sunday time-after-pentecost 1 ef-trinity class-1 white +queenship-of-the-blessed-virgin-mary +petronilla
+2048-06-01 monday time-after-pentecost 1 angela-merici class-3 white
+2048-06-02 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green +sts-marcellinus-peter-erasmus
+2048-06-03 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2048-06-04 thursday time-after-pentecost - ef-corpus-christi class-1 white +francis-caracciolo
+2048-06-05 friday time-after-pentecost 1 boniface class-3 red
+2048-06-06 saturday time-after-pentecost 1 norbert class-3 white
+2048-06-07 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green
+2048-06-08 monday time-after-pentecost 2 ef-time-after-pentecost-2-monday class-4 green
+2048-06-09 tuesday time-after-pentecost 2 ef-time-after-pentecost-2-tuesday class-4 green +sts-primus-felicianus
+2048-06-10 wednesday time-after-pentecost 2 margaret-of-scotland class-3 white
+2048-06-11 thursday time-after-pentecost 2 barnabas class-3 red
+2048-06-12 friday time-after-pentecost - ef-sacred-heart class-1 white +john-of-san-fecundo +basilidus
+2048-06-13 saturday time-after-pentecost 2 anthony-of-padua class-3 white
+2048-06-14 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +basil-the-great
+2048-06-15 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green +vitus
+2048-06-16 tuesday time-after-pentecost 3 ef-time-after-pentecost-3-tuesday class-4 green
+2048-06-17 wednesday time-after-pentecost 3 gregory-barbarigo class-3 white
+2048-06-18 thursday time-after-pentecost 3 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2048-06-19 friday time-after-pentecost 3 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2048-06-20 saturday time-after-pentecost 3 ef-time-after-pentecost-3-saturday class-4 green +silverius
+2048-06-21 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +aloysius-gongzaga
+2048-06-22 monday time-after-pentecost 4 paulinus-of-nola class-3 white
+2048-06-23 tuesday time-after-pentecost 4 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2048-06-24 wednesday time-after-pentecost 4 nativity-of-st-john-the-baptist class-1 white
+2048-06-25 thursday time-after-pentecost 4 william class-3 white
+2048-06-26 friday time-after-pentecost 4 sts-john-paul class-3 red
+2048-06-27 saturday time-after-pentecost 4 ef-time-after-pentecost-4-saturday class-4 green
+2048-06-28 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +vigil-of-sts-peter-paul
+2048-06-29 monday time-after-pentecost 5 sts-peter-paul class-1 red
+2048-06-30 tuesday time-after-pentecost 5 in-commemoratione-sancti-pauli-apostoli class-3 red
+2048-07-01 wednesday time-after-pentecost 5 precious-blood-of-our-lord-jesus-christ class-1 red
+2048-07-02 thursday time-after-pentecost 5 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2048-07-03 friday time-after-pentecost 5 irenaeus class-3 red
+2048-07-04 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green
+2048-07-05 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +anthony-mary-zaccariah
+2048-07-06 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green
+2048-07-07 tuesday time-after-pentecost 6 sts-cyril-methodius class-3 white
+2048-07-08 wednesday time-after-pentecost 6 elizabeth-of-portugal class-3 white
+2048-07-09 thursday time-after-pentecost 6 ef-time-after-pentecost-6-thursday class-4 green
+2048-07-10 friday time-after-pentecost 6 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2048-07-11 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +pius-i
+2048-07-12 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +john-gualbert +naboris-et-felicis
+2048-07-13 monday time-after-pentecost 7 ef-time-after-pentecost-7-monday class-4 green
+2048-07-14 tuesday time-after-pentecost 7 bonaventure class-3 white
+2048-07-15 wednesday time-after-pentecost 7 henry-the-emperor class-3 white
+2048-07-16 thursday time-after-pentecost 7 ef-time-after-pentecost-7-thursday class-4 green +our-lady-of-mt-carmel
+2048-07-17 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +alexis
+2048-07-18 saturday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2048-07-19 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +vincent-de-paul
+2048-07-20 monday time-after-pentecost 8 jerome-emiliani class-3 red +margaret
+2048-07-21 tuesday time-after-pentecost 8 laurence-of-brindisi class-3 white +praxedis-virginis
+2048-07-22 wednesday time-after-pentecost 8 mary-magdalene class-3 white
+2048-07-23 thursday time-after-pentecost 8 apollinaris class-3 white +liborii
+2048-07-24 friday time-after-pentecost 8 ef-time-after-pentecost-8-friday class-4 green +christina
+2048-07-25 saturday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2048-07-26 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +anne-mother-of-the-blessed-virgin
+2048-07-27 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +pantaleon
+2048-07-28 tuesday time-after-pentecost 9 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2048-07-29 wednesday time-after-pentecost 9 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2048-07-30 thursday time-after-pentecost 9 ef-time-after-pentecost-9-thursday class-4 green +sts-abdon-sennen
+2048-07-31 friday time-after-pentecost 9 ignatius-loyola class-3 white
+2048-08-01 saturday time-after-pentecost 9 ef-time-after-pentecost-9-saturday class-4 green +holy-machabees
+2048-08-02 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +alphonsus-liguori +stephen-i-pope-and-martyr
+2048-08-03 monday time-after-pentecost 10 ef-time-after-pentecost-10-monday class-4 green
+2048-08-04 tuesday time-after-pentecost 10 dominic class-3 white
+2048-08-05 wednesday time-after-pentecost 10 dedication-of-the-basilica-of-st-mary-major class-3 white
+2048-08-06 thursday time-after-pentecost 10 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2048-08-07 friday time-after-pentecost 10 cajetan class-3 white +donatus
+2048-08-08 saturday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2048-08-09 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +vigil-of-st-lawrence +romanus
+2048-08-10 monday time-after-pentecost 11 lawrence class-2 red
+2048-08-11 tuesday time-after-pentecost 11 ef-time-after-pentecost-11-tuesday class-4 green +sts-tiburtius-susanna
+2048-08-12 wednesday time-after-pentecost 11 clare class-3 white
+2048-08-13 thursday time-after-pentecost 11 ef-time-after-pentecost-11-thursday class-4 green +sts-hippolytus-cassian
+2048-08-14 friday time-after-pentecost 11 vigil-of-the-assumption class-2 white
+2048-08-15 saturday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2048-08-16 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +joachim-father-of-the-blessed-virgin
+2048-08-17 monday time-after-pentecost 12 hyacinth class-3 white
+2048-08-18 tuesday time-after-pentecost 12 ef-time-after-pentecost-12-tuesday class-4 green +agapitus
+2048-08-19 wednesday time-after-pentecost 12 john-eudes class-3 white
+2048-08-20 thursday time-after-pentecost 12 bernard-of-clairvaux class-3 white
+2048-08-21 friday time-after-pentecost 12 jane-frances-de-chantal class-3 white
+2048-08-22 saturday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2048-08-23 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +philip-benizi
+2048-08-24 monday time-after-pentecost 13 bartholomew class-2 red
+2048-08-25 tuesday time-after-pentecost 13 louis-ix class-3 white
+2048-08-26 wednesday time-after-pentecost 13 ef-time-after-pentecost-13-wednesday class-4 green +zephyrinus
+2048-08-27 thursday time-after-pentecost 13 joseph-calasance class-3 white
+2048-08-28 friday time-after-pentecost 13 augustine class-3 red +hermes
+2048-08-29 saturday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2048-08-30 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +rose-of-lima +sts-felix-and-adauctus
+2048-08-31 monday time-after-pentecost 14 raymond-nonnatus class-3 white
+2048-09-01 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green +giles +twelve-holy-brothers-martyrs
+2048-09-02 wednesday time-after-pentecost 14 stephen-of-hungary class-3 white
+2048-09-03 thursday time-after-pentecost 14 pius-x class-3 white
+2048-09-04 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green
+2048-09-05 saturday time-after-pentecost 14 lawrence-justinian class-3 white
+2048-09-06 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green
+2048-09-07 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green
+2048-09-08 tuesday time-after-pentecost 15 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2048-09-09 wednesday time-after-pentecost 15 ef-time-after-pentecost-15-wednesday class-4 green +gorgonius
+2048-09-10 thursday time-after-pentecost 15 nicholas-of-tolentino class-3 white
+2048-09-11 friday time-after-pentecost 15 ef-time-after-pentecost-15-friday class-4 green +sts-protus-hyacinth
+2048-09-12 saturday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2048-09-13 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green
+2048-09-14 monday time-after-pentecost 16 exaltation-of-the-holy-cross class-2 red
+2048-09-15 tuesday time-after-pentecost 16 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2048-09-16 wednesday time-after-pentecost 16 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2048-09-17 thursday time-after-pentecost 16 ef-time-after-pentecost-16-thursday class-4 green +stigmata-of-st-francis
+2048-09-18 friday time-after-pentecost 16 joseph-of-cupertino class-3 white
+2048-09-19 saturday time-after-pentecost 16 januarius-companions class-3 red
+2048-09-20 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +sts-eustace-companions
+2048-09-21 monday time-after-pentecost 17 matthew class-2 red
+2048-09-22 tuesday time-after-pentecost 17 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2048-09-23 wednesday time-after-pentecost 17 ef-september-ember-wed class-2 violet +linus +thecla
+2048-09-24 thursday time-after-pentecost 17 ef-time-after-pentecost-17-thursday class-4 green +our-lady-of-ransom
+2048-09-25 friday time-after-pentecost 17 ef-september-ember-fri class-2 violet
+2048-09-26 saturday time-after-pentecost 17 ef-september-ember-sat class-2 violet +sts-cyprian-justina
+2048-09-27 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +sts-cosmas-damian
+2048-09-28 monday time-after-pentecost 18 wenceslaus class-3 red
+2048-09-29 tuesday time-after-pentecost 18 dedication-of-st-michael-the-archangel class-1 white
+2048-09-30 wednesday time-after-pentecost 18 jerome class-3 white
+2048-10-01 thursday time-after-pentecost 18 ef-time-after-pentecost-18-thursday class-4 green +remigius
+2048-10-02 friday time-after-pentecost 18 holy-guardian-angels class-3 white
+2048-10-03 saturday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2048-10-04 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +francis-of-assisi
+2048-10-05 monday time-after-pentecost 19 ef-time-after-pentecost-19-monday class-4 green +placid-companions
+2048-10-06 tuesday time-after-pentecost 19 bruno class-3 white
+2048-10-07 wednesday time-after-pentecost 19 our-lady-of-the-rosary class-2 white +mark-i
+2048-10-08 thursday time-after-pentecost 19 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2048-10-09 friday time-after-pentecost 19 john-leonardi class-3 white +dionysius-and-companions
+2048-10-10 saturday time-after-pentecost 19 francis-borgia class-3 white
+2048-10-11 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +maternity-of-the-blessed-virgin-mary
+2048-10-12 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green
+2048-10-13 tuesday time-after-pentecost 20 edward class-3 white
+2048-10-14 wednesday time-after-pentecost 20 callistus-i class-3 red
+2048-10-15 thursday time-after-pentecost 20 teresa-of-avila class-3 white
+2048-10-16 friday time-after-pentecost 20 hedwig class-3 white
+2048-10-17 saturday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2048-10-18 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +luke-the-evangelist
+2048-10-19 monday time-after-pentecost 21 peter-of-alcantara class-3 white
+2048-10-20 tuesday time-after-pentecost 21 john-cantius class-3 white
+2048-10-21 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green +hilarion +ursula-and-companions
+2048-10-22 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2048-10-23 friday time-after-pentecost 21 anthony-mary-claret class-3 white
+2048-10-24 saturday time-after-pentecost 21 raphael-the-archangel class-3 white
+2048-10-25 sunday time-after-pentecost - ef-christ-the-king class-1 white +sts-chrysanthus-daria
+2048-10-26 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2048-10-27 tuesday time-after-pentecost 22 ef-time-after-pentecost-22-tuesday class-4 green
+2048-10-28 wednesday time-after-pentecost 22 sts-simon-jude class-2 red
+2048-10-29 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2048-10-30 friday time-after-pentecost 22 ef-time-after-pentecost-22-friday class-4 green
+2048-10-31 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2048-11-01 sunday time-after-pentecost 23 all-saints class-1 white
+2048-11-02 monday time-after-pentecost 23 commemoration-of-all-souls class-1 black
+2048-11-03 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green
+2048-11-04 wednesday time-after-pentecost 23 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2048-11-05 thursday time-after-pentecost 23 ef-time-after-pentecost-23-thursday class-4 green
+2048-11-06 friday time-after-pentecost 23 ef-time-after-pentecost-23-friday class-4 green
+2048-11-07 saturday time-after-pentecost 23 ef-time-after-pentecost-23-saturday class-4 green
+2048-11-08 sunday time-after-pentecost 5 ef-time-after-epiphany-sunday-5 class-2 green +four-holy-crowned-martyrs
+2048-11-09 monday time-after-pentecost 24 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2048-11-10 tuesday time-after-pentecost 24 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2048-11-11 wednesday time-after-pentecost 24 martin-of-tours class-3 white +menna
+2048-11-12 thursday time-after-pentecost 24 martin-i class-3 red
+2048-11-13 friday time-after-pentecost 24 ef-time-after-pentecost-24-friday class-4 green +didacus
+2048-11-14 saturday time-after-pentecost 24 josaphat class-3 white
+2048-11-15 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +albert-the-great
+2048-11-16 monday time-after-pentecost 25 gertrude-the-great class-3 white
+2048-11-17 tuesday time-after-pentecost 25 gregory-the-wonderworker class-3 white
+2048-11-18 wednesday time-after-pentecost 25 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2048-11-19 thursday time-after-pentecost 25 elizabeth-of-hungary class-3 white +pontian
+2048-11-20 friday time-after-pentecost 25 felix-of-valois class-3 white
+2048-11-21 saturday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2048-11-22 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +cecilia
+2048-11-23 monday time-after-pentecost 26 clement-i class-3 red +felicity
+2048-11-24 tuesday time-after-pentecost 26 john-of-the-cross class-3 white +chrysogonus
+2048-11-25 wednesday time-after-pentecost 26 catherine-of-alexandria class-3 red
+2048-11-26 thursday time-after-pentecost 26 sylvester class-3 white +peter-of-alexandria
+2048-11-27 friday time-after-pentecost 26 ef-time-after-pentecost-26-friday class-4 green
+2048-11-28 saturday time-after-pentecost 26 ef-time-after-pentecost-26-saturday class-4 green
+2048-11-29 sunday advent 1 ef-advent-sunday-1 class-1 violet +saturninus
+2048-11-30 monday advent 1 andrew class-2 red
+2048-12-01 tuesday advent 1 ef-advent-1-tuesday class-3 violet
+2048-12-02 wednesday advent 1 vivian class-3 red
+2048-12-03 thursday advent 1 francis-xavier class-3 white
+2048-12-04 friday advent 1 peter-chrysologus class-3 white
+2048-12-05 saturday advent 1 ef-advent-1-saturday class-3 violet +sabbas
+2048-12-06 sunday advent 2 ef-advent-sunday-2 class-2 violet +nicholas
+2048-12-07 monday advent 2 ambrose class-3 white
+2048-12-08 tuesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2048-12-09 wednesday advent 2 ef-advent-2-wednesday class-3 violet
+2048-12-10 thursday advent 2 ef-advent-2-thursday class-3 violet +melchiades
+2048-12-11 friday advent 2 damasus-i class-3 white
+2048-12-12 saturday advent 2 ef-advent-2-saturday class-3 violet
+2048-12-13 sunday advent 3 ef-advent-sunday-3 class-2 violet +lucy
+2048-12-14 monday advent 3 ef-advent-3-monday class-3 violet
+2048-12-15 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2048-12-16 wednesday advent 3 ef-advent-ember-wed class-2 violet +eusebius
+2048-12-17 thursday advent 3 ef-advent-3-thursday class-3 violet
+2048-12-18 friday advent 3 ef-advent-ember-fri class-2 violet
+2048-12-19 saturday advent 3 ef-advent-ember-sat class-2 violet
+2048-12-20 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2048-12-21 monday advent 4 thomas class-2 red
+2048-12-22 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2048-12-23 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2048-12-24 thursday advent 4 vigil-of-christmas class-1 violet
+2048-12-25 friday christmas - ef-nativity class-1 white
+2048-12-26 saturday christmas - stephen class-2 red
+2048-12-27 sunday christmas - ef-christmas-sunday-0 class-2 white +john-the-evangelist
+2048-12-28 monday christmas - holy-innocents class-2 red
+2048-12-29 tuesday christmas - ef-christmas-0-tuesday class-4 white +thomas-becket
+2048-12-30 wednesday christmas - ef-christmas-0-wednesday class-4 white
+2048-12-31 thursday christmas - ef-christmas-0-thursday class-4 white +silvester
+2049-01-01 friday christmas - ef-circumcision class-1 white
+2049-01-02 saturday christmas - ef-christmas-0-saturday class-4 white
+2049-01-03 sunday christmas - ef-christmas-sunday-0 class-2 white
+2049-01-04 monday christmas - ef-christmas-0-monday class-4 white
+2049-01-05 tuesday christmas - ef-christmas-0-tuesday class-4 white +telesphorus-pope-and-martyr
+2049-01-06 wednesday time-after-epiphany - ef-epiphany class-1 white
+2049-01-07 thursday time-after-epiphany 1 ef-time-after-epiphany-1-thursday class-4 green
+2049-01-08 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2049-01-09 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2049-01-10 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2049-01-11 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green +hyginus-pope-and-martyr
+2049-01-12 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green
+2049-01-13 wednesday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2049-01-14 thursday time-after-epiphany 2 hilary class-3 white +felicis
+2049-01-15 friday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2049-01-16 saturday time-after-epiphany 2 marcellus-i class-3 red
+2049-01-17 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +anthony
+2049-01-18 monday time-after-epiphany 2 ef-time-after-epiphany-2-monday class-4 green +prisca
+2049-01-19 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2049-01-20 wednesday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2049-01-21 thursday time-after-epiphany 3 agnes class-3 red
+2049-01-22 friday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2049-01-23 saturday time-after-epiphany 3 raymond-of-pe-afort class-3 white +emerentiana
+2049-01-24 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +timothy
+2049-01-25 monday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2049-01-26 tuesday time-after-epiphany 3 polycarp class-3 red
+2049-01-27 wednesday time-after-epiphany 4 john-chrysostom class-3 white
+2049-01-28 thursday time-after-epiphany 4 peter-nolasco class-3 white
+2049-01-29 friday time-after-epiphany 4 francis-de-sales class-3 white
+2049-01-30 saturday time-after-epiphany 4 martina class-3 red
+2049-01-31 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +john-bosco
+2049-02-01 monday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2049-02-02 tuesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2049-02-03 wednesday time-after-epiphany 5 ef-time-after-epiphany-5-wednesday class-4 green +blaise
+2049-02-04 thursday time-after-epiphany 5 andrew-corsini class-3 white
+2049-02-05 friday time-after-epiphany 5 agatha class-3 red
+2049-02-06 saturday time-after-epiphany 5 titus class-3 white +dorothy
+2049-02-07 sunday time-after-epiphany 5 ef-time-after-epiphany-sunday-5 class-2 green +romuald
+2049-02-08 monday time-after-epiphany 5 john-of-matha class-3 white
+2049-02-09 tuesday time-after-epiphany 5 cyril-of-alexandria class-3 white +appollonia
+2049-02-10 wednesday time-after-epiphany 6 scholastica class-3 white
+2049-02-11 thursday time-after-epiphany 6 our-lady-of-lourdes class-3 white
+2049-02-12 friday time-after-epiphany 6 seven-holy-servite-founders class-3 white
+2049-02-13 saturday time-after-epiphany 6 ef-time-after-epiphany-6-saturday class-4 green
+2049-02-14 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +valentine
+2049-02-15 monday septuagesima 1 ef-septuagesima-1-monday class-4 violet +sts-faustinus-jovita
+2049-02-16 tuesday septuagesima 1 ef-septuagesima-1-tuesday class-4 violet
+2049-02-17 wednesday septuagesima 1 ef-septuagesima-1-wednesday class-4 violet
+2049-02-18 thursday septuagesima 1 ef-septuagesima-1-thursday class-4 violet +simeon
+2049-02-19 friday septuagesima 1 ef-septuagesima-1-friday class-4 violet
+2049-02-20 saturday septuagesima 1 ef-septuagesima-1-saturday class-4 violet
+2049-02-21 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2049-02-22 monday septuagesima 2 chair-of-st-peter class-2 white +paul
+2049-02-23 tuesday septuagesima 2 peter-damien class-3 white
+2049-02-24 wednesday septuagesima 2 matthias class-2 red
+2049-02-25 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2049-02-26 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet
+2049-02-27 saturday septuagesima 2 gabriel-of-our-lady-of-sorrows class-3 white
+2049-02-28 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2049-03-01 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2049-03-02 tuesday septuagesima 3 ef-septuagesima-3-tuesday class-4 violet
+2049-03-03 wednesday lent - ef-ash-wednesday class-1 violet
+2049-03-04 thursday lent - ef-lent-after-ashes-thursday class-3 violet +casimir +lucius
+2049-03-05 friday lent - ef-lent-after-ashes-friday class-3 violet
+2049-03-06 saturday lent - ef-lent-after-ashes-saturday class-3 violet +sts-felicitas-perpetua
+2049-03-07 sunday lent 1 ef-lent-sunday-1 class-2 violet +thomas-aquinas
+2049-03-08 monday lent 1 ef-lent-1-monday class-3 violet +john-of-god
+2049-03-09 tuesday lent 1 ef-lent-1-tuesday class-3 violet +frances-rome
+2049-03-10 wednesday lent 1 ef-lent-1-wednesday class-3 violet +forty-holy-martyrs-of-sebaste
+2049-03-11 thursday lent 1 ef-lent-1-thursday class-3 violet
+2049-03-12 friday lent 1 ef-lent-1-friday class-3 violet +gregory-the-great
+2049-03-13 saturday lent 1 ef-lent-1-saturday class-3 violet
+2049-03-14 sunday lent 2 ef-lent-sunday-2 class-2 violet
+2049-03-15 monday lent 2 ef-lent-2-monday class-3 violet
+2049-03-16 tuesday lent 2 ef-lent-2-tuesday class-3 violet
+2049-03-17 wednesday lent 2 ef-lent-2-wednesday class-3 violet +patrick
+2049-03-18 thursday lent 2 ef-lent-2-thursday class-3 violet +cyril-of-jerusalem
+2049-03-19 friday lent 2 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2049-03-20 saturday lent 2 ef-lent-2-saturday class-3 violet
+2049-03-21 sunday lent 3 ef-lent-sunday-3 class-2 violet +benedict
+2049-03-22 monday lent 3 ef-lent-3-monday class-3 violet
+2049-03-23 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2049-03-24 wednesday lent 3 ef-lent-3-wednesday class-3 violet +gabriel-the-archangel
+2049-03-25 thursday lent 3 annunciation-of-the-blessed-virgin-mary class-1 white
+2049-03-26 friday lent 3 ef-lent-3-friday class-3 violet
+2049-03-27 saturday lent 3 ef-lent-3-saturday class-3 violet +john-damascene
+2049-03-28 sunday lent 4 ef-lent-sunday-4 class-2 violet +john-of-capistrano
+2049-03-29 monday lent 4 ef-lent-4-monday class-3 violet
+2049-03-30 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2049-03-31 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2049-04-01 thursday lent 4 ef-lent-4-thursday class-3 violet
+2049-04-02 friday lent 4 ef-lent-4-friday class-3 violet +francis-of-paola
+2049-04-03 saturday lent 4 ef-lent-4-saturday class-3 violet
+2049-04-04 sunday passiontide 1 ef-passion-sunday class-1 violet +isidore-of-seville
+2049-04-05 monday passiontide - ef-passiontide-0-monday class-3 violet +vincent-ferrer
+2049-04-06 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2049-04-07 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2049-04-08 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2049-04-09 friday passiontide - ef-passiontide-0-friday class-3 violet
+2049-04-10 saturday passiontide - ef-passiontide-0-saturday class-3 violet
+2049-04-11 sunday passiontide 2 ef-palm-sunday class-1 violet +leo-the-great
+2049-04-12 monday passiontide - ef-passiontide-0-monday class-1 violet
+2049-04-13 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +hermenegild
+2049-04-14 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2049-04-15 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2049-04-16 friday passiontide - ef-passiontide-0-friday class-1 violet
+2049-04-17 saturday passiontide - ef-passiontide-0-saturday class-1 violet +anicetus
+2049-04-18 sunday easter 1 ef-easter-sunday class-1 white
+2049-04-19 monday easter 1 ef-easter-1-monday class-1 white
+2049-04-20 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2049-04-21 wednesday easter 1 ef-easter-1-wednesday class-1 white +anselm
+2049-04-22 thursday easter 1 ef-easter-1-thursday class-1 white +sts-soter-caius
+2049-04-23 friday easter 1 ef-easter-1-friday class-1 white +george
+2049-04-24 saturday easter 1 ef-easter-1-saturday class-1 white +fidelis-of-sigmaringen
+2049-04-25 sunday easter 2 ef-low-sunday class-1 white +mark
+2049-04-26 monday easter 2 sts-cletus-marcellinus class-3 red
+2049-04-27 tuesday easter 2 peter-canisius class-3 white
+2049-04-28 wednesday easter 2 paul-of-the-cross class-3 white
+2049-04-29 thursday easter 2 peter-of-verona class-3 red
+2049-04-30 friday easter 2 catherine-of-siena class-3 white
+2049-05-01 saturday easter 2 joseph-the-workman class-1 white
+2049-05-02 sunday easter 3 ef-easter-sunday-3 class-2 white +athanasius
+2049-05-03 monday easter 3 ef-easter-3-monday class-4 white +sts-alexander-companions
+2049-05-04 tuesday easter 3 monica class-3 white
+2049-05-05 wednesday easter 3 pius-v class-3 white
+2049-05-06 thursday easter 3 ef-easter-3-thursday class-4 white
+2049-05-07 friday easter 3 stanislaus class-3 red
+2049-05-08 saturday easter 3 ef-easter-3-saturday class-4 white
+2049-05-09 sunday easter 4 ef-easter-sunday-4 class-2 white +gregory-of-nazianzen
+2049-05-10 monday easter 4 antoninus class-3 white +gordiano-and-epimacho
+2049-05-11 tuesday easter 4 sts-philip-james class-2 red
+2049-05-12 wednesday easter 4 sts-nereus-achilleus-domitilla-pancras class-3 red
+2049-05-13 thursday easter 4 robert-bellarmine class-3 white
+2049-05-14 friday easter 4 ef-easter-4-friday class-4 white
+2049-05-15 saturday easter 4 john-baptist-de-la-salle class-3 white
+2049-05-16 sunday easter 5 ef-easter-sunday-5 class-2 white +ubaldus
+2049-05-17 monday easter 5 paschal-baylon class-3 white
+2049-05-18 tuesday easter 5 venantius class-3 red
+2049-05-19 wednesday easter 5 peter-celestine class-3 white +pudentiana-virginis
+2049-05-20 thursday easter 5 bernardine-of-siena class-3 white
+2049-05-21 friday easter 5 ef-easter-5-friday class-4 white
+2049-05-22 saturday easter 5 ef-easter-5-saturday class-4 white
+2049-05-23 sunday easter 6 ef-easter-sunday-6 class-2 white
+2049-05-24 monday easter 6 ef-easter-6-monday class-4 white
+2049-05-25 tuesday easter 6 gregory-vii class-3 white +urban-pope-and-martyr
+2049-05-26 wednesday easter - ef-ascension-vigil class-2 white +philip-neri +eleutherius
+2049-05-27 thursday easter - ef-ascension class-1 white +bede-the-venerable +john-i
+2049-05-28 friday easter 6 augustine-of-canterbury class-3 white
+2049-05-29 saturday easter 6 mary-magdalene-de-pazzi class-3 white
+2049-05-30 sunday easter 7 ef-easter-sunday-7 class-2 white +felix-i
+2049-05-31 monday easter 7 queenship-of-the-blessed-virgin-mary class-2 white +petronilla
+2049-06-01 tuesday easter 7 angela-merici class-3 white
+2049-06-02 wednesday easter 7 ef-easter-7-wednesday class-4 white +sts-marcellinus-peter-erasmus
+2049-06-03 thursday easter 7 ef-easter-7-thursday class-4 white
+2049-06-04 friday easter 7 francis-caracciolo class-3 white
+2049-06-05 saturday easter - ef-pentecost-vigil class-1 red +boniface
+2049-06-06 sunday easter - ef-pentecost class-1 red +norbert
+2049-06-07 monday easter 8 ef-easter-8-monday class-1 red
+2049-06-08 tuesday easter 8 ef-easter-8-tuesday class-1 red
+2049-06-09 wednesday easter 8 ef-easter-8-wednesday class-1 red +sts-primus-felicianus
+2049-06-10 thursday easter 8 ef-easter-8-thursday class-1 red +margaret-of-scotland
+2049-06-11 friday easter 8 ef-easter-8-friday class-1 red +barnabas
+2049-06-12 saturday easter 8 ef-easter-8-saturday class-1 red +john-of-san-fecundo +basilidus
+2049-06-13 sunday time-after-pentecost 1 ef-trinity class-1 white +anthony-of-padua
+2049-06-14 monday time-after-pentecost 1 basil-the-great class-3 white
+2049-06-15 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green +vitus
+2049-06-16 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2049-06-17 thursday time-after-pentecost - ef-corpus-christi class-1 white +gregory-barbarigo
+2049-06-18 friday time-after-pentecost 1 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2049-06-19 saturday time-after-pentecost 1 julia-of-falconieri class-3 red +sts-gervasius-and-protasius
+2049-06-20 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +silverius
+2049-06-21 monday time-after-pentecost 2 aloysius-gongzaga class-3 white
+2049-06-22 tuesday time-after-pentecost 2 paulinus-of-nola class-3 white
+2049-06-23 wednesday time-after-pentecost 2 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2049-06-24 thursday time-after-pentecost 2 nativity-of-st-john-the-baptist class-1 white
+2049-06-25 friday time-after-pentecost - ef-sacred-heart class-1 white +william
+2049-06-26 saturday time-after-pentecost 2 sts-john-paul class-3 red
+2049-06-27 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green
+2049-06-28 monday time-after-pentecost 3 vigil-of-sts-peter-paul class-2 violet
+2049-06-29 tuesday time-after-pentecost 3 sts-peter-paul class-1 red
+2049-06-30 wednesday time-after-pentecost 3 in-commemoratione-sancti-pauli-apostoli class-3 red
+2049-07-01 thursday time-after-pentecost 3 precious-blood-of-our-lord-jesus-christ class-1 red
+2049-07-02 friday time-after-pentecost 3 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2049-07-03 saturday time-after-pentecost 3 irenaeus class-3 red
+2049-07-04 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green
+2049-07-05 monday time-after-pentecost 4 anthony-mary-zaccariah class-3 white
+2049-07-06 tuesday time-after-pentecost 4 ef-time-after-pentecost-4-tuesday class-4 green
+2049-07-07 wednesday time-after-pentecost 4 sts-cyril-methodius class-3 white
+2049-07-08 thursday time-after-pentecost 4 elizabeth-of-portugal class-3 white
+2049-07-09 friday time-after-pentecost 4 ef-time-after-pentecost-4-friday class-4 green
+2049-07-10 saturday time-after-pentecost 4 seven-holy-brothers-and-sts-rufina-secunda class-3 red
+2049-07-11 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +pius-i
+2049-07-12 monday time-after-pentecost 5 john-gualbert class-3 red +naboris-et-felicis
+2049-07-13 tuesday time-after-pentecost 5 ef-time-after-pentecost-5-tuesday class-4 green
+2049-07-14 wednesday time-after-pentecost 5 bonaventure class-3 white
+2049-07-15 thursday time-after-pentecost 5 henry-the-emperor class-3 white
+2049-07-16 friday time-after-pentecost 5 ef-time-after-pentecost-5-friday class-4 green +our-lady-of-mt-carmel
+2049-07-17 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green +alexis
+2049-07-18 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +camillus-de-lellis +symphorosa-and-sons
+2049-07-19 monday time-after-pentecost 6 vincent-de-paul class-3 white
+2049-07-20 tuesday time-after-pentecost 6 jerome-emiliani class-3 red +margaret
+2049-07-21 wednesday time-after-pentecost 6 laurence-of-brindisi class-3 white +praxedis-virginis
+2049-07-22 thursday time-after-pentecost 6 mary-magdalene class-3 white
+2049-07-23 friday time-after-pentecost 6 apollinaris class-3 white +liborii
+2049-07-24 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +christina
+2049-07-25 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +james-the-greater +christopher
+2049-07-26 monday time-after-pentecost 7 anne-mother-of-the-blessed-virgin class-2 white
+2049-07-27 tuesday time-after-pentecost 7 ef-time-after-pentecost-7-tuesday class-4 green +pantaleon
+2049-07-28 wednesday time-after-pentecost 7 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2049-07-29 thursday time-after-pentecost 7 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2049-07-30 friday time-after-pentecost 7 ef-time-after-pentecost-7-friday class-4 green +sts-abdon-sennen
+2049-07-31 saturday time-after-pentecost 7 ignatius-loyola class-3 white
+2049-08-01 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +holy-machabees
+2049-08-02 monday time-after-pentecost 8 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2049-08-03 tuesday time-after-pentecost 8 ef-time-after-pentecost-8-tuesday class-4 green
+2049-08-04 wednesday time-after-pentecost 8 dominic class-3 white
+2049-08-05 thursday time-after-pentecost 8 dedication-of-the-basilica-of-st-mary-major class-3 white
+2049-08-06 friday time-after-pentecost 8 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2049-08-07 saturday time-after-pentecost 8 cajetan class-3 white +donatus
+2049-08-08 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +john-mary-vianney +cyriacus-largus-and-smaragdus-martyrs
+2049-08-09 monday time-after-pentecost 9 vigil-of-st-lawrence class-3 red +romanus
+2049-08-10 tuesday time-after-pentecost 9 lawrence class-2 red
+2049-08-11 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green +sts-tiburtius-susanna
+2049-08-12 thursday time-after-pentecost 9 clare class-3 white
+2049-08-13 friday time-after-pentecost 9 ef-time-after-pentecost-9-friday class-4 green +sts-hippolytus-cassian
+2049-08-14 saturday time-after-pentecost 9 vigil-of-the-assumption class-2 white
+2049-08-15 sunday time-after-pentecost 10 assumption-of-the-blessed-virgin-mary class-1 white
+2049-08-16 monday time-after-pentecost 10 joachim-father-of-the-blessed-virgin class-2 white
+2049-08-17 tuesday time-after-pentecost 10 hyacinth class-3 white
+2049-08-18 wednesday time-after-pentecost 10 ef-time-after-pentecost-10-wednesday class-4 green +agapitus
+2049-08-19 thursday time-after-pentecost 10 john-eudes class-3 white
+2049-08-20 friday time-after-pentecost 10 bernard-of-clairvaux class-3 white
+2049-08-21 saturday time-after-pentecost 10 jane-frances-de-chantal class-3 white
+2049-08-22 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +immaculate-heart-of-mary +sts-timothy-hippolytus-and-symphorianus-martyrs
+2049-08-23 monday time-after-pentecost 11 philip-benizi class-3 white
+2049-08-24 tuesday time-after-pentecost 11 bartholomew class-2 red
+2049-08-25 wednesday time-after-pentecost 11 louis-ix class-3 white
+2049-08-26 thursday time-after-pentecost 11 ef-time-after-pentecost-11-thursday class-4 green +zephyrinus
+2049-08-27 friday time-after-pentecost 11 joseph-calasance class-3 white
+2049-08-28 saturday time-after-pentecost 11 augustine class-3 red +hermes
+2049-08-29 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +beheading-of-st-john-the-baptist +sabina
+2049-08-30 monday time-after-pentecost 12 rose-of-lima class-3 red +sts-felix-and-adauctus
+2049-08-31 tuesday time-after-pentecost 12 raymond-nonnatus class-3 white
+2049-09-01 wednesday time-after-pentecost 12 ef-time-after-pentecost-12-wednesday class-4 green +giles +twelve-holy-brothers-martyrs
+2049-09-02 thursday time-after-pentecost 12 stephen-of-hungary class-3 white
+2049-09-03 friday time-after-pentecost 12 pius-x class-3 white
+2049-09-04 saturday time-after-pentecost 12 ef-time-after-pentecost-12-saturday class-4 green
+2049-09-05 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +lawrence-justinian
+2049-09-06 monday time-after-pentecost 13 ef-time-after-pentecost-13-monday class-4 green
+2049-09-07 tuesday time-after-pentecost 13 ef-time-after-pentecost-13-tuesday class-4 green
+2049-09-08 wednesday time-after-pentecost 13 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2049-09-09 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +gorgonius
+2049-09-10 friday time-after-pentecost 13 nicholas-of-tolentino class-3 white
+2049-09-11 saturday time-after-pentecost 13 ef-time-after-pentecost-13-saturday class-4 green +sts-protus-hyacinth
+2049-09-12 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green +most-holy-name-of-mary
+2049-09-13 monday time-after-pentecost 14 ef-time-after-pentecost-14-monday class-4 green
+2049-09-14 tuesday time-after-pentecost 14 exaltation-of-the-holy-cross class-2 red
+2049-09-15 wednesday time-after-pentecost 14 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2049-09-16 thursday time-after-pentecost 14 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2049-09-17 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green +stigmata-of-st-francis
+2049-09-18 saturday time-after-pentecost 14 joseph-of-cupertino class-3 white
+2049-09-19 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +januarius-companions
+2049-09-20 monday time-after-pentecost 15 ef-time-after-pentecost-15-monday class-4 green +sts-eustace-companions
+2049-09-21 tuesday time-after-pentecost 15 matthew class-2 red
+2049-09-22 wednesday time-after-pentecost 15 ef-september-ember-wed class-2 violet +thomas-of-villanova +maurice-and-companions-martyrs
+2049-09-23 thursday time-after-pentecost 15 linus class-3 red +thecla
+2049-09-24 friday time-after-pentecost 15 ef-september-ember-fri class-2 violet +our-lady-of-ransom
+2049-09-25 saturday time-after-pentecost 15 ef-september-ember-sat class-2 violet
+2049-09-26 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +sts-cyprian-justina
+2049-09-27 monday time-after-pentecost 16 sts-cosmas-damian class-3 red
+2049-09-28 tuesday time-after-pentecost 16 wenceslaus class-3 red
+2049-09-29 wednesday time-after-pentecost 16 dedication-of-st-michael-the-archangel class-1 white
+2049-09-30 thursday time-after-pentecost 16 jerome class-3 white
+2049-10-01 friday time-after-pentecost 16 ef-time-after-pentecost-16-friday class-4 green +remigius
+2049-10-02 saturday time-after-pentecost 16 holy-guardian-angels class-3 white
+2049-10-03 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green +theresa-of-the-infant-jesus
+2049-10-04 monday time-after-pentecost 17 francis-of-assisi class-3 white
+2049-10-05 tuesday time-after-pentecost 17 ef-time-after-pentecost-17-tuesday class-4 green +placid-companions
+2049-10-06 wednesday time-after-pentecost 17 bruno class-3 white
+2049-10-07 thursday time-after-pentecost 17 our-lady-of-the-rosary class-2 white +mark-i
+2049-10-08 friday time-after-pentecost 17 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2049-10-09 saturday time-after-pentecost 17 john-leonardi class-3 white +dionysius-and-companions
+2049-10-10 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +francis-borgia
+2049-10-11 monday time-after-pentecost 18 maternity-of-the-blessed-virgin-mary class-2 white
+2049-10-12 tuesday time-after-pentecost 18 ef-time-after-pentecost-18-tuesday class-4 green
+2049-10-13 wednesday time-after-pentecost 18 edward class-3 white
+2049-10-14 thursday time-after-pentecost 18 callistus-i class-3 red
+2049-10-15 friday time-after-pentecost 18 teresa-of-avila class-3 white
+2049-10-16 saturday time-after-pentecost 18 hedwig class-3 white
+2049-10-17 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +margaret-mary-alacoque
+2049-10-18 monday time-after-pentecost 19 luke-the-evangelist class-2 red
+2049-10-19 tuesday time-after-pentecost 19 peter-of-alcantara class-3 white
+2049-10-20 wednesday time-after-pentecost 19 john-cantius class-3 white
+2049-10-21 thursday time-after-pentecost 19 ef-time-after-pentecost-19-thursday class-4 green +hilarion +ursula-and-companions
+2049-10-22 friday time-after-pentecost 19 ef-time-after-pentecost-19-friday class-4 green
+2049-10-23 saturday time-after-pentecost 19 anthony-mary-claret class-3 white
+2049-10-24 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +raphael-the-archangel
+2049-10-25 monday time-after-pentecost 20 ef-time-after-pentecost-20-monday class-4 green +sts-chrysanthus-daria
+2049-10-26 tuesday time-after-pentecost 20 ef-time-after-pentecost-20-tuesday class-4 green
+2049-10-27 wednesday time-after-pentecost 20 ef-time-after-pentecost-20-wednesday class-4 green
+2049-10-28 thursday time-after-pentecost 20 sts-simon-jude class-2 red
+2049-10-29 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green
+2049-10-30 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2049-10-31 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2049-11-01 monday time-after-pentecost 21 all-saints class-1 white
+2049-11-02 tuesday time-after-pentecost 21 commemoration-of-all-souls class-1 black
+2049-11-03 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2049-11-04 thursday time-after-pentecost 21 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2049-11-05 friday time-after-pentecost 21 ef-time-after-pentecost-21-friday class-4 green
+2049-11-06 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2049-11-07 sunday time-after-pentecost 22 ef-time-after-pentecost-sunday-22 class-2 green
+2049-11-08 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green +four-holy-crowned-martyrs
+2049-11-09 tuesday time-after-pentecost 22 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2049-11-10 wednesday time-after-pentecost 22 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2049-11-11 thursday time-after-pentecost 22 martin-of-tours class-3 white +menna
+2049-11-12 friday time-after-pentecost 22 martin-i class-3 red
+2049-11-13 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green +didacus
+2049-11-14 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green +josaphat
+2049-11-15 monday time-after-pentecost 23 albert-the-great class-3 white
+2049-11-16 tuesday time-after-pentecost 23 gertrude-the-great class-3 white
+2049-11-17 wednesday time-after-pentecost 23 gregory-the-wonderworker class-3 white
+2049-11-18 thursday time-after-pentecost 23 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2049-11-19 friday time-after-pentecost 23 elizabeth-of-hungary class-3 white +pontian
+2049-11-20 saturday time-after-pentecost 23 felix-of-valois class-3 white
+2049-11-21 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +presentation-of-the-blessed-virgin-mary
+2049-11-22 monday time-after-pentecost 24 cecilia class-3 red
+2049-11-23 tuesday time-after-pentecost 24 clement-i class-3 red +felicity
+2049-11-24 wednesday time-after-pentecost 24 john-of-the-cross class-3 white +chrysogonus
+2049-11-25 thursday time-after-pentecost 24 catherine-of-alexandria class-3 red
+2049-11-26 friday time-after-pentecost 24 sylvester class-3 white +peter-of-alexandria
+2049-11-27 saturday time-after-pentecost 24 ef-time-after-pentecost-24-saturday class-4 green
+2049-11-28 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2049-11-29 monday advent 1 ef-advent-1-monday class-3 violet +saturninus
+2049-11-30 tuesday advent 1 andrew class-2 red
+2049-12-01 wednesday advent 1 ef-advent-1-wednesday class-3 violet
+2049-12-02 thursday advent 1 vivian class-3 red
+2049-12-03 friday advent 1 francis-xavier class-3 white
+2049-12-04 saturday advent 1 peter-chrysologus class-3 white
+2049-12-05 sunday advent 2 ef-advent-sunday-2 class-2 violet +sabbas
+2049-12-06 monday advent 2 nicholas class-3 white
+2049-12-07 tuesday advent 2 ambrose class-3 white
+2049-12-08 wednesday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2049-12-09 thursday advent 2 ef-advent-2-thursday class-3 violet
+2049-12-10 friday advent 2 ef-advent-2-friday class-3 violet +melchiades
+2049-12-11 saturday advent 2 damasus-i class-3 white
+2049-12-12 sunday advent 3 ef-advent-sunday-3 class-2 violet
+2049-12-13 monday advent 3 lucy class-3 red
+2049-12-14 tuesday advent 3 ef-advent-3-tuesday class-3 violet
+2049-12-15 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2049-12-16 thursday advent 3 eusebius class-3 red
+2049-12-17 friday advent 3 ef-advent-ember-fri class-2 violet
+2049-12-18 saturday advent 3 ef-advent-ember-sat class-2 violet
+2049-12-19 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2049-12-20 monday advent 4 ef-advent-4-monday class-3 violet
+2049-12-21 tuesday advent 4 thomas class-2 red
+2049-12-22 wednesday advent 4 ef-advent-4-wednesday class-3 violet
+2049-12-23 thursday advent 4 ef-advent-4-thursday class-3 violet
+2049-12-24 friday advent 4 vigil-of-christmas class-1 violet
+2049-12-25 saturday christmas - ef-nativity class-1 white
+2049-12-26 sunday christmas - ef-christmas-sunday-0 class-2 white +stephen
+2049-12-27 monday christmas - john-the-evangelist class-2 white
+2049-12-28 tuesday christmas - holy-innocents class-2 red
+2049-12-29 wednesday christmas - ef-christmas-0-wednesday class-4 white +thomas-becket
+2049-12-30 thursday christmas - ef-christmas-0-thursday class-4 white
+2049-12-31 friday christmas - ef-christmas-0-friday class-4 white +silvester
+2050-01-01 saturday christmas - ef-circumcision class-1 white
+2050-01-02 sunday christmas - ef-christmas-sunday-0 class-2 white
+2050-01-03 monday christmas - ef-christmas-0-monday class-4 white
+2050-01-04 tuesday christmas - ef-christmas-0-tuesday class-4 white
+2050-01-05 wednesday christmas - ef-christmas-0-wednesday class-4 white +telesphorus-pope-and-martyr
+2050-01-06 thursday time-after-epiphany - ef-epiphany class-1 white
+2050-01-07 friday time-after-epiphany 1 ef-time-after-epiphany-1-friday class-4 green
+2050-01-08 saturday time-after-epiphany 1 ef-time-after-epiphany-1-saturday class-4 green
+2050-01-09 sunday time-after-epiphany 1 ef-time-after-epiphany-sunday-1 class-2 green
+2050-01-10 monday time-after-epiphany 1 ef-time-after-epiphany-1-monday class-4 green
+2050-01-11 tuesday time-after-epiphany 1 ef-time-after-epiphany-1-tuesday class-4 green +hyginus-pope-and-martyr
+2050-01-12 wednesday time-after-epiphany 1 ef-time-after-epiphany-1-wednesday class-4 green
+2050-01-13 thursday time-after-epiphany 2 commemoration-of-the-baptism-of-the-lord class-2 white
+2050-01-14 friday time-after-epiphany 2 hilary class-3 white +felicis
+2050-01-15 saturday time-after-epiphany 2 paul-the-first-hermit class-3 white +maur-abbot
+2050-01-16 sunday time-after-epiphany 2 ef-time-after-epiphany-sunday-2 class-2 green +marcellus-i
+2050-01-17 monday time-after-epiphany 2 anthony class-3 white
+2050-01-18 tuesday time-after-epiphany 2 ef-time-after-epiphany-2-tuesday class-4 green +prisca
+2050-01-19 wednesday time-after-epiphany 2 ef-time-after-epiphany-2-wednesday class-4 green +canute-martyr +sts-marius-martha-audifax-abachum
+2050-01-20 thursday time-after-epiphany 3 sts-fabian-sebastian class-3 red
+2050-01-21 friday time-after-epiphany 3 agnes class-3 red
+2050-01-22 saturday time-after-epiphany 3 sts-vincent-anastasius class-3 red
+2050-01-23 sunday time-after-epiphany 3 ef-time-after-epiphany-sunday-3 class-2 green +raymond-of-pe-afort +emerentiana
+2050-01-24 monday time-after-epiphany 3 timothy class-3 red
+2050-01-25 tuesday time-after-epiphany 3 conversion-of-st-paul class-3 white +peter
+2050-01-26 wednesday time-after-epiphany 3 polycarp class-3 red
+2050-01-27 thursday time-after-epiphany 4 john-chrysostom class-3 white
+2050-01-28 friday time-after-epiphany 4 peter-nolasco class-3 white
+2050-01-29 saturday time-after-epiphany 4 francis-de-sales class-3 white
+2050-01-30 sunday time-after-epiphany 4 ef-time-after-epiphany-sunday-4 class-2 green +martina
+2050-01-31 monday time-after-epiphany 4 john-bosco class-3 white
+2050-02-01 tuesday time-after-epiphany 4 ignatius-of-antioch class-3 red
+2050-02-02 wednesday time-after-epiphany 4 purification-of-the-blessed-virgin-mary class-2 white
+2050-02-03 thursday time-after-epiphany 5 ef-time-after-epiphany-5-thursday class-4 green +blaise
+2050-02-04 friday time-after-epiphany 5 andrew-corsini class-3 white
+2050-02-05 saturday time-after-epiphany 5 agatha class-3 red
+2050-02-06 sunday septuagesima 1 ef-septuagesima-sunday-1 class-2 violet +titus +dorothy
+2050-02-07 monday septuagesima 1 romuald class-3 white
+2050-02-08 tuesday septuagesima 1 john-of-matha class-3 white
+2050-02-09 wednesday septuagesima 1 cyril-of-alexandria class-3 white +appollonia
+2050-02-10 thursday septuagesima 1 scholastica class-3 white
+2050-02-11 friday septuagesima 1 our-lady-of-lourdes class-3 white
+2050-02-12 saturday septuagesima 1 seven-holy-servite-founders class-3 white
+2050-02-13 sunday septuagesima 2 ef-septuagesima-sunday-2 class-2 violet
+2050-02-14 monday septuagesima 2 ef-septuagesima-2-monday class-4 violet +valentine
+2050-02-15 tuesday septuagesima 2 ef-septuagesima-2-tuesday class-4 violet +sts-faustinus-jovita
+2050-02-16 wednesday septuagesima 2 ef-septuagesima-2-wednesday class-4 violet
+2050-02-17 thursday septuagesima 2 ef-septuagesima-2-thursday class-4 violet
+2050-02-18 friday septuagesima 2 ef-septuagesima-2-friday class-4 violet +simeon
+2050-02-19 saturday septuagesima 2 ef-septuagesima-2-saturday class-4 violet
+2050-02-20 sunday septuagesima 3 ef-septuagesima-sunday-3 class-2 violet
+2050-02-21 monday septuagesima 3 ef-septuagesima-3-monday class-4 violet
+2050-02-22 tuesday septuagesima 3 chair-of-st-peter class-2 white +paul
+2050-02-23 wednesday lent - ef-ash-wednesday class-1 violet +peter-damien
+2050-02-24 thursday lent - matthias class-2 red
+2050-02-25 friday lent - ef-lent-after-ashes-friday class-3 violet
+2050-02-26 saturday lent - ef-lent-after-ashes-saturday class-3 violet
+2050-02-27 sunday lent 1 ef-lent-sunday-1 class-2 violet +gabriel-of-our-lady-of-sorrows
+2050-02-28 monday lent 1 ef-lent-1-monday class-3 violet
+2050-03-01 tuesday lent 1 ef-lent-1-tuesday class-3 violet
+2050-03-02 wednesday lent 1 ef-lent-1-wednesday class-3 violet
+2050-03-03 thursday lent 1 ef-lent-1-thursday class-3 violet
+2050-03-04 friday lent 1 ef-lent-1-friday class-3 violet +casimir +lucius
+2050-03-05 saturday lent 1 ef-lent-1-saturday class-3 violet
+2050-03-06 sunday lent 2 ef-lent-sunday-2 class-2 violet +sts-felicitas-perpetua
+2050-03-07 monday lent 2 ef-lent-2-monday class-3 violet +thomas-aquinas
+2050-03-08 tuesday lent 2 ef-lent-2-tuesday class-3 violet +john-of-god
+2050-03-09 wednesday lent 2 ef-lent-2-wednesday class-3 violet +frances-rome
+2050-03-10 thursday lent 2 ef-lent-2-thursday class-3 violet +forty-holy-martyrs-of-sebaste
+2050-03-11 friday lent 2 ef-lent-2-friday class-3 violet
+2050-03-12 saturday lent 2 ef-lent-2-saturday class-3 violet +gregory-the-great
+2050-03-13 sunday lent 3 ef-lent-sunday-3 class-2 violet
+2050-03-14 monday lent 3 ef-lent-3-monday class-3 violet
+2050-03-15 tuesday lent 3 ef-lent-3-tuesday class-3 violet
+2050-03-16 wednesday lent 3 ef-lent-3-wednesday class-3 violet
+2050-03-17 thursday lent 3 ef-lent-3-thursday class-3 violet +patrick
+2050-03-18 friday lent 3 ef-lent-3-friday class-3 violet +cyril-of-jerusalem
+2050-03-19 saturday lent 3 joseph-spouse-of-the-bl-virgin-mary class-1 white
+2050-03-20 sunday lent 4 ef-lent-sunday-4 class-2 violet
+2050-03-21 monday lent 4 ef-lent-4-monday class-3 violet +benedict
+2050-03-22 tuesday lent 4 ef-lent-4-tuesday class-3 violet
+2050-03-23 wednesday lent 4 ef-lent-4-wednesday class-3 violet
+2050-03-24 thursday lent 4 ef-lent-4-thursday class-3 violet +gabriel-the-archangel
+2050-03-25 friday lent 4 annunciation-of-the-blessed-virgin-mary class-1 white
+2050-03-26 saturday lent 4 ef-lent-4-saturday class-3 violet
+2050-03-27 sunday passiontide 1 ef-passion-sunday class-1 violet +john-damascene
+2050-03-28 monday passiontide - ef-passiontide-0-monday class-3 violet +john-of-capistrano
+2050-03-29 tuesday passiontide - ef-passiontide-0-tuesday class-3 violet
+2050-03-30 wednesday passiontide - ef-passiontide-0-wednesday class-3 violet
+2050-03-31 thursday passiontide - ef-passiontide-0-thursday class-3 violet
+2050-04-01 friday passiontide - ef-passiontide-0-friday class-3 violet
+2050-04-02 saturday passiontide - ef-passiontide-0-saturday class-3 violet +francis-of-paola
+2050-04-03 sunday passiontide 2 ef-palm-sunday class-1 violet
+2050-04-04 monday passiontide - ef-passiontide-0-monday class-1 violet +isidore-of-seville
+2050-04-05 tuesday passiontide - ef-passiontide-0-tuesday class-1 violet +vincent-ferrer
+2050-04-06 wednesday passiontide - ef-passiontide-0-wednesday class-1 violet
+2050-04-07 thursday passiontide - ef-passiontide-0-thursday class-1 violet
+2050-04-08 friday passiontide - ef-passiontide-0-friday class-1 violet
+2050-04-09 saturday passiontide - ef-passiontide-0-saturday class-1 violet
+2050-04-10 sunday easter 1 ef-easter-sunday class-1 white
+2050-04-11 monday easter 1 ef-easter-1-monday class-1 white +leo-the-great
+2050-04-12 tuesday easter 1 ef-easter-1-tuesday class-1 white
+2050-04-13 wednesday easter 1 ef-easter-1-wednesday class-1 white +hermenegild
+2050-04-14 thursday easter 1 ef-easter-1-thursday class-1 white +justin +sts-tiburtius-valerian-et-maximus-martyrs
+2050-04-15 friday easter 1 ef-easter-1-friday class-1 white
+2050-04-16 saturday easter 1 ef-easter-1-saturday class-1 white
+2050-04-17 sunday easter 2 ef-low-sunday class-1 white +anicetus
+2050-04-18 monday easter 2 ef-easter-2-monday class-4 white
+2050-04-19 tuesday easter 2 ef-easter-2-tuesday class-4 white
+2050-04-20 wednesday easter 2 ef-easter-2-wednesday class-4 white
+2050-04-21 thursday easter 2 anselm class-3 white
+2050-04-22 friday easter 2 sts-soter-caius class-3 red
+2050-04-23 saturday easter 2 ef-easter-2-saturday class-4 white +george
+2050-04-24 sunday easter 3 ef-easter-sunday-3 class-2 white +fidelis-of-sigmaringen
+2050-04-25 monday easter 3 mark class-2 red
+2050-04-26 tuesday easter 3 sts-cletus-marcellinus class-3 red
+2050-04-27 wednesday easter 3 peter-canisius class-3 white
+2050-04-28 thursday easter 3 paul-of-the-cross class-3 white
+2050-04-29 friday easter 3 peter-of-verona class-3 red
+2050-04-30 saturday easter 3 catherine-of-siena class-3 white
+2050-05-01 sunday easter 4 joseph-the-workman class-1 white
+2050-05-02 monday easter 4 athanasius class-3 white
+2050-05-03 tuesday easter 4 ef-easter-4-tuesday class-4 white +sts-alexander-companions
+2050-05-04 wednesday easter 4 monica class-3 white
+2050-05-05 thursday easter 4 pius-v class-3 white
+2050-05-06 friday easter 4 ef-easter-4-friday class-4 white
+2050-05-07 saturday easter 4 stanislaus class-3 red
+2050-05-08 sunday easter 5 ef-easter-sunday-5 class-2 white
+2050-05-09 monday easter 5 gregory-of-nazianzen class-3 white
+2050-05-10 tuesday easter 5 antoninus class-3 white +gordiano-and-epimacho
+2050-05-11 wednesday easter 5 sts-philip-james class-2 red
+2050-05-12 thursday easter 5 sts-nereus-achilleus-domitilla-pancras class-3 red
+2050-05-13 friday easter 5 robert-bellarmine class-3 white
+2050-05-14 saturday easter 5 ef-easter-5-saturday class-4 white
+2050-05-15 sunday easter 6 ef-easter-sunday-6 class-2 white +john-baptist-de-la-salle
+2050-05-16 monday easter 6 ef-easter-6-monday class-4 white +ubaldus
+2050-05-17 tuesday easter 6 paschal-baylon class-3 white
+2050-05-18 wednesday easter - ef-ascension-vigil class-2 white +venantius
+2050-05-19 thursday easter - ef-ascension class-1 white +peter-celestine +pudentiana-virginis
+2050-05-20 friday easter 6 bernardine-of-siena class-3 white
+2050-05-21 saturday easter 6 ef-easter-6-saturday class-4 white
+2050-05-22 sunday easter 7 ef-easter-sunday-7 class-2 white
+2050-05-23 monday easter 7 ef-easter-7-monday class-4 white
+2050-05-24 tuesday easter 7 ef-easter-7-tuesday class-4 white
+2050-05-25 wednesday easter 7 gregory-vii class-3 white +urban-pope-and-martyr
+2050-05-26 thursday easter 7 philip-neri class-3 white +eleutherius
+2050-05-27 friday easter 7 bede-the-venerable class-3 white +john-i
+2050-05-28 saturday easter - ef-pentecost-vigil class-1 red +augustine-of-canterbury
+2050-05-29 sunday easter - ef-pentecost class-1 red +mary-magdalene-de-pazzi
+2050-05-30 monday easter 8 ef-easter-8-monday class-1 red +felix-i
+2050-05-31 tuesday easter 8 ef-easter-8-tuesday class-1 red +queenship-of-the-blessed-virgin-mary +petronilla
+2050-06-01 wednesday easter 8 ef-easter-8-wednesday class-1 red +angela-merici
+2050-06-02 thursday easter 8 ef-easter-8-thursday class-1 red +sts-marcellinus-peter-erasmus
+2050-06-03 friday easter 8 ef-easter-8-friday class-1 red
+2050-06-04 saturday easter 8 ef-easter-8-saturday class-1 red +francis-caracciolo
+2050-06-05 sunday time-after-pentecost 1 ef-trinity class-1 white +boniface
+2050-06-06 monday time-after-pentecost 1 norbert class-3 white
+2050-06-07 tuesday time-after-pentecost 1 ef-time-after-pentecost-1-tuesday class-4 green
+2050-06-08 wednesday time-after-pentecost 1 ef-time-after-pentecost-1-wednesday class-4 green
+2050-06-09 thursday time-after-pentecost - ef-corpus-christi class-1 white +sts-primus-felicianus
+2050-06-10 friday time-after-pentecost 1 margaret-of-scotland class-3 white
+2050-06-11 saturday time-after-pentecost 1 barnabas class-3 red
+2050-06-12 sunday time-after-pentecost 2 ef-time-after-pentecost-sunday-2 class-2 green +john-of-san-fecundo +basilidus
+2050-06-13 monday time-after-pentecost 2 anthony-of-padua class-3 white
+2050-06-14 tuesday time-after-pentecost 2 basil-the-great class-3 white
+2050-06-15 wednesday time-after-pentecost 2 ef-time-after-pentecost-2-wednesday class-4 green +vitus
+2050-06-16 thursday time-after-pentecost 2 ef-time-after-pentecost-2-thursday class-4 green
+2050-06-17 friday time-after-pentecost - ef-sacred-heart class-1 white +gregory-barbarigo
+2050-06-18 saturday time-after-pentecost 2 ephrem-of-syria class-3 red +marcus-and-marcellianus
+2050-06-19 sunday time-after-pentecost 3 ef-time-after-pentecost-sunday-3 class-2 green +julia-of-falconieri +sts-gervasius-and-protasius
+2050-06-20 monday time-after-pentecost 3 ef-time-after-pentecost-3-monday class-4 green +silverius
+2050-06-21 tuesday time-after-pentecost 3 aloysius-gongzaga class-3 white
+2050-06-22 wednesday time-after-pentecost 3 paulinus-of-nola class-3 white
+2050-06-23 thursday time-after-pentecost 3 vigil-of-the-nativity-of-st-john-the-baptist class-2 violet
+2050-06-24 friday time-after-pentecost 3 nativity-of-st-john-the-baptist class-1 white
+2050-06-25 saturday time-after-pentecost 3 william class-3 white
+2050-06-26 sunday time-after-pentecost 4 ef-time-after-pentecost-sunday-4 class-2 green +sts-john-paul
+2050-06-27 monday time-after-pentecost 4 ef-time-after-pentecost-4-monday class-4 green
+2050-06-28 tuesday time-after-pentecost 4 vigil-of-sts-peter-paul class-2 violet
+2050-06-29 wednesday time-after-pentecost 4 sts-peter-paul class-1 red
+2050-06-30 thursday time-after-pentecost 4 in-commemoratione-sancti-pauli-apostoli class-3 red
+2050-07-01 friday time-after-pentecost 4 precious-blood-of-our-lord-jesus-christ class-1 red
+2050-07-02 saturday time-after-pentecost 4 visitation-of-the-blessed-virgin-mary class-2 white +processus-and-martinian
+2050-07-03 sunday time-after-pentecost 5 ef-time-after-pentecost-sunday-5 class-2 green +irenaeus
+2050-07-04 monday time-after-pentecost 5 ef-time-after-pentecost-5-monday class-4 green
+2050-07-05 tuesday time-after-pentecost 5 anthony-mary-zaccariah class-3 white
+2050-07-06 wednesday time-after-pentecost 5 ef-time-after-pentecost-5-wednesday class-4 green
+2050-07-07 thursday time-after-pentecost 5 sts-cyril-methodius class-3 white
+2050-07-08 friday time-after-pentecost 5 elizabeth-of-portugal class-3 white
+2050-07-09 saturday time-after-pentecost 5 ef-time-after-pentecost-5-saturday class-4 green
+2050-07-10 sunday time-after-pentecost 6 ef-time-after-pentecost-sunday-6 class-2 green +seven-holy-brothers-and-sts-rufina-secunda
+2050-07-11 monday time-after-pentecost 6 ef-time-after-pentecost-6-monday class-4 green +pius-i
+2050-07-12 tuesday time-after-pentecost 6 john-gualbert class-3 red +naboris-et-felicis
+2050-07-13 wednesday time-after-pentecost 6 ef-time-after-pentecost-6-wednesday class-4 green
+2050-07-14 thursday time-after-pentecost 6 bonaventure class-3 white
+2050-07-15 friday time-after-pentecost 6 henry-the-emperor class-3 white
+2050-07-16 saturday time-after-pentecost 6 ef-time-after-pentecost-6-saturday class-4 green +our-lady-of-mt-carmel
+2050-07-17 sunday time-after-pentecost 7 ef-time-after-pentecost-sunday-7 class-2 green +alexis
+2050-07-18 monday time-after-pentecost 7 camillus-de-lellis class-3 red +symphorosa-and-sons
+2050-07-19 tuesday time-after-pentecost 7 vincent-de-paul class-3 white
+2050-07-20 wednesday time-after-pentecost 7 jerome-emiliani class-3 red +margaret
+2050-07-21 thursday time-after-pentecost 7 laurence-of-brindisi class-3 white +praxedis-virginis
+2050-07-22 friday time-after-pentecost 7 mary-magdalene class-3 white
+2050-07-23 saturday time-after-pentecost 7 apollinaris class-3 white +liborii
+2050-07-24 sunday time-after-pentecost 8 ef-time-after-pentecost-sunday-8 class-2 green +christina
+2050-07-25 monday time-after-pentecost 8 james-the-greater class-2 red +christopher
+2050-07-26 tuesday time-after-pentecost 8 anne-mother-of-the-blessed-virgin class-2 white
+2050-07-27 wednesday time-after-pentecost 8 ef-time-after-pentecost-8-wednesday class-4 green +pantaleon
+2050-07-28 thursday time-after-pentecost 8 sts-nazarius-celsus-st-victor-i-st-innocent-i class-3 red
+2050-07-29 friday time-after-pentecost 8 martha class-3 red +felicis-simplicii-faustini-et-beatricis
+2050-07-30 saturday time-after-pentecost 8 ef-time-after-pentecost-8-saturday class-4 green +sts-abdon-sennen
+2050-07-31 sunday time-after-pentecost 9 ef-time-after-pentecost-sunday-9 class-2 green +ignatius-loyola
+2050-08-01 monday time-after-pentecost 9 ef-time-after-pentecost-9-monday class-4 green +holy-machabees
+2050-08-02 tuesday time-after-pentecost 9 alphonsus-liguori class-3 red +stephen-i-pope-and-martyr
+2050-08-03 wednesday time-after-pentecost 9 ef-time-after-pentecost-9-wednesday class-4 green
+2050-08-04 thursday time-after-pentecost 9 dominic class-3 white
+2050-08-05 friday time-after-pentecost 9 dedication-of-the-basilica-of-st-mary-major class-3 white
+2050-08-06 saturday time-after-pentecost 9 transfiguration-of-our-lord class-2 white +pope-sixtus-ii-felicissimus-and-agapitus-martyrs
+2050-08-07 sunday time-after-pentecost 10 ef-time-after-pentecost-sunday-10 class-2 green +cajetan +donatus
+2050-08-08 monday time-after-pentecost 10 john-mary-vianney class-3 white +cyriacus-largus-and-smaragdus-martyrs
+2050-08-09 tuesday time-after-pentecost 10 vigil-of-st-lawrence class-3 red +romanus
+2050-08-10 wednesday time-after-pentecost 10 lawrence class-2 red
+2050-08-11 thursday time-after-pentecost 10 ef-time-after-pentecost-10-thursday class-4 green +sts-tiburtius-susanna
+2050-08-12 friday time-after-pentecost 10 clare class-3 white
+2050-08-13 saturday time-after-pentecost 10 ef-time-after-pentecost-10-saturday class-4 green +sts-hippolytus-cassian
+2050-08-14 sunday time-after-pentecost 11 ef-time-after-pentecost-sunday-11 class-2 green +vigil-of-the-assumption
+2050-08-15 monday time-after-pentecost 11 assumption-of-the-blessed-virgin-mary class-1 white
+2050-08-16 tuesday time-after-pentecost 11 joachim-father-of-the-blessed-virgin class-2 white
+2050-08-17 wednesday time-after-pentecost 11 hyacinth class-3 white
+2050-08-18 thursday time-after-pentecost 11 ef-time-after-pentecost-11-thursday class-4 green +agapitus
+2050-08-19 friday time-after-pentecost 11 john-eudes class-3 white
+2050-08-20 saturday time-after-pentecost 11 bernard-of-clairvaux class-3 white
+2050-08-21 sunday time-after-pentecost 12 ef-time-after-pentecost-sunday-12 class-2 green +jane-frances-de-chantal
+2050-08-22 monday time-after-pentecost 12 immaculate-heart-of-mary class-2 white +sts-timothy-hippolytus-and-symphorianus-martyrs
+2050-08-23 tuesday time-after-pentecost 12 philip-benizi class-3 white
+2050-08-24 wednesday time-after-pentecost 12 bartholomew class-2 red
+2050-08-25 thursday time-after-pentecost 12 louis-ix class-3 white
+2050-08-26 friday time-after-pentecost 12 ef-time-after-pentecost-12-friday class-4 green +zephyrinus
+2050-08-27 saturday time-after-pentecost 12 joseph-calasance class-3 white
+2050-08-28 sunday time-after-pentecost 13 ef-time-after-pentecost-sunday-13 class-2 green +augustine +hermes
+2050-08-29 monday time-after-pentecost 13 beheading-of-st-john-the-baptist class-3 red +sabina
+2050-08-30 tuesday time-after-pentecost 13 rose-of-lima class-3 red +sts-felix-and-adauctus
+2050-08-31 wednesday time-after-pentecost 13 raymond-nonnatus class-3 white
+2050-09-01 thursday time-after-pentecost 13 ef-time-after-pentecost-13-thursday class-4 green +giles +twelve-holy-brothers-martyrs
+2050-09-02 friday time-after-pentecost 13 stephen-of-hungary class-3 white
+2050-09-03 saturday time-after-pentecost 13 pius-x class-3 white
+2050-09-04 sunday time-after-pentecost 14 ef-time-after-pentecost-sunday-14 class-2 green
+2050-09-05 monday time-after-pentecost 14 lawrence-justinian class-3 white
+2050-09-06 tuesday time-after-pentecost 14 ef-time-after-pentecost-14-tuesday class-4 green
+2050-09-07 wednesday time-after-pentecost 14 ef-time-after-pentecost-14-wednesday class-4 green
+2050-09-08 thursday time-after-pentecost 14 nativity-of-the-blessed-virgin-mary class-2 white +hadriani
+2050-09-09 friday time-after-pentecost 14 ef-time-after-pentecost-14-friday class-4 green +gorgonius
+2050-09-10 saturday time-after-pentecost 14 nicholas-of-tolentino class-3 white
+2050-09-11 sunday time-after-pentecost 15 ef-time-after-pentecost-sunday-15 class-2 green +sts-protus-hyacinth
+2050-09-12 monday time-after-pentecost 15 most-holy-name-of-mary class-3 white
+2050-09-13 tuesday time-after-pentecost 15 ef-time-after-pentecost-15-tuesday class-4 green
+2050-09-14 wednesday time-after-pentecost 15 exaltation-of-the-holy-cross class-2 red
+2050-09-15 thursday time-after-pentecost 15 seven-sorrows-of-the-blessed-virgin-mary class-2 white +nicomedes
+2050-09-16 friday time-after-pentecost 15 sts-cornelius-cyprian class-3 red +sts-euphemia-lucy-and-geminianus
+2050-09-17 saturday time-after-pentecost 15 ef-time-after-pentecost-15-saturday class-4 green +stigmata-of-st-francis
+2050-09-18 sunday time-after-pentecost 16 ef-time-after-pentecost-sunday-16 class-2 green +joseph-of-cupertino
+2050-09-19 monday time-after-pentecost 16 januarius-companions class-3 red
+2050-09-20 tuesday time-after-pentecost 16 ef-time-after-pentecost-16-tuesday class-4 green +sts-eustace-companions
+2050-09-21 wednesday time-after-pentecost 16 ef-september-ember-wed class-2 violet +matthew
+2050-09-22 thursday time-after-pentecost 16 thomas-of-villanova class-3 white +maurice-and-companions-martyrs
+2050-09-23 friday time-after-pentecost 16 ef-september-ember-fri class-2 violet +linus +thecla
+2050-09-24 saturday time-after-pentecost 16 ef-september-ember-sat class-2 violet +our-lady-of-ransom
+2050-09-25 sunday time-after-pentecost 17 ef-time-after-pentecost-sunday-17 class-2 green
+2050-09-26 monday time-after-pentecost 17 ef-time-after-pentecost-17-monday class-4 green +sts-cyprian-justina
+2050-09-27 tuesday time-after-pentecost 17 sts-cosmas-damian class-3 red
+2050-09-28 wednesday time-after-pentecost 17 wenceslaus class-3 red
+2050-09-29 thursday time-after-pentecost 17 dedication-of-st-michael-the-archangel class-1 white
+2050-09-30 friday time-after-pentecost 17 jerome class-3 white
+2050-10-01 saturday time-after-pentecost 17 ef-time-after-pentecost-17-saturday class-4 green +remigius
+2050-10-02 sunday time-after-pentecost 18 ef-time-after-pentecost-sunday-18 class-2 green +holy-guardian-angels
+2050-10-03 monday time-after-pentecost 18 theresa-of-the-infant-jesus class-3 white
+2050-10-04 tuesday time-after-pentecost 18 francis-of-assisi class-3 white
+2050-10-05 wednesday time-after-pentecost 18 ef-time-after-pentecost-18-wednesday class-4 green +placid-companions
+2050-10-06 thursday time-after-pentecost 18 bruno class-3 white
+2050-10-07 friday time-after-pentecost 18 our-lady-of-the-rosary class-2 white +mark-i
+2050-10-08 saturday time-after-pentecost 18 bridget-of-sweden class-3 white +sergio-baccho-marcello-and-apulejo-martyrs
+2050-10-09 sunday time-after-pentecost 19 ef-time-after-pentecost-sunday-19 class-2 green +john-leonardi +dionysius-and-companions
+2050-10-10 monday time-after-pentecost 19 francis-borgia class-3 white
+2050-10-11 tuesday time-after-pentecost 19 maternity-of-the-blessed-virgin-mary class-2 white
+2050-10-12 wednesday time-after-pentecost 19 ef-time-after-pentecost-19-wednesday class-4 green
+2050-10-13 thursday time-after-pentecost 19 edward class-3 white
+2050-10-14 friday time-after-pentecost 19 callistus-i class-3 red
+2050-10-15 saturday time-after-pentecost 19 teresa-of-avila class-3 white
+2050-10-16 sunday time-after-pentecost 20 ef-time-after-pentecost-sunday-20 class-2 green +hedwig
+2050-10-17 monday time-after-pentecost 20 margaret-mary-alacoque class-3 white
+2050-10-18 tuesday time-after-pentecost 20 luke-the-evangelist class-2 red
+2050-10-19 wednesday time-after-pentecost 20 peter-of-alcantara class-3 white
+2050-10-20 thursday time-after-pentecost 20 john-cantius class-3 white
+2050-10-21 friday time-after-pentecost 20 ef-time-after-pentecost-20-friday class-4 green +hilarion +ursula-and-companions
+2050-10-22 saturday time-after-pentecost 20 ef-time-after-pentecost-20-saturday class-4 green
+2050-10-23 sunday time-after-pentecost 21 ef-time-after-pentecost-sunday-21 class-2 green +anthony-mary-claret
+2050-10-24 monday time-after-pentecost 21 raphael-the-archangel class-3 white
+2050-10-25 tuesday time-after-pentecost 21 ef-time-after-pentecost-21-tuesday class-4 green +sts-chrysanthus-daria
+2050-10-26 wednesday time-after-pentecost 21 ef-time-after-pentecost-21-wednesday class-4 green
+2050-10-27 thursday time-after-pentecost 21 ef-time-after-pentecost-21-thursday class-4 green
+2050-10-28 friday time-after-pentecost 21 sts-simon-jude class-2 red
+2050-10-29 saturday time-after-pentecost 21 ef-time-after-pentecost-21-saturday class-4 green
+2050-10-30 sunday time-after-pentecost - ef-christ-the-king class-1 white
+2050-10-31 monday time-after-pentecost 22 ef-time-after-pentecost-22-monday class-4 green
+2050-11-01 tuesday time-after-pentecost 22 all-saints class-1 white
+2050-11-02 wednesday time-after-pentecost 22 commemoration-of-all-souls class-1 black
+2050-11-03 thursday time-after-pentecost 22 ef-time-after-pentecost-22-thursday class-4 green
+2050-11-04 friday time-after-pentecost 22 charles-borromeo class-3 white +sts-vitalis-and-agricola-martyrs
+2050-11-05 saturday time-after-pentecost 22 ef-time-after-pentecost-22-saturday class-4 green
+2050-11-06 sunday time-after-pentecost 23 ef-time-after-pentecost-sunday-23 class-2 green
+2050-11-07 monday time-after-pentecost 23 ef-time-after-pentecost-23-monday class-4 green
+2050-11-08 tuesday time-after-pentecost 23 ef-time-after-pentecost-23-tuesday class-4 green +four-holy-crowned-martyrs
+2050-11-09 wednesday time-after-pentecost 23 dedication-of-the-archbasilica-of-our-holy-savior class-2 white
+2050-11-10 thursday time-after-pentecost 23 andrew-avellino class-3 white +sts-tryphonis-respicii-et-nymphae
+2050-11-11 friday time-after-pentecost 23 martin-of-tours class-3 white +menna
+2050-11-12 saturday time-after-pentecost 23 martin-i class-3 red
+2050-11-13 sunday time-after-pentecost 6 ef-time-after-epiphany-sunday-6 class-2 green +didacus
+2050-11-14 monday time-after-pentecost 24 josaphat class-3 white
+2050-11-15 tuesday time-after-pentecost 24 albert-the-great class-3 white
+2050-11-16 wednesday time-after-pentecost 24 gertrude-the-great class-3 white
+2050-11-17 thursday time-after-pentecost 24 gregory-the-wonderworker class-3 white
+2050-11-18 friday time-after-pentecost 24 dedication-of-the-basilicas-of-sts-peter-paul class-3 white
+2050-11-19 saturday time-after-pentecost 24 elizabeth-of-hungary class-3 white +pontian
+2050-11-20 sunday time-after-pentecost 24 ef-time-after-pentecost-sunday-24 class-2 green +felix-of-valois
+2050-11-21 monday time-after-pentecost 25 presentation-of-the-blessed-virgin-mary class-3 white
+2050-11-22 tuesday time-after-pentecost 25 cecilia class-3 red
+2050-11-23 wednesday time-after-pentecost 25 clement-i class-3 red +felicity
+2050-11-24 thursday time-after-pentecost 25 john-of-the-cross class-3 white +chrysogonus
+2050-11-25 friday time-after-pentecost 25 catherine-of-alexandria class-3 red
+2050-11-26 saturday time-after-pentecost 25 sylvester class-3 white +peter-of-alexandria
+2050-11-27 sunday advent 1 ef-advent-sunday-1 class-1 violet
+2050-11-28 monday advent 1 ef-advent-1-monday class-3 violet
+2050-11-29 tuesday advent 1 ef-advent-1-tuesday class-3 violet +saturninus
+2050-11-30 wednesday advent 1 andrew class-2 red
+2050-12-01 thursday advent 1 ef-advent-1-thursday class-3 violet
+2050-12-02 friday advent 1 vivian class-3 red
+2050-12-03 saturday advent 1 francis-xavier class-3 white
+2050-12-04 sunday advent 2 ef-advent-sunday-2 class-2 violet +peter-chrysologus
+2050-12-05 monday advent 2 ef-advent-2-monday class-3 violet +sabbas
+2050-12-06 tuesday advent 2 nicholas class-3 white
+2050-12-07 wednesday advent 2 ambrose class-3 white
+2050-12-08 thursday advent 2 immaculate-conception-of-the-blessed-virgin-mary class-1 white
+2050-12-09 friday advent 2 ef-advent-2-friday class-3 violet
+2050-12-10 saturday advent 2 ef-advent-2-saturday class-3 violet +melchiades
+2050-12-11 sunday advent 3 ef-advent-sunday-3 class-2 violet +damasus-i
+2050-12-12 monday advent 3 ef-advent-3-monday class-3 violet
+2050-12-13 tuesday advent 3 lucy class-3 red
+2050-12-14 wednesday advent 3 ef-advent-ember-wed class-2 violet
+2050-12-15 thursday advent 3 ef-advent-3-thursday class-3 violet
+2050-12-16 friday advent 3 ef-advent-ember-fri class-2 violet +eusebius
+2050-12-17 saturday advent 3 ef-advent-ember-sat class-2 violet
+2050-12-18 sunday advent 4 ef-advent-sunday-4 class-2 violet
+2050-12-19 monday advent 4 ef-advent-4-monday class-3 violet
+2050-12-20 tuesday advent 4 ef-advent-4-tuesday class-3 violet
+2050-12-21 wednesday advent 4 thomas class-2 red
+2050-12-22 thursday advent 4 ef-advent-4-thursday class-3 violet
+2050-12-23 friday advent 4 ef-advent-4-friday class-3 violet
+2050-12-24 saturday advent 4 vigil-of-christmas class-1 violet
+2050-12-25 sunday christmas - ef-nativity class-1 white
+2050-12-26 monday christmas - stephen class-2 red
+2050-12-27 tuesday christmas - john-the-evangelist class-2 white
+2050-12-28 wednesday christmas - holy-innocents class-2 red
+2050-12-29 thursday christmas - ef-christmas-0-thursday class-4 white +thomas-becket
+2050-12-30 friday christmas - ef-christmas-0-friday class-4 white
+2050-12-31 saturday christmas - ef-christmas-0-saturday class-4 white +silvester
diff --git a/test/fixtures/missalemeum-ef-2026-2027.provenance b/test/fixtures/missalemeum-ef-2026-2027.provenance
new file mode 100644
index 0000000..576093d
--- /dev/null
+++ b/test/fixtures/missalemeum-ef-2026-2027.provenance
@@ -0,0 +1,39 @@
+Fixture: missalemeum-ef-2026-2027.txt
+Task: 2026-08-11-colitur-plan3-resolution-engine, Task 16 (oracle harness +
+data audit)
+
+Source: missalemeum.com (Divinum Officium data), archived by the sibling
+project ~/git/projects/lectio at:
+ commit d7da4b0 "sources: store the snapshot as one compressed archive"
+ path sources/snapshot.tar.gz, entries missalemeum/en/YYYY-MM-DD.json
+ (lectio/sources/README.md: "First archived 2026-07-29")
+
+SHA-256 of the extracted fixture: 718eff1a03fa09c3927ef18d19fe7921c2d4d7611890c22566058b81fd7cc5ea
+(same digest as [fixture_sha256] in test/test_oracle.ml, ASSERTED by that
+suite's own "fixture SHA-256 matches its provenance note" test -- this line
+documents the pin for a reader who never runs the suite; that test is what
+actually enforces it. Regenerate both together, deliberately, after
+re-running the exact command below -- never by copying a mismatch's actual
+value back in, which would defeat the pin's purpose.)
+
+Exact commands:
+ cd ~/git/projects/lectio && sh scripts/snapshot-sources.sh unpack
+ python3 ~/git/projects/colitur/tools/extract_missalemeum_oracle.py \
+ ~/git/projects/lectio/sources \
+ ~/git/projects/colitur/test/fixtures/missalemeum-ef-2026-2027.txt
+
+Output: one line per civil day, 2026-01-01 through 2027-12-31 inclusive
+(730 lines = 365 + 365, both non-leap years), pipe-separated:
+ date|rank|colors|title|tempora|commemorations|displaced|n_masses
+See tools/extract_missalemeum_oracle.py's own header for the exact field
+semantics (info.rank/colors/title/tempora/commemorations/displaced,
+verbatim English strings, not translated or slugified) and the two things
+verified during extraction, not merely assumed: no field collides with the
+"|"/";" delimiters, and all 4 multi-Mass days (info is an array on
+2026-11-02, 2026-12-25, 2027-11-02, 2027-12-25) carry an IDENTICAL info
+block (rank/colors/tempora/commemorations/displaced) across every Mass of
+the day, so taking entry[0] throughout (this fixture's own convention)
+loses nothing the comparator or a human auditor needs.
+
+Regenerate with the same commands if the missalemeum snapshot is refreshed
+and the fixture needs updating; do not hand-edit this file or the fixture.
diff --git a/test/fixtures/missalemeum-ef-2026-2027.txt b/test/fixtures/missalemeum-ef-2026-2027.txt
new file mode 100644
index 0000000..d000212
--- /dev/null
+++ b/test/fixtures/missalemeum-ef-2026-2027.txt
@@ -0,0 +1,730 @@
+2026-01-01|1|w|Octave Day of Christmas|-|-|-|1
+2026-01-02|4|w|Feria|-|-|-|1
+2026-01-03|4|w|II Mass of the B. V. M. – Vultum Tuum|-|-|-|1
+2026-01-04|2|w|Holy Name of Jesus|-|-|-|1
+2026-01-05|4|w|Feria|-|St. Telesphorus Pope and Martyr|-|1
+2026-01-06|1|w|Epiphany of the Lord|-|-|-|1
+2026-01-07|4|w|Feria|-|-|-|1
+2026-01-08|4|w|Feria|-|-|-|1
+2026-01-09|4|w|Feria|-|-|-|1
+2026-01-10|4|w|II Mass of the B. V. M. – Vultum Tuum|-|-|-|1
+2026-01-11|2|w|The Holy Family: Jesus, Mary & Joseph|-|-|St. Hyginus Pope and Martyr|1
+2026-01-12|4|w|Feria|Feria_II_after_Epiphany|-|-|1
+2026-01-13|2|w|Commemoration of the Baptism of the Lord|Feria_III_after_Epiphany|-|-|1
+2026-01-14|3|w|St. Hilary|Feria_IV_after_Epiphany|S. Felicis|-|1
+2026-01-15|3|w|St. Paul, the First Hermit|Feria_V_after_Epiphany|St. Maur, Abbot|-|1
+2026-01-16|3|r|St. Marcellus I|Feria_VI_after_Epiphany|-|-|1
+2026-01-17|3|w|St. Anthony|Saturday_after_Epiphany|-|-|1
+2026-01-18|2|g|II Sunday after Epiphany|-|-|St. Prisca|1
+2026-01-19|4|g|Feria|Feria_II_after_II_Sunday_after_Epiphany|Sts. Marius, Martha, Audifax & Abachum;St. Canute, Martyr|-|1
+2026-01-20|3|r|Sts. Fabian & Sebastian|Feria_III_after_II_Sunday_after_Epiphany|-|-|1
+2026-01-21|3|r|St. Agnes|Feria_IV_after_II_Sunday_after_Epiphany|-|-|1
+2026-01-22|3|r|Sts. Vincent & Anastasius|Feria_V_after_II_Sunday_after_Epiphany|-|-|1
+2026-01-23|3|w|St. Raymond of Peñafort|Feria_VI_after_II_Sunday_after_Epiphany|St. Emerentiana|-|1
+2026-01-24|3|r|St. Timothy|Saturday_after_II_Sunday_after_Epiphany|-|-|1
+2026-01-25|2|g|III Sunday after Epiphany|-|-|Conversion of St. Paul;St. Peter|1
+2026-01-26|3|r|St. Polycarp|Feria_II_after_III_Sunday_after_Epiphany|-|-|1
+2026-01-27|3|w|St. John Chrysostom|Feria_III_after_III_Sunday_after_Epiphany|-|-|1
+2026-01-28|3|w|St. Peter Nolasco|Feria_IV_after_III_Sunday_after_Epiphany|St. Agnes|-|1
+2026-01-29|3|w|St. Francis de Sales|Feria_V_after_III_Sunday_after_Epiphany|-|-|1
+2026-01-30|3|r|St. Martina|Feria_VI_after_III_Sunday_after_Epiphany|-|-|1
+2026-01-31|3|w|St. John Bosco|Saturday_after_III_Sunday_after_Epiphany|-|-|1
+2026-02-01|2|v|Septuagesima Sunday|-|-|St. Ignatius of Antioch|1
+2026-02-02|2|w|Purification of the Blessed Virgin Mary|Feria_II_after_Septuagesima|-|-|1
+2026-02-03|4|v|Feria|Feria_III_after_Septuagesima|St. Blaise|-|1
+2026-02-04|3|w|St. Andrew Corsini|Feria_IV_after_Septuagesima|-|-|1
+2026-02-05|3|r|St. Agatha|Feria_V_after_Septuagesima|-|-|1
+2026-02-06|3|w|St. Titus|Feria_VI_after_Septuagesima|St. Dorothy|-|1
+2026-02-07|3|w|St. Romuald|Saturday_after_Septuagesima|-|-|1
+2026-02-08|2|v|Sexagesima Sunday|-|-|St. John of Matha|1
+2026-02-09|3|w|St. Cyril of Alexandria|Feria_II_after_Sexagesima|St. Appollonia|-|1
+2026-02-10|3|w|St. Scholastica|Feria_III_after_Sexagesimæ|-|-|1
+2026-02-11|3|w|Our Lady of Lourdes|Feria_IV_after_Sexagesimæ|-|-|1
+2026-02-12|3|w|Seven Holy Servite Founders|Feria_V_after_Sexagesimæ|-|-|1
+2026-02-13|4|v|Feria|Feria_VI_after_Sexagesimæ|-|-|1
+2026-02-14|4|w|III Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_Sexagesimæ|St. Valentine|-|1
+2026-02-15|2|v|Quinquagesima Sunday|-|-|Sts. Faustinus & Jovita|1
+2026-02-16|4|v|Feria|Feria_II_after_Quinquagesima|-|-|1
+2026-02-17|4|v|Feria|Feria_III_after_Quinquagesima|-|-|1
+2026-02-18|1|v|Ash Wednesday|-|-|St. Simeon|1
+2026-02-19|3|v|Feria V after Ash Wednesday|-|-|-|1
+2026-02-20|3|v|Feria VI after Ash Wednesday|-|-|-|1
+2026-02-21|3|v|Saturday after Ash Wednesday|-|-|-|1
+2026-02-22|1|v|I Sunday of Lent|-|-|Chair of St. Peter;St. Paul|1
+2026-02-23|3|v|Feria II after the I Sunday of Lent|-|St. Peter Damien|-|1
+2026-02-24|2|r|St. Matthias|Feria_III_after_the_I_Sunday_of_Lent|Feria III after the I Sunday of Lent|-|1
+2026-02-25|2|v|Ember Wednesday of Lent|-|-|-|1
+2026-02-26|3|v|Feria V after the I Sunday of Lent|-|-|-|1
+2026-02-27|2|v|Ember Friday of Lent|-|St. Gabriel of Our Lady of Sorrows|-|1
+2026-02-28|2|v|Ember Saturday of Lent|-|-|-|1
+2026-03-01|1|v|II Sunday of Lent|-|-|-|1
+2026-03-02|3|v|Feria II after the II Sunday of Lent|-|-|-|1
+2026-03-03|3|v|Feria III after the II Sunday of Lent|-|-|-|1
+2026-03-04|3|v|Feria IV after the II Sunday of Lent|-|St. Casimir;St. Lucius|-|1
+2026-03-05|3|v|Feria V after the II Sunday of Lent|-|-|-|1
+2026-03-06|3|v|Feria VI after the II Sunday of Lent|-|Sts. Felicitas & Perpetua|-|1
+2026-03-07|3|v|Saturday after the II Sunday of Lent|-|St. Thomas Aquinas|-|1
+2026-03-08|1|v|III Sunday of Lent|-|-|St. John of God|1
+2026-03-09|3|v|Feria II after the III Sunday of Lent|-|St. Frances Rome|-|1
+2026-03-10|3|v|Feria III after the III Sunday of Lent|-|Forty Holy Martyrs of Sebaste|-|1
+2026-03-11|3|v|Feria IV after the III Sunday of Lent|-|-|-|1
+2026-03-12|3|v|Feria V after the III Sunday of Lent|-|St. Gregory the Great|-|1
+2026-03-13|3|v|Feria VI after the III Sunday of Lent|-|-|-|1
+2026-03-14|3|v|Saturday after the III Sunday of Lent|-|-|-|1
+2026-03-15|1|pv|IV Sunday of Lent|-|-|-|1
+2026-03-16|3|v|Feria II after the IV Sunday of Lent|-|-|-|1
+2026-03-17|3|v|Feria III after the IV Sunday of Lent|-|St. Patrick|-|1
+2026-03-18|3|v|Feria IV after the IV Sunday of Lent|-|St. Cyril of Jerusalem|-|1
+2026-03-19|1|w|St. Joseph, Spouse of the Bl. Virgin Mary|Feria_V_after_the_IV_Sunday_of_Lent|Feria V after the IV Sunday of Lent|-|1
+2026-03-20|3|v|Feria VI after the IV Sunday of Lent|-|-|-|1
+2026-03-21|3|v|Saturday after the IV Sunday of Lent|-|St. Benedict|-|1
+2026-03-22|1|v|Passion Sunday|-|-|-|1
+2026-03-23|3|v|Feria II of Passion Week|-|-|-|1
+2026-03-24|3|v|Feria III of Passion Week|-|St. Gabriel the Archangel|-|1
+2026-03-25|1|w|Annunciation of the Blessed Virgin Mary|Feria_IV_of_Passion_Week|Feria IV of Passion Week|-|1
+2026-03-26|3|v|Feria V of Passion Week|-|-|-|1
+2026-03-27|3|v|Feria VI of Passion Week|-|For Our Lady of the Seven Sorrows|St. John Damascene|1
+2026-03-28|3|v|Saturday of Passion Week|-|St. John of Capistrano|-|1
+2026-03-29|1|rv|Palm Sunday|-|-|-|1
+2026-03-30|1|v|Feria II of Holy Week|-|-|-|1
+2026-03-31|1|v|Feria III of Holy Week|-|-|-|1
+2026-04-01|1|v|Feria IV of Holy Week|-|-|-|1
+2026-04-02|1|w|Holy Thursday|-|-|St. Francis of Paola|1
+2026-04-03|1|bv|Good Friday|-|-|-|1
+2026-04-04|1|vw|Holy Saturday|-|-|St. Isidore of Seville|1
+2026-04-05|1|w|Easter Sunday|-|-|St. Vincent Ferrer|1
+2026-04-06|1|w|Monday in the Octave of Easter|-|-|-|1
+2026-04-07|1|w|Tuesday in the Octave of Easter|-|-|-|1
+2026-04-08|1|w|Wednesday in the Octave of Easter|-|-|-|1
+2026-04-09|1|w|Thursday in the Octave of Easter|-|-|-|1
+2026-04-10|1|w|Friday in the Octave of Easter|-|-|-|1
+2026-04-11|1|w|Saturday in the Octave of Easter|-|-|St. Leo the Great|1
+2026-04-12|1|w|Low Sunday|-|-|-|1
+2026-04-13|3|r|St. Hermenegild|Monday_after_I_Sunday_after_Easter|-|-|1
+2026-04-14|3|r|St. Justin|Tuesday_after_I_Sunday_after_Easter|Sts. Tiburtius, Valerian et Maximus, Martyrs|-|1
+2026-04-15|4|w|Feria|Wednesday_after_I_Sunday_after_Easter|-|-|1
+2026-04-16|4|w|Feria|Thursday_after_I_Sunday_after_Easter|-|-|1
+2026-04-17|4|w|Feria|Friday_after_I_Sunday_after_Easter|St. Anicetus|-|1
+2026-04-18|4|w|IV Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_I_Sunday_after_Easter|-|-|1
+2026-04-19|2|w|II Sunday after Easter|-|-|-|1
+2026-04-20|4|w|Feria|Monday_after_II_Sunday_after_Easter|-|-|1
+2026-04-21|3|w|St. Anselm|Tuesday_after_II_Sunday_after_Easter|-|-|1
+2026-04-22|3|r|Sts. Soter & Caius|Wednesday_after_II_Sunday_after_Easter|-|-|1
+2026-04-23|4|w|Feria|Thursday_after_II_Sunday_after_Easter|St. George|-|1
+2026-04-24|3|r|St. Fidelis of Sigmaringen|Friday_after_II_Sunday_after_Easter|-|-|1
+2026-04-25|2|r|St. Mark|Saturday_after_II_Sunday_after_Easter|Pro rogationibus|-|1
+2026-04-26|2|w|III Sunday after Easter|-|-|Sts. Cletus & Marcellinus|1
+2026-04-27|3|w|St. Peter Canisius|Monday_after_III_Sunday_after_Easter|-|-|1
+2026-04-28|3|w|St. Paul of the Cross|Tuesday_after_III_Sunday_after_Easter|-|-|1
+2026-04-29|3|r|St. Peter of Verona|Wednesday_after_III_Sunday_after_Easter|-|-|1
+2026-04-30|3|w|St. Catherine of Siena|Thursday_after_III_Sunday_after_Easter|-|-|1
+2026-05-01|1|w|St. Joseph the Workman|Friday_after_III_Sunday_after_Easter|-|-|1
+2026-05-02|3|w|St. Athanasius|Saturday_after_III_Sunday_after_Easter|-|-|1
+2026-05-03|2|w|IV Sunday after Easter|-|-|Sts. Alexander & Companions|1
+2026-05-04|3|w|St. Monica|Monday_after_IV_Sunday_after_Easter|-|-|1
+2026-05-05|3|w|St. Pius V|Tuesday_after_IV_Sunday_after_Easter|-|-|1
+2026-05-06|4|w|Feria|Wednesday_after_IV_Sunday_after_Easter|-|-|1
+2026-05-07|3|r|St. Stanislaus|Thursday_after_IV_Sunday_after_Easter|-|-|1
+2026-05-08|4|w|Feria|Friday_after_IV_Sunday_after_Easter|-|-|1
+2026-05-09|3|w|St. Gregory of Nazianzen|Saturday_after_IV_Sunday_after_Easter|-|-|1
+2026-05-10|2|w|V Sunday after Easter|-|-|St. Antoninus;St. Gordiano and Epimacho|1
+2026-05-11|2|r|Sts. Philip & James|The_Minor_Litanies_–_Rogations|-|-|1
+2026-05-12|3|r|Sts. Nereus, Achilleus, Domitilla, & Pancras|The_Minor_Litanies_–_Rogations|-|-|1
+2026-05-13|2|w|Vigil of the Ascension|-|St. Robert Bellarmine|-|1
+2026-05-14|1|w|Ascension of the Lord|-|-|St. Boniface|1
+2026-05-15|3|w|St. John Baptist de la Salle|Feria_VI_after_the_Ascension|-|-|1
+2026-05-16|4|w|IV Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_the_Ascension|St. Ubaldus|-|1
+2026-05-17|2|w|Sunday after the Ascension|-|-|St. Paschal Baylon|1
+2026-05-18|3|r|St. Venantius|Feria_II_after_the_Ascension|-|-|1
+2026-05-19|3|w|St. Peter Celestine|Feria_III_after_the_Ascension|St. Pudentiana Virginis|-|1
+2026-05-20|3|w|St. Bernardine of Siena|Feria_IV_after_the_Ascension|-|-|1
+2026-05-21|4|w|Feria|Feria_V_after_the_Ascension|-|-|1
+2026-05-22|4|w|Feria|Feria_VI_after_the_Ascension|-|-|1
+2026-05-23|1|r|Saturday after the Ascension|-|-|-|1
+2026-05-24|1|r|Pentecost Sunday|-|-|-|1
+2026-05-25|1|r|Monday after Pentecost|-|-|St. Gregory VII;St. Urban, Pope and Martyr|1
+2026-05-26|1|r|Tuesday after Pentecost|-|-|St. Philip Neri;S. Eleutherius|1
+2026-05-27|1|r|Ember Wednesday of Pentecost|-|-|St. Bede the Venerable;St. John I|1
+2026-05-28|1|r|Thursday after Pentecost|-|-|St. Augustine of Canterbury|1
+2026-05-29|1|r|Ember Friday of Pentecost|-|-|St. Mary Magdalene de Pazzi|1
+2026-05-30|1|r|Ember Saturday of Pentecost|-|-|St. Felix I|1
+2026-05-31|1|w|Trinity Sunday|-|-|Queenship of the Blessed Virgin Mary;St. Petronilla|1
+2026-06-01|3|w|St. Angela Merici|Feria_II_after_I_Sunday_after_Pentecost|-|-|1
+2026-06-02|4|g|Feria|Feria_III_after_I_Sunday_after_Pentecost|Sts. Marcellinus, Peter, & Erasmus|-|1
+2026-06-03|4|g|Feria|Feria_IV_after_I_Sunday_after_Pentecost|-|-|1
+2026-06-04|1|w|Corpus Christi|-|-|St. Francis Caracciolo|1
+2026-06-05|3|r|St. Boniface|Feria_V_after_I_Sunday_after_Pentecost|-|-|1
+2026-06-06|3|w|St. Norbert|Saturday_after_I_Sunday_after_Pentecost|-|-|1
+2026-06-07|2|g|II Sunday after Pentecost|-|-|-|1
+2026-06-08|4|g|Feria|Feria_II_after_II_Sunday_after_Pentecost|-|-|1
+2026-06-09|4|g|Feria|Feria_III_after_II_Sunday_after_Pentecost|Sts. Primus & Felicianus|-|1
+2026-06-10|3|w|St. Margaret of Scotland|Feria_IV_after_II_Sunday_after_Pentecost|-|-|1
+2026-06-11|3|r|St. Barnabas|Feria_V_after_II_Sunday_after_Pentecost|-|-|1
+2026-06-12|1|w|Sacred Heart of Jesus|-|-|St. John of San Fecundo;St. Basilidus|1
+2026-06-13|3|w|St. Anthony of Padua|Saturday_after_II_Sunday_after_Pentecost|-|-|1
+2026-06-14|2|g|III Sunday after Pentecost|-|-|St. Basil the Great|1
+2026-06-15|4|g|Feria|Feria_II_after_III_Sunday_after_Pentecost|St. Vitus|-|1
+2026-06-16|4|g|Feria|Feria_III_after_III_Sunday_after_Pentecost|-|-|1
+2026-06-17|3|w|St. Gregory Barbarigo|Feria_IV_after_III_Sunday_after_Pentecost|-|-|1
+2026-06-18|3|r|St. Ephrem of Syria|Feria_V_after_III_Sunday_after_Pentecost|Ss. Marcus and Marcellianus|-|1
+2026-06-19|3|r|St. Julia of Falconieri|Feria_VI_after_III_Sunday_after_Pentecost|Sts. Gervasius and Protasius|-|1
+2026-06-20|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_III_Sunday_after_Pentecost|St. Silverius|-|1
+2026-06-21|2|g|IV Sunday after Pentecost|-|-|St. Aloysius Gongzaga|1
+2026-06-22|3|w|St. Paulinus of Nola|Feria_II_after_IV_Sunday_after_Pentecost|-|-|1
+2026-06-23|2|v|Vigil of the Nativity of St. John the Baptist|Feria_III_after_IV_Sunday_after_Pentecost|-|-|1
+2026-06-24|1|w|Nativity of St. John the Baptist|Feria_IV_after_IV_Sunday_after_Pentecost|-|-|1
+2026-06-25|3|w|St. William|Feria_V_after_IV_Sunday_after_Pentecost|-|-|1
+2026-06-26|3|r|Sts. John & Paul|Feria_VI_after_IV_Sunday_after_Pentecost|-|-|1
+2026-06-27|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_IV_Sunday_after_Pentecost|-|-|1
+2026-06-28|2|g|V Sunday after Pentecost|-|Vigil of Sts. Peter & Paul|-|1
+2026-06-29|1|r|Sts. Peter & Paul|Feria_II_after_V_Sunday_after_Pentecost|-|-|1
+2026-06-30|3|r|In Commemoratione Sancti Pauli Apostoli|Feria_III_after_V_Sunday_after_Pentecost|-|-|1
+2026-07-01|1|r|The Precious Blood of Our Lord Jesus Christ|Feria_IV_after_V_Sunday_after_Pentecost|-|-|1
+2026-07-02|2|w|Visitation of the Blessed Virgin Mary|Feria_V_after_V_Sunday_after_Pentecost|SS. Processus and Martinian|-|1
+2026-07-03|3|r|St. Irenaeus|Feria_VI_after_V_Sunday_after_Pentecost|-|-|1
+2026-07-04|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_V_Sunday_after_Pentecost|-|-|1
+2026-07-05|2|g|VI Sunday after Pentecost|-|-|St. Anthony Mary Zaccariah|1
+2026-07-06|4|g|Feria|Feria_II_after_VI_Sunday_after_Pentecost|-|-|1
+2026-07-07|3|w|Sts. Cyril & Methodius|Feria_III_after_VI_Sunday_after_Pentecost|-|-|1
+2026-07-08|3|w|St. Elizabeth of Portugal|Feria_IV_after_VI_Sunday_after_Pentecost|-|-|1
+2026-07-09|4|g|Feria|Feria_V_after_VI_Sunday_after_Pentecost|-|-|1
+2026-07-10|3|r|Seven Holy Brothers and Sts. Rufina & Secunda|Feria_VI_after_VI_Sunday_after_Pentecost|-|-|1
+2026-07-11|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_VI_Sunday_after_Pentecost|St. Pius I|-|1
+2026-07-12|2|g|VII Sunday after Pentecost|-|-|St. John Gualbert;Ss. Naboris et Felicis|1
+2026-07-13|4|g|Feria|Feria_II_after_VII_Sunday_after_Pentecost|-|-|1
+2026-07-14|3|w|St. Bonaventure|Feria_III_after_VII_Sunday_after_Pentecost|-|-|1
+2026-07-15|3|w|St. Henry the Emperor|Feria_IV_after_VII_Sunday_after_Pentecost|-|-|1
+2026-07-16|4|g|Feria|Feria_V_after_VII_Sunday_after_Pentecost|Our Lady of Mt. Carmel|-|1
+2026-07-17|4|g|Feria|Feria_VI_after_VII_Sunday_after_Pentecost|St. Alexis|-|1
+2026-07-18|3|r|Camillus de Lellis|Saturday_after_VII_Sunday_after_Pentecost|Ss. Symphorosa and sons|-|1
+2026-07-19|2|g|VIII Sunday after Pentecost|-|-|St. Vincent de Paul|1
+2026-07-20|3|r|St. Jerome Emiliani|Feria_II_after_VIII_Sunday_after_Pentecost|St. Margaret|-|1
+2026-07-21|3|w|St. Laurence of Brindisi|Feria_III_after_VIII_Sunday_after_Pentecost|St. Praxedis Virginis|-|1
+2026-07-22|3|w|St. Mary Magdalene|Feria_IV_after_VIII_Sunday_after_Pentecost|-|-|1
+2026-07-23|3|w|St. Apollinaris|Feria_V_after_VIII_Sunday_after_Pentecost|S. Liborii|-|1
+2026-07-24|4|g|Feria|Feria_VI_after_VIII_Sunday_after_Pentecost|St. Christina|-|1
+2026-07-25|2|r|St. James the Greater|Saturday_after_VIII_Sunday_after_Pentecost|St. Christopher|-|1
+2026-07-26|2|g|IX Sunday after Pentecost|-|St. Anne, Mother of the Blessed Virgin|-|1
+2026-07-27|4|g|Feria|Feria_II_after_IX_Sunday_after_Pentecost|St. Pantaleon|-|1
+2026-07-28|3|r|Sts. Nazarius & Celsus, St. Victor I & St. Innocent I|Feria_III_after_IX_Sunday_after_Pentecost|-|-|1
+2026-07-29|3|r|St. Martha|Feria_IV_after_IX_Sunday_after_Pentecost|Ss. Felicis, Simplicii, Faustini et Beatricis|-|1
+2026-07-30|4|g|Feria|Feria_V_after_IX_Sunday_after_Pentecost|Sts. Abdon & Sennen|-|1
+2026-07-31|3|w|St. Ignatius Loyola|Feria_VI_after_IX_Sunday_after_Pentecost|-|-|1
+2026-08-01|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_IX_Sunday_after_Pentecost|Holy Machabees|-|1
+2026-08-02|2|g|X Sunday after Pentecost|-|-|St. Alphonsus Liguori;St. Stephen I, Pope and Martyr|1
+2026-08-03|4|g|Feria|Feria_II_after_X_Sunday_after_Pentecost|-|-|1
+2026-08-04|3|w|St. Dominic|Feria_III_after_X_Sunday_after_Pentecost|-|-|1
+2026-08-05|3|w|Dedication of the Basilica of St. Mary Major|Feria_IV_after_X_Sunday_after_Pentecost|-|-|1
+2026-08-06|2|w|Transfiguration of Our Lord|Feria_V_after_X_Sunday_after_Pentecost|Pope Sixtus II, Felicissimus and Agapitus, Martyrs|-|1
+2026-08-07|3|w|St. Cajetan|Feria_VI_after_X_Sunday_after_Pentecost|St. Donatus|-|1
+2026-08-08|3|w|St. John Mary Vianney|Saturday_after_X_Sunday_after_Pentecost|Ss. Cyriacus, Largus and Smaragdus, Martyrs|-|1
+2026-08-09|3|r|Vigil of St. Lawrence|XI_Sunday_after_Pentecost|St. Romanus|-|1
+2026-08-10|2|r|St. Lawrence|Feria_II_after_XI_Sunday_after_Pentecost|-|-|1
+2026-08-11|4|g|Feria|Feria_III_after_XI_Sunday_after_Pentecost|Sts. Tiburtius & Susanna|-|1
+2026-08-12|3|w|St. Clare|Feria_IV_after_XI_Sunday_after_Pentecost|-|-|1
+2026-08-13|4|g|Feria|Feria_V_after_XI_Sunday_after_Pentecost|Sts. Hippolytus & Cassian|-|1
+2026-08-14|2|w|Vigil of the Assumption|Feria_VI_after_XI_Sunday_after_Pentecost|St. Eusebius|-|1
+2026-08-15|1|w|Assumption of the Blessed Virgin Mary|Saturday_after_XI_Sunday_after_Pentecost|-|-|1
+2026-08-16|2|g|XII Sunday after Pentecost|-|St. Joachim, Father of the Blessed Virgin|-|1
+2026-08-17|3|w|St. Hyacinth|Feria_II_after_XII_Sunday_after_Pentecost|-|-|1
+2026-08-18|4|g|Feria|Feria_III_after_XII_Sunday_after_Pentecost|St. Agapitus|-|1
+2026-08-19|3|w|St. John Eudes|Feria_IV_after_XII_Sunday_after_Pentecost|-|-|1
+2026-08-20|3|w|St. Bernard of Clairvaux|Feria_V_after_XII_Sunday_after_Pentecost|-|-|1
+2026-08-21|3|w|St. Jane Frances de Chantal|Feria_VI_after_XII_Sunday_after_Pentecost|-|-|1
+2026-08-22|2|w|Immaculate Heart of Mary|Saturday_after_XII_Sunday_after_Pentecost|Sts. Timothy, Hippolytus and Symphorianus, Martyrs|-|1
+2026-08-23|2|g|XIII Sunday after Pentecost|-|-|St. Philip Benizi|1
+2026-08-24|2|r|St. Bartholomew|Feria_II_after_XIII_Sunday_after_Pentecost|-|-|1
+2026-08-25|3|w|St. Louis IX|Feria_III_after_XIII_Sunday_after_Pentecost|-|-|1
+2026-08-26|4|g|Feria|Feria_IV_after_XIII_Sunday_after_Pentecost|St. Zephyrinus|-|1
+2026-08-27|3|w|St. Joseph Calasance|Feria_V_after_XIII_Sunday_after_Pentecost|-|-|1
+2026-08-28|3|r|St. Augustine|Feria_VI_after_XIII_Sunday_after_Pentecost|St. Hermes|-|1
+2026-08-29|3|r|Beheading of St. John the Baptist|Saturday_after_XIII_Sunday_after_Pentecost|St. Sabina|-|1
+2026-08-30|2|g|XIV Sunday after Pentecost|-|-|St. Rose of Lima;Sts. Felix and Adauctus|1
+2026-08-31|3|w|St. Raymond Nonnatus|Feria_II_after_XIV_Sunday_after_Pentecost|-|-|1
+2026-09-01|4|g|Feria|Feria_III_after_XIV_Sunday_after_Pentecost|St. Giles;Twelve Holy Brothers, Martyrs|-|1
+2026-09-02|3|w|St. Stephen of Hungary|Feria_IV_after_XIV_Sunday_after_Pentecost|-|-|1
+2026-09-03|3|w|St. Pius X|Feria_V_after_XIV_Sunday_after_Pentecost|-|-|1
+2026-09-04|4|g|Feria|Feria_VI_after_XIV_Sunday_after_Pentecost|-|-|1
+2026-09-05|3|w|St. Lawrence Justinian|Saturday_after_XIV_Sunday_after_Pentecost|-|-|1
+2026-09-06|2|g|XV Sunday after Pentecost|-|-|-|1
+2026-09-07|4|g|Feria|Feria_II_after_XV_Sunday_after_Pentecost|-|-|1
+2026-09-08|2|w|Nativity of the Blessed Virgin Mary|Feria_III_after_XV_Sunday_after_Pentecost|S. Hadriani|-|1
+2026-09-09|4|g|Feria|Feria_IV_after_XV_Sunday_after_Pentecost|St. Gorgonius|-|1
+2026-09-10|3|w|St. Nicholas of Tolentino|Feria_V_after_XV_Sunday_after_Pentecost|-|-|1
+2026-09-11|4|g|Feria|Feria_VI_after_XV_Sunday_after_Pentecost|Sts. Protus & Hyacinth|-|1
+2026-09-12|3|w|Most Holy Name of Mary|Saturday_after_XV_Sunday_after_Pentecost|-|-|1
+2026-09-13|2|g|XVI Sunday after Pentecost|-|-|-|1
+2026-09-14|2|r|Exaltation of the Holy Cross|Feria_II_after_XVI_Sunday_after_Pentecost|-|-|1
+2026-09-15|2|w|Seven Sorrows of the Blessed Virgin Mary|Feria_III_after_XVI_Sunday_after_Pentecost|S. Nicomedes|-|1
+2026-09-16|3|r|Sts. Cornelius & Cyprian|Feria_IV_after_XVI_Sunday_after_Pentecost|Sts. Euphemia, Lucy and Geminianus|-|1
+2026-09-17|4|g|Feria|Feria_V_after_XVI_Sunday_after_Pentecost|Stigmata of St. Francis|-|1
+2026-09-18|3|w|St. Joseph of Cupertino|Feria_VI_after_XVI_Sunday_after_Pentecost|-|-|1
+2026-09-19|3|r|St. Januarius & Companions|Saturday_after_XVI_Sunday_after_Pentecost|-|-|1
+2026-09-20|2|g|XVII Sunday after Pentecost|-|-|Sts. Eustace & Companions|1
+2026-09-21|2|r|St. Matthew|Feria_II_after_XVII_Sunday_after_Pentecost|-|-|1
+2026-09-22|3|w|St. Thomas of Villanova|Feria_III_after_XVII_Sunday_after_Pentecost|St. Maurice and Companions, Martyrs|-|1
+2026-09-23|2|v|Ember Wednesday of September|-|St. Linus|St. Thecla|1
+2026-09-24|4|g|Feria|Feria_V_after_XVII_Sunday_after_Pentecost|Our Lady of Ransom|-|1
+2026-09-25|2|v|Ember Friday of September|-|-|-|1
+2026-09-26|2|v|Ember Saturday of September|-|Sts. Cyprian & Justina|-|1
+2026-09-27|2|g|XVIII Sunday after Pentecost|-|-|Sts. Cosmas & Damian|1
+2026-09-28|3|r|St. Wenceslaus|Feria_II_after_XVIII_Sunday_after_Pentecost|-|-|1
+2026-09-29|1|w|Dedication of St. Michael the Archangel|Feria_III_after_XVIII_Sunday_after_Pentecost|-|-|1
+2026-09-30|3|w|St. Jerome|Feria_IV_after_XVIII_Sunday_after_Pentecost|-|-|1
+2026-10-01|4|g|Feria|Feria_V_after_XVIII_Sunday_after_Pentecost|St. Remigius|-|1
+2026-10-02|3|w|Holy Guardian Angels|Feria_VI_after_XVIII_Sunday_after_Pentecost|-|-|1
+2026-10-03|3|w|St. Theresa of the Infant Jesus|Saturday_after_XVIII_Sunday_after_Pentecost|-|-|1
+2026-10-04|2|g|XIX Sunday after Pentecost|-|-|St. Francis of Assisi|1
+2026-10-05|4|g|Feria|Feria_II_after_XIX_Sunday_after_Pentecost|St. Placid & Companions|-|1
+2026-10-06|3|w|St. Bruno|Feria_III_after_XIX_Sunday_after_Pentecost|-|-|1
+2026-10-07|2|w|Our Lady of the Rosary|Feria_IV_after_XIX_Sunday_after_Pentecost|St. Mark I|-|1
+2026-10-08|3|w|St. Bridget of Sweden|Feria_V_after_XIX_Sunday_after_Pentecost|Ss. Sergio, Baccho, Marcello and Apulejo Martyrs|-|1
+2026-10-09|3|w|St. John Leonardi|Feria_VI_after_XIX_Sunday_after_Pentecost|St. Dionysius and companions|-|1
+2026-10-10|3|w|St. Francis Borgia|Saturday_after_XIX_Sunday_after_Pentecost|-|-|1
+2026-10-11|2|g|XX Sunday after Pentecost|-|Maternity of the Blessed Virgin Mary|-|1
+2026-10-12|4|g|Feria|Feria_II_after_XX_Sunday_after_Pentecost|-|-|1
+2026-10-13|3|w|St. Edward|Feria_III_after_XX_Sunday_after_Pentecost|-|-|1
+2026-10-14|3|r|St. Callistus I|Feria_IV_after_XX_Sunday_after_Pentecost|-|-|1
+2026-10-15|3|w|St. Teresa of Avila|Feria_V_after_XX_Sunday_after_Pentecost|-|-|1
+2026-10-16|3|w|St. Hedwig|Feria_VI_after_XX_Sunday_after_Pentecost|-|-|1
+2026-10-17|3|w|St. Margaret Mary Alacoque|Saturday_after_XX_Sunday_after_Pentecost|-|-|1
+2026-10-18|2|g|XXI Sunday after Pentecost|-|St. Luke the Evangelist|-|1
+2026-10-19|3|w|St. Peter of Alcantara|Feria_II_after_XXI_Sunday_after_Pentecost|-|-|1
+2026-10-20|3|w|St. John Cantius|Feria_III_after_XXI_Sunday_after_Pentecost|-|-|1
+2026-10-21|4|g|Feria|Feria_IV_after_XXI_Sunday_after_Pentecost|St. Hilarion;St. Ursula and Companions|-|1
+2026-10-22|4|g|Feria|Feria_V_after_XXI_Sunday_after_Pentecost|-|-|1
+2026-10-23|3|w|St. Anthony Mary Claret|Feria_VI_after_XXI_Sunday_after_Pentecost|-|-|1
+2026-10-24|3|w|St. Raphael the Archangel|Saturday_after_XXI_Sunday_after_Pentecost|-|-|1
+2026-10-25|1|w|Christ the King|XXII_Sunday_after_Pentecost|-|Sts. Chrysanthus & Daria|1
+2026-10-26|4|g|Feria|Feria_II_after_XXII_Sunday_after_Pentecost|St. Evaristus|-|1
+2026-10-27|4|g|Feria|Feria_III_after_XXII_Sunday_after_Pentecost|-|-|1
+2026-10-28|2|r|Sts. Simon & Jude|Feria_IV_after_XXII_Sunday_after_Pentecost|-|-|1
+2026-10-29|4|g|Feria|Feria_V_after_XXII_Sunday_after_Pentecost|-|-|1
+2026-10-30|4|g|Feria|Feria_VI_after_XXII_Sunday_after_Pentecost|-|-|1
+2026-10-31|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_XXII_Sunday_after_Pentecost|-|-|1
+2026-11-01|1|w|All Saints|XXIII_Sunday_after_Pentecost|-|-|1
+2026-11-02|1|b|Commemoration of All Souls|Feria_II_after_XXIII_Sunday_after_Pentecost|-|-|3
+2026-11-03|4|g|Feria|Feria_III_after_XXIII_Sunday_after_Pentecost|-|-|1
+2026-11-04|3|w|St. Charles Borromeo|Feria_IV_after_XXIII_Sunday_after_Pentecost|Sts. Vitalis and Agricola, Martyrs|-|1
+2026-11-05|4|g|Feria|Feria_V_after_XXIII_Sunday_after_Pentecost|-|-|1
+2026-11-06|4|g|Feria|Feria_VI_after_XXIII_Sunday_after_Pentecost|-|-|1
+2026-11-07|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_XXIII_Sunday_after_Pentecost|-|-|1
+2026-11-08|2|g|V Sunday after Epiphany|-|-|Four Holy Crowned Martyrs|1
+2026-11-09|2|w|Dedication of the Archbasilica of Our Holy Savior|Feria_II_after_V_Sunday_after_Epiphany|St. Theodore|-|1
+2026-11-10|3|w|St. Andrew Avellino|Feria_III_after_V_Sunday_after_Epiphany|Sts. Tryphonis, Respicii, et Nymphae|-|1
+2026-11-11|3|w|St. Martin of Tours|Feria_IV_after_V_Sunday_after_Epiphany|St. Menna|-|1
+2026-11-12|3|r|St. Martin I|Feria_V_after_V_Sunday_after_Epiphany|-|-|1
+2026-11-13|4|g|Feria|Feria_VI_after_V_Sunday_after_Epiphany|St. Didacus|-|1
+2026-11-14|3|w|St. Josaphat|Saturday_after_V_Sunday_after_Epiphany|-|-|1
+2026-11-15|2|g|VI Sunday after Epiphany|-|-|St. Albert the Great|1
+2026-11-16|3|w|St. Gertrude the Great|Feria_II_after_VI_Sunday_after_Epiphany|-|-|1
+2026-11-17|3|w|St. Gregory the Wonderworker|Feria_III_after_VI_Sunday_after_Epiphany|-|-|1
+2026-11-18|3|w|Dedication of the Basilicas of Sts. Peter & Paul|Feria_IV_after_VI_Sunday_after_Epiphany|-|-|1
+2026-11-19|3|w|St. Elizabeth of Hungary|Feria_V_after_VI_Sunday_after_Epiphany|St. Pontian|-|1
+2026-11-20|3|w|St. Felix of Valois|Feria_VI_after_VI_Sunday_after_Epiphany|-|-|1
+2026-11-21|3|w|Presentation of the Blessed Virgin Mary|Saturday_after_VI_Sunday_after_Epiphany|-|-|1
+2026-11-22|2|g|XXIV Sunday after Pentecost|-|-|St. Cecilia|1
+2026-11-23|3|r|St. Clement I|Feria_II_after_XXIV_Sunday_after_Pentecost|St. Felicity|-|1
+2026-11-24|3|w|St. John of the Cross|Feria_III_after_XXIV_Sunday_after_Pentecost|St. Chrysogonus|-|1
+2026-11-25|3|r|St. Catherine of Alexandria|Feria_IV_after_XXIV_Sunday_after_Pentecost|-|-|1
+2026-11-26|3|w|St. Sylvester|Feria_V_after_XXIV_Sunday_after_Pentecost|St. Peter of Alexandria|-|1
+2026-11-27|4|g|Feria|Feria_VI_after_XXIV_Sunday_after_Pentecost|-|-|1
+2026-11-28|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_XXIV_Sunday_after_Pentecost|-|-|1
+2026-11-29|1|v|I Sunday of Advent|-|-|St. Saturninus|1
+2026-11-30|2|r|St. Andrew|Feria_II_after_I_Sunday_of_Advent|-|-|1
+2026-12-01|3|v|Feria III after I Sunday of Advent|-|-|-|1
+2026-12-02|3|r|St. Vivian|Feria_IV_after_I_Sunday_of_Advent|Feria IV after I Sunday of Advent|-|1
+2026-12-03|3|w|St. Francis Xavier|Feria_V_after_I_Sunday_of_Advent|Feria V after I Sunday of Advent|-|1
+2026-12-04|3|w|St. Peter Chrysologus|Feria_VI_after_I_Sunday_of_Advent|Feria VI after I Sunday of Advent|-|1
+2026-12-05|3|v|Sabbato after I Sunday of Advent|-|St. Sabbas|-|1
+2026-12-06|1|v|II Sunday of Advent|-|-|St. Nicholas|1
+2026-12-07|3|w|St. Ambrose|Feria_II_after_II_Sunday_of_Advent|Feria II after II Sunday of Advent|-|1
+2026-12-08|1|w|Immaculate Conception of the Blessed Virgin Mary|Feria_III_after_II_Sunday_of_Advent|-|-|1
+2026-12-09|3|v|Feria IV after II Sunday of Advent|-|-|-|1
+2026-12-10|3|v|Feria V after II Sunday of Advent|-|St. Melchiades|-|1
+2026-12-11|3|w|St. Damasus I|Feria_VI_after_II_Sunday_of_Advent|Feria VI after II Sunday of Advent|-|1
+2026-12-12|3|v|Sabbato after II Sunday of Advent|-|-|-|1
+2026-12-13|1|pv|III Sunday of Advent|-|-|St. Lucy|1
+2026-12-14|3|pv|Feria II after III Sunday of Advent|-|-|-|1
+2026-12-15|3|pv|Feria III after III Sunday of Advent|-|-|-|1
+2026-12-16|2|v|Ember Wednesday of Advent|-|St. Eusebius|-|1
+2026-12-17|2|pv|Feria V after III Sunday of Advent|-|-|-|1
+2026-12-18|2|v|Ember Friday of Advent|-|-|-|1
+2026-12-19|2|v|Ember Saturday of Advent|-|-|-|1
+2026-12-20|1|v|IV Sunday of Advent|-|-|-|1
+2026-12-21|2|r|St. Thomas|Feria_II_after_IV_Sunday_of_Advent|Feria II after IV Sunday of Advent|-|1
+2026-12-22|2|v|Feria III after IV Sunday of Advent|-|-|-|1
+2026-12-23|2|v|Feria IV after IV Sunday of Advent|-|-|-|1
+2026-12-24|1|v|Vigil of Christmas|-|-|-|1
+2026-12-25|1|w|The Nativity of Our Lord|-|-|-|3
+2026-12-26|2|r|St. Stephen|-|For Octave of the Nativity|-|1
+2026-12-27|2|w|Sunday in the Octave of Christmas|-|St. John the Evangelist|For Octave of the Nativity|1
+2026-12-28|2|r|Holy Innocents|-|For Octave of the Nativity|-|1
+2026-12-29|2|w|Feria in the Octave of Christmas|-|St. Thomas Becket|-|1
+2026-12-30|2|w|Feria in the Octave of Christmas|-|-|-|1
+2026-12-31|2|w|Feria in the Octave of Christmas|-|St. Silvester|-|1
+2027-01-01|1|w|Octave Day of Christmas|-|-|-|1
+2027-01-02|4|w|II Mass of the B. V. M. – Vultum Tuum|-|-|-|1
+2027-01-03|2|w|Holy Name of Jesus|-|-|-|1
+2027-01-04|4|w|Feria|-|-|-|1
+2027-01-05|4|w|Feria|-|St. Telesphorus Pope and Martyr|-|1
+2027-01-06|1|w|Epiphany of the Lord|-|-|-|1
+2027-01-07|4|w|Feria|-|-|-|1
+2027-01-08|4|w|Feria|-|-|-|1
+2027-01-09|4|w|II Mass of the B. V. M. – Vultum Tuum|-|-|-|1
+2027-01-10|2|w|The Holy Family: Jesus, Mary & Joseph|-|-|-|1
+2027-01-11|4|w|Feria|Feria_II_after_Epiphany|St. Hyginus Pope and Martyr|-|1
+2027-01-12|4|w|Feria|Feria_III_after_Epiphany|-|-|1
+2027-01-13|2|w|Commemoration of the Baptism of the Lord|Feria_IV_after_Epiphany|-|-|1
+2027-01-14|3|w|St. Hilary|Feria_V_after_Epiphany|S. Felicis|-|1
+2027-01-15|3|w|St. Paul, the First Hermit|Feria_VI_after_Epiphany|St. Maur, Abbot|-|1
+2027-01-16|3|r|St. Marcellus I|Saturday_after_Epiphany|-|-|1
+2027-01-17|2|g|II Sunday after Epiphany|-|-|St. Anthony|1
+2027-01-18|4|g|Feria|Feria_II_after_II_Sunday_after_Epiphany|St. Prisca|-|1
+2027-01-19|4|g|Feria|Feria_III_after_II_Sunday_after_Epiphany|Sts. Marius, Martha, Audifax & Abachum;St. Canute, Martyr|-|1
+2027-01-20|3|r|Sts. Fabian & Sebastian|Feria_IV_after_II_Sunday_after_Epiphany|-|-|1
+2027-01-21|3|r|St. Agnes|Feria_V_after_II_Sunday_after_Epiphany|-|-|1
+2027-01-22|3|r|Sts. Vincent & Anastasius|Feria_VI_after_II_Sunday_after_Epiphany|-|-|1
+2027-01-23|3|w|St. Raymond of Peñafort|Saturday_after_II_Sunday_after_Epiphany|St. Emerentiana|-|1
+2027-01-24|2|v|Septuagesima Sunday|-|-|St. Timothy|1
+2027-01-25|3|w|Conversion of St. Paul|Feria_II_after_Septuagesima|St. Peter|-|1
+2027-01-26|3|r|St. Polycarp|Feria_III_after_Septuagesima|-|-|1
+2027-01-27|3|w|St. John Chrysostom|Feria_IV_after_Septuagesima|-|-|1
+2027-01-28|3|w|St. Peter Nolasco|Feria_V_after_Septuagesima|St. Agnes|-|1
+2027-01-29|3|w|St. Francis de Sales|Feria_VI_after_Septuagesima|-|-|1
+2027-01-30|3|r|St. Martina|Saturday_after_Septuagesima|-|-|1
+2027-01-31|2|v|Sexagesima Sunday|-|-|St. John Bosco|1
+2027-02-01|3|r|St. Ignatius of Antioch|Feria_II_after_Sexagesima|-|-|1
+2027-02-02|2|w|Purification of the Blessed Virgin Mary|Feria_III_after_Sexagesimæ|-|-|1
+2027-02-03|4|v|Feria|Feria_IV_after_Sexagesimæ|St. Blaise|-|1
+2027-02-04|3|w|St. Andrew Corsini|Feria_V_after_Sexagesimæ|-|-|1
+2027-02-05|3|r|St. Agatha|Feria_VI_after_Sexagesimæ|-|-|1
+2027-02-06|3|w|St. Titus|Saturday_after_Sexagesimæ|St. Dorothy|-|1
+2027-02-07|2|v|Quinquagesima Sunday|-|-|St. Romuald|1
+2027-02-08|3|w|St. John of Matha|Feria_II_after_Quinquagesima|-|-|1
+2027-02-09|3|w|St. Cyril of Alexandria|Feria_III_after_Quinquagesima|St. Appollonia|-|1
+2027-02-10|1|v|Ash Wednesday|-|-|St. Scholastica|1
+2027-02-11|3|v|Feria V after Ash Wednesday|-|Our Lady of Lourdes|-|1
+2027-02-12|3|v|Feria VI after Ash Wednesday|-|Seven Holy Servite Founders|-|1
+2027-02-13|3|v|Saturday after Ash Wednesday|-|-|-|1
+2027-02-14|1|v|I Sunday of Lent|-|-|St. Valentine|1
+2027-02-15|3|v|Feria II after the I Sunday of Lent|-|Sts. Faustinus & Jovita|-|1
+2027-02-16|3|v|Feria III after the I Sunday of Lent|-|-|-|1
+2027-02-17|2|v|Ember Wednesday of Lent|-|-|-|1
+2027-02-18|3|v|Feria V after the I Sunday of Lent|-|St. Simeon|-|1
+2027-02-19|2|v|Ember Friday of Lent|-|-|-|1
+2027-02-20|2|v|Ember Saturday of Lent|-|-|-|1
+2027-02-21|1|v|II Sunday of Lent|-|-|-|1
+2027-02-22|2|w|Chair of St. Peter|Feria_II_after_the_II_Sunday_of_Lent|St. Paul;Feria II after the II Sunday of Lent|-|1
+2027-02-23|3|v|Feria III after the II Sunday of Lent|-|St. Peter Damien|-|1
+2027-02-24|2|r|St. Matthias|Feria_IV_after_the_II_Sunday_of_Lent|Feria IV after the II Sunday of Lent|-|1
+2027-02-25|3|v|Feria V after the II Sunday of Lent|-|-|-|1
+2027-02-26|3|v|Feria VI after the II Sunday of Lent|-|-|-|1
+2027-02-27|3|v|Saturday after the II Sunday of Lent|-|St. Gabriel of Our Lady of Sorrows|-|1
+2027-02-28|1|v|III Sunday of Lent|-|-|-|1
+2027-03-01|3|v|Feria II after the III Sunday of Lent|-|-|-|1
+2027-03-02|3|v|Feria III after the III Sunday of Lent|-|-|-|1
+2027-03-03|3|v|Feria IV after the III Sunday of Lent|-|-|-|1
+2027-03-04|3|v|Feria V after the III Sunday of Lent|-|St. Casimir;St. Lucius|-|1
+2027-03-05|3|v|Feria VI after the III Sunday of Lent|-|-|-|1
+2027-03-06|3|v|Saturday after the III Sunday of Lent|-|Sts. Felicitas & Perpetua|-|1
+2027-03-07|1|pv|IV Sunday of Lent|-|-|St. Thomas Aquinas|1
+2027-03-08|3|v|Feria II after the IV Sunday of Lent|-|St. John of God|-|1
+2027-03-09|3|v|Feria III after the IV Sunday of Lent|-|St. Frances Rome|-|1
+2027-03-10|3|v|Feria IV after the IV Sunday of Lent|-|Forty Holy Martyrs of Sebaste|-|1
+2027-03-11|3|v|Feria V after the IV Sunday of Lent|-|-|-|1
+2027-03-12|3|v|Feria VI after the IV Sunday of Lent|-|St. Gregory the Great|-|1
+2027-03-13|3|v|Saturday after the IV Sunday of Lent|-|-|-|1
+2027-03-14|1|v|Passion Sunday|-|-|-|1
+2027-03-15|3|v|Feria II of Passion Week|-|-|-|1
+2027-03-16|3|v|Feria III of Passion Week|-|-|-|1
+2027-03-17|3|v|Feria IV of Passion Week|-|St. Patrick|-|1
+2027-03-18|3|v|Feria V of Passion Week|-|St. Cyril of Jerusalem|-|1
+2027-03-19|3|v|Feria VI of Passion Week|-|For Our Lady of the Seven Sorrows|St. Joseph, Spouse of the Bl. Virgin Mary|1
+2027-03-20|3|v|Saturday of Passion Week|-|-|-|1
+2027-03-21|1|rv|Palm Sunday|-|-|St. Benedict|1
+2027-03-22|1|v|Feria II of Holy Week|-|-|-|1
+2027-03-23|1|v|Feria III of Holy Week|-|-|-|1
+2027-03-24|1|v|Feria IV of Holy Week|-|-|St. Gabriel the Archangel|1
+2027-03-25|1|w|Holy Thursday|-|-|Annunciation of the Blessed Virgin Mary|1
+2027-03-26|1|bv|Good Friday|-|-|-|1
+2027-03-27|1|vw|Holy Saturday|-|-|St. John Damascene|1
+2027-03-28|1|w|Easter Sunday|-|-|St. John of Capistrano|1
+2027-03-29|1|w|Monday in the Octave of Easter|-|-|-|1
+2027-03-30|1|w|Tuesday in the Octave of Easter|-|-|-|1
+2027-03-31|1|w|Wednesday in the Octave of Easter|-|-|-|1
+2027-04-01|1|w|Thursday in the Octave of Easter|-|-|-|1
+2027-04-02|1|w|Friday in the Octave of Easter|-|-|St. Francis of Paola|1
+2027-04-03|1|w|Saturday in the Octave of Easter|-|-|-|1
+2027-04-04|1|w|Low Sunday|-|-|St. Isidore of Seville|1
+2027-04-05|1|w|Annunciation of the Blessed Virgin Mary|Monday_after_I_Sunday_after_Easter|-|St. Vincent Ferrer|1
+2027-04-06|4|w|Feria|Tuesday_after_I_Sunday_after_Easter|-|-|1
+2027-04-07|4|w|Feria|Wednesday_after_I_Sunday_after_Easter|-|-|1
+2027-04-08|4|w|Feria|Thursday_after_I_Sunday_after_Easter|-|-|1
+2027-04-09|4|w|Feria|Friday_after_I_Sunday_after_Easter|-|-|1
+2027-04-10|4|w|IV Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_I_Sunday_after_Easter|-|-|1
+2027-04-11|2|w|II Sunday after Easter|-|-|St. Leo the Great|1
+2027-04-12|4|w|Feria|Monday_after_II_Sunday_after_Easter|-|-|1
+2027-04-13|3|r|St. Hermenegild|Tuesday_after_II_Sunday_after_Easter|-|-|1
+2027-04-14|3|r|St. Justin|Wednesday_after_II_Sunday_after_Easter|Sts. Tiburtius, Valerian et Maximus, Martyrs|-|1
+2027-04-15|4|w|Feria|Thursday_after_II_Sunday_after_Easter|-|-|1
+2027-04-16|4|w|Feria|Friday_after_II_Sunday_after_Easter|-|-|1
+2027-04-17|4|w|IV Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_II_Sunday_after_Easter|St. Anicetus|-|1
+2027-04-18|2|w|III Sunday after Easter|-|-|-|1
+2027-04-19|4|w|Feria|Monday_after_III_Sunday_after_Easter|-|-|1
+2027-04-20|4|w|Feria|Tuesday_after_III_Sunday_after_Easter|-|-|1
+2027-04-21|3|w|St. Anselm|Wednesday_after_III_Sunday_after_Easter|-|-|1
+2027-04-22|3|r|Sts. Soter & Caius|Thursday_after_III_Sunday_after_Easter|-|-|1
+2027-04-23|4|w|Feria|Friday_after_III_Sunday_after_Easter|St. George|-|1
+2027-04-24|3|r|St. Fidelis of Sigmaringen|Saturday_after_III_Sunday_after_Easter|-|-|1
+2027-04-25|2|w|IV Sunday after Easter|-|St. Mark|Pro rogationibus|1
+2027-04-26|3|r|Sts. Cletus & Marcellinus|Monday_after_IV_Sunday_after_Easter|-|-|1
+2027-04-27|3|w|St. Peter Canisius|Tuesday_after_IV_Sunday_after_Easter|-|-|1
+2027-04-28|3|w|St. Paul of the Cross|Wednesday_after_IV_Sunday_after_Easter|-|-|1
+2027-04-29|3|r|St. Peter of Verona|Thursday_after_IV_Sunday_after_Easter|-|-|1
+2027-04-30|3|w|St. Catherine of Siena|Friday_after_IV_Sunday_after_Easter|-|-|1
+2027-05-01|1|w|St. Joseph the Workman|Saturday_after_IV_Sunday_after_Easter|-|-|1
+2027-05-02|2|w|V Sunday after Easter|-|-|St. Athanasius|1
+2027-05-03|4|w|Feria|The_Minor_Litanies_–_Rogations|Sts. Alexander & Companions|-|1
+2027-05-04|3|w|St. Monica|The_Minor_Litanies_–_Rogations|-|-|1
+2027-05-05|2|w|Vigil of the Ascension|-|St. Pius V|-|1
+2027-05-06|1|w|Ascension of the Lord|-|-|-|1
+2027-05-07|3|r|St. Stanislaus|Feria_VI_after_the_Ascension|-|-|1
+2027-05-08|4|w|IV Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_the_Ascension|-|-|1
+2027-05-09|2|w|Sunday after the Ascension|-|-|St. Gregory of Nazianzen|1
+2027-05-10|3|w|St. Antoninus|Feria_II_after_the_Ascension|St. Gordiano and Epimacho|-|1
+2027-05-11|2|r|Sts. Philip & James|Feria_III_after_the_Ascension|-|-|1
+2027-05-12|3|r|Sts. Nereus, Achilleus, Domitilla, & Pancras|Feria_IV_after_the_Ascension|-|-|1
+2027-05-13|3|w|St. Robert Bellarmine|Feria_V_after_the_Ascension|-|-|1
+2027-05-14|4|w|Feria|Feria_VI_after_the_Ascension|St. Boniface|-|1
+2027-05-15|1|r|Saturday after the Ascension|-|-|St. John Baptist de la Salle|1
+2027-05-16|1|r|Pentecost Sunday|-|-|St. Ubaldus|1
+2027-05-17|1|r|Monday after Pentecost|-|-|St. Paschal Baylon|1
+2027-05-18|1|r|Tuesday after Pentecost|-|-|St. Venantius|1
+2027-05-19|1|r|Ember Wednesday of Pentecost|-|-|St. Peter Celestine;St. Pudentiana Virginis|1
+2027-05-20|1|r|Thursday after Pentecost|-|-|St. Bernardine of Siena|1
+2027-05-21|1|r|Ember Friday of Pentecost|-|-|-|1
+2027-05-22|1|r|Ember Saturday of Pentecost|-|-|-|1
+2027-05-23|1|w|Trinity Sunday|-|-|-|1
+2027-05-24|4|g|Feria|Feria_II_after_I_Sunday_after_Pentecost|-|-|1
+2027-05-25|3|w|St. Gregory VII|Feria_III_after_I_Sunday_after_Pentecost|St. Urban, Pope and Martyr|-|1
+2027-05-26|3|w|St. Philip Neri|Feria_IV_after_I_Sunday_after_Pentecost|S. Eleutherius|-|1
+2027-05-27|1|w|Corpus Christi|-|-|St. Bede the Venerable;St. John I|1
+2027-05-28|3|w|St. Augustine of Canterbury|Feria_V_after_I_Sunday_after_Pentecost|-|-|1
+2027-05-29|3|w|St. Mary Magdalene de Pazzi|Saturday_after_I_Sunday_after_Pentecost|-|-|1
+2027-05-30|2|g|II Sunday after Pentecost|-|-|St. Felix I|1
+2027-05-31|2|w|Queenship of the Blessed Virgin Mary|Feria_II_after_II_Sunday_after_Pentecost|St. Petronilla|-|1
+2027-06-01|3|w|St. Angela Merici|Feria_III_after_II_Sunday_after_Pentecost|-|-|1
+2027-06-02|4|g|Feria|Feria_IV_after_II_Sunday_after_Pentecost|Sts. Marcellinus, Peter, & Erasmus|-|1
+2027-06-03|4|g|Feria|Feria_V_after_II_Sunday_after_Pentecost|-|-|1
+2027-06-04|1|w|Sacred Heart of Jesus|-|-|St. Francis Caracciolo|1
+2027-06-05|3|r|St. Boniface|Saturday_after_II_Sunday_after_Pentecost|-|-|1
+2027-06-06|2|g|III Sunday after Pentecost|-|-|St. Norbert|1
+2027-06-07|4|g|Feria|Feria_II_after_III_Sunday_after_Pentecost|-|-|1
+2027-06-08|4|g|Feria|Feria_III_after_III_Sunday_after_Pentecost|-|-|1
+2027-06-09|4|g|Feria|Feria_IV_after_III_Sunday_after_Pentecost|Sts. Primus & Felicianus|-|1
+2027-06-10|3|w|St. Margaret of Scotland|Feria_V_after_III_Sunday_after_Pentecost|-|-|1
+2027-06-11|3|r|St. Barnabas|Feria_VI_after_III_Sunday_after_Pentecost|-|-|1
+2027-06-12|3|r|St. John of San Fecundo|Saturday_after_III_Sunday_after_Pentecost|St. Basilidus|-|1
+2027-06-13|2|g|IV Sunday after Pentecost|-|-|St. Anthony of Padua|1
+2027-06-14|3|w|St. Basil the Great|Feria_II_after_IV_Sunday_after_Pentecost|-|-|1
+2027-06-15|4|g|Feria|Feria_III_after_IV_Sunday_after_Pentecost|St. Vitus|-|1
+2027-06-16|4|g|Feria|Feria_IV_after_IV_Sunday_after_Pentecost|-|-|1
+2027-06-17|3|w|St. Gregory Barbarigo|Feria_V_after_IV_Sunday_after_Pentecost|-|-|1
+2027-06-18|3|r|St. Ephrem of Syria|Feria_VI_after_IV_Sunday_after_Pentecost|Ss. Marcus and Marcellianus|-|1
+2027-06-19|3|r|St. Julia of Falconieri|Saturday_after_IV_Sunday_after_Pentecost|Sts. Gervasius and Protasius|-|1
+2027-06-20|2|g|V Sunday after Pentecost|-|-|St. Silverius|1
+2027-06-21|3|w|St. Aloysius Gongzaga|Feria_II_after_V_Sunday_after_Pentecost|-|-|1
+2027-06-22|3|w|St. Paulinus of Nola|Feria_III_after_V_Sunday_after_Pentecost|-|-|1
+2027-06-23|2|v|Vigil of the Nativity of St. John the Baptist|Feria_IV_after_V_Sunday_after_Pentecost|-|-|1
+2027-06-24|1|w|Nativity of St. John the Baptist|Feria_V_after_V_Sunday_after_Pentecost|-|-|1
+2027-06-25|3|w|St. William|Feria_VI_after_V_Sunday_after_Pentecost|-|-|1
+2027-06-26|3|r|Sts. John & Paul|Saturday_after_V_Sunday_after_Pentecost|-|-|1
+2027-06-27|2|g|VI Sunday after Pentecost|-|-|-|1
+2027-06-28|2|v|Vigil of Sts. Peter & Paul|Feria_II_after_VI_Sunday_after_Pentecost|-|-|1
+2027-06-29|1|r|Sts. Peter & Paul|Feria_III_after_VI_Sunday_after_Pentecost|-|-|1
+2027-06-30|3|r|In Commemoratione Sancti Pauli Apostoli|Feria_IV_after_VI_Sunday_after_Pentecost|-|-|1
+2027-07-01|1|r|The Precious Blood of Our Lord Jesus Christ|Feria_V_after_VI_Sunday_after_Pentecost|-|-|1
+2027-07-02|2|w|Visitation of the Blessed Virgin Mary|Feria_VI_after_VI_Sunday_after_Pentecost|SS. Processus and Martinian|-|1
+2027-07-03|3|r|St. Irenaeus|Saturday_after_VI_Sunday_after_Pentecost|-|-|1
+2027-07-04|2|g|VII Sunday after Pentecost|-|-|-|1
+2027-07-05|3|w|St. Anthony Mary Zaccariah|Feria_II_after_VII_Sunday_after_Pentecost|-|-|1
+2027-07-06|4|g|Feria|Feria_III_after_VII_Sunday_after_Pentecost|-|-|1
+2027-07-07|3|w|Sts. Cyril & Methodius|Feria_IV_after_VII_Sunday_after_Pentecost|-|-|1
+2027-07-08|3|w|St. Elizabeth of Portugal|Feria_V_after_VII_Sunday_after_Pentecost|-|-|1
+2027-07-09|4|g|Feria|Feria_VI_after_VII_Sunday_after_Pentecost|-|-|1
+2027-07-10|3|r|Seven Holy Brothers and Sts. Rufina & Secunda|Saturday_after_VII_Sunday_after_Pentecost|-|-|1
+2027-07-11|2|g|VIII Sunday after Pentecost|-|-|St. Pius I|1
+2027-07-12|3|r|St. John Gualbert|Feria_II_after_VIII_Sunday_after_Pentecost|Ss. Naboris et Felicis|-|1
+2027-07-13|4|g|Feria|Feria_III_after_VIII_Sunday_after_Pentecost|-|-|1
+2027-07-14|3|w|St. Bonaventure|Feria_IV_after_VIII_Sunday_after_Pentecost|-|-|1
+2027-07-15|3|w|St. Henry the Emperor|Feria_V_after_VIII_Sunday_after_Pentecost|-|-|1
+2027-07-16|4|g|Feria|Feria_VI_after_VIII_Sunday_after_Pentecost|Our Lady of Mt. Carmel|-|1
+2027-07-17|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_VIII_Sunday_after_Pentecost|St. Alexis|-|1
+2027-07-18|2|g|IX Sunday after Pentecost|-|-|Camillus de Lellis;Ss. Symphorosa and sons|1
+2027-07-19|3|w|St. Vincent de Paul|Feria_II_after_IX_Sunday_after_Pentecost|-|-|1
+2027-07-20|3|r|St. Jerome Emiliani|Feria_III_after_IX_Sunday_after_Pentecost|St. Margaret|-|1
+2027-07-21|3|w|St. Laurence of Brindisi|Feria_IV_after_IX_Sunday_after_Pentecost|St. Praxedis Virginis|-|1
+2027-07-22|3|w|St. Mary Magdalene|Feria_V_after_IX_Sunday_after_Pentecost|-|-|1
+2027-07-23|3|w|St. Apollinaris|Feria_VI_after_IX_Sunday_after_Pentecost|S. Liborii|-|1
+2027-07-24|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_IX_Sunday_after_Pentecost|St. Christina|-|1
+2027-07-25|2|g|X Sunday after Pentecost|-|St. James the Greater|St. Christopher|1
+2027-07-26|2|w|St. Anne, Mother of the Blessed Virgin|Feria_II_after_X_Sunday_after_Pentecost|-|-|1
+2027-07-27|4|g|Feria|Feria_III_after_X_Sunday_after_Pentecost|St. Pantaleon|-|1
+2027-07-28|3|r|Sts. Nazarius & Celsus, St. Victor I & St. Innocent I|Feria_IV_after_X_Sunday_after_Pentecost|-|-|1
+2027-07-29|3|r|St. Martha|Feria_V_after_X_Sunday_after_Pentecost|Ss. Felicis, Simplicii, Faustini et Beatricis|-|1
+2027-07-30|4|g|Feria|Feria_VI_after_X_Sunday_after_Pentecost|Sts. Abdon & Sennen|-|1
+2027-07-31|3|w|St. Ignatius Loyola|Saturday_after_X_Sunday_after_Pentecost|-|-|1
+2027-08-01|2|g|XI Sunday after Pentecost|-|-|Holy Machabees|1
+2027-08-02|3|r|St. Alphonsus Liguori|Feria_II_after_XI_Sunday_after_Pentecost|St. Stephen I, Pope and Martyr|-|1
+2027-08-03|4|g|Feria|Feria_III_after_XI_Sunday_after_Pentecost|-|-|1
+2027-08-04|3|w|St. Dominic|Feria_IV_after_XI_Sunday_after_Pentecost|-|-|1
+2027-08-05|3|w|Dedication of the Basilica of St. Mary Major|Feria_V_after_XI_Sunday_after_Pentecost|-|-|1
+2027-08-06|2|w|Transfiguration of Our Lord|Feria_VI_after_XI_Sunday_after_Pentecost|Pope Sixtus II, Felicissimus and Agapitus, Martyrs|-|1
+2027-08-07|3|w|St. Cajetan|Saturday_after_XI_Sunday_after_Pentecost|St. Donatus|-|1
+2027-08-08|2|g|XII Sunday after Pentecost|-|-|St. John Mary Vianney;Ss. Cyriacus, Largus and Smaragdus, Martyrs|1
+2027-08-09|3|r|Vigil of St. Lawrence|Feria_II_after_XII_Sunday_after_Pentecost|St. Romanus|-|1
+2027-08-10|2|r|St. Lawrence|Feria_III_after_XII_Sunday_after_Pentecost|-|-|1
+2027-08-11|4|g|Feria|Feria_IV_after_XII_Sunday_after_Pentecost|Sts. Tiburtius & Susanna|-|1
+2027-08-12|3|w|St. Clare|Feria_V_after_XII_Sunday_after_Pentecost|-|-|1
+2027-08-13|4|g|Feria|Feria_VI_after_XII_Sunday_after_Pentecost|Sts. Hippolytus & Cassian|-|1
+2027-08-14|2|w|Vigil of the Assumption|Saturday_after_XII_Sunday_after_Pentecost|St. Eusebius|-|1
+2027-08-15|1|w|Assumption of the Blessed Virgin Mary|XIII_Sunday_after_Pentecost|-|-|1
+2027-08-16|2|w|St. Joachim, Father of the Blessed Virgin|Feria_II_after_XIII_Sunday_after_Pentecost|-|-|1
+2027-08-17|3|w|St. Hyacinth|Feria_III_after_XIII_Sunday_after_Pentecost|-|-|1
+2027-08-18|4|g|Feria|Feria_IV_after_XIII_Sunday_after_Pentecost|St. Agapitus|-|1
+2027-08-19|3|w|St. John Eudes|Feria_V_after_XIII_Sunday_after_Pentecost|-|-|1
+2027-08-20|3|w|St. Bernard of Clairvaux|Feria_VI_after_XIII_Sunday_after_Pentecost|-|-|1
+2027-08-21|3|w|St. Jane Frances de Chantal|Saturday_after_XIII_Sunday_after_Pentecost|-|-|1
+2027-08-22|2|g|XIV Sunday after Pentecost|-|Immaculate Heart of Mary|Sts. Timothy, Hippolytus and Symphorianus, Martyrs|1
+2027-08-23|3|w|St. Philip Benizi|Feria_II_after_XIV_Sunday_after_Pentecost|-|-|1
+2027-08-24|2|r|St. Bartholomew|Feria_III_after_XIV_Sunday_after_Pentecost|-|-|1
+2027-08-25|3|w|St. Louis IX|Feria_IV_after_XIV_Sunday_after_Pentecost|-|-|1
+2027-08-26|4|g|Feria|Feria_V_after_XIV_Sunday_after_Pentecost|St. Zephyrinus|-|1
+2027-08-27|3|w|St. Joseph Calasance|Feria_VI_after_XIV_Sunday_after_Pentecost|-|-|1
+2027-08-28|3|r|St. Augustine|Saturday_after_XIV_Sunday_after_Pentecost|St. Hermes|-|1
+2027-08-29|2|g|XV Sunday after Pentecost|-|-|Beheading of St. John the Baptist;St. Sabina|1
+2027-08-30|3|r|St. Rose of Lima|Feria_II_after_XV_Sunday_after_Pentecost|Sts. Felix and Adauctus|-|1
+2027-08-31|3|w|St. Raymond Nonnatus|Feria_III_after_XV_Sunday_after_Pentecost|-|-|1
+2027-09-01|4|g|Feria|Feria_IV_after_XV_Sunday_after_Pentecost|St. Giles;Twelve Holy Brothers, Martyrs|-|1
+2027-09-02|3|w|St. Stephen of Hungary|Feria_V_after_XV_Sunday_after_Pentecost|-|-|1
+2027-09-03|3|w|St. Pius X|Feria_VI_after_XV_Sunday_after_Pentecost|-|-|1
+2027-09-04|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_XV_Sunday_after_Pentecost|-|-|1
+2027-09-05|2|g|XVI Sunday after Pentecost|-|-|St. Lawrence Justinian|1
+2027-09-06|4|g|Feria|Feria_II_after_XVI_Sunday_after_Pentecost|-|-|1
+2027-09-07|4|g|Feria|Feria_III_after_XVI_Sunday_after_Pentecost|-|-|1
+2027-09-08|2|w|Nativity of the Blessed Virgin Mary|Feria_IV_after_XVI_Sunday_after_Pentecost|S. Hadriani|-|1
+2027-09-09|4|g|Feria|Feria_V_after_XVI_Sunday_after_Pentecost|St. Gorgonius|-|1
+2027-09-10|3|w|St. Nicholas of Tolentino|Feria_VI_after_XVI_Sunday_after_Pentecost|-|-|1
+2027-09-11|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_XVI_Sunday_after_Pentecost|Sts. Protus & Hyacinth|-|1
+2027-09-12|2|g|XVII Sunday after Pentecost|-|-|Most Holy Name of Mary|1
+2027-09-13|4|g|Feria|Feria_II_after_XVII_Sunday_after_Pentecost|-|-|1
+2027-09-14|2|r|Exaltation of the Holy Cross|Feria_III_after_XVII_Sunday_after_Pentecost|-|-|1
+2027-09-15|2|w|Seven Sorrows of the Blessed Virgin Mary|Feria_IV_after_XVII_Sunday_after_Pentecost|S. Nicomedes|-|1
+2027-09-16|3|r|Sts. Cornelius & Cyprian|Feria_V_after_XVII_Sunday_after_Pentecost|Sts. Euphemia, Lucy and Geminianus|-|1
+2027-09-17|4|g|Feria|Feria_VI_after_XVII_Sunday_after_Pentecost|Stigmata of St. Francis|-|1
+2027-09-18|3|w|St. Joseph of Cupertino|Saturday_after_XVII_Sunday_after_Pentecost|-|-|1
+2027-09-19|2|g|XVIII Sunday after Pentecost|-|-|St. Januarius & Companions|1
+2027-09-20|4|g|Feria|Feria_II_after_XVIII_Sunday_after_Pentecost|Sts. Eustace & Companions|-|1
+2027-09-21|2|r|St. Matthew|Feria_III_after_XVIII_Sunday_after_Pentecost|-|-|1
+2027-09-22|2|v|Ember Wednesday of September|-|St. Thomas of Villanova|St. Maurice and Companions, Martyrs|1
+2027-09-23|3|r|St. Linus|Feria_V_after_XVIII_Sunday_after_Pentecost|St. Thecla|-|1
+2027-09-24|2|v|Ember Friday of September|-|Our Lady of Ransom|-|1
+2027-09-25|2|v|Ember Saturday of September|-|-|-|1
+2027-09-26|2|g|XIX Sunday after Pentecost|-|-|Sts. Cyprian & Justina|1
+2027-09-27|3|r|Sts. Cosmas & Damian|Feria_II_after_XIX_Sunday_after_Pentecost|-|-|1
+2027-09-28|3|r|St. Wenceslaus|Feria_III_after_XIX_Sunday_after_Pentecost|-|-|1
+2027-09-29|1|w|Dedication of St. Michael the Archangel|Feria_IV_after_XIX_Sunday_after_Pentecost|-|-|1
+2027-09-30|3|w|St. Jerome|Feria_V_after_XIX_Sunday_after_Pentecost|-|-|1
+2027-10-01|4|g|Feria|Feria_VI_after_XIX_Sunday_after_Pentecost|St. Remigius|-|1
+2027-10-02|3|w|Holy Guardian Angels|Saturday_after_XIX_Sunday_after_Pentecost|-|-|1
+2027-10-03|2|g|XX Sunday after Pentecost|-|-|St. Theresa of the Infant Jesus|1
+2027-10-04|3|w|St. Francis of Assisi|Feria_II_after_XX_Sunday_after_Pentecost|-|-|1
+2027-10-05|4|g|Feria|Feria_III_after_XX_Sunday_after_Pentecost|St. Placid & Companions|-|1
+2027-10-06|3|w|St. Bruno|Feria_IV_after_XX_Sunday_after_Pentecost|-|-|1
+2027-10-07|2|w|Our Lady of the Rosary|Feria_V_after_XX_Sunday_after_Pentecost|St. Mark I|-|1
+2027-10-08|3|w|St. Bridget of Sweden|Feria_VI_after_XX_Sunday_after_Pentecost|Ss. Sergio, Baccho, Marcello and Apulejo Martyrs|-|1
+2027-10-09|3|w|St. John Leonardi|Saturday_after_XX_Sunday_after_Pentecost|St. Dionysius and companions|-|1
+2027-10-10|2|g|XXI Sunday after Pentecost|-|-|St. Francis Borgia|1
+2027-10-11|2|w|Maternity of the Blessed Virgin Mary|Feria_II_after_XXI_Sunday_after_Pentecost|-|-|1
+2027-10-12|4|g|Feria|Feria_III_after_XXI_Sunday_after_Pentecost|-|-|1
+2027-10-13|3|w|St. Edward|Feria_IV_after_XXI_Sunday_after_Pentecost|-|-|1
+2027-10-14|3|r|St. Callistus I|Feria_V_after_XXI_Sunday_after_Pentecost|-|-|1
+2027-10-15|3|w|St. Teresa of Avila|Feria_VI_after_XXI_Sunday_after_Pentecost|-|-|1
+2027-10-16|3|w|St. Hedwig|Saturday_after_XXI_Sunday_after_Pentecost|-|-|1
+2027-10-17|2|g|XXII Sunday after Pentecost|-|-|St. Margaret Mary Alacoque|1
+2027-10-18|2|r|St. Luke the Evangelist|Feria_II_after_XXII_Sunday_after_Pentecost|-|-|1
+2027-10-19|3|w|St. Peter of Alcantara|Feria_III_after_XXII_Sunday_after_Pentecost|-|-|1
+2027-10-20|3|w|St. John Cantius|Feria_IV_after_XXII_Sunday_after_Pentecost|-|-|1
+2027-10-21|4|g|Feria|Feria_V_after_XXII_Sunday_after_Pentecost|St. Hilarion;St. Ursula and Companions|-|1
+2027-10-22|4|g|Feria|Feria_VI_after_XXII_Sunday_after_Pentecost|-|-|1
+2027-10-23|3|w|St. Anthony Mary Claret|Saturday_after_XXII_Sunday_after_Pentecost|-|-|1
+2027-10-24|2|g|XXIII Sunday after Pentecost|-|-|St. Raphael the Archangel|1
+2027-10-25|4|g|Feria|Feria_II_after_XXIII_Sunday_after_Pentecost|Sts. Chrysanthus & Daria|-|1
+2027-10-26|4|g|Feria|Feria_III_after_XXIII_Sunday_after_Pentecost|St. Evaristus|-|1
+2027-10-27|4|g|Feria|Feria_IV_after_XXIII_Sunday_after_Pentecost|-|-|1
+2027-10-28|2|r|Sts. Simon & Jude|Feria_V_after_XXIII_Sunday_after_Pentecost|-|-|1
+2027-10-29|4|g|Feria|Feria_VI_after_XXIII_Sunday_after_Pentecost|-|-|1
+2027-10-30|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_XXIII_Sunday_after_Pentecost|-|-|1
+2027-10-31|1|w|Christ the King|IV_Sunday_after_Epiphany|-|-|1
+2027-11-01|1|w|All Saints|Feria_II_after_IV_Sunday_after_Epiphany|-|-|1
+2027-11-02|1|b|Commemoration of All Souls|Feria_III_after_IV_Sunday_after_Epiphany|-|-|3
+2027-11-03|4|g|Feria|Feria_IV_after_IV_Sunday_after_Epiphany|-|-|1
+2027-11-04|3|w|St. Charles Borromeo|Feria_V_after_IV_Sunday_after_Epiphany|Sts. Vitalis and Agricola, Martyrs|-|1
+2027-11-05|4|g|Feria|Feria_VI_after_IV_Sunday_after_Epiphany|-|-|1
+2027-11-06|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_IV_Sunday_after_Epiphany|-|-|1
+2027-11-07|2|g|V Sunday after Epiphany|-|-|-|1
+2027-11-08|4|g|Feria|Feria_II_after_V_Sunday_after_Epiphany|Four Holy Crowned Martyrs|-|1
+2027-11-09|2|w|Dedication of the Archbasilica of Our Holy Savior|Feria_III_after_V_Sunday_after_Epiphany|St. Theodore|-|1
+2027-11-10|3|w|St. Andrew Avellino|Feria_IV_after_V_Sunday_after_Epiphany|Sts. Tryphonis, Respicii, et Nymphae|-|1
+2027-11-11|3|w|St. Martin of Tours|Feria_V_after_V_Sunday_after_Epiphany|St. Menna|-|1
+2027-11-12|3|r|St. Martin I|Feria_VI_after_V_Sunday_after_Epiphany|-|-|1
+2027-11-13|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_V_Sunday_after_Epiphany|St. Didacus|-|1
+2027-11-14|2|g|VI Sunday after Epiphany|-|-|St. Josaphat|1
+2027-11-15|3|w|St. Albert the Great|Feria_II_after_VI_Sunday_after_Epiphany|-|-|1
+2027-11-16|3|w|St. Gertrude the Great|Feria_III_after_VI_Sunday_after_Epiphany|-|-|1
+2027-11-17|3|w|St. Gregory the Wonderworker|Feria_IV_after_VI_Sunday_after_Epiphany|-|-|1
+2027-11-18|3|w|Dedication of the Basilicas of Sts. Peter & Paul|Feria_V_after_VI_Sunday_after_Epiphany|-|-|1
+2027-11-19|3|w|St. Elizabeth of Hungary|Feria_VI_after_VI_Sunday_after_Epiphany|St. Pontian|-|1
+2027-11-20|3|w|St. Felix of Valois|Saturday_after_VI_Sunday_after_Epiphany|-|-|1
+2027-11-21|2|g|XXIV Sunday after Pentecost|-|-|Presentation of the Blessed Virgin Mary|1
+2027-11-22|3|r|St. Cecilia|Feria_II_after_XXIV_Sunday_after_Pentecost|-|-|1
+2027-11-23|3|r|St. Clement I|Feria_III_after_XXIV_Sunday_after_Pentecost|St. Felicity|-|1
+2027-11-24|3|w|St. John of the Cross|Feria_IV_after_XXIV_Sunday_after_Pentecost|St. Chrysogonus|-|1
+2027-11-25|3|r|St. Catherine of Alexandria|Feria_V_after_XXIV_Sunday_after_Pentecost|-|-|1
+2027-11-26|3|w|St. Sylvester|Feria_VI_after_XXIV_Sunday_after_Pentecost|St. Peter of Alexandria|-|1
+2027-11-27|4|w|V Mass of the B. V. M. – Salve, Sancta Parens|Saturday_after_XXIV_Sunday_after_Pentecost|-|-|1
+2027-11-28|1|v|I Sunday of Advent|-|-|-|1
+2027-11-29|3|v|Feria II after I Sunday of Advent|-|St. Saturninus|-|1
+2027-11-30|2|r|St. Andrew|Feria_III_after_I_Sunday_of_Advent|-|-|1
+2027-12-01|3|v|Feria IV after I Sunday of Advent|-|-|-|1
+2027-12-02|3|r|St. Vivian|Feria_V_after_I_Sunday_of_Advent|Feria V after I Sunday of Advent|-|1
+2027-12-03|3|w|St. Francis Xavier|Feria_VI_after_I_Sunday_of_Advent|Feria VI after I Sunday of Advent|-|1
+2027-12-04|3|w|St. Peter Chrysologus|Sabbato_after_I_Sunday_of_Advent|Sabbato after I Sunday of Advent|-|1
+2027-12-05|1|v|II Sunday of Advent|-|-|St. Sabbas|1
+2027-12-06|3|w|St. Nicholas|Feria_II_after_II_Sunday_of_Advent|Feria II after II Sunday of Advent|-|1
+2027-12-07|3|w|St. Ambrose|Feria_III_after_II_Sunday_of_Advent|Feria III after II Sunday of Advent|-|1
+2027-12-08|1|w|Immaculate Conception of the Blessed Virgin Mary|Feria_IV_after_II_Sunday_of_Advent|-|-|1
+2027-12-09|3|v|Feria V after II Sunday of Advent|-|-|-|1
+2027-12-10|3|v|Feria VI after II Sunday of Advent|-|St. Melchiades|-|1
+2027-12-11|3|w|St. Damasus I|Sabbato_after_II_Sunday_of_Advent|Sabbato after II Sunday of Advent|-|1
+2027-12-12|1|pv|III Sunday of Advent|-|-|-|1
+2027-12-13|3|r|St. Lucy|Feria_II_after_III_Sunday_of_Advent|Feria II after III Sunday of Advent|-|1
+2027-12-14|3|pv|Feria III after III Sunday of Advent|-|-|-|1
+2027-12-15|2|v|Ember Wednesday of Advent|-|-|-|1
+2027-12-16|3|r|St. Eusebius|Feria_V_after_III_Sunday_of_Advent|Feria V after III Sunday of Advent|-|1
+2027-12-17|2|v|Ember Friday of Advent|-|-|-|1
+2027-12-18|2|v|Ember Saturday of Advent|-|-|-|1
+2027-12-19|1|v|IV Sunday of Advent|-|-|-|1
+2027-12-20|2|v|Feria II after IV Sunday of Advent|-|-|-|1
+2027-12-21|2|r|St. Thomas|Feria_III_after_IV_Sunday_of_Advent|Feria III after IV Sunday of Advent|-|1
+2027-12-22|2|v|Feria IV after IV Sunday of Advent|-|-|-|1
+2027-12-23|2|v|Feria V after IV Sunday of Advent|-|-|-|1
+2027-12-24|1|v|Vigil of Christmas|-|-|-|1
+2027-12-25|1|w|The Nativity of Our Lord|-|-|-|3
+2027-12-26|2|w|Sunday in the Octave of Christmas|-|St. Stephen|For Octave of the Nativity|1
+2027-12-27|2|w|St. John the Evangelist|-|For Octave of the Nativity|-|1
+2027-12-28|2|r|Holy Innocents|-|For Octave of the Nativity|-|1
+2027-12-29|2|w|Feria in the Octave of Christmas|-|St. Thomas Becket|-|1
+2027-12-30|2|w|Feria in the Octave of Christmas|-|-|-|1
+2027-12-31|2|w|Feria in the Octave of Christmas|-|St. Silvester|-|1
diff --git a/test/test_calendar.ml b/test/test_calendar.ml
new file mode 100644
index 0000000..505994e
--- /dev/null
+++ b/test/test_calendar.ml
@@ -0,0 +1,447 @@
+module C = Colitur_kernel.Calendar
+module D = Colitur_kernel.Date
+module LD = Colitur_kernel.Liturgical_day
+module Cel = Colitur_kernel.Celebration
+module Sl = Colitur_kernel.Slug
+module Rite = Colitur_kernel.Rite
+
+let mk y m d = match D.make ~year:y ~month:m ~day:d with Ok t -> t | Error e -> failwith e
+
+(* A synthetic rite -- not EF -- so Calendar's behaviour is proven against the
+ abstraction, not against EF's own real (and much larger) data. Two
+ seasons, three ranks: enough to exercise the type parameters without
+ dragging in real liturgical logic Calendar itself does not compute.
+
+ Three ranks, not two: Task 6 review finding 2. With only one
+ Transfer-disposed rank, every deferred candidate ties on [band] and
+ [compare_deferred]'s [b1 <> b2] branch (the one RG 97-98 actually depends
+ on -- coinciding I-class feasts transfer in TABLE order, not slug order)
+ was unreachable; reversing it broke no test. [Hi1] outranks [Hi2], both
+ outrank [Lo], both are [Transfer]-disposed -- so two colliding
+ transferables can now differ by band, not only by slug. *)
+module Fixture = struct
+ module Vocab = Colitur_kernel.Vocab
+ module Colour = Colitur_kernel.Colour
+ module Temporal = Colitur_kernel.Temporal
+ module P = Colitur_kernel.Precedence
+ module Layer = Colitur_kernel.Layer
+ module Date_spec = Colitur_kernel.Date_spec
+
+ type season = A | B
+ type rank = Hi1 | Hi2 | Lo
+
+ let season_to_string = function A -> "a" | B -> "b"
+ let season_of_string = function "a" -> Some A | "b" -> Some B | _ -> None
+ let rank_to_string = function Hi1 -> "hi1" | Hi2 -> "hi2" | Lo -> "lo"
+ let rank_of_string = function "hi1" -> Some Hi1 | "hi2" -> Some Hi2 | "lo" -> Some Lo | _ -> None
+
+ let vocab : (season, rank) Vocab.t =
+ { Vocab.seasons = [ A; B ]; season_to_string; season_of_string;
+ ranks = [ Hi1; Hi2; Lo ]; rank_to_string; rank_of_string }
+
+ let weekday_index d =
+ match D.weekday d with
+ | D.Sun -> 0 | D.Mon -> 1 | D.Tue -> 2 | D.Wed -> 3
+ | D.Thu -> 4 | D.Fri -> 5 | D.Sat -> 6
+
+ let sunday_on_or_before d = D.add_days d (-(weekday_index d))
+
+ (* Advent-anchored, mirroring the real EF rite's own RG-71 "Sunday nearest
+ 30 November" rule (rite_ef/temporal_ef.ml's [advent_start]) rather than
+ a Jan-1 year start: that shape is what makes the year-below-the-date's-
+ own-civil-year case in [Calendar.day] genuinely reachable, so the domain
+ -floor test below exercises something real. *)
+ let year_start y = D.add_days (sunday_on_or_before (mk y 12 24)) (-21)
+
+ (* Not liturgically meaningful -- Calendar does not check season
+ contiguity (that is Validate's job); this just proves the season type
+ parameter is actually threaded through. *)
+ let season date = if D.month date < 6 then A else B
+
+ (* One office per day, uniquely named by date so distinct days never
+ collide on slug. *)
+ let office date =
+ let slug = Printf.sprintf "feria-%04d-%02d-%02d" (D.year date) (D.month date) (D.day date) in
+ Cel.make ~slug:(Sl.of_string_exn slug) ~rank:Lo ~colour:Colour.Green ~layer:"synthetic-temporal" ()
+
+ let temporal date : (season, rank) Temporal.t =
+ { Temporal.season = season date; week = None; weekday = D.weekday date; office = office date }
+
+ (* Band: Hi1 beats Hi2 beats Lo; Temporal breaks a tie against a Lo-rank
+ Sanctoral entry in its own favour -- the same convention
+ test_precedence.ml uses. *)
+ let band (_ : season P.context) (c : rank P.candidate) =
+ (match c.P.cel.Cel.rank with Hi1 -> 5 | Hi2 -> 10 | Lo -> 20)
+ - (match c.P.origin with P.Temporal -> 1 | P.Sanctoral -> 0)
+
+ let disposition ~winner:_ ~(loser : rank P.candidate) =
+ match loser.P.cel.Cel.rank with Lo -> P.Commemorate P.Ordinary | Hi1 | Hi2 -> P.Transfer
+
+ (* Admits at most one commemoration -- mirrors test_precedence.ml's own
+ example and, unlike "admit everything", actually gives the accounting
+ test below a genuine Precedence-native omission (distinct from a
+ deferred one) to exercise. *)
+ let rules : (season, rank) P.rules =
+ { P.band; disposition; admit = (fun ~observed:_ cs -> List.filteri (fun i _ -> i < 1) cs) }
+
+ (* RG 96, generic form: search forward from the day after [origin] for the
+ first day whose occupant is not "blocking" -- in this synthetic
+ vocabulary Hi1/Hi2 stand in for I/II class, Lo for everything else (the
+ same convention [band] already uses). No Annunciation-style
+ starting-point override: that exception is EF-specific (RG 96) and
+ belongs to the real rite (Task 11, pinned by Task 17's golden years),
+ not to this abstraction-level fixture, which only has to prove
+ Calendar's placement mechanism, not EF's own rubrics. *)
+ let transfer_target (_ : rank P.candidate) (origin : D.t) (occupant : D.t -> rank Cel.t) : D.t =
+ let rec search d = if (occupant d).Cel.rank = Lo then d else search (D.add_days d 1) in
+ search (D.add_days origin 1)
+
+ let rite : (season, rank) Rite.t =
+ { Rite.id = "synthetic-calendar"; vocab; year_start; temporal; anchors = (fun _ -> []);
+ rules; season_runs = [ A; B ]; transfer_target }
+
+ let entry ~month ~day ~slug ~rank =
+ { Layer.date = (match Date_spec.fixed ~month ~day with Ok d -> d | Error e -> failwith e);
+ cel = Cel.make ~slug:(Sl.of_string_exn slug) ~rank ~colour:Colour.White
+ ~layer:"synthetic-sanctoral" () }
+
+ let big_feast = entry ~month:12 ~day:8 ~slug:"big-feast" ~rank:Hi1
+ let commem_worthy = entry ~month:12 ~day:15 ~slug:"commem-worthy" ~rank:Lo
+
+ (* 20 Dec: four sanctoral entries on one date, for the full-accounting test.
+ "day-winner" and "eclipsed" tie on band (both Hi1, both Sanctoral);
+ ties break on slug, so "day-winner" wins and "eclipsed" -- a Hi1-rank
+ loser -- is [Transfer]-disposed, landing in [deferred]. "loser-a" and
+ "loser-b" are both Lo, both [Commemorate]-disposed, but [admit] only
+ keeps one: the other lands in Precedence's own [omitted] ("admission
+ limit reached"), distinct from "eclipsed"'s deferred reason. Four
+ candidates, three different fates -- observed, one specific omission
+ reason, two more. *)
+ let day_winner = entry ~month:12 ~day:20 ~slug:"day-winner" ~rank:Hi1
+ let eclipsed = entry ~month:12 ~day:20 ~slug:"eclipsed" ~rank:Hi1
+ let loser_a = entry ~month:12 ~day:20 ~slug:"loser-a" ~rank:Lo
+ let loser_b = entry ~month:12 ~day:20 ~slug:"loser-b" ~rank:Lo
+
+ let layer =
+ Layer.of_entries ~id:"synthetic" ~name:"Synthetic sanctoral"
+ [ big_feast; commem_worthy; day_winner; eclipsed; loser_a; loser_b ]
+
+ (* RG 96 (Task 6): "transferable" is impeded on 10 Jan by "blocker-a" (both
+ Hi1; ties break on slug, "blocker-a" < "transferable", so "blocker-a"
+ wins and "transferable" is the loser). 11 and 12 Jan are ALSO occupied
+ by their own uncontested Hi1-rank entries, so the placement search must
+ walk past more than one ineligible day, not just try origin+1 and stop.
+ 13 Jan carries nothing, so the feria (Lo) is the first admissible day. *)
+ let blocker_a = entry ~month:1 ~day:10 ~slug:"blocker-a" ~rank:Hi1
+ let transferable = entry ~month:1 ~day:10 ~slug:"transferable" ~rank:Hi1
+ let blocker_b = entry ~month:1 ~day:11 ~slug:"blocker-b" ~rank:Hi1
+ let blocker_c = entry ~month:1 ~day:12 ~slug:"blocker-c" ~rank:Hi1
+
+ (* RG 97-98: three entries coincide on 1 Feb, spanning both Transfer-
+ disposed ranks so band order and slug order genuinely disagree (Task 6
+ review finding 2). "collision-winner" and "transfer-hi1" both tie at
+ the BETTER band (Hi1, 5); "transfer-hi2" is at the WORSE band (Hi2,
+ 10). Within the Hi1 tie, slug decides: "collision-winner" < "transfer-
+ hi1", so "collision-winner" keeps 1 Feb. Of the two losers,
+ "transfer-hi1" (band 5) outranks "transfer-hi2" (band 10) -- by BAND,
+ not by slug: "transfer-b" (transfer-hi2's slug) sorts alphabetically
+ *before* "transfer-z" (transfer-hi1's slug). A sort that used slug
+ instead of band, or compared band backwards, would place "transfer-b"
+ on 2 Feb instead of "transfer-z" -- exactly the wrong-order failure
+ mode finding 2 flagged as unreachable in the old two-Hi-rank fixture.
+ 2 and 3 Feb carry nothing of their own, so they are the two admissible
+ days the pair must land on, consecutively, in band order:
+ "transfer-hi1" claims 2 Feb, pushing "transfer-hi2" to 3 Feb. *)
+ let collision_winner = entry ~month:2 ~day:1 ~slug:"collision-winner" ~rank:Hi1
+ let transfer_hi1 = entry ~month:2 ~day:1 ~slug:"transfer-z" ~rank:Hi1
+ let transfer_hi2 = entry ~month:2 ~day:1 ~slug:"transfer-b" ~rank:Hi2
+
+ let layer_with_collision =
+ Layer.of_entries ~id:"synthetic-with-collision" ~name:"Synthetic sanctoral (with collisions)"
+ [ big_feast; commem_worthy; day_winner; eclipsed; loser_a; loser_b;
+ blocker_a; transferable; blocker_b; blocker_c;
+ collision_winner; transfer_hi1; transfer_hi2 ]
+
+ let liturgical_year_of date =
+ let cy = D.year date in
+ if D.compare date (year_start cy) >= 0 then cy else cy - 1
+end
+
+let test_year_covers_every_day () =
+ let days = C.year Fixture.rite Fixture.layer 2026 in
+ let first = days.(0) and last = days.(Array.length days - 1) in
+ Alcotest.(check string) "starts at year_start" "2026-11-29" (D.to_iso8601 first.LD.date);
+ Alcotest.(check bool) "ends the day before next year_start" true
+ (D.compare last.LD.date (D.add_days (Fixture.rite.Rite.year_start 2027) (-1)) = 0);
+ (* every consecutive pair is exactly one day apart: no gaps, no duplicates *)
+ Array.iteri
+ (fun i d ->
+ if i > 0 then
+ Alcotest.(check int) "consecutive" 1
+ (D.to_rata d.LD.date - D.to_rata days.(i - 1).LD.date))
+ days
+
+let test_day_agrees_with_year () =
+ List.iter
+ (fun (y, m, dd) ->
+ let date = mk y m dd in
+ let from_day = C.day Fixture.rite Fixture.layer date in
+ let ys = C.year Fixture.rite Fixture.layer (Fixture.liturgical_year_of date) in
+ let from_year = Array.to_list ys |> List.find (fun d -> D.compare d.LD.date date = 0) in
+ Alcotest.(check string) "same observed"
+ (Sl.to_string from_year.LD.observed.Cel.slug)
+ (Sl.to_string from_day.LD.observed.Cel.slug))
+ [ (2026, 12, 1); (2027, 3, 15); (2027, 7, 4) ]
+
+(* Two entries in the layer, per the brief: one that outranks the feria and
+ one that does not. Both sit on their own date so each assertion below
+ pins one behaviour without the other candidate muddying it. *)
+let test_sanctoral_outranks_feria_becomes_observed () =
+ let days = C.year Fixture.rite Fixture.layer 2026 in
+ let date = mk 2026 12 8 in
+ let d = Array.to_list days |> List.find (fun d -> D.compare d.LD.date date = 0) in
+ Alcotest.(check string) "big-feast observed" "big-feast" (Sl.to_string d.LD.observed.Cel.slug)
+
+let test_lower_ranked_sanctoral_is_commemorated () =
+ let days = C.year Fixture.rite Fixture.layer 2026 in
+ let date = mk 2026 12 15 in
+ let d = Array.to_list days |> List.find (fun d -> D.compare d.LD.date date = 0) in
+ let expected_feria = Sl.to_string (Fixture.office date).Cel.slug in
+ Alcotest.(check string) "feria still observed" expected_feria (Sl.to_string d.LD.observed.Cel.slug);
+ Alcotest.(check (list string)) "commem-worthy commemorated" [ "commem-worthy" ]
+ (List.map (fun (c, _) -> Sl.to_string c.Cel.slug) d.LD.commemorations)
+
+(* Register/design lesson (Plan 2's Validate 9999 bug): [year_start (y + 1)]
+ at the top of the domain must not raise. Calling [C.year ... 9999] here
+ directly (no [try]) is itself part of the pin -- if the clamp regressed,
+ this call would raise and the test would error rather than fail cleanly. *)
+let test_year_9999_does_not_raise () =
+ let days = C.year Fixture.rite Fixture.layer 9999 in
+ Alcotest.(check bool) "non-empty" true (Array.length days > 0);
+ Alcotest.(check string) "starts at year_start 9999"
+ (D.to_iso8601 (Fixture.rite.Rite.year_start 9999))
+ (D.to_iso8601 days.(0).LD.date);
+ Alcotest.(check string) "ends at the domain ceiling" "9999-12-31"
+ (D.to_iso8601 days.(Array.length days - 1).LD.date)
+
+(* The symmetric case at the bottom: 1 January 1583 is the domain's earliest
+ representable date, and Fixture's Advent-anchored [year_start] puts it
+ well before that civil year's own year_start -- so [day] must resolve it
+ via the [y] = 1582 branch without calling [year_start 1582] (out of
+ domain). Checks identity (the date's own feria), not merely that
+ something came back. *)
+let test_day_near_domain_floor_does_not_raise () =
+ let date = mk 1583 1 1 in
+ let d = C.day Fixture.rite Fixture.layer date in
+ Alcotest.(check string) "returns the queried date" "1583-01-01" (D.to_iso8601 d.LD.date);
+ Alcotest.(check string) "observed is the day's own feria"
+ (Sl.to_string (Fixture.office date).Cel.slug) (Sl.to_string d.LD.observed.Cel.slug)
+
+(* Full-day accounting through the whole Calendar pipeline (Layer -> Calendar
+ -> Liturgical_day), not just Precedence in isolation: every candidate fed
+ in for 20 Dec 2026 -- the feria plus Fixture's four colliding sanctoral
+ entries -- is accounted for exactly once across
+ observed/commemorations/omitted/transferred_out. Checked as a slug SET
+ (Alcotest.slist), matching test_precedence.ml's own "nothing silently
+ lost" test: a length-only check would pass even if one slug were
+ duplicated into two buckets and another dropped, which this project has
+ shipped before (register finding).
+
+ "eclipsed" -- the Hi1-rank loser on 20 Dec -- no longer sits in [omitted]
+ here (that was Task 5's honest placeholder, before Task 6 existed to
+ place it): RG 95 gives an I-class loser the right of translation, so it
+ is genuinely gone from this day's own accounting, and its departure is
+ what [transferred_out] records instead. [test_transfer_moves_and_does_not_duplicate]
+ below is what actually pins where it lands. *)
+let test_full_day_accounting () =
+ let date = mk 2026 12 20 in
+ let d = C.day Fixture.rite Fixture.layer date in
+ let feria_slug = Sl.to_string (Fixture.office date).Cel.slug in
+ let bucketed =
+ (Sl.to_string d.LD.observed.Cel.slug
+ :: List.map (fun (c, _) -> Sl.to_string c.Cel.slug) d.LD.commemorations)
+ @ List.map (fun (c, _) -> Sl.to_string c.Cel.slug) d.LD.omitted
+ in
+ Alcotest.(check (slist string compare)) "every non-transferred candidate appears exactly once"
+ [ feria_slug; "day-winner"; "loser-a"; "loser-b" ]
+ bucketed;
+ (* Identity within [omitted]: "loser-a"/"loser-b" -- the ones Precedence's
+ own [admit] dropped for exceeding the commemoration limit, not RG 96-98
+ translation -- must carry that specific reason. Without this, a bug
+ that dropped [resolution.omitted]'s own reasons would still pass the
+ slug-set check above. *)
+ let reason_of slug =
+ d.LD.omitted |> List.find (fun (c, _) -> Sl.to_string c.Cel.slug = slug) |> snd
+ in
+ Alcotest.(check string) "loser-a carries Precedence's own admission-limit reason"
+ "omitted: admission limit reached" (reason_of "loser-a");
+ (* Not "eclipsed is absent from bucketed" -- the [slist] check just above
+ already guarantees that (a 5-element set would fail it), so re-asserting
+ absence from the same list would be checking something already proven,
+ not something new. What IS new here: this day positively records that a
+ transfer happened, via a different field entirely. *)
+ Alcotest.(check bool) "20 Dec records that something transferred out" true
+ (d.LD.transferred_out <> [])
+
+(* Task 6's placement pass (RG 96-98), properties 1 and 2: a transferred
+ celebration appears exactly once in the whole year -- transfer moves, not
+ duplicates -- and [transferred_in]/[transferred_out] are set on the two
+ ends of the move and point at each other. "transferable" is impeded on 10
+ Jan by "blocker-a" (same band, tie-broken by slug), and 11-12 Jan are also
+ occupied by their own uncontested Hi1 entries, so this also proves the
+ search walks past more than one ineligible day rather than only trying
+ origin+1. *)
+let test_transfer_moves_and_does_not_duplicate () =
+ let days = C.year Fixture.rite Fixture.layer_with_collision 2026 in
+ let occurrences =
+ Array.to_list days
+ |> List.filter (fun d -> Sl.to_string d.LD.observed.Cel.slug = "transferable")
+ in
+ Alcotest.(check int) "appears exactly once" 1 (List.length occurrences);
+ let landed = List.hd occurrences in
+ Alcotest.(check string) "lands on the first day past the blocked run (13 Jan 2027)"
+ "2027-01-13" (D.to_iso8601 landed.LD.date);
+ Alcotest.(check bool) "marked as transferred in" true (landed.LD.transferred_in <> None);
+ Alcotest.(check string) "the arriving celebration is itself \"transferable\""
+ "transferable"
+ (match landed.LD.transferred_in with
+ | Some c -> Sl.to_string c.Cel.slug
+ | None -> "<none>");
+ (* Located by its own known origin date, not by "the first day with
+ transferred_out <> []" -- layer_with_collision has more than one day
+ that transfers something out (20 Dec's "eclipsed", 1 Feb's two losers),
+ so that would silently pick up whichever happens to sort first in the
+ array rather than proving THIS origin points at THIS landing. Its own
+ origin has exactly one departure -- unlike 1 Feb below -- so a single
+ pair pins it. *)
+ let origin = Array.to_list days |> List.find (fun d -> D.compare d.LD.date (mk 2027 1 10) = 0) in
+ Alcotest.(check int) "exactly one departure recorded at the origin" 1
+ (List.length origin.LD.transferred_out);
+ let departed_cel, departed_to = List.hd origin.LD.transferred_out in
+ Alcotest.(check string) "the departed celebration is \"transferable\"" "transferable"
+ (Sl.to_string departed_cel.Cel.slug);
+ Alcotest.(check string) "it points at the landing date" (D.to_iso8601 landed.LD.date)
+ (D.to_iso8601 departed_to)
+
+(* Property 3: RG 97-98's ordering, genuinely by band (Task 6 review finding
+ 2) -- see the [layer_with_collision] comment for how the fixture is built
+ so band order and slug order actively disagree here: "transfer-hi1"
+ (slug "transfer-z", band 5) must claim 2 Feb before "transfer-hi2" (slug
+ "transfer-b", band 10), even though "transfer-b" sorts alphabetically
+ first. Checked by DATE, not by "b landed one day after a" -- Task 5's
+ review flagged exactly that style of check as satisfiable by construction
+ (an Array.init built from add_days would pass it trivially); asserting
+ the literal landing dates independently is what actually exercises the
+ placement order. *)
+let test_two_colliding_transferables_land_in_band_order () =
+ let days = C.year Fixture.rite Fixture.layer_with_collision 2026 in
+ let observed_on date =
+ Array.to_list days
+ |> List.find (fun d -> D.compare d.LD.date date = 0)
+ |> fun d -> Sl.to_string d.LD.observed.Cel.slug
+ in
+ Alcotest.(check string) "collision-winner keeps 1 Feb" "collision-winner"
+ (observed_on (mk 2027 2 1));
+ Alcotest.(check string) "higher-band loser (transfer-z, Hi1) claims 2 Feb first" "transfer-z"
+ (observed_on (mk 2027 2 2));
+ Alcotest.(check string) "lower-band loser (transfer-b, Hi2) is pushed to 3 Feb" "transfer-b"
+ (observed_on (mk 2027 2 3));
+ let count slug =
+ Array.to_list days
+ |> List.filter (fun d -> Sl.to_string d.LD.observed.Cel.slug = slug)
+ |> List.length
+ in
+ Alcotest.(check int) "transfer-z appears exactly once in the year" 1 (count "transfer-z");
+ Alcotest.(check int) "transfer-b appears exactly once in the year" 1 (count "transfer-b")
+
+(* Task 6 review finding 1: RG 97-98 says coinciding I-class feasts transfer
+ "in order" -- plural -- so 1 Feb's origin must record BOTH departures
+ ("transfer-z" -> 2 Feb, "transfer-b" -> 3 Feb), not just one. The
+ original [Date.t option] could only ever hold one; with three entries
+ colliding on the same date it silently dropped whichever [Hashtbl.iter]
+ visited last, which depends on OCaml's hash seed (OCAMLRUNPARAM=R) -- an
+ environment read in a kernel whose invariants forbid one. Sorting both
+ sides before comparing makes this assertion itself independent of
+ [transferred_out]'s own (now canonicalised, but not part of the
+ contract) internal order. *)
+let test_origin_records_every_departure () =
+ let days = C.year Fixture.rite Fixture.layer_with_collision 2026 in
+ let origin = Array.to_list days |> List.find (fun d -> D.compare d.LD.date (mk 2027 2 1) = 0) in
+ let departures =
+ origin.LD.transferred_out
+ |> List.map (fun (c, target) -> (Sl.to_string c.Cel.slug, D.to_iso8601 target))
+ |> List.sort compare
+ in
+ Alcotest.(check (list (pair string string)))
+ "both losers' departures are recorded, order-independently"
+ (List.sort compare [ ("transfer-z", "2027-02-02"); ("transfer-b", "2027-02-03") ])
+ departures
+
+(* Task 6 review finding 3: a rite whose [transfer_target] names a date
+ outside the liturgical year's own [start, stop] must not make the
+ candidate vanish. "eclipsed" is impeded on 20 Dec as usual, but this
+ rite's search jumps 5000 days forward -- far past [stop] -- instead of
+ walking to the next admissible day. It must never become [observed]
+ anywhere in the array (there is nowhere in the array for it to land),
+ and its origin must record the specific out-of-range reason, not the
+ generic non-convergence one (this placement decides on round 1; the
+ round guard is never even approached). *)
+let test_transfer_target_outside_year_is_recorded_not_lost () =
+ let stray_rite =
+ { Fixture.rite with Rite.transfer_target = (fun _ origin _ -> D.add_days origin 5000) }
+ in
+ let days = C.year stray_rite Fixture.layer 2026 in
+ let observed_anywhere =
+ Array.to_list days |> List.exists (fun d -> Sl.to_string d.LD.observed.Cel.slug = "eclipsed")
+ in
+ Alcotest.(check bool) "never becomes observed anywhere in the year" false observed_anywhere;
+ let origin = Array.to_list days |> List.find (fun d -> D.compare d.LD.date (mk 2026 12 20) = 0) in
+ let reason_of slug =
+ origin.LD.omitted |> List.find (fun (c, _) -> Sl.to_string c.Cel.slug = slug) |> snd
+ in
+ Alcotest.(check string) "recorded with the out-of-range reason, not silently dropped"
+ "omitted: transfer target falls outside the liturgical year (RG 96)" (reason_of "eclipsed")
+
+(* Termination is a correctness requirement (brief): a rite whose
+ [transfer_target] always answers with the impeded day itself (never
+ strictly forward, so the pass can never reach a fixed point) must not
+ hang the computation. It has to hit [max_transfer_rounds] and come back
+ with the stuck candidate recorded as omitted -- not dropped, not looping
+ forever. Using plain [Fixture.layer] (20 Dec's "eclipsed" is the stuck
+ candidate) is enough; this is about the guard firing, not about any
+ particular collision shape. *)
+let test_transfer_guard_records_failure_instead_of_looping () =
+ let broken_rite = { Fixture.rite with Rite.transfer_target = (fun _ origin _ -> origin) } in
+ let days = C.year broken_rite Fixture.layer 2026 in
+ let stuck =
+ Array.to_list days
+ |> List.exists (fun d ->
+ List.exists
+ (fun (_, reason) ->
+ reason = "omitted: transfer placement did not converge within max_transfer_rounds (RG 96-98)")
+ d.LD.omitted)
+ in
+ Alcotest.(check bool) "non-convergence is recorded rather than silently dropped or hung" true stuck
+
+let suite =
+ ( "Calendar",
+ [ Alcotest.test_case "year covers every day" `Quick test_year_covers_every_day;
+ Alcotest.test_case "day agrees with year" `Quick test_day_agrees_with_year;
+ Alcotest.test_case "outranking sanctoral becomes observed" `Quick
+ test_sanctoral_outranks_feria_becomes_observed;
+ Alcotest.test_case "lower-ranked sanctoral is commemorated" `Quick
+ test_lower_ranked_sanctoral_is_commemorated;
+ Alcotest.test_case "year 9999 does not raise" `Quick test_year_9999_does_not_raise;
+ Alcotest.test_case "day near the domain floor does not raise" `Quick
+ test_day_near_domain_floor_does_not_raise;
+ Alcotest.test_case "full day accounting" `Quick test_full_day_accounting;
+ Alcotest.test_case "transfer moves and does not duplicate" `Quick
+ test_transfer_moves_and_does_not_duplicate;
+ Alcotest.test_case "two colliding transferables land in band order" `Quick
+ test_two_colliding_transferables_land_in_band_order;
+ Alcotest.test_case "origin records every departure" `Quick
+ test_origin_records_every_departure;
+ Alcotest.test_case "transfer target outside year is recorded not lost" `Quick
+ test_transfer_target_outside_year_is_recorded_not_lost;
+ Alcotest.test_case "transfer guard records failure instead of looping" `Quick
+ test_transfer_guard_records_failure_instead_of_looping ] )
diff --git a/test/test_colitur.ml b/test/test_colitur.ml
index ae58607..58557aa 100644
--- a/test/test_colitur.ml
+++ b/test/test_colitur.ml
@@ -2,4 +2,6 @@
let () =
Alcotest.run "colitur"
[ Test_date.suite; Test_computus.suite; Test_colour.suite; Test_slug.suite; Test_names.suite;
- Test_overlay.suite; Test_temporal_ef.suite; Test_validate.suite ]
+ Test_overlay.suite; Test_temporal_ef.suite; Test_validate.suite; Test_precedence.suite;
+ Test_calendar.suite; Test_precedence_ef.suite; Test_sanctoral_ef.suite; Test_rite_ef.suite;
+ Test_differential.suite; Test_oracle.suite; Test_golden.suite ]
diff --git a/test/test_differential.ml b/test/test_differential.ml
new file mode 100644
index 0000000..a9bdb91
--- /dev/null
+++ b/test/test_differential.ml
@@ -0,0 +1,585 @@
+(* Task 15: differential harness vs lectio (sibling project, Go), EF only,
+ 2005-2050 -- validation layer 3 of the design spec's five (colitur CLAUDE.md
+ "Validation" section; layers 1-2, Types and Property, are already built and
+ green). lectio's own EF stream is committed as a fixture
+ (test/fixtures/lectio-ef-2005-2050.txt, provenance -- including the
+ SHA-256 this file's own [test_fixture_checksum] asserts, so a hand-edit or
+ partial re-copy of the fixture fails loudly rather than silently becoming
+ an unlabelled snapshot -- in the sibling .provenance file next to it);
+ colitur's side is recomputed fresh from this library on every run, through
+ the SAME pipeline `colitur day` uses (Colitur_kernel.Calendar over the
+ real data/ef/sanctoral.sexp + adjustments.sexp), not the compiled binary.
+
+ *** THREE STATED LIMITS THIS COMPARATOR DOES NOT PRETEND TO EXCEED ***
+
+ 1. Commemorations are NOT compared. lectio's trailing "+other-slug" tokens
+ are the LOSING sanctoral candidates for the day (its own dumper's doc
+ comment says so), not an RG 111 admitted set -- lectio has no RG 111
+ admission logic at all. Comparing that column would compare colitur's
+ real admitted commemorations against lectio's rejects, which proves
+ nothing. Only the seven leading columns (date weekday season week slug
+ rank colour) are read from either stream.
+
+ 2. lectio's own EF oracle test (~/git/projects/lectio,
+ internal/calendar/oracle_ef_test.go) asserts ONLY season, strictly,
+ against missalemeum, and ONLY for 2025-2026. Rank and colour are logged
+ there, never asserted. So lectio's advertised "0-error vs references
+ 2005-2050" covers season-exactness for the EF, not full-row-exactness.
+ A rank or colour difference below is therefore NOT presumptive evidence
+ that colitur is wrong -- every one is adjudicated against the Missal/RG
+ register directly (data/ef/expected-divergences.sexp), never against
+ lectio's say-so. (Layer 4, the oracle differential against missalemeum
+ itself, is what actually validates rank and colour; that is a later
+ task.)
+
+ 3. The WEEK column is not compared, at all, on either side. Two reasons,
+ both confirmed by reading lectio's own source
+ (cmd/lectio-ef-dump/main.go's doc comment): first, lectio prints week
+ "0" (rendered "-") "where no season week applies, e.g. named I class
+ feasts and per annum green-season ferias" -- an internal DISPLAY
+ convention of lectio's, not a liturgical fact, so there is nothing to
+ cross-check it against. Second, even where both sides print a real
+ number, the two engines anchor Time-after-Epiphany week numbering
+ differently (colitur: the first Sunday on/after Epiphany; lectio: a
+ fixed offset from 6 January -- register §3c item 5) and the offset
+ between them is NOT constant (it depends on which weekday 6 January
+ falls on, and re-synchronises mid-season), so no clean formula-based
+ check is possible without reimplementing lectio's own algorithm here.
+ Slug identity, rank and colour -- where the real liturgical substance
+ lives -- remain fully and separately compared; only the bare integer
+ is out of scope. See the report for the concrete rows this weakens.
+
+ *** THE THREE-LAYER DESIGN (controller ruling, Task 15 dispatch) ***
+
+ Of 16801 day-pairs (2005-2050), 11206 already match on the seven columns.
+ Of the 5595 that don't, exactly 25 distinct (field-diff) signatures cover
+ all of them (task-15-class-summary.txt). They resolve into three strictly
+ separate layers:
+
+ - Layer A (this file's [norm_season]/[norm_slug]): vocabulary. A
+ declarative, explicit, closed table of naming synonyms that carry no
+ liturgical substance -- lectio's "easter"/"christmas" ARE colitur's
+ "paschaltide"/"christmastide"; a handful of slugs are two different
+ engines' names for the identical office (Christmas Vigil, Holy Name
+ Sunday, the Pentecost-octave Ember days, the two Passiontide weeks).
+ Every entry is a literal string pair, never a pattern -- widening this
+ to a wildcard is exactly how a real bug would get hidden, so it is not
+ done even where it would shorten the table.
+
+ - Layer B ([strip_epiphany_index]): numbering. The ONE case in the whole
+ 5595 where a slug's embedded index genuinely cannot be reconciled by a
+ literal table (Time-after-Epiphany's non-constant offset, limit 3
+ above) -- both sides' embedded week digit is stripped to a common
+ family+weekday form before comparing, while rank and colour (which
+ carry no week-index information for an ordinary green-season
+ feria/Sunday) remain fully compared, so a genuine identity bug in this
+ family would still be caught by everything except the digit itself.
+
+ - Layer C (data/ef/expected-divergences.sexp, matched by
+ [layer_c_reason] below): the CITED allow-list. Eleven genuine liturgical
+ disagreements (C11 added by Task 16's oracle work, below), each citing
+ its RG paragraph and stating which engine is right (always colitur,
+ verified against the Missal/register, never against lectio's own
+ behaviour -- "lectio does it differently" is not itself a justification
+ anywhere in this file). This is the ONLY layer that may cover a
+ difference in rank, colour, or which celebration is observed; A and B
+ never do (enforced structurally below: A/B only ever
+ touch the season/slug fields, and Layer C's predicates each require an
+ exact, narrow field-diff SET, not "anything goes").
+
+ 13 January (register §6's long-open "Baptism of the Lord" item) is
+ EMPIRICALLY CONFIRMED FIXED, not allow-listed: colitur's slug/rank/colour
+ for 13 January already equal lectio's exactly, in all 46 years (the
+ sanctoral wiring landed in Task 11's "13 Jan now resolves to the Baptism
+ of the Lord" review note). The only residual difference there is season
+ (covered by Layer C's C1, the Jan 6-13 boundary) -- see the report. *)
+
+module Cal = Colitur_kernel.Calendar
+module Layer = Colitur_kernel.Layer
+module Overlay = Colitur_kernel.Overlay
+module LD = Colitur_kernel.Liturgical_day
+module Slug = Colitur_kernel.Slug
+module Date = Colitur_kernel.Date
+module Cel = Colitur_kernel.Celebration
+module Colour = Colitur_kernel.Colour
+module V = Rite_ef.Vocab_ef
+
+(* Same relative paths test_rite_ef.ml/test_sanctoral_ef.ml use: dune test
+ runs from _build/default/test/. *)
+let sanctoral_path = "../data/ef/sanctoral.sexp"
+let adjustments_path = "../data/ef/adjustments.sexp"
+let fixture_path = "fixtures/lectio-ef-2005-2050.txt"
+let allow_list_path = "../data/ef/expected-divergences.sexp"
+
+(* The fixture's own provenance note (test/fixtures/lectio-ef-2005-2050.provenance)
+ records this same digest, so it is discoverable by a reader who never runs
+ the suite. Recorded here too, and ASSERTED (fix round 1, finding 4): a
+ provenance note is enough to REGENERATE the fixture but says nothing about
+ whether the committed bytes still match the commit they claim to come
+ from -- an unnoticed hand-edit or partial re-copy would silently turn the
+ whole oracle into an unlabelled snapshot of whatever someone last ran.
+ Regenerate this constant (and the provenance note's copy) together,
+ deliberately, after re-running the exact command the provenance note
+ names -- never by copying the actual value back in to make a mismatch
+ pass, which would defeat the point of pinning it at all. *)
+let fixture_sha256 = "2ca3eeeda4e7a0406c4d004c1b2003fc0df671aca9af18a1b506543a721c8bac"
+
+(* Same technique tools/bootstrap_sanctoral.ml already uses for this exact
+ purpose (that file's own comment: shelling out to the system's
+ [sha256sum], not an OCaml crypto library -- Task 15's deps are frozen).
+ Unlike that tool, this avoids even the (already-permitted, per that
+ file's own comment, "already in the switch") [unix] library: [Sys.command]
+ plus a redirected-to-file capture needs nothing beyond the Stdlib every
+ dune executable already links. Depends on [sha256sum] being on PATH,
+ which every environment this suite has actually run in (Debian, per
+ CLAUDE.md) provides via coreutils; a machine without it fails this check
+ with a command-not-found exit code rather than silently skipping it. *)
+let sha256_of_file path =
+ let tmp = Filename.temp_file "colitur_differential_sha256" ".txt" in
+ Fun.protect
+ ~finally:(fun () -> try Sys.remove tmp with Sys_error _ -> ())
+ (fun () ->
+ let cmd = Printf.sprintf "sha256sum %s > %s" (Filename.quote path) (Filename.quote tmp) in
+ let rc = Sys.command cmd in
+ if rc <> 0 then Alcotest.failf "sha256sum exited %d for %s (is it on PATH?)" rc path;
+ let ic = open_in tmp in
+ let line =
+ try input_line ic
+ with End_of_file ->
+ close_in ic;
+ Alcotest.failf "sha256sum produced no output for %s" path
+ in
+ close_in ic;
+ match String.index_opt line ' ' with
+ | Some i -> String.sub line 0 i
+ | None -> Alcotest.failf "unexpected sha256sum output for %s: %S" path line)
+
+let real_layer () =
+ let layer =
+ match Layer.load V.rank_of_sexp sanctoral_path with
+ | Ok l -> l
+ | Error e -> Alcotest.failf "%s: failed to load: %s" sanctoral_path e
+ in
+ let overlay =
+ match Overlay.load V.rank_of_sexp adjustments_path with
+ | Ok o -> o
+ | Error e -> Alcotest.failf "%s: failed to load: %s" adjustments_path e
+ in
+ let layer, diagnostics = Overlay.apply layer overlay in
+ Alcotest.(check (list string)) "the committed overlay applies cleanly, no diagnostics" []
+ (List.map Overlay.diagnostic_to_string diagnostics);
+ layer
+
+(* --- The seven-column row both streams share (commemorations excluded, --- *)
+(* limit 1 above). *)
+type row = {
+ date : string;
+ weekday : string;
+ season : string;
+ week : string;
+ slug : string;
+ rank : string;
+ colour : string;
+}
+
+let read_lines path =
+ let ic = open_in path in
+ let rec loop acc =
+ match input_line ic with
+ | line -> loop (line :: acc)
+ | exception End_of_file ->
+ close_in ic;
+ List.rev acc
+ in
+ loop []
+
+let row_of_line line =
+ match String.split_on_char ' ' line with
+ | date :: weekday :: season :: week :: slug :: rank :: colour :: _others ->
+ { date; weekday; season; week; slug; rank; colour }
+ | _ -> Alcotest.failf "malformed fixture line (fewer than 7 fields): %S" line
+
+let lectio_rows () = List.map row_of_line (read_lines fixture_path)
+
+(* Recomputes colitur's day-by-day output straight from the library --
+ exactly [Colitur_kernel.Calendar.year] + [Rite_ef.context] over the real
+ committed data, the same pipeline bin/main.ml's `colitur day` runs (that
+ file's own [day_report]/[day_line] comments explain the two-liturgical-
+ year-per-civil-year indexing this mirrors). Duplicated here rather than
+ shared with bin/main.ml (an executable, not a library) -- the same choice
+ test_rite_ef.ml already made for [real_layer] above. *)
+let colitur_rows_2005_2050 () =
+ let layer = real_layer () in
+ let by_rata : (int, (V.season, V.rank) LD.t) Hashtbl.t = Hashtbl.create 20000 in
+ for y = 2004 to 2050 do
+ let days = Cal.year Rite_ef.context layer y in
+ Array.iter (fun (d : (V.season, V.rank) LD.t) -> Hashtbl.replace by_rata (Date.to_rata d.LD.date) d) days
+ done;
+ let mk y m d = match Date.make ~year:y ~month:m ~day:d with Ok t -> t | Error e -> failwith e in
+ let rows = ref [] in
+ for y = 2005 to 2050 do
+ let d = ref (mk y 1 1) in
+ let stop = mk y 12 31 in
+ while Date.compare !d stop <= 0 do
+ (match Hashtbl.find_opt by_rata (Date.to_rata !d) with
+ | Some day ->
+ let t = day.LD.temporal in
+ let cel = day.LD.observed in
+ let week =
+ match t.Colitur_kernel.Temporal.week with Some n -> string_of_int n | None -> "-"
+ in
+ rows :=
+ { date = Date.to_iso8601 day.LD.date;
+ weekday = Date.weekday_to_string t.Colitur_kernel.Temporal.weekday;
+ season = V.season_to_string t.Colitur_kernel.Temporal.season;
+ week;
+ slug = Slug.to_string cel.Cel.slug;
+ rank = V.rank_to_string cel.Cel.rank;
+ colour = Colour.to_string cel.Cel.colour
+ }
+ :: !rows
+ | None -> Alcotest.failf "internal error: no resolved day for %s" (Date.to_iso8601 !d));
+ d := Date.add_days !d 1
+ done
+ done;
+ List.rev !rows
+
+(* ---------------------------------------------------------------------- *)
+(* Layer A: vocabulary. Explicit, closed tables; no wildcards, no pattern *)
+(* matching against arbitrary content -- every case below is a literal *)
+(* string compared against a literal string. *)
+(* ---------------------------------------------------------------------- *)
+
+(* lectio's season word -> colitur's season word. The ONLY two seasons that
+ are spelled differently; every other season word is shared verbatim
+ (both call Advent "advent", Lent "lent", etc.). *)
+let norm_season = function
+ | "easter" -> "paschaltide"
+ | "christmas" -> "christmastide"
+ | s -> s
+
+let weekdays = [ "monday"; "tuesday"; "wednesday"; "thursday"; "friday"; "saturday" ]
+
+(* lectio's slug -> the colitur slug for the SAME office, where the two
+ projects simply chose different names. [month]/[lectio_rank] disambiguate
+ the two cases where lectio reuses one slug for what colitur names two
+ different ways (see each branch's own comment). *)
+let rec norm_slug ~month ~lectio_rank slug =
+ if String.equal slug "vigil-of-christmas" then "ef-nativity-vigil"
+ (* register §6: lectio names its vigils "vigil-of-X" (prefix); colitur's
+ own convention is "X-vigil" (suffix). Same celebration -- confirmed a
+ genuine duplicate in Task 11, where colitur's overlay suppresses
+ lectio's key entirely from the sanctoral layer. *)
+ else if
+ (* "ef-christmas-sunday-0"/"ef-christmas-0-<weekday>" mean TWO different
+ things in lectio depending on which window they fall in: the Sunday
+ within Holy Name week (2-5 January, colitur's own named feast) or an
+ ordinary day within the Nativity Octave (26-31 December, where colitur
+ uses its own ef-nativity-octave-day-N naming instead, Layer C's C6 --
+ that window keeps a genuine RANK difference too, so it must not be
+ absorbed here). Gating on [month = 1] keeps this table from ever
+ touching the December occurrence. *)
+ month = 1
+ then
+ if String.equal slug "ef-christmas-sunday-0" then "ef-holy-name-sunday"
+ else
+ match List.find_opt (fun wd -> String.equal slug ("ef-christmas-0-" ^ wd)) weekdays with
+ | Some wd -> "ef-christmas-1-" ^ wd
+ | None -> norm_slug_rest ~lectio_rank slug
+ else norm_slug_rest ~lectio_rank slug
+
+and norm_slug_rest ~lectio_rank slug =
+ (* Passiontide: lectio never distinguishes Passion week (colitur's week 1,
+ class-3 ferias) from Holy week (colitur's week 2, class-1 ferias) in the
+ slug -- both print "ef-passiontide-0-<weekday>". Rank, independently and
+ strictly compared elsewhere, is what actually tells the two weeks apart
+ (RG 91 entries 22 vs 2/7), so using it here to pick the expected colitur
+ digit does not launder away a genuine identity bug: a colitur bug that
+ mixed up the two weeks would, on the evidence available in this stream,
+ also very likely show up as a rank mismatch of its own. *)
+ match List.find_opt (fun wd -> String.equal slug ("ef-passiontide-0-" ^ wd)) weekdays with
+ | Some wd -> (
+ match lectio_rank with
+ | "class-3" -> "ef-passiontide-1-" ^ wd
+ | "class-1" -> "ef-passiontide-2-" ^ wd
+ | _ -> slug)
+ | None -> (
+ match slug with
+ | "ef-easter-8-wednesday" -> "ef-pentecost-ember-wed"
+ | "ef-easter-8-friday" -> "ef-pentecost-ember-fri"
+ | "ef-easter-8-saturday" -> "ef-pentecost-ember-sat"
+ | s -> s)
+
+(* ---------------------------------------------------------------------- *)
+(* Layer B: numbering (register §3c item 5). The Time-after-Epiphany *)
+(* week-index embedded in a slug is stripped to a common form on BOTH *)
+(* sides before comparing -- see limit 3 in this file's header comment *)
+(* for why a table (Layer A's tool) cannot do this instead. *)
+(* ---------------------------------------------------------------------- *)
+
+let starts_with ~prefix s =
+ let lp = String.length prefix in
+ String.length s >= lp && String.equal (String.sub s 0 lp) prefix
+
+let is_digit_string s = s <> "" && String.for_all (fun c -> c >= '0' && c <= '9') s
+
+let strip_epiphany_index slug =
+ let prefix = "ef-time-after-epiphany-" in
+ if not (starts_with ~prefix slug) then slug
+ else
+ let rest = String.sub slug (String.length prefix) (String.length slug - String.length prefix) in
+ match String.index_opt rest '-' with
+ | None -> slug
+ | Some i ->
+ let left = String.sub rest 0 i in
+ let right = String.sub rest (i + 1) (String.length rest - i - 1) in
+ if is_digit_string left && List.mem right weekdays then prefix ^ right
+ else if String.equal left "sunday" && is_digit_string right then prefix ^ "sunday"
+ else slug
+
+(* ---------------------------------------------------------------------- *)
+(* Field-diff computation: applies Layers A and B, then reports exactly *)
+(* which of the FIVE substantive columns still differ (week is never *)
+(* inspected at all -- limit 3). weekday is included defensively: dates *)
+(* are checked 1:1 aligned before this runs, so it should never fire, and *)
+(* if it ever does that is real signal, not noise to normalise away. *)
+(* ---------------------------------------------------------------------- *)
+
+type field = Weekday | Season | Slug_f | Rank | Colour_f
+
+let field_name = function
+ | Weekday -> "weekday"
+ | Season -> "season"
+ | Slug_f -> "slug"
+ | Rank -> "rank"
+ | Colour_f -> "colour"
+
+let month_of_date date = int_of_string (String.sub date 5 2)
+
+let diff_fields (l : row) (c : row) =
+ let m = month_of_date l.date in
+ let l_season = norm_season l.season in
+ let l_slug = strip_epiphany_index (norm_slug ~month:m ~lectio_rank:l.rank l.slug) in
+ let c_slug = strip_epiphany_index c.slug in
+ List.filter_map
+ (fun x -> x)
+ [ (if String.equal l.weekday c.weekday then None else Some Weekday);
+ (if String.equal l_season c.season then None else Some Season);
+ (if String.equal l_slug c_slug then None else Some Slug_f);
+ (if String.equal l.rank c.rank then None else Some Rank);
+ (if String.equal l.colour c.colour then None else Some Colour_f)
+ ]
+
+(* ---------------------------------------------------------------------- *)
+(* Layer C: the cited allow-list (data/ef/expected-divergences.sexp). *)
+(* Each predicate below names the [id] it matches; the sexp file carries *)
+(* that id's citation, verdict and expected row count. A predicate fires *)
+(* only on an EXACT, narrow field-diff set -- never "any difference at *)
+(* all" -- so it cannot silently absorb a difference outside what its own *)
+(* citation actually explains. *)
+(* ---------------------------------------------------------------------- *)
+
+let subset xs ys = List.for_all (fun x -> List.mem x ys) xs
+let day_of_date date = int_of_string (String.sub date 8 2)
+
+let advent_feria_slug slug =
+ List.exists
+ (fun wk -> List.exists (fun wd -> String.equal slug (Printf.sprintf "ef-advent-%d-%s" wk wd)) weekdays)
+ [ 3; 4 ]
+
+let sunday_iclass_slugs =
+ [ "ef-advent-sunday-2"; "ef-advent-sunday-4"; "ef-lent-sunday-1"; "ef-lent-sunday-2"; "ef-lent-sunday-3" ]
+
+let rose_sunday_slugs = [ "ef-advent-sunday-3"; "ef-lent-sunday-4" ]
+
+(* Fix round 1, finding 1: C1 and C6 (below) originally gated on calendar
+ date alone, with no slug/slug-family check -- unlike every other entry
+ here. The reviewer constructed the failure this leaves open: if a future
+ sanctoral regeneration made some OTHER 29-31 December celebration win the
+ day (colliding coincidentally with C6's own [Slug_f; Rank] diff shape),
+ it would be silently absorbed under "RG 91 entry 17, Nativity Octave" --
+ a citation that has nothing to do with the real cause. [subset diffs
+ [...]] alone was never enough; the SLUG that actually won must also be
+ the one each citation is about. Both lists below are exact literals (the
+ Nativity Octave's three colitur-only day slugs; the closed set of
+ offices that can legitimately observe C1's Jan 6-13 window), not
+ patterns -- a slug outside them fails through to [None] instead of being
+ absorbed. *)
+let jan_6_13_slug slug =
+ String.equal slug "ef-epiphany"
+ || String.equal slug "commemoration-of-the-baptism-of-the-lord"
+ || List.exists (fun wd -> String.equal slug ("ef-christmas-2-" ^ wd)) weekdays
+
+let nativity_octave_day_slugs =
+ [ "ef-nativity-octave-day-5"; "ef-nativity-octave-day-6"; "ef-nativity-octave-day-7" ]
+
+(* [layer_c_reason l c diffs] returns the [data/ef/expected-divergences.sexp]
+ [id] this row-pair's remaining (post Layer A/B) diff set belongs to, or
+ [None] if nothing here explains it (a genuine, uncovered failure). *)
+let layer_c_reason (l : row) (c : row) diffs =
+ let m = month_of_date l.date and d = day_of_date l.date in
+ if diffs = [] then None
+ else if
+ m = 1 && d >= 6 && d <= 13
+ && subset diffs [ Season; Colour_f; Slug_f ]
+ && (not (List.mem Slug_f diffs) || jan_6_13_slug c.slug)
+ then Some "C1"
+ else if List.mem c.slug sunday_iclass_slugs && diffs = [ Rank ] then Some "C2"
+ else if List.mem c.slug rose_sunday_slugs && subset diffs [ Rank; Colour_f ] then Some "C3"
+ else if advent_feria_slug c.slug && diffs = [ Rank ] then Some "C4"
+ else if starts_with ~prefix:"ef-lent-ember-" c.slug && subset diffs [ Slug_f; Rank ] then Some "C5"
+ else if
+ m = 12
+ && (d = 29 || d = 30 || d = 31)
+ && subset diffs [ Slug_f; Rank ]
+ && (not (List.mem Slug_f diffs) || List.mem c.slug nativity_octave_day_slugs)
+ then Some "C6"
+ else if (String.equal c.slug "matthew" || String.equal c.slug "thomas") && subset diffs [ Slug_f; Colour_f ]
+ then Some "C7"
+ else if
+ (String.equal c.slug "ef-rogation-monday" || String.equal c.slug "ef-rogation-tuesday")
+ && subset diffs [ Season; Slug_f; Colour_f ]
+ then Some "C8"
+ else if
+ (String.equal l.slug "joseph-spouse-of-the-bl-virgin-mary"
+ || String.equal c.slug "joseph-spouse-of-the-bl-virgin-mary")
+ && subset diffs [ Season; Slug_f; Rank; Colour_f ]
+ then Some "C9"
+ else if
+ (String.equal l.date "2011-07-02" || String.equal l.date "2011-07-04")
+ && subset diffs [ Slug_f; Rank; Colour_f ]
+ then Some "C10"
+ else if String.equal c.slug "ef-passiontide-2-thursday" && diffs = [ Colour_f ] then Some "C11"
+ else None
+
+(* ---------------------------------------------------------------------- *)
+(* data/ef/expected-divergences.sexp loading -- a plain sequence of *)
+(* top-level records (not one wrapping list: see the file's own header). *)
+(* ---------------------------------------------------------------------- *)
+
+open Sexplib0.Sexp_conv
+
+type allow_entry = { id : string; citation : string; verdict : string; note : string; expected_rows : int }
+[@@deriving sexp]
+
+let load_allow_list () =
+ let sexps =
+ try Sexplib.Sexp.load_sexps allow_list_path
+ with e -> Alcotest.failf "%s: failed to load: %s" allow_list_path (Printexc.to_string e)
+ in
+ List.map allow_entry_of_sexp sexps
+
+(* ---------------------------------------------------------------------- *)
+(* The comparison itself, run once and shared by every test case below *)
+(* (Alcotest test cases are independent processes-in-a-list, not free to *)
+(* share mutable state across a suite, so this recomputes per call -- *)
+(* acceptable: colitur's own 1583-9999 property sweep runs orders of *)
+(* magnitude more days in tens of seconds, and this is 16801 civil days, *)
+(* once per test case, twice total). *)
+(* ---------------------------------------------------------------------- *)
+
+type outcome = Matched | Explained of string | Unexplained of field list
+
+let compare_streams () =
+ let lectio = lectio_rows () in
+ let colitur = colitur_rows_2005_2050 () in
+ (lectio, colitur)
+
+let classify lectio colitur =
+ List.map2
+ (fun (l : row) (c : row) ->
+ if not (String.equal l.date c.date) then
+ Alcotest.failf "streams misaligned: lectio %s vs colitur %s" l.date c.date;
+ let diffs = diff_fields l c in
+ if diffs = [] then (l, c, Matched)
+ else
+ match layer_c_reason l c diffs with
+ | Some id -> (l, c, Explained id)
+ | None -> (l, c, Unexplained diffs))
+ lectio colitur
+
+let describe_unexplained (l : row) (c : row) diffs =
+ Printf.sprintf "%s: %s differ -- lectio=(%s %s %s %s %s) colitur=(%s %s %s %s %s)" l.date
+ (String.concat "," (List.map field_name diffs))
+ l.weekday l.season l.slug l.rank l.colour c.weekday c.season c.slug c.rank c.colour
+
+(* Fix round 1, finding 4: the fixture's own byte content must still match
+ the SHA-256 its provenance note claims (lectio commit 2386a45, recorded
+ both here and in test/fixtures/lectio-ef-2005-2050.provenance). Checked
+ before anything else reads the fixture -- a drifted fixture makes every
+ other assertion in this suite a statement about an unlabelled snapshot,
+ not about the pinned lectio commit it claims to be. *)
+let test_fixture_checksum () =
+ Alcotest.(check string) "fixture SHA-256 matches its provenance note" fixture_sha256
+ (sha256_of_file fixture_path)
+
+(* Dates align 1:1 in the same order on both streams (both are one line per
+ civil day, 2005-01-01..2050-12-31 -- see the fixture's own provenance
+ note and [colitur_rows_2005_2050]'s construction). A silent misalignment
+ would make every subsequent comparison meaningless -- checked first, on
+ its own, rather than trusted. *)
+let test_dates_align () =
+ let lectio, colitur = compare_streams () in
+ Alcotest.(check int) "both streams have 16801 rows (46*365 + 11 leap days)" 16801 (List.length lectio);
+ Alcotest.(check int) "colitur recomputed the same number of rows" (List.length lectio) (List.length colitur);
+ let mismatched =
+ List.filter_map
+ (fun (l, c) -> if String.equal l.date c.date then None else Some (l.date, c.date))
+ (List.combine lectio colitur)
+ in
+ Alcotest.(check (list (pair string string))) "no misaligned dates" [] mismatched
+
+(* The core assertion: every one of the 5595 raw differences is either
+ normalised away (Layers A/B) or named in the cited allow-list (Layer C).
+ Nothing else is permitted to pass silently. *)
+let test_no_unexplained_differences () =
+ let lectio, colitur = compare_streams () in
+ let classified = classify lectio colitur in
+ let unexplained =
+ List.filter_map
+ (fun (l, c, outcome) ->
+ match outcome with Unexplained diffs -> Some (describe_unexplained l c diffs) | _ -> None)
+ classified
+ in
+ Alcotest.(check (list string)) "no differences outside Layers A/B/C" [] unexplained
+
+(* Teeth, not just green: EVERY Layer C entry's actual row count over this
+ fixture must equal what data/ef/expected-divergences.sexp declares, in
+ BOTH directions -- an id used by [layer_c_reason] that is missing from
+ the sexp file, an id declared but never matched, or a count that has
+ drifted either up or down, all fail loudly. A silent drift here is
+ exactly the "allow-list absorbs a new bug" failure mode this task was
+ warned about. *)
+let test_layer_c_counts_match_citations () =
+ let lectio, colitur = compare_streams () in
+ let classified = classify lectio colitur in
+ let actual_counts = Hashtbl.create 16 in
+ List.iter
+ (fun (_, _, outcome) ->
+ match outcome with
+ | Explained id ->
+ Hashtbl.replace actual_counts id (1 + Option.value ~default:0 (Hashtbl.find_opt actual_counts id))
+ | _ -> ())
+ classified;
+ let declared = load_allow_list () in
+ let expected =
+ List.sort compare (List.map (fun e -> (e.id, e.expected_rows)) declared)
+ in
+ let actual =
+ List.sort compare
+ (Hashtbl.fold (fun id n acc -> (id, n) :: acc) actual_counts [])
+ in
+ Alcotest.(check (list (pair string int)))
+ "every allow-list id's actual row count matches its citation's expected_rows, and no id is unused or \
+ undeclared"
+ expected actual
+
+let suite =
+ ( "differential (lectio, EF, 2005-2050)",
+ [ Alcotest.test_case "fixture SHA-256 matches its provenance note" `Quick test_fixture_checksum;
+ Alcotest.test_case "streams are 16801 rows each, dates aligned 1:1" `Quick test_dates_align;
+ Alcotest.test_case "every difference is normalised (A/B) or cited (C) -- none unexplained" `Quick
+ test_no_unexplained_differences;
+ Alcotest.test_case "Layer C counts match data/ef/expected-divergences.sexp exactly" `Quick
+ test_layer_c_counts_match_citations
+ ] )
diff --git a/test/test_golden.ml b/test/test_golden.ml
new file mode 100644
index 0000000..945abe5
--- /dev/null
+++ b/test/test_golden.ml
@@ -0,0 +1,511 @@
+(* Task 17: golden pins -- validation layer 5 of the design spec's five
+ (colitur CLAUDE.md "Validation" section; layers 1-4 -- Types, Property,
+ the lectio differential, the missalemeum oracle -- are already built and
+ green: test_validate.ml, test_differential.ml, test_oracle.ml).
+
+ *** THE ONE RULE THIS FILE IS BUILT AROUND ***
+
+ A golden test blesses whatever it is given. Every other layer derives its
+ expectation from something independent of colitur's own output -- an
+ invariant, a sibling engine, a published calendar oracle. This layer's
+ expectation comes from ME, so every literal string below was checked by
+ hand, against sources OUTSIDE this codebase, BEFORE it was typed in here
+ -- never copied from a `colitur day` run and then rationalised:
+
+ 1. The three Easter dates this file pins (1598-03-22, 1666-04-25,
+ 2038-04-25) were independently computed by hand using the standard
+ Gauss/Meeus Gregorian Easter algorithm (the same algorithm register
+ §0's "first Sunday on/after the ecclesiastical full moon on/after 21
+ March" reduces to), NOT read off Computus.gregorian_easter or the CLI.
+ All three matched colitur's own output exactly on the first attempt.
+ 2. EVERY weekday asserted below was independently cross-checked against
+ `date -d <iso-date> +%A` (GNU coreutils, glibc's own proleptic-
+ Gregorian calendar arithmetic -- a completely separate implementation
+ from anything in this repository) before being written into a literal
+ string. All matched.
+ 3. Every precedence/transfer/commemoration outcome was traced by hand
+ against its RG citation (quoted or paraphrased in each test's own
+ comment) and against the actual `band`/`disposition`/`admit`/
+ `transfer_target` logic in precedence_ef.ml, not merely observed to
+ "look plausible". Where the primary text alone does not fully settle
+ an outcome (the 2008 Annunciation/Joseph tie, see that test's own
+ comment), this is said explicitly rather than papered over with a
+ confident-sounding citation.
+
+ *** WHY [describe] BUILDS ONE STRING PER DAY ***
+
+ Every assertion below compares ONE formatted line against a single
+ expected literal, rather than five or six separate field checks. This is
+ deliberate: a one-line diff on failure still names the day (it is the
+ first token) and shows exactly which field changed (Alcotest's own diff
+ highlights the differing substring) -- "prove the pins have teeth" in the
+ brief's own words -- while keeping each test's body to one literal per
+ date instead of five, which is what makes 30-odd pinned dates reviewable
+ at all. [describe]'s own five components (season/week/slug/rank/colour,
+ commemorations, transferred_in, transferred_out) are exactly the fields
+ {!Colitur_kernel.Liturgical_day.t} promises never to lose (that type's own
+ doc comment) -- nothing is cherry-picked to make a case look cleaner than
+ it is. *)
+
+module Cal = Colitur_kernel.Calendar
+module Layer = Colitur_kernel.Layer
+module Overlay = Colitur_kernel.Overlay
+module LD = Colitur_kernel.Liturgical_day
+module Slug = Colitur_kernel.Slug
+module Date = Colitur_kernel.Date
+module Cel = Colitur_kernel.Celebration
+module Colour = Colitur_kernel.Colour
+module Temporal = Colitur_kernel.Temporal
+module Prec = Colitur_kernel.Precedence
+module V = Rite_ef.Vocab_ef
+
+(* Same relative paths every other suite in this directory uses (dune test
+ runs from _build/default/test/). *)
+let sanctoral_path = "../data/ef/sanctoral.sexp"
+let adjustments_path = "../data/ef/adjustments.sexp"
+
+(* Loaded once at module init, same convention test_validate.ml's own
+ [real_ef_layer] uses (not test_oracle.ml/test_differential.ml's
+ per-test-case reload, which recomputes a whole 46-year or 2-year sweep
+ per call for reasons specific to those files -- loading the immutable
+ layer itself has no such per-call cost and nothing here mutates it). *)
+let real_ef_layer =
+ match Layer.load V.rank_of_sexp sanctoral_path with
+ | Error e -> failwith (Printf.sprintf "%s: failed to load: %s" sanctoral_path e)
+ | Ok layer -> (
+ match Overlay.load V.rank_of_sexp adjustments_path with
+ | Error e -> failwith (Printf.sprintf "%s: failed to load: %s" adjustments_path e)
+ | Ok overlay ->
+ let layer, diagnostics = Overlay.apply layer overlay in
+ if diagnostics <> [] then
+ failwith
+ (Printf.sprintf "unexpected overlay diagnostics: %s"
+ (String.concat "; " (List.map Overlay.diagnostic_to_string diagnostics)));
+ layer)
+
+let mk y m d = match Date.make ~year:y ~month:m ~day:d with Ok t -> t | Error e -> failwith e
+
+(* [Cal.day] recomputes its whole liturgical year on every call (calendar.mli
+ -- "pure, no cache"); acceptable here, same as test_rite_ef.ml's own use
+ of [Cal.year] for a handful of dates, not a hot loop. *)
+let fetch y m d = Cal.day Rite_ef.context real_ef_layer (mk y m d)
+
+let slug_s (c : V.rank Cel.t) = Slug.to_string c.Cel.slug
+let rank_s (c : V.rank Cel.t) = V.rank_to_string c.Cel.rank
+let colour_s (c : V.rank Cel.t) = Colour.to_string c.Cel.colour
+let privilege_s = function Prec.Privileged -> "privileged" | Prec.Ordinary -> "ordinary"
+
+(* The five fields {!Colitur_kernel.Liturgical_day.t} promises are never
+ silently lost, folded into one comparable line -- see the file header for
+ why one string, not five checks. *)
+let describe (day : (V.season, V.rank) LD.t) =
+ let t = day.LD.temporal in
+ let week = match t.Temporal.week with Some n -> string_of_int n | None -> "-" in
+ let comms =
+ List.map (fun (c, p) -> Printf.sprintf "%s:%s" (slug_s c) (privilege_s p)) day.LD.commemorations
+ |> List.sort compare |> String.concat ","
+ in
+ let tin = match day.LD.transferred_in with None -> "-" | Some c -> slug_s c in
+ let tout =
+ List.map (fun (c, d) -> Printf.sprintf "%s->%s" (slug_s c) (Date.to_iso8601 d)) day.LD.transferred_out
+ |> List.sort compare |> String.concat ","
+ in
+ Printf.sprintf "%s %s season=%s week=%s slug=%s rank=%s colour=%s comms=[%s] in=%s out=[%s]"
+ (Date.to_iso8601 day.LD.date)
+ (Date.weekday_to_string t.Temporal.weekday)
+ (V.season_to_string t.Temporal.season)
+ week (slug_s day.LD.observed) (rank_s day.LD.observed) (colour_s day.LD.observed) comms tin tout
+
+let check ~msg y m d expected = Alcotest.(check string) msg expected (describe (fetch y m d))
+
+let omitted_has (day : (V.season, V.rank) LD.t) slug =
+ List.exists (fun (c, _) -> slug_s c = slug) day.LD.omitted
+
+(* ------------------------------------------------------------------ *)
+(* Easter extremes (register §0; independently Gauss-computed, see file
+ header point 1). extreme_years in test_validate.ml already pins that
+ 1598/1666 are the true earliest/latest within 1583..2500 -- this file
+ pins what the RESOLVED DAY looks like there, not merely that Easter
+ lands on the expected date. *)
+(* ------------------------------------------------------------------ *)
+
+(* 1598: earliest Gregorian Easter possible, 22 March -- hand-verified via
+ Gauss's algorithm (a = 2, b = 15, c = 98, ..., h = 0, l = 0, m = 0 ->
+ 22 March), independent of Computus.gregorian_easter. RG 76 (Paschaltide
+ begins with the Vigil Mass) + RG 91 entry 1 (Easter Sunday, I class) +
+ RG 119(b) (white from the Vigil Mass) fix season/rank/colour; the day
+ before (Holy Saturday, still Passiontide, violet per RG 128) is pinned
+ alongside it to prove the season boundary itself falls in the right
+ place, not merely that 22 March is white. *)
+let test_easter_extreme_1598 () =
+ check ~msg:"1598-03-21 Holy Saturday: still Passiontide, violet (RG 128)" 1598 3 21
+ "1598-03-21 saturday season=passiontide week=2 slug=ef-passiontide-2-saturday rank=class-1 colour=violet \
+ comms=[] in=- out=[]";
+ check ~msg:"1598-03-22 earliest possible Easter (Gauss-verified): Paschaltide begins, white, class-1" 1598 3
+ 22
+ "1598-03-22 sunday season=paschaltide week=1 slug=ef-easter-sunday rank=class-1 colour=white comms=[] in=- \
+ out=[]"
+
+(* 1666: latest Gregorian Easter possible, 25 April -- hand-verified via
+ Gauss's algorithm (a = 13, b = 16, c = 66, ..., h = 29, l = 5, m = 0 ->
+ 25 April). Same citations as 1598 above. *)
+let test_easter_extreme_1666 () =
+ check ~msg:"1666-04-24 Holy Saturday: still Passiontide, violet (RG 128)" 1666 4 24
+ "1666-04-24 saturday season=passiontide week=2 slug=ef-passiontide-2-saturday rank=class-1 colour=violet \
+ comms=[] in=- out=[]";
+ check ~msg:"1666-04-25 latest possible Easter (Gauss-verified): Paschaltide begins, white, class-1" 1666 4
+ 25
+ "1666-04-25 sunday season=paschaltide week=1 slug=ef-easter-sunday rank=class-1 colour=white comms=[] in=- \
+ out=[]"
+
+(* 2038: the brief's "late modern case" -- Easter also 25 April (Gauss-
+ verified: a = 5, b = 20, c = 38, ..., h = 29, l = 5, m = 0 -> 25 April,
+ the SAME extreme as 1666, reached independently), chosen because it is a
+ near-term year rather than a 17th-century one.
+
+ DELIBERATE EXCLUSION, not an oversight: register §6's F4 finding
+ confirms 2038-03-06 (+sts-felicitas-perpetua), 2038-03-08 (+john-of-god)
+ and 2038-03-09 (+frances-rome) are WRONG -- three sanctoral entries
+ bootstrapped from lectio carry a Commemoration_only status that should be
+ a real III-class Feast (a bootstrap-generator defect traced to
+ missalemeum's own commemoration-id ranks, not fixable without touching
+ lectio). Pinning those three dates as "correct" would freeze a known bug
+ into a regression test that then fights its own fix -- the report's own
+ warning against exactly this. Only the Easter-week days (temporal-cycle
+ territory, untouched by the March sanctoral bug) are pinned here. *)
+let test_easter_extreme_2038_late_modern () =
+ check ~msg:"2038-04-24 Holy Saturday: still Passiontide, violet (RG 128)" 2038 4 24
+ "2038-04-24 saturday season=passiontide week=2 slug=ef-passiontide-2-saturday rank=class-1 colour=violet \
+ comms=[] in=- out=[]";
+ check ~msg:"2038-04-25 late-modern instance of the latest possible Easter (Gauss-verified)" 2038 4 25
+ "2038-04-25 sunday season=paschaltide week=1 slug=ef-easter-sunday rank=class-1 colour=white comms=[] in=- \
+ out=[]"
+
+(* ------------------------------------------------------------------ *)
+(* Annunciation transfer, 25 March inside Holy Week (register §4, RG 96
+ Attamen (a)). 2016: Easter = 27 March (Gauss-independent of this file's
+ own concern -- already covered by extreme-year hand-checks above; 2016 is
+ an ordinary year, trusted via the property sweep + the weekday
+ cross-check below), so 25 March 2016 falls on GOOD FRIDAY itself --
+ literally inside Holy Week, not merely "impeded by the Easter octave" the
+ way the 1598/2008/1666 cases are. Independently confirmed: `date -d
+ 2016-03-25 +%A` = Friday, `date -d 2016-03-27 +%A` = Sunday (Easter). *)
+let test_annunciation_transfer_inside_holy_week_2016 () =
+ (* RG 91 entry 2 (Sacred Triduum) outranks entry 11 (an ordinary universal
+ I-class feast) outright -- Good Friday wins, Annunciation is
+ Transfer-disposed (RG 95: only I-class feasts transfer). RG 23 (I-class
+ ferias admit no commemoration except one privileged) leaves nothing on
+ the day itself: register's own note on RG 23 says this branch "never
+ actually reaches a live case" for exactly this reason. *)
+ check ~msg:"2016-03-25 Good Friday: Triduum outranks the Annunciation (RG91 entry 2 > 11), no commemoration"
+ 2016 3 25
+ "2016-03-25 friday season=passiontide week=2 slug=ef-passiontide-2-friday rank=class-1 colour=violet \
+ comms=[] in=- out=[annunciation-of-the-blessed-virgin-mary->2016-04-04]";
+ (* The general RG 96 walk from 26 March would still be inside the Triduum,
+ the Easter octave (all I class, entry 2/10) -- carrying the feast PAST
+ Easter -- so RG 96 Attamen (a)'s condition fires: sedes propria = Monday
+ after Low Sunday = Easter + 8 = 27 Mar + 8 = 4 April. *)
+ check ~msg:"2016-04-04 Easter+8 (Monday after Low Sunday): RG96 Attamen(a) sedes propria fires" 2016 4 4
+ "2016-04-04 monday season=paschaltide week=2 slug=annunciation-of-the-blessed-virgin-mary rank=class-1 \
+ colour=white comms=[] in=annunciation-of-the-blessed-virgin-mary out=[]"
+
+(* ------------------------------------------------------------------ *)
+(* 2008: the double transfer (register §4, "cases worth adding"). Easter =
+ 23 March 2008 (trusted via the property sweep, not independently
+ Gauss-checked a fourth time -- the algorithm is already hand-verified
+ above; what this case adds is the TWO-CANDIDATE collision, not a fourth
+ Easter-date check). Independently confirmed: `date -d 2008-03-19 +%A` =
+ Wednesday, `-03-31` = Monday, `-04-01` = Tuesday. *)
+let test_annunciation_joseph_double_transfer_2008 () =
+ (* St Joseph (19 March, I class, universal, band 11 -- same table entry as
+ the Annunciation) falls on Wednesday of Holy Week (RG 91 entry 7: an
+ I-class feria, band 7, above 11) -- impeded, Transfer-disposed. *)
+ check ~msg:"2008-03-19 Wednesday of Holy Week outranks Joseph (RG91 entry 7 > 11), no commemoration" 2008 3
+ 19
+ "2008-03-19 wednesday season=passiontide week=2 slug=ef-passiontide-2-wednesday rank=class-1 colour=violet \
+ comms=[] in=- out=[joseph-spouse-of-the-bl-virgin-mary->2008-04-01]";
+ (* Both Joseph and the Annunciation are band 11 (register: neither is
+ Immaculate Conception/Assumption, band 4; both are ordinary universal
+ I-class feasts). RG 96 Attamen (a) is CONDITIONAL, so it is evaluated
+ for BOTH: the Annunciation's own general walk from 26 March would cross
+ the Easter octave and land past Easter, so its exception fires --
+ Easter + 8 = 23 Mar + 8 = 31 March, its NAMED sedes propria. Joseph has
+ no such named exception; its own general walk (from 20 March) also
+ crosses the octave and, absent Annunciation, would land on the SAME 31
+ March. WEAKER-THAN-IT-LOOKS, stated honestly: RG 97-98's plain text
+ ("the higher in the table is kept") does not itself distinguish two
+ candidates tied at the SAME table entry (11) the way it does for a
+ genuine dignity difference -- the engine breaks this specific tie by
+ slug (calendar.ml's own [compare_deferred]: alphabetical, an
+ engineering convention, not itself an RG citation), and
+ "annunciation-of-the-blessed-virgin-mary" < "joseph-spouse-of-the-bl-
+ virgin-mary" is exactly why Annunciation claims 31 March first in
+ [place_transfers]'s per-round sort. A textual argument beyond the bare
+ tie-break does exist -- the Annunciation's own Attamen clause names its
+ target as a "sedes propria" (proper seat), a positively-assigned day,
+ where Joseph is merely wherever the generic RG96 search happens to
+ land -- but this is this report's own reading of the primary text, not
+ something the register states outright, so it is offered as
+ corroboration, not as the citation carrying the outcome. *)
+ check ~msg:"2008-03-31 Easter+8: Annunciation's named sedes propria (RG96 Attamen a) claims the day first"
+ 2008 3 31
+ "2008-03-31 monday season=paschaltide week=2 slug=annunciation-of-the-blessed-virgin-mary rank=class-1 \
+ colour=white comms=[] in=annunciation-of-the-blessed-virgin-mary out=[]";
+ (* Joseph's own general RG96 walk, finding 31 March already claimed
+ (occupant reports Class1 there, still blocking per [is_blocking]),
+ continues one more day to 1 April -- RG 97-98's "in order": the second
+ I-class candidate to reach an already-occupied target keeps searching
+ rather than displacing the first. *)
+ check ~msg:"2008-04-01: Joseph's RG96 walk continues past the now-claimed 31 March (RG97-98 'in order')" 2008
+ 4 1
+ "2008-04-01 tuesday season=paschaltide week=2 slug=joseph-spouse-of-the-bl-virgin-mary rank=class-1 \
+ colour=white comms=[] in=joseph-spouse-of-the-bl-virgin-mary out=[]"
+
+(* ------------------------------------------------------------------ *)
+(* RG 96 Attamen (a) is CONDITIONAL ("quando est transferendum post
+ Pascha") -- pinning both sides so the condition itself, not merely the
+ exception's existence, is under test. All six weekdays independently
+ confirmed via `date -d`. *)
+(* ------------------------------------------------------------------ *)
+
+(* Before Easter: 2057 (Easter 22 Apr), 2007 and 2012 (both Easter 8 Apr).
+ In each, 25 March is a Sunday impeding the Annunciation (Lent III in
+ 2057; Passion Sunday, Dominica I Passionis, in 2007/2012), and the
+ GENERAL RG96 walk lands on 26 March -- an ordinary III-class feria, band
+ 22/25, well before Easter -- so the condition never fires: no named
+ exception, just the plain walk. Each arrival day's own displaced feria is
+ RG25/RG109(e)-privileged (an ordinary Lent/Passiontide feria, impeded,
+ must be commemorated) -- a second, independent confirmation of the
+ RG24/25/RG109(e) mandate this file also pins directly below at 1900/1902,
+ in a different code path (an ARRIVING transferred feast's displaced
+ office, not a plain sanctoral winner's). *)
+let test_annunciation_exception_not_triggered_general_walk_suffices () =
+ check ~msg:"2057-03-26: general RG96 walk suffices (target before Easter, 22 Apr) -- no Attamen(a) exception"
+ 2057 3 26
+ "2057-03-26 monday season=lent week=3 slug=annunciation-of-the-blessed-virgin-mary rank=class-1 \
+ colour=white comms=[ef-lent-3-monday:privileged] in=annunciation-of-the-blessed-virgin-mary out=[]";
+ check ~msg:"2007-03-26: general RG96 walk suffices (target before Easter, 8 Apr) -- no Attamen(a) exception"
+ 2007 3 26
+ "2007-03-26 monday season=passiontide week=1 slug=annunciation-of-the-blessed-virgin-mary rank=class-1 \
+ colour=white comms=[ef-passiontide-1-monday:privileged] in=annunciation-of-the-blessed-virgin-mary out=[]";
+ check ~msg:"2012-03-26: general RG96 walk suffices (target before Easter, 8 Apr) -- no Attamen(a) exception"
+ 2012 3 26
+ "2012-03-26 monday season=passiontide week=1 slug=annunciation-of-the-blessed-virgin-mary rank=class-1 \
+ colour=white comms=[ef-passiontide-1-monday:privileged] in=annunciation-of-the-blessed-virgin-mary out=[]"
+
+(* After Easter: 2016 (already pinned above, Easter+8 = 4 April) and 2024
+ (Easter 31 March, Easter+8 = 8 April). In both, the general walk would
+ cross Easter, so Attamen(a) fires and lands the feast on the Monday after
+ Low Sunday exactly. Both arrival days are Paschaltide-2 (Class4
+ ferias) -- RG26 (IV-class ferias never commemorated), so unlike the
+ "before" trio above, no commemoration is left behind; a second,
+ independent confirmation of RG26 in yet another code path. *)
+let test_annunciation_exception_triggered_when_walk_would_cross_easter () =
+ check
+ ~msg:
+ "2024-04-08: Easter+8 (Easter=31 Mar): RG96 Attamen(a) fires, arrival day is Class4 so no commemoration \
+ (RG26)"
+ 2024 4 8
+ "2024-04-08 monday season=paschaltide week=2 slug=annunciation-of-the-blessed-virgin-mary rank=class-1 \
+ colour=white comms=[] in=annunciation-of-the-blessed-virgin-mary out=[]"
+(* 2016's own pin (test_annunciation_transfer_inside_holy_week_2016) is the
+ other half of this pair -- not repeated here to avoid asserting the same
+ date twice. *)
+
+(* ------------------------------------------------------------------ *)
+(* 2011-07-04, the Precious Blood (register §4/§6, differential C10).
+ Sacred Heart (Easter + 68, RG 91 entry 3) coincides with the fixed 1 July
+ feast of the Most Precious Blood (entry 11) in 2011 (Easter = 24 April,
+ so Easter + 68 = 1 July). Entry 3 outranks entry 11 outright (RG 97-98:
+ the higher in the table is kept) -- no tie, unlike the 2008 case above.
+ The general RG96 walk from 2 July must skip Visitation (2 July, II
+ class, entry 19) and the ordinary Sunday (3 July, entry 15, II class)
+ before landing on 4 July, an ordinary Class4 feria. All four weekdays
+ independently confirmed via `date -d`. *)
+let test_precious_blood_transfer_2011 () =
+ check ~msg:"2011-07-01: Sacred Heart (RG91 entry 3) outranks the fixed Precious Blood (entry 11) outright"
+ 2011 7 1
+ "2011-07-01 friday season=time-after-pentecost week=2 slug=ef-sacred-heart rank=class-1 colour=white \
+ comms=[] in=- out=[precious-blood-of-our-lord-jesus-christ->2011-07-04]";
+ check ~msg:"2011-07-02: the RG96 walk's first blocked day (Visitation, II class) -- Precious Blood not here"
+ 2011 7 2
+ "2011-07-02 saturday season=time-after-pentecost week=2 slug=visitation-of-the-blessed-virgin-mary \
+ rank=class-2 colour=white comms=[processus-and-martinian:ordinary] in=- out=[]";
+ check ~msg:"2011-07-03: the RG96 walk's second blocked day (an ordinary Sunday, II class) -- still not here"
+ 2011 7 3
+ "2011-07-03 sunday season=time-after-pentecost week=3 slug=ef-time-after-pentecost-sunday-3 rank=class-2 \
+ colour=green comms=[] in=- out=[]";
+ check ~msg:"2011-07-04: the first non-I/II-class day (RG96) -- the Precious Blood lands here" 2011 7 4
+ "2011-07-04 monday season=time-after-pentecost week=3 slug=precious-blood-of-our-lord-jesus-christ \
+ rank=class-1 colour=red comms=[] in=precious-blood-of-our-lord-jesus-christ out=[]"
+
+(* ------------------------------------------------------------------ *)
+(* All Souls falling on a Sunday (register §4, RG96 Attamen (b), primary-
+ source-verified: "quando occurrit cum dominica, transfertur ... in feriam
+ II sequentem"). 2025: All Souls (2 Nov) falls on an ordinary Sunday.
+ Weekdays independently confirmed via `date -d`. *)
+let test_all_souls_on_a_sunday_2025 () =
+ (* RG91 entry 8's own parenthetical ("yields to an occurring Sunday") plus
+ Attamen (b): the Sunday is simply observed, and RG94 ("a fixed-day
+ commemoration is not carried with a transferred feast") means the
+ transferred All Souls leaves nothing behind on the Sunday itself. *)
+ check ~msg:"2025-11-02: All Souls yields to the occurring Sunday (RG91 entry 8), no commemoration (RG94)" 2025
+ 11 2
+ "2025-11-02 sunday season=time-after-pentecost week=21 slug=ef-time-after-pentecost-sunday-21 rank=class-2 \
+ colour=green comms=[] in=- out=[commemoration-of-all-souls->2025-11-03]";
+ check ~msg:"2025-11-03: All Souls transfers to the following Monday, its sedes propria (RG96 Attamen b)" 2025
+ 11 3
+ "2025-11-03 monday season=time-after-pentecost week=21 slug=commemoration-of-all-souls rank=class-1 \
+ colour=black comms=[] in=commemoration-of-all-souls out=[]"
+
+(* ------------------------------------------------------------------ *)
+(* Christmas falling on a Sunday (RG91 entry 1: Nativity, Easter, Pentecost
+ are I class WITH THEIR OWN OCTAVE, listed first in the whole table --
+ temporal_ef.ml assigns 25 December the Nativity office unconditionally,
+ so unlike a Feast of the Lord merely REPLACING an occurring Sunday (RG
+ 16(a), register §6), there is no Sunday-of-Advent/-per-annum candidate to
+ even contest here: 25 December is never, in the EF temporal cycle, an
+ "ordinary Sunday" in the first place. 2022: `date -d 2022-12-25 +%A` =
+ Sunday, independently confirmed. *)
+let test_christmas_on_a_sunday_2022 () =
+ check ~msg:"2022-12-25 falling on a Sunday: the Nativity (RG91 entry 1) takes the day outright, no contest"
+ 2022 12 25
+ "2022-12-25 sunday season=christmastide week=- slug=ef-nativity rank=class-1 colour=white comms=[] in=- \
+ out=[]"
+
+(* ------------------------------------------------------------------ *)
+(* Holy Thursday is white (register §3b, RG 128(b) + RG 122, Task 16) while
+ the surrounding Passiontide days stay violet -- the case the brief flags
+ because colitur and lectio previously AGREED on violet (both wrong), so
+ the lectio differential was structurally incapable of ever catching this;
+ only a golden pin (or the missalemeum oracle, layer 4) can. 2026: Easter
+ 5 April (trusted via the property sweep). Weekdays independently
+ confirmed via `date -d`. *)
+let test_holy_thursday_is_white_2026 () =
+ check ~msg:"2026-04-01 (Wednesday of Holy Week): ordinary Passiontide violet (RG128)" 2026 4 1
+ "2026-04-01 wednesday season=passiontide week=2 slug=ef-passiontide-2-wednesday rank=class-1 colour=violet \
+ comms=[] in=- out=[]";
+ check
+ ~msg:
+ "2026-04-02 Holy Thursday: white (RG128(b)'s named exception + RG122's affirmative statement), not \
+ Passiontide's violet"
+ 2026 4 2
+ "2026-04-02 thursday season=passiontide week=2 slug=ef-passiontide-2-thursday rank=class-1 colour=white \
+ comms=[] in=- out=[]";
+ check ~msg:"2026-04-03 Good Friday: back to violet (RG128) -- Thursday's white is a one-day exception" 2026 4
+ 3
+ "2026-04-03 friday season=passiontide week=2 slug=ef-passiontide-2-friday rank=class-1 colour=violet \
+ comms=[] in=- out=[]"
+
+(* ------------------------------------------------------------------ *)
+(* Advent/Lent Ember ferias are commemorated when impeded (RG 24: "si vero
+ impediuntur, commemorari debent" -- MUST be commemorated) while IV-class
+ ferias never are (RG 26: "quae nunquam commemorantur") -- the fix-round-1
+ F1/F2 finding, a Critical bug caught late precisely because no golden pin
+ existed for it before now. Weekdays independently confirmed via
+ `date -d`. *)
+(* ------------------------------------------------------------------ *)
+
+let test_ember_ferias_commemorated_when_impeded () =
+ (* 1900-12-21: Advent Ember Friday (RG91 entry 18, II class) impeded by St
+ Thomas (II class, universal, entry 16 -- Thomas outranks an II-class
+ feria only because entry 16 < 18 in the table). RG24 makes the Ember
+ feria's commemoration MANDATORY, and RG109(e) (corrected, fix round 1)
+ makes it PRIVILEGED, not merely eligible. *)
+ check ~msg:"1900-12-21: Advent Ember Friday, impeded, MUST be commemorated (RG24) and is privileged (RG109e)"
+ 1900 12 21
+ "1900-12-21 friday season=advent week=3 slug=thomas rank=class-2 colour=red \
+ comms=[ef-advent-ember-fri:privileged] in=- out=[]";
+ (* 1902-02-22: Lent Ember Saturday (RG91 entry 18, II class) impeded by
+ the Chair of St Peter (II class, universal, entry 16). Same RG24/
+ RG109(e) mandate. *)
+ check ~msg:"1902-02-22: Lent Ember Saturday, impeded, MUST be commemorated (RG24) and is privileged (RG109e)"
+ 1902 2 22
+ "1902-02-22 saturday season=lent week=1 slug=chair-of-st-peter rank=class-2 colour=white \
+ comms=[ef-lent-ember-sat:privileged] in=- out=[]"
+
+let test_iv_class_ferias_never_commemorated () =
+ (* 2026-07-22: an ordinary Time-after-Pentecost feria (Class4, RG91 entry
+ 28) impeded by St Mary Magdalene (III class). RG26 ("IV-class ferias
+ are NEVER commemorated") means the displaced feria is dropped outright
+ -- present in [omitted], never in [commemorations]. Asserting only
+ "comms=[]" would be vacuous if there had been no losing candidate at
+ all (one of this project's own catalogued vacuity flavours); the
+ [omitted_has] check below proves a real candidate existed and was
+ actively excluded, not merely absent. *)
+ let d1 = fetch 2026 7 22 in
+ Alcotest.(check bool) "2026-07-22: the displaced IV-class feria is in [omitted], proving RG26 actually fired"
+ true
+ (omitted_has d1 "ef-time-after-pentecost-8-wednesday");
+ Alcotest.(check string) "2026-07-22: Mary Magdalene observed, no commemoration (RG26)"
+ "2026-07-22 wednesday season=time-after-pentecost week=8 slug=mary-magdalene rank=class-3 colour=white \
+ comms=[] in=- out=[]"
+ (describe d1);
+ let d2 = fetch 2026 8 10 in
+ Alcotest.(check bool) "2026-08-10: the displaced IV-class feria is in [omitted], proving RG26 actually fired"
+ true
+ (omitted_has d2 "ef-time-after-pentecost-11-monday");
+ Alcotest.(check string) "2026-08-10: St Lawrence observed, no commemoration (RG26)"
+ "2026-08-10 monday season=time-after-pentecost week=11 slug=lawrence rank=class-2 colour=red comms=[] in=- \
+ out=[]"
+ (describe d2)
+
+(* ------------------------------------------------------------------ *)
+(* RG 111(b): a II-class SUNDAY admits only a commemoration "de festo II
+ classis" -- a rank restriction, not "the best available ordinary
+ candidate". 9 August falling on a Sunday: `romanus` (Class3,
+ commemoration-only, register §6 notes his very existence is
+ questionable, but that is irrelevant here -- RG111(b) excludes him on
+ RANK alone, regardless of that open question) has no standing for the
+ day's single slot. The brief names four recurring years (2009, 2015,
+ 2020, 2026); two are pinned here (2009 for an older-era instance, 2026
+ for a current one) -- 2015/2020 were hand-checked via the CLI and found
+ identical in shape (same slug family, same `romanus` exclusion, only the
+ week number differs), so pinning all four would repeat the same
+ assertion four times without exercising a different code path; rejected
+ as duplicative. *)
+let test_ii_class_sunday_admits_only_ii_class_commemoration () =
+ let d2009 = fetch 2009 8 9 in
+ Alcotest.(check bool) "2009-08-09: romanus (Class3) is offered and excluded, proving RG111(b) actually fired"
+ true
+ (omitted_has d2009 "romanus");
+ Alcotest.(check string) "2009-08-09: the Sunday observed, no commemoration at all (RG111(b) rank floor)"
+ "2009-08-09 sunday season=time-after-pentecost week=10 slug=ef-time-after-pentecost-sunday-10 rank=class-2 \
+ colour=green comms=[] in=- out=[]"
+ (describe d2009);
+ let d2026 = fetch 2026 8 9 in
+ Alcotest.(check bool) "2026-08-09: romanus (Class3) is offered and excluded, proving RG111(b) actually fired"
+ true
+ (omitted_has d2026 "romanus");
+ Alcotest.(check string) "2026-08-09: the Sunday observed, no commemoration at all (RG111(b) rank floor)"
+ "2026-08-09 sunday season=time-after-pentecost week=11 slug=ef-time-after-pentecost-sunday-11 rank=class-2 \
+ colour=green comms=[] in=- out=[]"
+ (describe d2026)
+
+let suite =
+ ( "golden pins (known-tricky years)",
+ [ Alcotest.test_case "Easter extreme: 1598 earliest (22 Mar, Gauss-verified)" `Quick
+ test_easter_extreme_1598;
+ Alcotest.test_case "Easter extreme: 1666 latest (25 Apr, Gauss-verified)" `Quick
+ test_easter_extreme_1666;
+ Alcotest.test_case "Easter extreme: 2038 late-modern instance of the latest date" `Quick
+ test_easter_extreme_2038_late_modern;
+ Alcotest.test_case "Annunciation transfer: 25 March falls inside Holy Week (2016)" `Quick
+ test_annunciation_transfer_inside_holy_week_2016;
+ Alcotest.test_case "Annunciation/Joseph double transfer (2008)" `Quick
+ test_annunciation_joseph_double_transfer_2008;
+ Alcotest.test_case "Annunciation RG96 exception NOT triggered: general walk suffices (2057, 2007, 2012)"
+ `Quick test_annunciation_exception_not_triggered_general_walk_suffices;
+ Alcotest.test_case "Annunciation RG96 exception triggered: walk would cross Easter (2024; see also 2016)"
+ `Quick test_annunciation_exception_triggered_when_walk_would_cross_easter;
+ Alcotest.test_case "2011-07-04: the Precious Blood transfer" `Quick test_precious_blood_transfer_2011;
+ Alcotest.test_case "All Souls falling on a Sunday (2025)" `Quick test_all_souls_on_a_sunday_2025;
+ Alcotest.test_case "Christmas falling on a Sunday (2022)" `Quick test_christmas_on_a_sunday_2022;
+ Alcotest.test_case "Holy Thursday is white amid violet Passiontide (2026)" `Quick
+ test_holy_thursday_is_white_2026;
+ Alcotest.test_case "Advent/Lent Ember ferias commemorated when impeded (1900, 1902)" `Quick
+ test_ember_ferias_commemorated_when_impeded;
+ Alcotest.test_case "IV-class ferias never commemorated (2026)" `Quick test_iv_class_ferias_never_commemorated;
+ Alcotest.test_case "RG111(b): a II-class Sunday admits only a de-festo-II-classis commemoration (2009, 2026)"
+ `Quick test_ii_class_sunday_admits_only_ii_class_commemoration
+ ] )
diff --git a/test/test_names.ml b/test/test_names.ml
index 809d1c0..cef7357 100644
--- a/test/test_names.ml
+++ b/test/test_names.ml
@@ -111,6 +111,20 @@ let test_celebration () =
let sexp = Cel.sexp_of_t sexp_of_demo_rank c in
Alcotest.(check bool) "sexp roundtrip" true (Cel.t_of_sexp demo_rank_of_sexp sexp = c)
+let test_celebration_status () =
+ let c =
+ Cel.make ~slug:(S.of_string_exn "telesphorus") ~rank:High ~colour:Col.Red
+ ~subject:Sub.Saint ~layer:"tridentine" ()
+ in
+ Alcotest.(check bool) "defaults to Feast" true (c.Cel.status = Cel.Feast);
+ let k =
+ Cel.make ~slug:(S.of_string_exn "hyginus") ~rank:High ~colour:Col.Red
+ ~status:Cel.Commemoration_only ~subject:Sub.Saint ~layer:"tridentine" ()
+ in
+ Alcotest.(check bool) "explicit status" true (k.Cel.status = Cel.Commemoration_only);
+ let sexp = Cel.sexp_of_t sexp_of_demo_rank k in
+ Alcotest.(check bool) "sexp roundtrip" true (Cel.t_of_sexp demo_rank_of_sexp sexp = k)
+
module Rec = Colitur_kernel.Record
module Voc = Colitur_kernel.Vocab
module Tmp = Colitur_kernel.Temporal
@@ -174,4 +188,5 @@ let suite =
Alcotest.test_case "date_spec sexp roundtrip" `Quick test_date_spec_sexp_roundtrip;
Alcotest.test_case "date_spec sexp validates" `Quick test_date_spec_sexp_validates;
Alcotest.test_case "celebration" `Quick test_celebration;
+ Alcotest.test_case "celebration status" `Quick test_celebration_status;
Alcotest.test_case "record" `Quick test_record ] )
diff --git a/test/test_oracle.ml b/test/test_oracle.ml
new file mode 100644
index 0000000..ac8d95d
--- /dev/null
+++ b/test/test_oracle.ml
@@ -0,0 +1,615 @@
+(* Task 16: oracle harness vs missalemeum (sibling project's snapshot of
+ missalemeum.com/Divinum Officium data), EF only, 2026-2027 -- validation
+ layer 4 of the design spec's five (colitur CLAUDE.md "Validation" section;
+ layer 3, the lectio differential, is test_differential.ml, already green).
+
+ *** WHY THIS LAYER EXISTS, AND WHAT IT CAN DO THAT THE LECTIO DIFFERENTIAL
+ CANNOT (test_differential.ml's own header comment, limit 1) ***
+
+ The lectio differential compares colitur against data colitur was itself
+ BOOTSTRAPPED from (data/ef/sanctoral.sexp comes from lectio's tridentine-
+ calendar.ini) -- it cannot catch an error inherited from that bootstrap,
+ and it explicitly does not compare commemorations at all (lectio's
+ trailing tokens are losing candidates, not an RG 111 admitted set, per
+ that file's own limit 1). missalemeum is INDEPENDENT of colitur's
+ bootstrap chain, and its JSON carries a real admitted-commemorations
+ array (its own RG 111-shaped selection, not lectio's rejects) -- so this
+ file compares THREE axes the lectio differential cannot touch at all:
+ rank, colour (as SET membership, see below), and commemoration presence/
+ count. Slug IDENTITY is deliberately NOT compared (the brief: needs a
+ title->slug mapping, which is the data audit's business -- see the task
+ report -- not this automated comparator's).
+
+ *** THE FIXTURE'S OWN SHAPE (fixtures/missalemeum-ef-2026-2027.txt,
+ fixtures/missalemeum-ef-2026-2027.provenance, tools/
+ extract_missalemeum_oracle.py) ***
+
+ info.id (e.g. "sancti:01-02:1:w") encodes the PROPERS REUSED that day,
+ not the day's own rank or colour -- 137 of 730 days (19%) disagree
+ between the id-embedded rank and info.rank itself (task brief's own
+ premise was wrong here; the brief's extraction note has been corrected).
+ This file, like the extraction script, reads ONLY info.rank and
+ info.colors, never parses anything out of info.id.
+
+ info.colors is an ARRAY -- 14 of 730 days carry two colours (rose+violet
+ on Gaudete/Laetare per RG 131's indult, red+violet on Palm Sunday, black+
+ violet on Good Friday, violet+white on Holy Saturday -- one colour per
+ liturgical ACTION within that one civil day, which colitur's one-colour-
+ per-day model cannot represent, register §3b's own RG 126 note). So the
+ colour axis below is MEMBERSHIP (colitur's single colour must be one of
+ the oracle's set), never equality.
+
+ Four days carry more than one Mass in the JSON array (Christmas, All
+ Souls) -- the extraction script takes entry[0] throughout, VERIFIED
+ (not assumed) identical to every other Mass of the same day on every
+ field this file reads (see that script's own header and the task
+ report).
+
+ *** THE ALLOW-LIST (data/ef/expected-divergences-missalemeum.sexp) ***
+
+ A SEPARATE file from data/ef/expected-divergences.sexp (the lectio
+ allow-list): the two oracles disagree with colitur in different places
+ and for different reasons, and this file's own convention differs in one
+ deliberate way -- [verdict] is not always "colitur". Some entries are
+ genuine DATA GAPS this task found and could not fix here (data/ef/
+ sanctoral.sexp is bootstrapped from lectio, which is itself missing the
+ entries; RG 110's inseparable-Peter/Paul commemoration is unimplemented
+ code, a real feature this task did not build) -- honestly verdicted
+ [missalemeum] (colitur is short a feature or a row, not right), never
+ silently absorbed as if colitur were correct. TWO entries (M11 and
+ M13) are [verdict open] -- CORRECTED, final fix wave, item 7: this
+ comment previously said "one entry (M13)", missing M11, whose own
+ verdict was changed from [colitur] to [open] in fix round 1 (see M11's
+ own entry below for why) but this summary was never updated to match.
+ Both are adjudicated as unresolved, not resolved either way -- the
+ brief's own explicit permission ("say so as an open item") used for
+ real, not defaulted past. See the task report for every entry's full
+ reasoning and primary-source citation. *)
+
+module Cal = Colitur_kernel.Calendar
+module Layer = Colitur_kernel.Layer
+module Overlay = Colitur_kernel.Overlay
+module LD = Colitur_kernel.Liturgical_day
+module Slug = Colitur_kernel.Slug
+module Date = Colitur_kernel.Date
+module Cel = Colitur_kernel.Celebration
+module Colour = Colitur_kernel.Colour
+module V = Rite_ef.Vocab_ef
+
+(* Same relative paths test_differential.ml uses: dune test runs from
+ _build/default/test/. *)
+let sanctoral_path = "../data/ef/sanctoral.sexp"
+let adjustments_path = "../data/ef/adjustments.sexp"
+let fixture_path = "fixtures/missalemeum-ef-2026-2027.txt"
+let allow_list_path = "../data/ef/expected-divergences-missalemeum.sexp"
+
+(* fixtures/missalemeum-ef-2026-2027.provenance carries the same digest and
+ the exact regeneration command. Asserted (not merely documented) for the
+ same reason test_differential.ml's own [fixture_sha256] is: a hand-edit
+ or partial re-extraction would otherwise silently turn the oracle into
+ an unlabelled snapshot of whatever someone last ran. *)
+let fixture_sha256 = "718eff1a03fa09c3927ef18d19fe7921c2d4d7611890c22566058b81fd7cc5ea"
+
+(* Identical technique to test_differential.ml's own [sha256_of_file]
+ (that file's own comment explains why: shelling out to [sha256sum]
+ rather than adding a crypto library dependency Task 15/16's frozen deps
+ do not include). Duplicated, not shared, for the same reason
+ [real_layer] below is -- neither file exposes an .mli the other could
+ depend on, and this is three lines. *)
+let sha256_of_file path =
+ let tmp = Filename.temp_file "colitur_oracle_sha256" ".txt" in
+ Fun.protect
+ ~finally:(fun () -> try Sys.remove tmp with Sys_error _ -> ())
+ (fun () ->
+ let cmd = Printf.sprintf "sha256sum %s > %s" (Filename.quote path) (Filename.quote tmp) in
+ let rc = Sys.command cmd in
+ if rc <> 0 then Alcotest.failf "sha256sum exited %d for %s (is it on PATH?)" rc path;
+ let ic = open_in tmp in
+ let line =
+ try input_line ic
+ with End_of_file ->
+ close_in ic;
+ Alcotest.failf "sha256sum produced no output for %s" path
+ in
+ close_in ic;
+ match String.index_opt line ' ' with
+ | Some i -> String.sub line 0 i
+ | None -> Alcotest.failf "unexpected sha256sum output for %s: %S" path line)
+
+let real_layer () =
+ let layer =
+ match Layer.load V.rank_of_sexp sanctoral_path with
+ | Ok l -> l
+ | Error e -> Alcotest.failf "%s: failed to load: %s" sanctoral_path e
+ in
+ let overlay =
+ match Overlay.load V.rank_of_sexp adjustments_path with
+ | Ok o -> o
+ | Error e -> Alcotest.failf "%s: failed to load: %s" adjustments_path e
+ in
+ let layer, diagnostics = Overlay.apply layer overlay in
+ Alcotest.(check (list string)) "the committed overlay applies cleanly, no diagnostics" []
+ (List.map Overlay.diagnostic_to_string diagnostics);
+ layer
+
+(* ---------------------------------------------------------------------- *)
+(* The oracle side: one line per day, as tools/extract_missalemeum_oracle *)
+(* .py's own header documents. *)
+(* ---------------------------------------------------------------------- *)
+
+type oracle_row = {
+ o_date : string;
+ o_rank : int;
+ o_colours : char list;
+ o_title : string;
+ o_commemorations : string list;
+ o_displaced : string list;
+}
+
+let explode s = List.init (String.length s) (String.get s)
+
+let split_list_field f = if f = "-" then [] else String.split_on_char ';' f
+
+let oracle_row_of_line line =
+ match String.split_on_char '|' line with
+ | [ date; rank; colours; title; _tempora; commemorations; displaced; _n_masses ] ->
+ { o_date = date;
+ o_rank = int_of_string rank;
+ o_colours = explode colours;
+ o_title = title;
+ o_commemorations = split_list_field commemorations;
+ o_displaced = split_list_field displaced }
+ | _ -> Alcotest.failf "malformed fixture line (expected 8 '|'-separated fields): %S" line
+
+let read_lines path =
+ let ic = open_in path in
+ let rec loop acc =
+ match input_line ic with
+ | line -> loop (line :: acc)
+ | exception End_of_file ->
+ close_in ic;
+ List.rev acc
+ in
+ loop []
+
+let oracle_rows () = List.map oracle_row_of_line (read_lines fixture_path)
+
+(* ---------------------------------------------------------------------- *)
+(* The colitur side: the SAME pipeline bin/main.ml's `colitur day` and *)
+(* test_differential.ml's own [colitur_rows_2005_2050] use -- *)
+(* Colitur_kernel.Calendar over the real committed data. Restricted to *)
+(* 2026-2027 (indexing 2025 too, for the same reason test_differential.ml *)
+(* indexes [y-1]: Calendar.year resolves one Advent-anchored liturgical *)
+(* year, which straddles two civil years). *)
+(* ---------------------------------------------------------------------- *)
+
+type colitur_row = { c_date : string; c_rank : int; c_colour : char; c_commemorations : string list }
+
+let rank_to_int = function V.Class1 -> 1 | V.Class2 -> 2 | V.Class3 -> 3 | V.Class4 -> 4
+
+let colour_to_char = function
+ | Colour.White -> 'w'
+ | Colour.Red -> 'r'
+ | Colour.Green -> 'g'
+ | Colour.Violet -> 'v'
+ | Colour.Rose -> 'p'
+ | Colour.Black -> 'b'
+
+let colitur_rows_2026_2027 () =
+ let layer = real_layer () in
+ let by_rata : (int, (V.season, V.rank) LD.t) Hashtbl.t = Hashtbl.create 800 in
+ for y = 2025 to 2027 do
+ let days = Cal.year Rite_ef.context layer y in
+ Array.iter (fun (d : (V.season, V.rank) LD.t) -> Hashtbl.replace by_rata (Date.to_rata d.LD.date) d) days
+ done;
+ let mk y m d = match Date.make ~year:y ~month:m ~day:d with Ok t -> t | Error e -> failwith e in
+ let rows = ref [] in
+ let d = ref (mk 2026 1 1) in
+ let stop = mk 2027 12 31 in
+ while Date.compare !d stop <= 0 do
+ (match Hashtbl.find_opt by_rata (Date.to_rata !d) with
+ | Some day ->
+ let cel = day.LD.observed in
+ let commemoration_slugs =
+ List.map (fun (c, _) -> Slug.to_string c.Cel.slug) day.LD.commemorations
+ in
+ rows :=
+ { c_date = Date.to_iso8601 day.LD.date;
+ c_rank = rank_to_int cel.Cel.rank;
+ c_colour = colour_to_char cel.Cel.colour;
+ c_commemorations = commemoration_slugs
+ }
+ :: !rows
+ | None -> Alcotest.failf "internal error: no resolved day for %s" (Date.to_iso8601 !d));
+ d := Date.add_days !d 1
+ done;
+ List.rev !rows
+
+(* ---------------------------------------------------------------------- *)
+(* Field-diff computation: the four axes the oracle actually supports *)
+(* (identity-by-slug is deliberately out of scope, see this file's own *)
+(* header). *)
+(* ---------------------------------------------------------------------- *)
+
+type field = Rank | Colour_f | Comm_presence | Comm_count
+
+let field_name = function
+ | Rank -> "rank"
+ | Colour_f -> "colour"
+ | Comm_presence -> "commemoration-presence"
+ | Comm_count -> "commemoration-count"
+
+let diff_fields (c : colitur_row) (o : oracle_row) =
+ let c_has = c.c_commemorations <> [] and o_has = o.o_commemorations <> [] in
+ List.filter_map
+ (fun x -> x)
+ [ (if c.c_rank = o.o_rank then None else Some Rank);
+ (if List.mem c.c_colour o.o_colours then None else Some Colour_f);
+ (if c_has = o_has then None else Some Comm_presence);
+ (* Count is only meaningful once presence already agrees (both non-empty):
+ a presence mismatch already flags the row via [Comm_presence] above,
+ and comparing lengths across a 0-vs-N split would just restate that
+ same disagreement under a second name. *)
+ (if c_has && o_has && List.length c.c_commemorations <> List.length o.o_commemorations then
+ Some Comm_count
+ else None)
+ ]
+
+(* ---------------------------------------------------------------------- *)
+(* The cited allow-list (data/ef/expected-divergences-missalemeum.sexp). *)
+(* Each predicate is gated on an EXACT, literal date set (never a date *)
+(* range or a slug pattern -- with at most 4 dates per id, a literal list *)
+(* costs nothing and cannot silently widen to absorb an unrelated future *)
+(* mismatch the way a range could), AND an exact/subset diff shape, the *)
+(* same double-gate test_differential.ml's own [layer_c_reason] uses. *)
+(* ---------------------------------------------------------------------- *)
+
+let subset xs ys = List.for_all (fun x -> List.mem x ys) xs
+
+let contains_substring s ~needle =
+ let ls = String.length s and ln = String.length needle in
+ let rec at i = i + ln <= ls && (String.sub s i ln = needle || at (i + 1)) in
+ ln = 0 || at 0
+
+(* M1 -- RG 33 (corrected, precedence_ef.ml's own [is_omissible_vigil]):
+ missalemeum does not implement RG 33's mandatory omission of a II/III-
+ class vigil impeded by a Sunday -- 28 June 2026 (Vigil of Sts Peter &
+ Paul, II class) still shows a commemoration of the vigil on the V Sunday
+ after Pentecost; 9 August 2026 (Vigil of St Lawrence, III class) shows
+ the vigil as the day's FULL OBSERVED OFFICE, not merely a commemoration,
+ displacing the XI Sunday after Pentecost entirely. Both wrong per RG 33's
+ own "in dominica quavis" (ANY Sunday, unqualified) -- verdict colitur. *)
+let m1_dates = [ "2026-06-28"; "2026-08-09" ]
+
+(* M2 -- RG 91 entry 27 ("Officium sanctae Mariae in sabbato"): every
+ otherwise-unoccupied IV-class Saturday should carry the votive Office of
+ the BVM (white; missalemeum's own title cycles "I".."V Mass of the
+ B. V. M. - Salve, Sancta Parens"), a genuinely DISTINCT office from an
+ ordinary green/violet feria. temporal_ef.ml's [band] already carries an
+ entry-27 comment acknowledging this row of RG 91 exists, but nothing in
+ [Temporal_ef.temporal]'s actual CONSTRUCTION builds this office -- an
+ unimpeded Time-after-Epiphany/-Pentecost Saturday still gets the bare
+ ferial slug and [season_colour]'s green. A genuine, primary-attested
+ FEATURE GAP (not a citation dispute) -- verdict missalemeum: colitur is
+ short a whole office here, not merely differently-opinioned. Registered
+ as an open item (register §6) rather than built in this task: it needs
+ its own proper texts/citations, the same scope line "Major Litanies"
+ (M5 below) already sits on. Matched on the oracle's own title substring,
+ not a hardcoded date list -- the title IS the distinguishing evidence,
+ and every Paschaltide occurrence (where colitur's season colour is
+ already white, RG 119) never reaches this predicate at all, since its
+ diffs are already empty before [layer_m_reason] is ever called. *)
+let bvm_saturday_title = "Salve, Sancta Parens"
+
+(* M3 -- RG 87 (Minor Litanies/Rogations): the SAME gap the lectio
+ differential's own C8 already names (data/ef/expected-divergences.sexp)
+ -- missalemeum, like lectio, computes no Rogation day at all and shows
+ the plain paschaltide-week feria instead. Only ONE date in this window
+ shows it (3 May 2027, Rogation Monday) because every other Rogation day
+ here is won by a saint anyway (both sides then agree on the SAINT's own
+ identity, with only the underlying temporal identity differing, which
+ this comparator's rank/colour/commemoration axes do not expose). Verdict
+ colitur, same citation as lectio's own C8. *)
+let m3_dates = [ "2027-05-03" ]
+
+(* M4 -- a genuine DATA GAP, primary-source-confirmed: the 1962 calendarium
+ itself lists, under 28 January, "S. Petri Nolasci Conf., III classis. /
+ Com. S. Agnetis Virg. et Mart., secundo" -- a second commemoration of
+ St Agnes (distinct from her main 21 January feast) that data/ef/
+ sanctoral.sexp does not carry at all. Traced upstream: lectio's own
+ tridentine-calendar.ini has no 01-28 entry beyond [peter-nolasco]
+ either, so colitur inherited the gap from its bootstrap source, not
+ from the bootstrap tool mis-reading a present entry. Cannot be fixed in
+ this task (data/ef/sanctoral.sexp is bootstrapped from lectio, per
+ CLAUDE.md's binding decision 3; lectio itself needs the entry first,
+ and this task does not touch ~/git/projects/lectio) -- verdict
+ missalemeum, tracked as a register §6 open item. *)
+let m4_dates = [ "2026-01-28"; "2027-01-28" ]
+
+(* M5 -- register §6's OWN already-open item, independently confirmed by
+ the oracle: "Major Litanies (25 April, RG 80) are not yet computed" --
+ missalemeum's commemoration "Pro rogationibus" ("for the Rogations") on
+ St Mark's day (25 April, the Major Litanies' fixed date) is exactly the
+ missing office. Not a new finding; recorded here so the automated
+ comparator does not report it as an unexplained mismatch, and cross-
+ referenced from the register so a reader sees both. Verdict missalemeum
+ (colitur is missing a real, cited office; register §6 already tracks
+ it). Only ONE date below, not two: 25 April 2026 is a Saturday (Mark
+ wins outright, colitur's commemoration list is empty where the oracle's
+ is not -- a visible presence gap); 25 April 2027 is a Sunday, where the
+ Sunday wins on BOTH sides and each side's own single slot goes to a
+ DIFFERENT candidate (colitur: Mark himself, admitted under RG 111(b)'s
+ "de festo II classis"; missalemeum: the Major Litanies) -- both
+ non-empty, same count, so this comparator's deliberately-not-slug-
+ identity axes cannot see that year's instance at all (see the task
+ report). *)
+let m5_dates = [ "2026-04-25" ]
+
+(* M6 -- the reverse of M4/M7/M9: the primary calendarium's own row for 14
+ August reads, in full, "Vigilia, II classis." -- nothing else. No
+ commemoration is listed for that date anywhere in the source this
+ project treats as authoritative (CLAUDE.md binding decision 1). data/ef/
+ sanctoral.sexp agrees (a single entry, [vigil-of-the-assumption], 14
+ Aug). missalemeum's own "St. Eusebius" commemoration for that date has
+ no support in the 1962 universal calendar found here (a DIFFERENT St
+ Eusebius, bishop and martyr, is genuinely commemorated 16 December,
+ matching lectio's own [eusebius] entry at that date -- not this one).
+ Verdict colitur: this is the one direction among M4/M6/M7/M9 where the
+ oracle itself appears to be carrying data outside the 1962 universal
+ calendar (a pre-1955 survival or a different edition), not colitur
+ missing something real. *)
+let m6_dates = [ "2026-08-14"; "2027-08-14" ]
+
+(* M7 -- a genuine DATA GAP, primary-source-confirmed, the same shape as
+ M4: the calendarium's own 26 October row reads "Com. S. Evaristi Papæ
+ et Mart." (Commemoration of St Evaristus, Pope and Martyr) -- absent
+ from data/ef/sanctoral.sexp, and absent from lectio's own tridentine-
+ calendar.ini for 10-26 (no entry at all for that date), so this is
+ another bootstrap-source gap, not fixable without touching lectio.
+ Verdict missalemeum, register §6 open item. *)
+let m7_dates = [ "2026-10-26"; "2027-10-26" ]
+
+(* M8 -- RG 109(a) ("of a Sunday" is always privileged) + RG 111(a) ("on
+ I-class days... none save one privileged"): when a FIXED I-class feast
+ (All Saints, 1 Nov; the Assumption, 15 Aug) lands on an ordinary Sunday,
+ the impeded Sunday IS the one privileged commemoration RG 111(a) admits
+ -- already an established, independently-tested rule in this codebase
+ (test_precedence_ef.ml's "RG95/RG109(a): an impeded I-class SUNDAY does
+ NOT transfer -- it is Commemorated and Privileged"). missalemeum shows
+ no commemoration at all on either occurrence in this window. Verdict
+ colitur. *)
+let m8_dates = [ "2026-11-01"; "2027-08-15" ]
+
+(* M9 -- a genuine DATA GAP, the same shape as M4/M7: the calendarium's own
+ 9 November row reads, alongside the Dedication of the Archbasilica (II
+ class), "Com. S. Theodori Mart." (Commemoration of St Theodore,
+ Martyr) -- absent from data/ef/sanctoral.sexp and from lectio's own
+ 11-09 entry (dedication-of-the-archbasilica-of-our-holy-savior alone,
+ no second entry for that date). Verdict missalemeum, register §6 open
+ item. *)
+let m9_dates = [ "2026-11-09"; "2027-11-09" ]
+
+(* M14 -- a genuine DATA GAP, the same shape as M4/M7/M9: the calendarium's
+ own 14 May row reads "Com. S. Bonifatii Mart." (a commemoration-only St
+ Boniface, Martyr -- DIFFERENT from the II-class St Boniface, Bishop and
+ Martyr, of 5 June, which data/ef/sanctoral.sexp and lectio both already
+ carry correctly) -- absent from data/ef/sanctoral.sexp and from lectio's
+ own tridentine-calendar.ini for 05-14 (no entry at all for that date).
+ Verdict missalemeum, register §6 open item. *)
+let m14_dates = [ "2027-05-14" ]
+
+(* M10 -- RG 109(e), unqualified text ("de feriis Adventus, Quadragesimae
+ et Passionis" -- OF THE FERIAS OF ADVENT, not "of the Advent ferias 17-
+ 23 December only"; that narrower window is RG 91 entry 18's own
+ OCCURRENCE-table dignity, a different axis from RG 109's commemoration-
+ privilege list, register §4's own citations keep the two separate).
+ colitur commemorates the losing early-Advent feria (the Monday after
+ Advent I, 30 Nov; the Tuesday/Wednesday after Advent II, 8 Dec) when a
+ saint wins those days -- missalemeum shows nothing on these specific
+ four rows, even though it DOES show equivalent later-Advent-feria
+ commemorations elsewhere in this same window (2-21 December, matching
+ colitur exactly on every one of those -- see the task report), which is
+ why this reads as a missalemeum-side inconsistency on these four
+ particular rows rather than a textually-narrower rule this task missed.
+ Verdict colitur. *)
+let m10_dates = [ "2026-11-30"; "2027-11-30"; "2026-12-08"; "2027-12-08" ]
+
+(* M11 -- CORRECTED, fix round 1 (F3): this used to claim "no RG paragraph
+ found" and verdict colitur. WRONG. RG 67 ("dies infra octavam sunt II
+ classis") + RG 109(c) ("de diebus infra octavam Nativitatis Domini") +
+ the calendarium's own explicit note under 26/27/28 December ("S.
+ STEPHANI PROTOMARTYRIS, II classis. / Com. octavae Nativitatis.", same
+ pattern for John the Evangelist and the Holy Innocents) all confirm a
+ REAL commemoration is due here -- and it is a genuine regression: before
+ Task 16's own commemoration-eligibility fix, colitur happened to
+ commemorate the day's generic Christmastide loser unconditionally
+ (matching presence, for the wrong reason); the fix (correctly) stopped
+ that, but the 26-28 December window's own temporal candidate has the
+ WRONG ferial rank to begin with ([ferial_rank]'s Christmastide catch-all
+ gives it Class4; RG 67 says II) -- and a naive fix gets RG 69's Sunday
+ case backwards (the Sunday, when this window falls on one, commemorates
+ the NAMED feast, not the generic octave placeholder). Needs new
+ architecture (a commemoration attached to whichever named feast wins,
+ not a competing RG 92-95 candidate) or a more careful fix than this
+ round attempted. Verdict now OPEN, not colitur -- see the sexp entry's
+ own full note and the task report. *)
+let m11_dates = [ "2026-12-26"; "2026-12-28"; "2027-12-27"; "2027-12-28" ]
+
+(* M12 -- RG 110, primary text: "In Officio et Missa S. Petri semper fit
+ commemoratio S. Pauli, et vicissim" -- in the Office and Mass of EITHER
+ Peter or Paul, a commemoration of the OTHER is ALWAYS made (the
+ "inseparable commemoration"), uncapped by RG 111's ordinary admission
+ count ("in numero orationum computando, pro unica habeantur" -- counted
+ as one for counting purposes, i.e. it rides alongside whatever RG 111
+ already admits). Unimplemented in this codebase -- confirmed by the one
+ row in this window where it is visible: 22 February 2027 (Chair of
+ St Peter) shows only the privileged Lent feria commemorated in colitur,
+ while missalemeum shows that AND "St. Paul". A genuine, primary-cited
+ feature gap -- verdict missalemeum, register §6 open item. Real but
+ NARROW: every other Peter/Paul office in this window (29 June, both
+ years; 1 August M4-adjacent dates were checked and found clean) either
+ had no room for the extra commemoration to become visible against this
+ comparator's axes, or fell on a day this predicate does not otherwise
+ touch -- see the task report for the specific check. *)
+let m12_dates = [ "2027-02-22" ]
+
+(* M13 -- OPEN, NOT adjudicated (the brief's own explicit permission,
+ "say so as an open item rather than absorbing it"). 19 March 2027: St
+ Joseph (I class, 19 March) falls on the Friday of Passion Week. The
+ 1962 calendarium's own March table carries a standing note, "Feria VI
+ post dominicam I Passionis: Commemoratio septem Dolorum B. Mariae
+ Virg." (a fixed commemoration of Our Lady's Seven Sorrows for that
+ Friday, EVERY year, confirmed real) -- and missalemeum shows Joseph
+ entirely DISPLACED that year, with the Friday's own office (III class,
+ violet) observed and the Seven Sorrows commemorated instead. RG 91's
+ plain table (entry 11-13, I-class feast, vs entry 22, an ordinary III-
+ class Passiontide feria) gives Joseph the day outright, with no general
+ RG 96 collision requiring a transfer -- so either (a) colitur's plain
+ reading is right and missalemeum is wrong, (b) a MORE SPECIFIC rubric
+ (most plausibly attached to St Joseph's own Proprium Sanctorum entry,
+ the same shape as the Annunciation's own Attamen clause, register §4)
+ overrides the general table for this exact collision and this task did
+ not find its text, or (c) the Seven Sorrows commemoration itself
+ somehow outranks an ordinary I-class feast on this one Friday, which
+ nothing found here supports either. Extensive but non-exhaustive
+ primary-source search (see the task report) did not settle it.
+ Separately, but confirmed regardless of the adjudication above: colitur
+ does not implement the Seven-Sorrows-of-Passion-Friday commemoration at
+ all, in any year -- a real, primary-attested gap, register §6 open
+ item. *)
+let m13_dates = [ "2027-03-19" ]
+
+let layer_m_reason (c : colitur_row) (o : oracle_row) diffs =
+ if diffs = [] then None
+ else if List.mem c.c_date m1_dates && subset diffs [ Rank; Colour_f; Comm_presence ] then Some "M1"
+ else if contains_substring o.o_title ~needle:bvm_saturday_title && diffs = [ Colour_f ] then Some "M2"
+ else if List.mem c.c_date m3_dates && diffs = [ Colour_f ] then Some "M3"
+ else if List.mem c.c_date m4_dates && diffs = [ Comm_presence ] then Some "M4"
+ else if List.mem c.c_date m5_dates && diffs = [ Comm_presence ] then Some "M5"
+ else if List.mem c.c_date m6_dates && diffs = [ Comm_presence ] then Some "M6"
+ else if List.mem c.c_date m7_dates && diffs = [ Comm_presence ] then Some "M7"
+ else if List.mem c.c_date m8_dates && diffs = [ Comm_presence ] then Some "M8"
+ else if List.mem c.c_date m9_dates && diffs = [ Comm_presence ] then Some "M9"
+ else if List.mem c.c_date m14_dates && diffs = [ Comm_presence ] then Some "M14"
+ else if List.mem c.c_date m10_dates && diffs = [ Comm_presence ] then Some "M10"
+ else if List.mem c.c_date m11_dates && diffs = [ Comm_presence ] then Some "M11"
+ else if List.mem c.c_date m12_dates && diffs = [ Comm_count ] then Some "M12"
+ else if List.mem c.c_date m13_dates && subset diffs [ Rank; Colour_f ] then Some "M13"
+ else None
+
+(* ---------------------------------------------------------------------- *)
+(* data/ef/expected-divergences-missalemeum.sexp loading -- same shape as *)
+(* test_differential.ml's own [allow_entry]/[load_allow_list]. *)
+(* ---------------------------------------------------------------------- *)
+
+open Sexplib0.Sexp_conv
+
+type allow_entry = { id : string; citation : string; verdict : string; note : string; expected_rows : int }
+[@@deriving sexp]
+
+let load_allow_list () =
+ let sexps =
+ try Sexplib.Sexp.load_sexps allow_list_path
+ with e -> Alcotest.failf "%s: failed to load: %s" allow_list_path (Printexc.to_string e)
+ in
+ List.map allow_entry_of_sexp sexps
+
+(* ---------------------------------------------------------------------- *)
+(* The comparison itself. *)
+(* ---------------------------------------------------------------------- *)
+
+type outcome = Matched | Explained of string | Unexplained of field list
+
+let compare_streams () =
+ let oracle = oracle_rows () in
+ let colitur = colitur_rows_2026_2027 () in
+ (oracle, colitur)
+
+let classify oracle colitur =
+ List.map2
+ (fun (o : oracle_row) (c : colitur_row) ->
+ if not (String.equal o.o_date c.c_date) then
+ Alcotest.failf "streams misaligned: oracle %s vs colitur %s" o.o_date c.c_date;
+ let diffs = diff_fields c o in
+ if diffs = [] then (c, o, Matched)
+ else
+ match layer_m_reason c o diffs with
+ | Some id -> (c, o, Explained id)
+ | None -> (c, o, Unexplained diffs))
+ oracle colitur
+
+let describe_unexplained (c : colitur_row) (o : oracle_row) diffs =
+ Printf.sprintf "%s: %s differ -- colitur=(rank=%d colour=%c comms=[%s]) oracle=(rank=%d colours=[%s] \
+ title=%S comms=[%s] displaced=[%s])"
+ c.c_date
+ (String.concat "," (List.map field_name diffs))
+ c.c_rank c.c_colour
+ (String.concat ";" c.c_commemorations)
+ o.o_rank
+ (String.concat "" (List.map (String.make 1) o.o_colours))
+ o.o_title
+ (String.concat ";" o.o_commemorations)
+ (String.concat ";" o.o_displaced)
+
+let test_fixture_checksum () =
+ Alcotest.(check string) "fixture SHA-256 matches its provenance note" fixture_sha256
+ (sha256_of_file fixture_path)
+
+let test_dates_align () =
+ let oracle, colitur = compare_streams () in
+ Alcotest.(check int) "both streams have 730 rows (2026 + 2027, both non-leap)" 730 (List.length oracle);
+ Alcotest.(check int) "colitur recomputed the same number of rows" (List.length oracle) (List.length colitur);
+ let mismatched =
+ List.filter_map
+ (fun (o, c) -> if String.equal o.o_date c.c_date then None else Some (o.o_date, c.c_date))
+ (List.combine oracle colitur)
+ in
+ Alcotest.(check (list (pair string string))) "no misaligned dates" [] mismatched
+
+(* The core assertion: every one of the 42 raw differences across all four
+ axes (rank, colour-membership, commemoration-presence, commemoration-
+ count) is named in the cited allow-list. Nothing else passes silently. *)
+let test_no_unexplained_differences () =
+ let oracle, colitur = compare_streams () in
+ let classified = classify oracle colitur in
+ let unexplained =
+ List.filter_map
+ (fun (c, o, outcome) ->
+ match outcome with Unexplained diffs -> Some (describe_unexplained c o diffs) | _ -> None)
+ classified
+ in
+ Alcotest.(check (list string)) "no differences outside the cited allow-list" [] unexplained
+
+(* Teeth, not just green: EVERY allow-list id's actual row count over this
+ fixture must equal what data/ef/expected-divergences-missalemeum.sexp
+ declares, in BOTH directions -- the same double-check test_differential
+ .ml's own "Layer C counts match citations" test makes for the lectio
+ allow-list. *)
+let test_layer_m_counts_match_citations () =
+ let oracle, colitur = compare_streams () in
+ let classified = classify oracle colitur in
+ let actual_counts = Hashtbl.create 16 in
+ List.iter
+ (fun (_, _, outcome) ->
+ match outcome with
+ | Explained id ->
+ Hashtbl.replace actual_counts id (1 + Option.value ~default:0 (Hashtbl.find_opt actual_counts id))
+ | _ -> ())
+ classified;
+ let declared = load_allow_list () in
+ let expected = List.sort compare (List.map (fun e -> (e.id, e.expected_rows)) declared) in
+ let actual = List.sort compare (Hashtbl.fold (fun id n acc -> (id, n) :: acc) actual_counts []) in
+ Alcotest.(check (list (pair string int)))
+ "every allow-list id's actual row count matches its citation's expected_rows, and no id is unused or \
+ undeclared"
+ expected actual
+
+let suite =
+ ( "oracle (missalemeum, EF, 2026-2027)",
+ [ Alcotest.test_case "fixture SHA-256 matches its provenance note" `Quick test_fixture_checksum;
+ Alcotest.test_case "streams are 730 rows each, dates aligned 1:1" `Quick test_dates_align;
+ Alcotest.test_case "every difference is named in the cited allow-list -- none unexplained" `Quick
+ test_no_unexplained_differences;
+ Alcotest.test_case "allow-list counts match data/ef/expected-divergences-missalemeum.sexp exactly"
+ `Quick test_layer_m_counts_match_citations
+ ] )
diff --git a/test/test_precedence.ml b/test/test_precedence.ml
new file mode 100644
index 0000000..369c490
--- /dev/null
+++ b/test/test_precedence.ml
@@ -0,0 +1,108 @@
+module P = Colitur_kernel.Precedence
+module Cel = Colitur_kernel.Celebration
+module S = Colitur_kernel.Slug
+module Col = Colitur_kernel.Colour
+module D = Colitur_kernel.Date
+
+type rank = Hi | Lo [@@deriving sexp]
+type season = Green [@@deriving sexp]
+
+let cand ?(origin = P.Sanctoral) ?(status = Cel.Feast) ~rank slug =
+ { P.cel = Cel.make ~slug:(S.of_string_exn slug) ~rank ~status ~colour:Col.White
+ ~layer:"base" (); origin }
+
+let ctx =
+ { P.date = (match D.make ~year:2026 ~month:7 ~day:15 with Ok d -> d | Error e -> failwith e);
+ season = Green; weekday = D.Wed }
+
+(* Band: Hi beats Lo. Temporal breaks a tie in its own favour. *)
+let rules =
+ { P.band = (fun _ c -> (match c.P.cel.Cel.rank with Hi -> 10 | Lo -> 20)
+ - (match c.P.origin with P.Temporal -> 1 | P.Sanctoral -> 0));
+ disposition =
+ (fun ~winner:_ ~loser ->
+ match loser.P.cel.Cel.status with
+ | Cel.Commemoration_only -> P.Commemorate P.Ordinary
+ | Cel.Feast -> (match loser.P.cel.Cel.rank with
+ | Hi -> P.Transfer
+ | Lo -> P.Commemorate P.Ordinary));
+ admit = (fun ~observed:_ cs -> List.filteri (fun i _ -> i < 2) cs) }
+
+let slug_of c = S.to_string c.P.cel.Cel.slug
+
+let test_highest_band_wins () =
+ let r = P.resolve rules ctx ~temporal:(cand ~origin:P.Temporal ~rank:Lo "feria")
+ ~sanctoral:[ cand ~rank:Hi "big-feast" ] in
+ Alcotest.(check string) "feast wins" "big-feast" (slug_of r.P.observed)
+
+let test_temporal_wins_a_tie () =
+ let r = P.resolve rules ctx ~temporal:(cand ~origin:P.Temporal ~rank:Hi "sunday")
+ ~sanctoral:[ cand ~rank:Hi "saint" ] in
+ Alcotest.(check string) "temporal wins tie" "sunday" (slug_of r.P.observed)
+
+let test_loser_dispositions () =
+ let r = P.resolve rules ctx ~temporal:(cand ~origin:P.Temporal ~rank:Hi "sunday")
+ ~sanctoral:[ cand ~rank:Hi "transferable"; cand ~rank:Lo "commemorated" ] in
+ Alcotest.(check (list string)) "deferred" [ "transferable" ]
+ (List.map slug_of r.P.deferred);
+ Alcotest.(check (list string)) "commemorated" [ "commemorated" ]
+ (List.map (fun (c, _) -> slug_of c) r.P.commemorations)
+
+(* A commemoration-only entry can never be observed, even at a winning band. *)
+let test_commemoration_only_never_observed () =
+ let r = P.resolve rules ctx ~temporal:(cand ~origin:P.Temporal ~rank:Lo "feria")
+ ~sanctoral:[ cand ~rank:Hi ~status:Cel.Commemoration_only "suppressed" ] in
+ Alcotest.(check string) "feria still observed" "feria" (slug_of r.P.observed);
+ Alcotest.(check (list string)) "suppressed commemorated" [ "suppressed" ]
+ (List.map (fun (c, _) -> slug_of c) r.P.commemorations)
+
+(* Anything the admit limit drops is recorded in `omitted`, never dropped silently
+ -- and each input candidate lands in exactly one bucket, not zero or two. *)
+let test_nothing_silently_lost () =
+ let r = P.resolve rules ctx ~temporal:(cand ~origin:P.Temporal ~rank:Hi "sunday")
+ ~sanctoral:[ cand ~rank:Lo "a"; cand ~rank:Lo "b"; cand ~rank:Lo "c" ] in
+ let bucketed =
+ (slug_of r.P.observed
+ :: List.map (fun (c, _) -> slug_of c) r.P.commemorations)
+ @ List.map slug_of r.P.deferred
+ @ List.map (fun (c, _) -> slug_of c) r.P.omitted
+ in
+ Alcotest.(check (slist string compare)) "every candidate appears exactly once"
+ [ "a"; "b"; "c"; "sunday" ] bucketed;
+ Alcotest.(check int) "two admitted" 2 (List.length r.P.commemorations)
+
+(* The result must not depend on the order sanctoral candidates arrive in;
+ ties break on slug, not on list position. *)
+let test_order_independent () =
+ let a = cand ~rank:Lo "a" and b = cand ~rank:Lo "b" and c = cand ~rank:Lo "c" in
+ let t = cand ~origin:P.Temporal ~rank:Hi "sunday" in
+ let observed_for sanctoral = slug_of (P.resolve rules ctx ~temporal:t ~sanctoral).P.observed in
+ let comms_for sanctoral =
+ List.map (fun (x, _) -> slug_of x) (P.resolve rules ctx ~temporal:t ~sanctoral).P.commemorations
+ in
+ List.iter
+ (fun perm ->
+ Alcotest.(check string) "same observed" (observed_for [ a; b; c ]) (observed_for perm);
+ Alcotest.(check (list string)) "same commemorations" (comms_for [ a; b; c ]) (comms_for perm))
+ [ [ c; b; a ]; [ b; a; c ]; [ c; a; b ] ]
+
+(* The case the "pass temporal separately" design exists to make safe: a day
+ with no sanctoral candidate at all. *)
+let test_temporal_only_day () =
+ let r = P.resolve rules ctx ~temporal:(cand ~origin:P.Temporal ~rank:Lo "feria")
+ ~sanctoral:[] in
+ Alcotest.(check string) "feria observed" "feria" (slug_of r.P.observed);
+ Alcotest.(check int) "no commemorations" 0 (List.length r.P.commemorations);
+ Alcotest.(check int) "nothing deferred" 0 (List.length r.P.deferred);
+ Alcotest.(check int) "nothing omitted" 0 (List.length r.P.omitted)
+
+let suite =
+ ( "Precedence",
+ [ Alcotest.test_case "highest band wins" `Quick test_highest_band_wins;
+ Alcotest.test_case "temporal wins a tie" `Quick test_temporal_wins_a_tie;
+ Alcotest.test_case "loser dispositions" `Quick test_loser_dispositions;
+ Alcotest.test_case "commemoration-only never observed" `Quick
+ test_commemoration_only_never_observed;
+ Alcotest.test_case "nothing silently lost" `Quick test_nothing_silently_lost;
+ Alcotest.test_case "order independent" `Quick test_order_independent;
+ Alcotest.test_case "temporal-only day" `Quick test_temporal_only_day ] )
diff --git a/test/test_precedence_ef.ml b/test/test_precedence_ef.ml
new file mode 100644
index 0000000..a0e1db1
--- /dev/null
+++ b/test/test_precedence_ef.ml
@@ -0,0 +1,1183 @@
+(* RG 91's Table of Precedence, transcribed by Rite_ef.Precedence_ef.band.
+ Table-driven, one row (hence one Alcotest.test_case) per RG 91 entry, so a
+ misplaced or missing entry names itself in the failure output instead of
+ failing anonymously (docs/research/rules-register.md §4). Each row's date
+ is checked against the register to make sure it is not ALSO an instance of
+ some other entry at the same band (the vacuous-test trap this project has
+ caught before -- see the Advent-Ember-day note on entry 18 below). *)
+
+module P = Colitur_kernel.Precedence
+module Cel = Colitur_kernel.Celebration
+module S = Colitur_kernel.Slug
+module Col = Colitur_kernel.Colour
+module D = Colitur_kernel.Date
+module Sub = Colitur_kernel.Subject
+module Comp = Colitur_kernel.Computus
+module T = Rite_ef.Temporal_ef
+module V = Rite_ef.Vocab_ef
+module PE = Rite_ef.Precedence_ef
+
+let mk y m dd = match D.make ~year:y ~month:m ~day:dd with Ok t -> t | Error e -> failwith e
+
+(* [T.season] is the same function Calendar itself would use to build a
+ context, so a row's [season]/[weekday] are exactly what the real engine
+ would compute for that date, not a hand-picked value that might not
+ actually occur together with it. *)
+let ctx date = { P.date; season = T.season date; weekday = D.weekday date }
+
+let cand ?(origin = P.Temporal) ?(rank = V.Class1) ?(status = Cel.Feast) ?(subject = Sub.Temporal)
+ ?(layer = "temporal") slug =
+ { P.cel = Cel.make ~slug:(S.of_string_exn slug) ~rank ~status ~colour:Col.White ~subject ~layer ();
+ origin }
+
+(* A candidate built from [Temporal_ef.temporal]'s own real output, not a
+ hand-typed slug -- review finding 3: [band]'s Ember/vigil detection reads
+ temporal_ef.ml's slug conventions, and a row that also hand-types the same
+ literal proves nothing if that convention ever drifts (both sides would
+ drift together, silently). Rows built with this instead fail loudly on
+ such a drift, because they source the slug from the same place [band]
+ itself is implicitly trusting. *)
+let of_temporal date =
+ let day = T.temporal date in
+ { P.cel = day.Colitur_kernel.Temporal.office; origin = P.Temporal }
+
+(* Every Easter-relative date below is anchored to this single computed
+ Easter rather than a hand-typed calendar date, so an arithmetic slip in a
+ test date cannot silently pass by accident. *)
+let easter = Comp.gregorian_easter 2026
+let off n = D.add_days easter n
+
+(* (description, date, candidate, expected RG 91 entry). *)
+let cases =
+ [ (* Entry 1 -- RG 91 entry 1 (§4): Nativity, Easter Sunday, Pentecost Sunday. *)
+ ("1 Nativity", mk 2026 12 25, cand "ef-nativity", 1);
+ ("1 Easter Sunday", off 0, cand "ef-easter-sunday", 1);
+ ("1 Pentecost Sunday", off 49, cand "ef-pentecost", 1);
+ (* Entry 2 -- RG 91 entry 2 (§4): Sacred Triduum. Thu-Sat of Holy Week,
+ NOT entry 7 (which stops at Wednesday -- see entry 7 below). *)
+ ("2 Holy Thursday", off (-3), cand "ef-holy-thursday", 2);
+ ("2 Good Friday", off (-2), cand "ef-good-friday", 2);
+ ("2 Holy Saturday", off (-1), cand "ef-holy-saturday", 2);
+ (* Entry 3 -- RG 91 entry 3 (§4). *)
+ ("3 Epiphany", mk 2026 1 6, cand "ef-epiphany", 3);
+ ("3 Ascension", off 39, cand "ef-ascension", 3);
+ ("3 Trinity", off 56, cand "ef-trinity", 3);
+ ("3 Corpus Christi", off 60, cand "ef-corpus-christi", 3);
+ ("3 Sacred Heart", off 68, cand "ef-sacred-heart", 3);
+ ("3 Christ the King", T.christ_the_king 2026, cand "ef-christ-the-king", 3);
+ (* Entry 4 -- RG 91 entry 4 (§4). Sanctoral-origin: neither feast is part
+ of temporal_ef's movable cycle. *)
+ ( "4 Immaculate Conception", mk 2026 12 8,
+ cand ~origin:P.Sanctoral ~subject:Sub.Bvm ~layer:PE.universal_layer
+ "ef-immaculate-conception",
+ 4 );
+ ("4 Assumption", mk 2026 8 15, cand ~origin:P.Sanctoral ~subject:Sub.Bvm ~layer:PE.universal_layer "ef-assumption", 4);
+ (* Entry 5 -- RG 91 entry 5 (§4). *)
+ ("5 Nativity Vigil", mk 2026 12 24, cand "ef-nativity-vigil", 5);
+ ("5 Octave day (Circumcision)", mk 2026 1 1, cand "ef-circumcision", 5);
+ (* Entry 6 -- RG 91 entry 6 (§4). *)
+ ("6 Advent Sunday", T.advent_start 2026, cand "ef-advent-sunday-1", 6);
+ ("6 Lent Sunday", off (-42), cand "ef-lent-sunday-1", 6);
+ ("6 Passion Sunday (I Passiontide)", off (-14), cand "ef-passion-sunday", 6);
+ ("6 Palm Sunday (II Passiontide)", off (-7), cand "ef-palm-sunday", 6);
+ ("6 Low Sunday", off 7, cand "ef-low-sunday", 6);
+ (* Entry 7 -- RG 91 entry 7 (§4): Ash Wednesday and Mon/Tue/Wed of Holy
+ Week ONLY -- Thu-Sat are entry 2 above, not this entry. *)
+ ("7 Ash Wednesday", off (-46), cand "ef-ash-wednesday", 7);
+ ("7 Monday of Holy Week", off (-6), cand "ef-holy-monday", 7);
+ ("7 Tuesday of Holy Week", off (-5), cand "ef-holy-tuesday", 7);
+ ("7 Wednesday of Holy Week", off (-4), cand "ef-holy-wednesday", 7);
+ (* Entry 8 -- RG 91 entry 8 (§4). 2 Nov 2026 is a Monday (verified
+ independently below the table), so this row is the plain case. The
+ register's own qualifying case -- "yields to an occurring Sunday" --
+ gets its own row and its own end-to-end test after this table (2 Nov
+ 2025 is a real Sunday). *)
+ ("8 All Souls (non-Sunday)", mk 2026 11 2, cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-all-souls", 8);
+ (* Entry 8's qualifier: "(yields to an occurring Sunday)". 2 Nov 2025 is
+ a Sunday, so this must NOT be 8 -- it must lose to entry 15 (16 =
+ entry 15's own value + 1, the exact value precedence_ef.ml documents
+ and justifies at entry 8's branch). The end-to-end resolve-level
+ proof that the Sunday actually wins the day is
+ [test_all_souls_yields_to_sunday] below; this row pins the specific
+ integer [band] returns. *)
+ ("8 All Souls (yields to a Sunday, 2 Nov 2025)", mk 2025 11 2, cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-all-souls", 16);
+ (* Entry 9 -- RG 91 entry 9 (§4). *)
+ ("9 Pentecost Vigil", off 48, cand "ef-pentecost-vigil", 9);
+ (* Entry 10 -- RG 91 entry 10 (§4): both range boundaries, to guard the
+ off-by-one an inclusive Easter-offset window invites. *)
+ ("10 Easter octave, day+1", off 1, cand "ef-easter-1-mon", 10);
+ ("10 Easter octave, day+6", off 6, cand "ef-easter-1-sat", 10);
+ ("10 Pentecost octave, day+50", off 50, cand "ef-pentecost-1-mon", 10);
+ ("10 Pentecost octave, day+55", off 55, cand "ef-pentecost-1-sat", 10);
+ (* Entry 11 -- RG 91 entry 11 (§4). *)
+ ( "11 Universal I-class feast", mk 2026 6 29,
+ cand ~origin:P.Sanctoral ~subject:Sub.Saint ~layer:PE.universal_layer "ef-ss-peter-paul",
+ 11 );
+ (* Entry 12 -- RG 91 entry 12 (§4). The one non-base-layer case the brief
+ asks for explicitly: same date/rank/subject as 11, only the layer
+ differs, so this row isolates the layer test as the deciding factor. *)
+ ( "12 Proper I-class feast (non-base layer)", mk 2026 6 29,
+ cand ~origin:P.Sanctoral ~subject:Sub.Saint ~layer:"diocese-warsaw" "ef-local-patron",
+ 12 );
+ (* Entry 13 -- RG 91 entry 13 (§4). *)
+ ( "13 Indult I-class feast", mk 2026 6 29,
+ cand ~origin:P.Sanctoral ~subject:Sub.Saint ~layer:(PE.indult_prefix ^ "local-grant")
+ "ef-indult-feast-1",
+ 13 );
+ (* Entry 14 -- RG 91 entry 14 (§4), deliberately UNQUALIFIED (contrast
+ entry 16, which explicitly says "not of the Lord"). *)
+ ( "14 Feast of the Lord, II class", mk 2026 7 1,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~subject:Sub.Lord ~layer:PE.universal_layer
+ "ef-precious-blood",
+ 14 );
+ (* Entry 14, non-base layer: unlike 11-13/16/19/20/23/24, entry 14 draws
+ no universal/proper/indult line at all, so this must STILL be 14, not
+ 19 -- the exact restriction review finding 2 flagged and this row
+ exists to keep from silently coming back. *)
+ ( "14 Feast of the Lord, II class (non-base layer)", mk 2026 7 2,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~subject:Sub.Lord ~layer:"diocese-warsaw"
+ "ef-local-feast-of-the-lord",
+ 14 );
+ (* Entry 15 -- RG 91 entry 15 (§4): an ordinary Sunday not named at entry 6
+ -- Septuagesima is II class (RG 11-12 names only Advent/Lent/
+ Passiontide/Easter/Low/Pentecost as I class). *)
+ ("15 II-class Sunday (Septuagesima)", off (-63), cand ~rank:V.Class2 "ef-septuagesima-sunday", 15);
+ (* Entry 16 -- RG 91 entry 16 (§4). *)
+ ( "16 Universal II-class feast, not of the Lord", mk 2026 1 20,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~subject:Sub.Saint ~layer:PE.universal_layer
+ "ef-some-saint",
+ 16 );
+ (* Entry 17 -- RG 91 entry 17 (§4): days WITHIN the Nativity octave (26-28
+ Dec are Stephen/John/Innocents -- sanctoral, not this entry; 1 Jan is
+ entry 5's Octave DAY, not this entry either). *)
+ ("17 Nativity octave, 29 Dec", mk 2026 12 29, cand ~rank:V.Class2 "ef-nativity-octave-day-5", 17);
+ ("17 Nativity octave, 31 Dec", mk 2026 12 31, cand ~rank:V.Class2 "ef-nativity-octave-day-7", 17);
+ (* Entry 18 -- RG 91 entry 18 (§4): Advent 17-23 Dec ferias AND the
+ Ember days of Advent/Lent/September share this one entry. The second
+ row is deliberately a Lent date (season Lent, NOT Advent) to prove the
+ Ember-slug path fires on its own, not merely because it also happens
+ to fall in the Dec 17-23 window -- the exact trap the brief warns
+ about, worked the other way round: this Ember day must NOT be
+ mistaken for an ordinary entry-22 Lent feria either. *)
+ ("18 Advent 17-23 Dec feria", mk 2026 12 21, cand ~rank:V.Class2 "ef-advent-4-mon", 18);
+ (* Sourced from Temporal_ef.temporal's own output (see [of_temporal])
+ rather than a hand-typed "ef-lent-ember-wed" -- closes review finding
+ 3's coupling concern for the Ember prefixes specifically. *)
+ ("18 Lent Ember Wednesday (from Temporal_ef.temporal)", off (-39), of_temporal (off (-39)), 18);
+ (* Entry 19 -- RG 91 entry 19 (§4). *)
+ ( "19 Proper II-class feast", mk 2026 1 20,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~subject:Sub.Saint ~layer:"diocese-warsaw"
+ "ef-local-saint-2",
+ 19 );
+ (* Entry 20 -- RG 91 entry 20 (§4). *)
+ ( "20 Indult II-class feast", mk 2026 1 20,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~subject:Sub.Saint
+ ~layer:(PE.indult_prefix ^ "local-grant-2") "ef-indult-feast-2",
+ 20 );
+ (* Entry 21 -- RG 91 entry 21 (§4, RG 28-34). Two rows: the Ascension
+ Vigil is the one II-class vigil temporal_ef already produces today
+ (temporal-origin); the Assumption Vigil stands in for the
+ sanctoral-origin case no task has loaded data for yet -- proving
+ [band] does not gate this entry on [origin] (see precedence_ef.ml's
+ file comment). *)
+ (* Sourced from Temporal_ef.temporal's own output (see [of_temporal])
+ rather than a hand-typed "ef-ascension-vigil" -- closes review finding
+ 3's coupling concern for [vigil_suffix]. *)
+ ("21 Ascension Vigil (from Temporal_ef.temporal)", off 38, of_temporal (off 38), 21);
+ ( "21 Assumption Vigil (sanctoral-origin)", mk 2026 8 14,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~layer:PE.universal_layer "ef-assumption-vigil",
+ 21 );
+ (* Also review finding 3 / "worth doing": a UNIVERSAL-layer Class2 vigil
+ whose subject is the Lord must still be 21, not 14 -- pins entry 14's
+ [not is_vigil] guard even after finding 2 dropped its layer test. *)
+ ( "21 Universal II-class vigil of the Lord", mk 2026 6 23,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~subject:Sub.Lord ~layer:PE.universal_layer
+ "ef-precious-blood-vigil",
+ 21 );
+ (* Entry 22 -- RG 91 entry 22 (§4) (corrected: ends at Palm Sunday, not
+ Passion Sunday). Both a Lent and a Passiontide feria, clear of Ash
+ Wednesday, Holy Week and the Ember days. *)
+ ("22 Lent feria", off (-41), cand ~rank:V.Class3 "ef-lent-1-mon", 22);
+ ("22 Passiontide feria", off (-12), cand ~rank:V.Class3 "ef-passiontide-1-tue", 22);
+ (* Entry 23 -- RG 91 entry 23 (§4). NOTE the table's own order here is the
+ REVERSE of 11/12 and 14/16/19/20 above: entry 23 (particular
+ calendars) is numbered BELOW entry 24 (universal), so a proper
+ III-class feast outranks a universal one -- transcribed as the
+ register states it, not "corrected" to match the other classes. *)
+ ( "23 Proper III-class feast (non-base layer)", mk 2026 6 30,
+ cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:"diocese-warsaw" "ef-local-saint-3",
+ 23 );
+ (* Entry 24 -- RG 91 entry 24 (§4). *)
+ ( "24 Universal III-class feast", mk 2026 6 30,
+ cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:PE.universal_layer "ef-some-saint-3",
+ 24 );
+ (* Entry 25 -- RG 91 entry 25 (§4). *)
+ ("25 Advent feria to 16 Dec", mk 2026 12 1, cand ~rank:V.Class3 "ef-advent-1-tue", 25);
+ (* Entry 26 -- RG 91 entry 26 (§4). *)
+ ( "26 III-class vigil", mk 2026 8 9,
+ cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:PE.universal_layer "ef-lawrence-vigil",
+ 26 );
+ (* Also worth doing: a NON-universal-layer Class3 vigil must still be 26,
+ not 23 -- pins entry 23's [not is_vigil] guard. *)
+ ( "26 III-class vigil (non-base layer)", mk 2026 8 10,
+ cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:"diocese-warsaw" "ef-local-patron-vigil",
+ 26 );
+ (* Task 11, issue (a): the sanctoral bootstrap (data/ef/sanctoral.sexp)
+ names its vigils with lectio's OWN "vigil-of-X" PREFIX convention, not
+ [PE.vigil_suffix]'s "-vigil" SUFFIX every row above uses -- exactly
+ the mismatch Task 7's review predicted. These two rows use the real
+ bootstrapped slugs verbatim (data/ef/sanctoral.sexp: 28 Jun, 9 Aug),
+ proving [band] recognises the prefix convention too: without it, both
+ would misfile at 16/24 (an ordinary feast of the same rank) instead
+ of 21/26. *)
+ ( "21 II-class vigil via the sanctoral data's own \"vigil-of-X\" prefix",
+ mk 2026 6 28,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~layer:PE.universal_layer "vigil-of-sts-peter-paul",
+ 21 );
+ ( "26 III-class vigil via the sanctoral data's own \"vigil-of-X\" prefix",
+ mk 2026 8 9,
+ cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:PE.universal_layer "vigil-of-st-lawrence",
+ 26 );
+ (* Entry 27 -- RG 91 entry 27 (§4): an otherwise-unoccupied IV-class
+ Saturday. *)
+ ( "27 Office of the BVM on Saturday", off 62,
+ cand ~rank:V.Class4 "ef-time-after-pentecost-1-sat",
+ 27 );
+ (* Entry 28 -- RG 91 entry 28 (§4): the unqualified IV-class catch-all. *)
+ ("28 IV-class feria", off 65, cand ~rank:V.Class4 "ef-time-after-pentecost-1-tue", 28);
+ (* Not an RG 91 row at all: a I-class candidate marked as a vigil, which
+ is not the Nativity or Pentecost (entries 5/9, the only I-class
+ vigils the table names) and so has no entry to fall into. Proves the
+ documented fallback -- not entry 11/12/13, which the [not is_vigil]
+ guard exists specifically to keep this out of. *)
+ ( "unclassified: I-class vigil outside Nativity/Pentecost", mk 2026 3 10,
+ cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-mystery-vigil",
+ PE.unclassified );
+ (* Also worth doing: a temporal-origin Class1 candidate on a date none of
+ entries 1/2/3/5/6/7/9/10 name. 15 Jul 2026 is a Wednesday, off=101
+ from Easter -- clear of every Easter-relative window this module
+ checks, and not one of the fixed dates either. Without the
+ [not is_temporal] guard on entries 11-13, this would wrongly reach 12
+ (its default layer, "temporal", is not [universal_layer] and does not
+ carry [indult_prefix], so it reads as "proper" by the layer test
+ alone -- precisely the bug the guard exists to prevent; see the
+ [not is_temporal] guard's role in the entry-25 mutation test recorded
+ in the task report). *)
+ ("unclassified: I-class temporal candidate on an unnamed date", mk 2026 7 15, cand "ef-unnamed-day", PE.unclassified);
+ (* RG 91's own vigil list (§4, "Vigils / octaves / Rogations / Sunday classes") stops at III class --
+ there is no IV-class vigil for entry 28's ferial catch-all to absorb. *)
+ ( "unclassified: IV-class candidate marked as a vigil", mk 2026 6 20,
+ cand ~rank:V.Class4 "ef-second-mystery-vigil", PE.unclassified )
+ ]
+
+(* Review finding 1's end-to-end proof: on a real Sunday landing on 2
+ November, [Precedence.resolve] -- not just [band] in isolation -- observes
+ the Sunday, not All Souls. This exercises the exact mechanism the finding
+ named ("resolve observes the lowest band, so whenever 2 November falls on
+ a Sunday, All Souls wins and the Sunday loses"), rather than only the
+ integer [band] returns for the standalone row above. [disposition] and
+ [admit] are stubs -- only [observed] is under test here. *)
+let test_all_souls_yields_to_sunday () =
+ let date = mk 2025 11 2 in
+ let day_ctx = ctx date in
+ let sunday =
+ { P.cel =
+ Cel.make ~slug:(S.of_string_exn "ef-time-after-pentecost-sunday-x") ~rank:V.Class2
+ ~colour:Col.Green ~subject:Sub.Temporal ~layer:"temporal" ();
+ origin = P.Temporal }
+ in
+ let all_souls = cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-all-souls" in
+ let rules =
+ { P.band = (fun c cd -> PE.band c cd);
+ disposition = (fun ~winner:_ ~loser:_ -> P.Omit);
+ admit = (fun ~observed:_ cs -> cs) }
+ in
+ let resolution = P.resolve rules day_ctx ~temporal:sunday ~sanctoral:[ all_souls ] in
+ Alcotest.(check string) "the Sunday is observed, not All Souls"
+ "ef-time-after-pentecost-sunday-x"
+ (S.to_string resolution.P.observed.P.cel.Cel.slug)
+
+(* Task 8: [disposition] -- what happens to the day's LOSING candidate (RG
+ 92-95, 33, 94; §4). Table-driven like [band]'s
+ own [cases] above, one row per rule, each checked against a description of
+ which register clause it pins. [disposition] takes no context (see
+ precedence.mli's [rules.disposition]), so "is the winner a Sunday" is read
+ off the winner's own slug the same way [band] itself reads "is this a
+ vigil" off the loser's -- see precedence_ef.ml's [sunday_marker]. *)
+
+let string_of_disposition = function
+ | P.Omit -> "Omit"
+ | P.Commemorate P.Privileged -> "Commemorate(Privileged)"
+ | P.Commemorate P.Ordinary -> "Commemorate(Ordinary)"
+ | P.Transfer -> "Transfer"
+ | P.Repose -> "Repose"
+
+(* A II-class ordinary Sunday, built the same way [test_all_souls_yields_to_sunday]
+ builds its Sunday -- a hand-typed slug matching temporal_ef.ml's own
+ "ef-<season>-sunday-<n>" convention, since [disposition] only ever reads
+ this string, never the real computed date. *)
+let an_ordinary_sunday =
+ cand ~rank:V.Class2 "ef-time-after-pentecost-sunday-11"
+
+let disposition_cases =
+ [ (* RG 95 -- §4, "Occurrence": only I-class feasts transfer; a
+ II-class feast loses to a I-class day and is COMMEMORATED, not
+ transferred. Paired with the next row (a I-class loser, same shape of
+ winner) so the discriminating factor is provably the LOSER's own
+ rank, not the winner's -- the brief's explicit "one without the other
+ proves nothing" pairing. *)
+ ( "RG95 II-class feast loses to I-class day -> Commemorate",
+ cand "ef-nativity",
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~layer:PE.universal_layer "ef-some-saint",
+ "Commemorate(Ordinary)" );
+ ( "RG95 I-class feast loses to a higher I-class day -> Transfer",
+ cand "ef-nativity",
+ cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-local-i-class-feast",
+ "Transfer" );
+ (* Fix round 1 (post-Task-9 review): RG 95 (§4, "Occurrence" and "Transfer/translation")
+ restricts the right of translation to I-class FEASTS -- RG 91's own
+ table lists Sundays as a separate row (entry 6)
+ from feasts (entries 11-13) -- so an impeded I-class
+ Sunday must NOT transfer, unlike the plain I-class feast row above:
+ same [Class1] rank, same kind of winner, the ONLY difference is that
+ this loser's slug carries [PE.sunday_marker]. RG 109(a) (§4)
+ confirms this from the other direction: "of a Sunday" is a
+ privileged commemoration category, which presupposes an impeded
+ Sunday stays put rather than moving to another day the way a feast
+ does. Sourced from [Temporal_ef.temporal]'s own real output (Advent I
+ Sunday 2026, Class1, "ef-advent-sunday-1"), the same coupling-safety
+ reason [of_temporal]'s other callers use it -- this is also a
+ realistic shape: 8 December falls on an Advent Sunday in 2024, 2030
+ and 2041 (Immaculate Conception, RG 91 entry 4, outranking entry 6),
+ and 24 December falls on Advent IV in 2023, 2028, 2034 and 2045 (the
+ Nativity Vigil, also entry 5 outranking entry 6). *)
+ ( "RG95/RG109(a): an impeded I-class SUNDAY does NOT transfer -- it is \
+ Commemorated and Privileged",
+ cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-immaculate-conception",
+ of_temporal (T.advent_start 2026),
+ "Commemorate(Privileged)" );
+ (* RG 33 -- §4, "Vigils / octaves / Rogations / Sunday classes": a II- or
+ III-class vigil impeded by any Sunday or a I-class feast is entirely
+ OMITTED, not commemorated. The
+ vigil is sourced from [Temporal_ef.temporal]'s own real output (as
+ [of_temporal]'s existing callers above do), not a hand-typed
+ "ef-ascension-vigil", so a drift in temporal_ef's vigil-slug
+ convention cannot silently defeat this row the way a duplicated
+ literal could. This is the row the brief singles out as most likely
+ to pass vacuously if the fallback below happened to already be
+ [Omit] -- it is not: the fallback is [Commemorate] (see the next two
+ rows), so this genuinely exercises RG 33's own branch. *)
+ ( "RG33 II-class vigil loses to an ordinary Sunday -> Omit",
+ an_ordinary_sunday,
+ of_temporal (off 38) (* Ascension Vigil *),
+ "Omit" );
+ ( "RG33 II-class vigil loses to a I-class feast (non-Sunday) -> Omit",
+ cand "ef-immaculate-conception",
+ of_temporal (off 38),
+ "Omit" );
+ (* RG 33's own boundary, proved from both sides so the rule is shown to
+ gate on the WINNER too, not "any vigil is always omitted": winner is
+ neither a Sunday nor I class, so RG 33's omission does not fire; a
+ vigil, per RG 31's own text ("si impediuntur, commemorantur"), is
+ ALWAYS commemorated once RG 33 does not omit it outright, regardless
+ of RG 109's closed list.
+
+ CORRECTED comment (final fix wave, item 2b): this row's own comment
+ used to claim it "proves [the RG26 Class4-Omit branch's] own [not
+ (is_vigil ...)] guard" -- that claim does NOT survive under the
+ current [rank = Class4] gate (it may have been true under an earlier
+ predicate). The vigil sourced here ({!of_temporal}, the real
+ Ascension Vigil) is [Class2], not [Class4], so the RG26 branch's own
+ [rank = Class4] test already excludes it on rank alone, with or
+ without the [not (is_vigil ...)] guard -- verified: deleting that
+ guard entirely leaves 257/257 green. This row still genuinely proves
+ RG 31's own "if impeded, commemorated" vigil mandate (a vigil that
+ RG 33 does not omit outright is commemorated, not omitted by some
+ OTHER mechanism), which is real and worth keeping; it just does not
+ discriminate the [not (is_vigil ...)] guard specifically. *)
+ ( "RG33 boundary: vigil loses to an ordinary (non-Sunday, non-I-class) \
+ II-class day -> Commemorate, NOT Omit (RG31's own vigil mandate)",
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~layer:PE.universal_layer "ef-some-other-feast",
+ of_temporal (off 38),
+ "Commemorate(Ordinary)" );
+ (* The GENUINE witness for the RG26 branch's [not (is_vigil ...)] guard
+ (final fix wave, item 2b): no REAL vigil this engine constructs can
+ exercise it, since RG 91 has no IV-class vigil at all (this file's own
+ entry-27/28 comments) -- every real vigil is Class2 or Class3, already
+ excluded by [rank = Class4] alone, the exact shape the row above is.
+ This row is therefore deliberately SYNTHETIC: a temporal-origin loser,
+ [Class4], whose slug ALSO carries {!PE.vigil_suffix} -- a shape RG 91
+ itself does not describe, but one {!Precedence.resolve} can still be
+ asked to construct (see precedence_ef.ml's own comment on this guard).
+ With the guard present, [is_vigil] excludes it from the RG26 branch,
+ so it falls through to the ordinary [Commemorate] catch-all (RG 31's
+ "if impeded, commemorated" mandate, the same rule the row above
+ exercises for a realistic Class2 vigil). Deleting [not (is_vigil ...)]
+ from that branch turns this row -- and only this row -- red: the
+ branch would then fire on [rank = Class4] alone and return [Omit]. *)
+ ( "SYNTHETIC (final fix wave, item 2b): a temporal-origin Class4 loser \
+ ALSO vigil-shaped is Commemorate (RG31's vigil mandate via the \
+ not-is_vigil guard), not Omit",
+ an_ordinary_sunday,
+ cand ~rank:V.Class4 "ef-synthetic-class4-vigil",
+ "Commemorate(Ordinary)" );
+ (* CORRECTED 2026-08-12 (Task 16, primary-source-verified): the register
+ previously (mis-)transcribed RG 33 as covering only I/II-class
+ vigils, so this row's own title used to read "outside RG33's
+ I/II-class scope" and expect Commemorate. The primary text ("Vigilia
+ II AUT III classis penitus omittitur...") covers II OR III class --
+ St Lawrence's vigil (III class, RG 32) falling on ANY Sunday ("in
+ dominica quavis") is entirely omitted, exactly like a II-class vigil.
+ See {!PE.is_omissible_vigil}'s own comment for the full primary text
+ and the register correction. *)
+ ( "RG33 (corrected): a III-class vigil loses to a Sunday -> Omit, not \
+ Commemorate",
+ an_ordinary_sunday,
+ cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:PE.universal_layer "ef-lawrence-vigil",
+ "Omit" );
+ (* Task 11, issue (a): [disposition]'s own [is_vigil] check (the RG 33
+ omission test) is a SEPARATE call site from [band]'s -- both read the
+ same private [is_vigil], but each needed its own witness, since a fix
+ to one call site could in principle miss the other. Real bootstrapped
+ slug (data/ef/sanctoral.sexp's "vigil-of-the-assumption", 14 Aug),
+ not a hand-typed one, for the same coupling-safety reason [of_temporal]
+ rows use real data elsewhere in this file. Before the fix this vigil
+ was invisible to [is_vigil] entirely, so it would have fallen through
+ to the ordinary Commemorate branch below instead of Omit -- the exact
+ failure the task brief describes. *)
+ ( "RG33 (prefix convention): a \"vigil-of-X\"-named II-class vigil loses \
+ to an ordinary Sunday -> Omit",
+ an_ordinary_sunday,
+ cand ~origin:P.Sanctoral ~rank:V.Class2 ~layer:PE.universal_layer "vigil-of-the-assumption",
+ "Omit" );
+ (* Brief: a Commemoration_only loser is ALWAYS Commemorate -- checked
+ here with a loser that ALSO carries a Class1 rank and a vigil-suffixed
+ slug losing to a Sunday, so this row only passes if the
+ Commemoration_only check is checked BEFORE both RG 33's omission and
+ RG 95's transfer, not after. Its expected privilege is [Privileged],
+ not [Ordinary]: this loser's [rank] is [Class1] (the default [cand]
+ leaves unless overridden, deliberately kept here for the
+ branch-order proof above), and RG 109(b) (§4, "of
+ a I-class day") makes any [Class1] commemoration privileged
+ regardless of how it reached [Commemorate] -- Task 8's placeholder
+ [interim_privilege] used to hide this (always [Ordinary]); Task 9's
+ real [privilege_of] does not. This row is also this suite's ONLY
+ witness for RG 109(b): a plain [Feast]-status [Class1] loser never
+ reaches [Commemorate] at all (RG 95 sends it to [Transfer] instead,
+ see the row above), so [Commemoration_only] is the only shape that
+ can exercise it here (see the task report). *)
+ ( "Commemoration_only loser is always Commemorate, even if I-class and \
+ vigil-shaped, even losing to a Sunday -- and RG109(b) makes it \
+ privileged",
+ an_ordinary_sunday,
+ cand ~origin:P.Sanctoral ~status:Cel.Commemoration_only ~layer:PE.universal_layer
+ "ef-suppressed-vigil",
+ "Commemorate(Privileged)" );
+ (* Totality (SANCTORAL side): the lower ranks the RG 33/RG 95/Task-16
+ branches never touch still reach the RG 95 "commemorated or omitted"
+ branch's [Commemorate] side, not an unhandled/exceptional case -- RG
+ 111(c)/(d) admit an "ordinary" SAINT commemoration freely, with none
+ of RG 109's closed-list restriction the temporal branch below has. *)
+ ( "III-class feast loses to a I-class day -> Commemorate",
+ cand "ef-nativity",
+ cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:PE.universal_layer "ef-some-saint-3",
+ "Commemorate(Ordinary)" );
+ (* Task 16 (primary-source-verified: RG 95 + RG 109's closed list + RG
+ 113 -- see this branch's own comment in precedence_ef.ml for the full
+ three-text argument): an ORDINARY, non-privileged TEMPORAL-cycle
+ loser -- a bog-standard green-season feria of Time after Pentecost,
+ none of RG 109(a)-(f) -- has NO standing to be commemorated at all
+ when impeded; it is entirely omitted, not the "ordinary"
+ commemoration a losing SAINT would get (contrast the SANCTORAL row
+ immediately above, same rank, same kind of winner, opposite
+ [Commemorate]/[Omit] outcome -- the discriminating factor is
+ [origin], nothing else). Before this fix the engine wrongly
+ commemorated the losing feria itself here; confirmed wrong against
+ the missalemeum oracle (Task 16 report): every one of ~190
+ structurally identical days (an ordinary sanctoral feast impeding an
+ ordinary temporal feria, 2026-2027) shows zero commemorations in an
+ independent published EF calendar. *)
+ ( "TASK16: an ORDINARY temporal feria loses to a II-class Sunday -> \
+ Omit, not Commemorate (RG109's closed list; contrast the sanctoral \
+ row above)",
+ an_ordinary_sunday,
+ cand ~rank:V.Class4 "ef-time-after-pentecost-1-sat",
+ "Omit" );
+ (* Totality's other half: a SANCTORAL loser of the exact same rank as
+ the row above still reaches [Commemorate], proving the branch above
+ is gated on [origin] and not merely on rank -- without this row nothing
+ here would distinguish "temporal losers are omitted" from "IV-class
+ losers are omitted", which would be a much bigger (and wrong) claim. *)
+ ( "TASK16 contrast: a SANCTORAL IV-class loser still reaches \
+ Commemorate(Ordinary)",
+ an_ordinary_sunday,
+ cand ~origin:P.Sanctoral ~rank:V.Class4 ~layer:PE.universal_layer "ef-some-minor-saint",
+ "Commemorate(Ordinary)" );
+ (* Final fix wave, item 2(a): the RG 26 gate above is [rank = Class4],
+ and until this row nothing in the suite discriminated that from the
+ REFUTED predicate it replaced, [privilege_of loser = Ordinary]
+ (precedence_ef.ml's own comment on this branch names that exact
+ predicate as the wrong reading it corrects). The two predicates are
+ extensionally identical over every candidate this engine actually
+ constructs -- confirmed by enumerating the whole candidate space over
+ 1583-9999: substituting the old predicate back leaves 257/257 green
+ and produces byte-identical `colitur day` output for every sampled
+ year. No REALISTIC row can tell them apart, so this one is
+ deliberately SYNTHETIC: a temporal-origin loser, [Class3] (not
+ [Class4]), whose slug matches none of RG 109(a)-(f) -- [privilege_of]
+ therefore returns [Ordinary] for it, the SAME privilege value as the
+ Class4 row above. The two gates now diverge: RG 26 ([rank = Class4])
+ says this loser is NOT a IV-class feria, so it falls through to the
+ ordinary [Commemorate] branch (RG 24/25's mandate for a II/III-class
+ feria); the refuted gate ([privilege_of loser = Ordinary]) tests only
+ the privilege value, which is [Ordinary] here exactly as it is for
+ the Class4 row, so it would wrongly return [Omit]. Reverting the
+ branch's condition to [privilege_of loser = Ordinary] turns this row
+ (and only this row, of the two) red -- see the final-fix-report for
+ the exact Alcotest failure message this produces and its reversion. *)
+ ( "SYNTHETIC (final fix wave, item 2a): a temporal-origin ORDINARY \
+ Class3 loser is Commemorate under RG26 (rank=Class4 gate), would be \
+ Omit under the refuted privilege_of=Ordinary gate",
+ an_ordinary_sunday,
+ cand ~rank:V.Class3 "ef-synthetic-ordinary-class3-feria",
+ "Commemorate(Ordinary)" )
+ ]
+
+(* Task 9: [privilege_of]'s RG 109 categories (§4, "Commemorations"),
+ exercised through [PE.disposition]'s [Commemorate] payload -- [privilege_of]
+ itself is private, so this is the only vantage point a test outside
+ precedence_ef.ml has on it. Each row below is built to match ONLY the one
+ category it names (see each row's own comment for why), closing the
+ hazard flagged in the task brief ("a test day that is both a Sunday and a
+ I-class day proves nothing about either"). Category (b), "of a I-class
+ day", already has its sole witness above (the Commemoration_only row):
+ a plain [Feast]-status [Class1] loser can never reach [Commemorate] at
+ all in this ruleset (RG 95 routes it to [Transfer] instead), so no
+ further row for (b) is added here -- see the task report. Category (f),
+ "of the Major Rogations, in Mass", has no row at all: no candidate this
+ codebase can currently construct represents one (see [privilege_of]'s own
+ comment on (f)) -- the negative row below proves the one slug this engine
+ DOES compute that could be mistaken for it (the Minor Rogations) is
+ correctly NOT conflated with it, which is the strongest claim available
+ without inventing an unfounded slug convention. *)
+let privilege_cases =
+ [ (* (a) RG 109(a) (§4): "of a Sunday". [an_ordinary_sunday] is Class2,
+ not Class1, not within the Nativity octave, not an Ember day, not a
+ feria of Advent/Lent/Passiontide -- matches (a) alone. *)
+ ( "(a) an ordinary Sunday commemoration is privileged",
+ cand "ef-nativity",
+ an_ordinary_sunday,
+ "Commemorate(Privileged)" );
+ (* (c) RG 109(c) (§4): "of days within the Octave of the Nativity" --
+ sourced from [Temporal_ef.temporal]'s own output (29 Dec 2026, Class2,
+ "ef-nativity-octave-day-5"), not a hand-typed slug, for the same
+ coupling-safety reason the file's own [of_temporal] rows use it
+ elsewhere. Not a Sunday, not Class1, not an Ember day, not an
+ Advent/Lent/Passiontide feria slug. *)
+ ( "(c) a day within the Nativity octave is privileged",
+ cand "ef-nativity",
+ of_temporal (mk 2026 12 29),
+ "Commemorate(Privileged)" );
+ (* (d) RG 109(d) (§4): "of September Ember days" -- 23 Sep 2026 is
+ the September Ember Wednesday (independently derived from
+ [Temporal_ef]'s own third-Sunday-of-September rule: first Sunday of
+ September 2026 is the 6th, +14 days = 20th, +3 = 23rd), sourced from
+ [Temporal_ef.temporal] itself, Class2. Not a Sunday, not Class1, not
+ within the Nativity octave, not a plain Advent/Lent/Passiontide feria
+ slug either -- and, unlike the Advent/Lent Ember rows below, its own
+ slug ("ef-september-ember-wed") never starts with any of (e)'s own
+ [alp_feria_prefixes] ("ef-advent-"/"ef-lent-"/"ef-passiontide-"), so
+ (d) is this candidate's ONLY route to [Privileged] -- a genuine,
+ still-necessary distinction from (e), unlike the Advent/Lent Ember
+ case below (fix round 1). *)
+ ( "(d) a September Ember day is privileged",
+ cand "ef-nativity",
+ of_temporal (mk 2026 9 23),
+ "Commemorate(Privileged)" );
+ (* (e) RG 109(e) (§4): "of ferias of Advent, Lent and Passiontide" --
+ two rows, one per season named, both from [Temporal_ef.temporal]'s
+ own generic ferial fallback, neither a Sunday, Ember day, or within
+ the Nativity octave. *)
+ ( "(e) an Advent feria is privileged",
+ cand "ef-nativity",
+ of_temporal (mk 2026 12 1),
+ "Commemorate(Privileged)" );
+ ( "(e) a Lent feria is privileged",
+ cand "ef-nativity",
+ of_temporal (off (-41)),
+ "Commemorate(Privileged)" );
+ (* CHANGED, fix round 1 (F1/F2/F6): these two rows used to be titled
+ "boundary: ... is NOT privileged (only September is, RG109(d))" and
+ expected [Omit] (a Task-16-pass reading that treated RG 109(e)'s bare
+ "feriis Adventus, Quadragesimae" as tacitly excluding the Advent and
+ Lent Ember sub-days, by analogy with (d)'s own separate, explicit
+ September carve-out). Review round 1 (F1) reproduced the real
+ consequence directly -- 1900-12-21, an Advent Ember Friday, lost its
+ own commemoration entirely, while an ordinary (lower-solemnity,
+ non-Ember) Advent feria the same week kept its commemoration --
+ backwards on any reading, and traced it to this exact
+ misclassification (F2).
+
+ Corrected reading (precedence_ef.ml's own [privilege_of], (e)
+ branch, carries the full argument): RG 91's TABLE needs an explicit
+ "exceptis feriis Quatuor Temporum" at its own entries 22 and 25 to
+ keep Ember days from being double-listed against their own entry 18
+ -- an exception that would be unnecessary drafting if "feriae
+ Adventus"/"feriae Quadragesimae" did not ALREADY include their Ember
+ sub-days by default. RG 109(e) carries no such "exceptis" clause, so
+ its bare text is read at that same default, INCLUSIVE scope: the
+ Advent and Lent Ember ferias ARE privileged under (e), not merely
+ commemorable-but-ordinary. (d)'s own separate existence survives
+ this reading intact -- September Ember days sit outside Advent/Lent/
+ Passiontide under ANY reading, so (d) remains the ONLY way they
+ reach [Privileged], the point the row immediately above this one
+ makes explicit.
+
+ 16 Dec 2026 is the Advent Ember Wednesday (independently derived:
+ Advent I 2026 is 29 Nov, +14 days = 13 Dec, +3 = 16 Dec); the Lent
+ Ember Wednesday is the same date [off (-39)] already used by the
+ entry-18 [band] row above. Both sourced from [Temporal_ef.temporal],
+ not hand-typed, for the same coupling-safety reason every
+ [of_temporal] row in this file uses it. *)
+ ( "(e), corrected fix round 1: an Advent Ember day is ALSO privileged, \
+ not excluded from (e)",
+ cand "ef-nativity",
+ of_temporal (mk 2026 12 16),
+ "Commemorate(Privileged)" );
+ ( "(e), corrected fix round 1: a Lent Ember day is ALSO privileged, \
+ not excluded from (e)",
+ cand "ef-nativity",
+ of_temporal (off (-39)),
+ "Commemorate(Privileged)" );
+ (* Negative, RG 109(f)'s own boundary: the Minor Litanies/Rogations
+ (Monday/Tuesday before Ascension, RG 87 -- [Temporal_ef.temporal]
+ DOES compute these, unlike the Major Litanies RG 109(f) actually
+ names, see [privilege_of]'s own comment) must NOT be mistaken for the
+ Major Rogations RG 109(f) privileges: RG 88 says the Minor Rogations
+ change nothing in the Office at all, so nothing about them is
+ privileged either -- and (Task 16) being temporal+ordinary, a Minor
+ Rogation day impeded by a saint is now omitted outright, matching the
+ missalemeum oracle exactly (Task 16 report: 11 May 2026 and 12 May
+ 2026, both Minor Rogation days impeded by a saint, show zero
+ commemoration of the Rogation in the independent oracle). *)
+ ( "boundary: a Minor Rogation day is NOT privileged (RG109(f) names \
+ the Major Litanies, not these) -- TASK16 omits it entirely",
+ cand "ef-nativity",
+ of_temporal (off 36),
+ "Omit" )
+ ]
+
+(* Task 9: [PE.admit] -- RG 111's admission counts (§4, "Commemorations"),
+ given commemorations ALREADY tagged with their real privilege (as
+ [PE.disposition] now tags them -- see [privilege_cases] above). Every
+ candidate/privilege pair here is built directly, not routed through
+ [PE.disposition], so these rows isolate [admit]'s own selection logic
+ from [privilege_of]'s classification -- the two are proved separately by
+ design (unlike a test that only proves [admit] admits SOME correct-looking
+ set without knowing whether it or [privilege_of] supplied the "correct"
+ part). Checked on slug IDENTITY, not count (the brief: "'two admitted'
+ proves nothing about *which* two"). *)
+
+(* Class2 dignity, tagged [Ordinary] explicitly (not via [privilege_of]) --
+ used as the higher-dignity, non-privileged half of every asymmetry pair
+ below. *)
+let ordinary_hi = cand ~rank:V.Class2 "ef-ordinary-hi"
+
+(* Class3 dignity (LOWER than [ordinary_hi]), tagged [Privileged] explicitly
+ -- pairing a lower-dignity privileged candidate against a higher-dignity
+ ordinary one is what makes the II-class-Sunday-vs-other-II-class
+ asymmetry observable: pure dignity and "privilege wins the slot" pick
+ DIFFERENT winners from this exact pair. *)
+let privileged_lo = cand ~rank:V.Class3 "ef-privileged-lo"
+
+(* Class2 dignity (tied with [ordinary_hi], distinguishing rank from
+ privilege alone), tagged [Privileged] -- the higher-dignity privileged
+ candidate for the "two privileged due" row. *)
+let privileged_hi = cand ~rank:V.Class2 "ef-privileged-hi"
+
+(* Class4, the lowest dignity in play -- the third candidate for the
+ III/IV-class "at most two" row, so which TWO of three survive is the
+ thing under test, not merely how many. *)
+let ordinary_lowest = cand ~rank:V.Class4 "ef-ordinary-lowest"
+
+(* Class3, tagged [Ordinary] -- fix round 1, F7: the RG 111(b) rank-floor
+ witness [admit_cases] was missing. [ordinary_hi] above is already Class2,
+ so every existing II-class-Sunday row here passes whether or not
+ [admit]'s "de festo II classis" filter is even present -- reverting that
+ filter would only redden [test_oracle.ml], not this file, which is
+ exactly the coverage gap the review round found. This candidate is the
+ ONLY thing due on the Sunday row below, so a version of [admit] without
+ the rank floor would (wrongly) admit it on pure "best available"
+ dignity, same as it would have admitted [ordinary_hi]. *)
+let ordinary_class3 = cand ~rank:V.Class3 "ef-ordinary-class3"
+
+let observed_class1 = cand "ef-nativity" (* Class1 by [cand]'s own default. *)
+let observed_class2_sunday = an_ordinary_sunday (* Class2, slug carries "-sunday". *)
+let observed_class2_other = cand ~rank:V.Class2 "ef-other-class2-day" (* Class2, no "-sunday". *)
+let observed_class3 = cand ~rank:V.Class3 "ef-some-class3-day"
+
+let slugs_of admitted =
+ List.map (fun (c, _) -> S.to_string c.P.cel.Cel.slug) admitted
+
+let admit_cases =
+ [ (* RG 111 (§4): "I class: none save one privileged." *)
+ ( "I-class day, only an ordinary commemoration due -> none admitted",
+ observed_class1,
+ [ (ordinary_hi, P.Ordinary) ],
+ [] );
+ ( "I-class day, ordinary + privileged both due -> only the privileged \
+ one, regardless of the ordinary one's higher dignity",
+ observed_class1,
+ [ (ordinary_hi, P.Ordinary); (privileged_lo, P.Privileged) ],
+ [ "ef-privileged-lo" ] );
+ ( "I-class day, two privileged due -> only the higher-dignity one (still \
+ just \"one\")",
+ observed_class1,
+ [ (privileged_lo, P.Privileged); (privileged_hi, P.Privileged) ],
+ [ "ef-privileged-hi" ] );
+ (* RG 111: "II-class Sundays: one (dropped if a privileged one is due)." *)
+ ( "II-class Sunday, only an ordinary commemoration due -> it is admitted",
+ observed_class2_sunday,
+ [ (ordinary_hi, P.Ordinary) ],
+ [ "ef-ordinary-hi" ] );
+ ( "II-class Sunday, ordinary (higher dignity) + privileged (lower \
+ dignity) both due -> the PRIVILEGED one is admitted, the ordinary \
+ one dropped despite outranking it",
+ observed_class2_sunday,
+ [ (ordinary_hi, P.Ordinary); (privileged_lo, P.Privileged) ],
+ [ "ef-privileged-lo" ] );
+ (* RG 111(b)'s own rank floor ("scilicet DE FESTO II CLASSIS"), fix
+ round 1 F7: a Class3 ORDINARY candidate -- no privileged rival due,
+ so the pre-fix-round code's "no privileged? take the best of what's
+ left" fallback would (wrongly) admit it -- is admitted NOTHING. The
+ slot is reserved for a II-class candidate specifically; a III-class
+ ordinary one has no standing for it at all, unlike "other II class"
+ below, which has no such restriction. *)
+ ( "II-class Sunday, sole candidate is an ORDINARY Class3 (not \
+ \"de festo II classis\") -> admitted nothing, not the best available",
+ observed_class2_sunday,
+ [ (ordinary_class3, P.Ordinary) ],
+ [] );
+ (* RG 111: "other II class: one" -- no privilege override, the exact
+ asymmetry the brief and precedence_ef.ml's own [admit] comment flag:
+ same candidate pair as the II-class-Sunday row above, OPPOSITE
+ observed day, OPPOSITE winner. *)
+ ( "other II-class day, only an ordinary commemoration due -> it is \
+ admitted",
+ observed_class2_other,
+ [ (ordinary_hi, P.Ordinary) ],
+ [ "ef-ordinary-hi" ] );
+ ( "other II-class day, same ordinary+privileged pair as the Sunday row \
+ above -> the ORDINARY one wins on pure dignity this time, the \
+ privileged one dropped",
+ observed_class2_other,
+ [ (ordinary_hi, P.Ordinary); (privileged_lo, P.Privileged) ],
+ [ "ef-ordinary-hi" ] );
+ (* RG 111: "III-IV class: at most two" -- three candidates due, top two
+ by dignity admitted, the third (lowest dignity) dropped. *)
+ ( "III-class day, three commemorations due -> the top two by dignity, \
+ not merely \"two of them\"",
+ observed_class3,
+ [ (ordinary_hi, P.Ordinary); (privileged_lo, P.Privileged);
+ (ordinary_lowest, P.Ordinary) ],
+ [ "ef-ordinary-hi"; "ef-privileged-lo" ] )
+ ]
+
+(* Order independence (brief: "the admitted set must not depend on input
+ order"): the SAME three candidates as the III-class row above, passed in
+ the reverse order, must still admit the same top two -- exercised on this
+ row specifically because it is the one where the sort actually has work
+ to do (three distinct dignities, a real top-2 cut), unlike a
+ two-candidate row where either order already happens to be sorted. *)
+let test_admit_order_independent () =
+ let comms =
+ [ (ordinary_hi, P.Ordinary); (privileged_lo, P.Privileged); (ordinary_lowest, P.Ordinary) ]
+ in
+ let forward = slugs_of (PE.admit ~observed:observed_class3 comms) in
+ let reversed = slugs_of (PE.admit ~observed:observed_class3 (List.rev comms)) in
+ Alcotest.(check (list string)) "reversed input admits the same candidates"
+ forward reversed
+
+(* The brief: "a case proving that what the limit drops is reported in
+ omitted rather than vanishing" -- three end-to-end proofs, wired with the
+ REAL [PE.band], [PE.disposition] and [PE.admit] together (not a stub, so
+ [privilege_of]'s real classification is exercised too, not just [admit]'s
+ selection logic in isolation as above).
+
+ [rules] deliberately reused, not rebuilt per test, since it is always the
+ same three real functions. *)
+let real_rules = { P.band = PE.band; disposition = PE.disposition; admit = PE.admit }
+
+(* I-class day, zero admitted: the strongest form of "does not vanish" --
+ EVERY commemoration due is dropped (RG 111: "none save one privileged",
+ and the one loser here is ordinary), yet it must still appear in
+ [omitted], not merely be absent from [commemorations]. *)
+let test_i_class_day_drops_into_omitted () =
+ let date = mk 2026 12 25 in
+ let day_ctx = ctx date in
+ let nativity = of_temporal date in
+ let saint = cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:PE.universal_layer "ef-some-saint-3" in
+ let resolution = P.resolve real_rules day_ctx ~temporal:nativity ~sanctoral:[ saint ] in
+ Alcotest.(check (list string)) "nothing admitted on a I-class day with only an ordinary loser due"
+ [] (List.map (fun (c, _) -> S.to_string c.P.cel.Cel.slug) resolution.P.commemorations);
+ Alcotest.(check (list (pair string string))) "the ordinary loser is reported omitted, not vanished"
+ [ ("ef-some-saint-3", "omitted: admission limit reached") ]
+ (List.map (fun (c, reason) -> (S.to_string c.P.cel.Cel.slug, reason)) resolution.P.omitted)
+
+(* II-class Sunday, two ordinary losers due, RG 111's "one" admits the
+ higher-dignity one and drops the other into [omitted]. *)
+let test_ii_class_sunday_drops_second_loser_into_omitted () =
+ let date = mk 2025 11 9 (* an ordinary Time-after-Pentecost Sunday, not All Souls-adjacent. *) in
+ let day_ctx = ctx date in
+ let sunday =
+ { P.cel =
+ Cel.make ~slug:(S.of_string_exn "ef-time-after-pentecost-sunday-x") ~rank:V.Class2
+ ~colour:Col.Green ~subject:Sub.Temporal ~layer:"temporal" ();
+ origin = P.Temporal }
+ in
+ let saint_a = cand ~origin:P.Sanctoral ~rank:V.Class2 ~layer:PE.universal_layer "ef-some-saint" in
+ let saint_b = cand ~origin:P.Sanctoral ~rank:V.Class3 ~layer:PE.universal_layer "ef-some-saint-3" in
+ let resolution = P.resolve real_rules day_ctx ~temporal:sunday ~sanctoral:[ saint_a; saint_b ] in
+ Alcotest.(check (list string)) "only the higher-dignity (Class2) loser is admitted"
+ [ "ef-some-saint" ]
+ (List.map (fun (c, _) -> S.to_string c.P.cel.Cel.slug) resolution.P.commemorations);
+ Alcotest.(check (list (pair string string))) "the lower-dignity loser is reported omitted, not vanished"
+ [ ("ef-some-saint-3", "omitted: admission limit reached") ]
+ (List.map (fun (c, reason) -> (S.to_string c.P.cel.Cel.slug, reason)) resolution.P.omitted)
+
+(* A genuinely privileged commemoration reaching [admit] through the REAL
+ pipeline (register RG 109(e)): a Lent feria (Class3, temporal-origin)
+ loses to a universal Class2 sanctoral feast on the same date, and
+ [PE.disposition] tags it [Privileged] via [privilege_of] -- proving
+ [privilege_of] and [admit] cooperate correctly end-to-end, not merely in
+ the hand-tagged unit tests above. *)
+let test_privileged_lent_feria_admitted_end_to_end () =
+ let date = off (-41) (* Lent I Monday, the same date the entry-22 [band] row uses. *) in
+ let day_ctx = ctx date in
+ let lent_feria = of_temporal date in
+ let saint = cand ~origin:P.Sanctoral ~rank:V.Class2 ~layer:PE.universal_layer "ef-some-saint" in
+ let resolution = P.resolve real_rules day_ctx ~temporal:lent_feria ~sanctoral:[ saint ] in
+ Alcotest.(check string) "the Lent feast wins the day, not the sanctoral feast's own commemoration"
+ "ef-some-saint" (S.to_string resolution.P.observed.P.cel.Cel.slug);
+ Alcotest.(check (list (pair string string))) "the Lent feria is admitted, tagged Privileged"
+ [ ("ef-lent-1-monday", "Privileged") ]
+ (List.map
+ (fun (c, p) -> (S.to_string c.P.cel.Cel.slug, match p with P.Privileged -> "Privileged" | P.Ordinary -> "Ordinary"))
+ resolution.P.commemorations);
+ Alcotest.(check int) "nothing omitted" 0 (List.length resolution.P.omitted)
+
+(* Fix round 1 (post-Task-9 review): the II-class-Sunday override (RG 111
+ "one, dropped if a privileged one is due") reached through the REAL
+ pipeline, with both a privileged AND an ordinary commemoration due on the
+ same day -- previously only proven at the isolated [admit] level
+ ([admit_cases]'s hand-tagged rows above). RG 109(a)-(f)'s five reachable
+ categories are all properties of a TEMPORAL-origin office, and only one
+ temporal candidate exists per date, so a privileged AND an ordinary
+ commemoration cannot both be due from the temporal side alone -- but
+ category (b) is the exception: it is sanctoral and rank-based (a
+ [Commemoration_only] entry carrying [Class1], the exact shape
+ [disposition_cases]'s own (b) witness row uses), and a [Commemoration_only]
+ entry is held out of the band contest entirely ({!Precedence.resolve}),
+ so it is a loser regardless of what [observed] turns out to be. Paired
+ with an ordinary sanctoral saint, both lose to an ordinary Class2 Sunday,
+ giving [observed_is_sunday = true] with one [Privileged] and one
+ [Ordinary] loser due at once -- no synthetic fixture needed.
+
+ NOTE on what this test does and does not prove: the only reachable
+ witness for RG 109(b) is [Class1] (the highest dignity), and any
+ sanctoral loser that could ALSO beat this same Sunday by pure dignity
+ would win the day outright instead of losing to it (any [Feast]-status
+ [Class1] sanctoral candidate bands at entry 11-13, ahead of an ordinary
+ Sunday's entry 15) -- so within this specific pipeline shape the
+ privileged loser is unavoidably also the higher-dignity one, and this
+ test cannot by itself distinguish "privilege overrides dignity" from
+ "dignity alone happened to pick the same winner". That distinction is
+ what [admit_cases]'s hand-tagged rows above prove (a LOWER-dignity
+ privileged candidate still beats a HIGHER-dignity ordinary one on a
+ II-class Sunday, the opposite of "other II class"'s own row). This test's
+ job is narrower and complementary: proving the real pipeline
+ ([PE.band], [PE.disposition], [PE.privilege_of] via [disposition],
+ [PE.admit] together) actually reaches and exercises the override branch
+ end-to-end, not merely in isolation. *)
+let test_ii_class_sunday_privileged_witness_admitted_end_to_end () =
+ let date = mk 2026 7 5 (* an ordinary Time-after-Pentecost Sunday. *) in
+ let day_ctx = ctx date in
+ let sunday = of_temporal date in
+ let privileged_witness =
+ cand ~origin:P.Sanctoral ~status:Cel.Commemoration_only ~layer:PE.universal_layer
+ "ef-commemoration-only-b-witness"
+ (* Class1 by [cand]'s own default -- RG 109(b). *)
+ in
+ let ordinary_saint = cand ~origin:P.Sanctoral ~rank:V.Class2 ~layer:PE.universal_layer "ef-some-saint" in
+ let resolution =
+ P.resolve real_rules day_ctx ~temporal:sunday ~sanctoral:[ privileged_witness; ordinary_saint ]
+ in
+ (* Checked against [sunday]'s own slug, not a hand-typed/guessed literal
+ (its exact week number is not worth independently re-deriving here):
+ this asserts identity with the real [Temporal_ef.temporal] candidate,
+ proving the SUNDAY -- not either sanctoral loser -- is what wins the
+ day, which the privilege assertions below presuppose. *)
+ Alcotest.(check string) "the Sunday wins the day, not either sanctoral loser"
+ (S.to_string sunday.P.cel.Cel.slug) (S.to_string resolution.P.observed.P.cel.Cel.slug);
+ Alcotest.(check (list (pair string string)))
+ "only the privileged (Commemoration_only, Class1) witness is admitted"
+ [ ("ef-commemoration-only-b-witness", "Privileged") ]
+ (List.map
+ (fun (c, p) -> (S.to_string c.P.cel.Cel.slug, match p with P.Privileged -> "Privileged" | P.Ordinary -> "Ordinary"))
+ resolution.P.commemorations);
+ Alcotest.(check (list (pair string string))) "the ordinary saint is dropped into omitted, not vanished"
+ [ ("ef-some-saint", "omitted: admission limit reached") ]
+ (List.map (fun (c, reason) -> (S.to_string c.P.cel.Cel.slug, reason)) resolution.P.omitted)
+
+(* Completes Task 7's carried fix (RG 91 entry 8, §4): on a real Sunday
+ landing on 2 November, All Souls does not merely lose (that was Task 7's
+ [band] fix, proved by [test_all_souls_yields_to_sunday] above) -- it must
+ be TRANSFERRED, not commemorated and not omitted. All Souls is I class
+ (RG 91 entry 8's own [rank] field, untouched by the Sunday-exception band
+ bump -- see precedence_ef.ml's comment on entry 8), so RG 95's rank
+ condition alone should route it to [Transfer]. *)
+let test_all_souls_disposition_is_transfer () =
+ let sunday = an_ordinary_sunday in
+ let all_souls = cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-all-souls" in
+ Alcotest.(check string) "All Souls loses to a Sunday and transfers"
+ "Transfer"
+ (string_of_disposition (PE.disposition ~winner:sunday ~loser:all_souls))
+
+(* The same fact, proved end-to-end through [Precedence.resolve] with the
+ REAL [PE.band] and REAL [PE.disposition] wired together (Task 7's own
+ integration test above still stubs [disposition] to a constant [Omit],
+ which is exactly what this task must not leave true) -- All Souls must
+ land in [deferred], not [commemorations] or [omitted]. WHERE it is placed
+ (3 November, RG 96) is [Rite.transfer_target]'s job, out of this task's
+ scope; this only proves [resolve] hands it to the transfer path at all. *)
+let test_all_souls_transfers_end_to_end () =
+ let date = mk 2025 11 2 in
+ let day_ctx = ctx date in
+ let sunday =
+ { P.cel =
+ Cel.make ~slug:(S.of_string_exn "ef-time-after-pentecost-sunday-x") ~rank:V.Class2
+ ~colour:Col.Green ~subject:Sub.Temporal ~layer:"temporal" ();
+ origin = P.Temporal }
+ in
+ let all_souls = cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-all-souls" in
+ let rules = { P.band = PE.band; disposition = PE.disposition; admit = (fun ~observed:_ cs -> cs) } in
+ let resolution = P.resolve rules day_ctx ~temporal:sunday ~sanctoral:[ all_souls ] in
+ Alcotest.(check (list string)) "All Souls is deferred (transferred), not omitted or commemorated"
+ [ "ef-all-souls" ]
+ (List.map (fun c -> S.to_string c.P.cel.Cel.slug) resolution.P.deferred);
+ Alcotest.(check int) "nothing commemorated" 0 (List.length resolution.P.commemorations);
+ Alcotest.(check int) "nothing omitted" 0 (List.length resolution.P.omitted)
+
+(* Task 11: [PE.transfer_target] -- RG 96 ("the next following day that is
+ not I or II class") plus its Annunciation exception. [occupant] is a
+ synthetic callback ({!Colitur_kernel.Rite.t.transfer_target}'s own
+ [occupant] parameter), not a real [Calendar]-driven one -- the CLI's own
+ end-to-end proof (colitur day, All Souls landing on 3 Nov 2025 and the
+ Annunciation landing on 5 Apr 2027, see test/cli.t and the task report)
+ is what wires this against real data; these rows isolate the search
+ function itself. *)
+
+(* [blocked] returns Class1 (blocking) for exactly the listed dates, Class4
+ (not blocking) everywhere else -- enough to exercise [is_blocking]'s own
+ two-way test (RG 96 speaks of I OR II class; Class1 alone is enough to
+ prove the blocking side, [test_transfer_target_terminates...] below adds
+ nothing by varying it further). *)
+let occupant_blocking_on blocked_dates (d : D.t) : V.rank Cel.t =
+ let blocking = List.exists (fun bd -> D.compare bd d = 0) blocked_dates in
+ Cel.make ~slug:(S.of_string_exn "occupant") ~rank:(if blocking then V.Class1 else V.Class4)
+ ~colour:Col.Green ~layer:"synthetic" ()
+
+let occupant_always_blocking (_ : D.t) : V.rank Cel.t =
+ Cel.make ~slug:(S.of_string_exn "occupant") ~rank:V.Class1 ~colour:Col.Green ~layer:"synthetic" ()
+
+(* General RG 96 search: two consecutive blocked days past [origin], proving
+ the search walks past MORE than one ineligible day rather than only
+ trying [origin + 1] and stopping (the same shape Calendar's own
+ synthetic fixture pins for the abstraction -- this pins it for the real
+ EF search function). *)
+let test_transfer_target_general_multi_step_search () =
+ let origin = mk 2026 1 10 in
+ let occupant = occupant_blocking_on [ mk 2026 1 11; mk 2026 1 12 ] in
+ let c = cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-some-i-class-feast" in
+ let target = PE.transfer_target c origin occupant in
+ Alcotest.(check string) "lands on the first day past the blocked run"
+ "2026-01-13" (D.to_iso8601 target)
+
+(* Coordinator review (fix round 1): RG 96 Attamen (a) (register-transcribed,
+ primary-source-verified) makes the Annunciation exception CONDITIONAL on
+ the general RG 96 walk carrying the feast past Easter Sunday -- NOT
+ unconditional as the first transcription had it. The occupant here blocks
+ every day from [origin + 1] through the day after Easter (26 March - 6
+ April 2026 inclusive), so the GENERAL target itself would land at 7
+ April -- after Easter (5 April) -- which is exactly the trigger
+ condition, not merely "the Annunciation is impeded at all". *)
+let test_transfer_target_annunciation_starts_at_monday_after_low_sunday () =
+ let origin = mk 2026 3 25 in
+ let easter_2026 = Comp.gregorian_easter 2026 in
+ let blocked_through_day_after_easter =
+ let rec range a b = if D.compare a b > 0 then [] else a :: range (D.add_days a 1) b in
+ range (D.add_days origin 1) (D.add_days easter_2026 1)
+ in
+ let occupant = occupant_blocking_on blocked_through_day_after_easter in
+ let c = cand ~origin:P.Sanctoral ~layer:PE.universal_layer PE.annunciation_slug in
+ let target = PE.transfer_target c origin occupant in
+ let monday_after_low_sunday = D.add_days easter_2026 8 in
+ Alcotest.(check string) "lands on the Monday after Low Sunday (Easter + 8), the general \
+ walk having crossed Easter itself"
+ (D.to_iso8601 monday_after_low_sunday) (D.to_iso8601 target);
+ Alcotest.(check bool) "NOT the general target (2 days after Easter, discriminates the branch)"
+ true
+ (D.compare target (D.add_days easter_2026 2) <> 0)
+
+(* RG 96's own qualifier on the exception -- "searching onward from there
+ only if that day is itself blocked" (rite.mli) -- is [search_from]'s
+ ORDINARY behaviour, not a second mechanism: same blocked run as above
+ (forcing the general target past Easter, so the exception fires), PLUS
+ the Monday after Low Sunday itself blocked, confirming the search
+ continues exactly one more day from there. *)
+let test_transfer_target_annunciation_searches_onward_if_blocked () =
+ let origin = mk 2026 3 25 in
+ let easter_2026 = Comp.gregorian_easter 2026 in
+ let monday_after_low_sunday = D.add_days easter_2026 8 in
+ let blocked =
+ let rec range a b = if D.compare a b > 0 then [] else a :: range (D.add_days a 1) b in
+ range (D.add_days origin 1) (D.add_days easter_2026 1) @ [ monday_after_low_sunday ]
+ in
+ let occupant = occupant_blocking_on blocked in
+ let c = cand ~origin:P.Sanctoral ~layer:PE.universal_layer PE.annunciation_slug in
+ let target = PE.transfer_target c origin occupant in
+ Alcotest.(check string) "searches onward one more day when that Monday is itself blocked"
+ (D.to_iso8601 (D.add_days monday_after_low_sunday 1)) (D.to_iso8601 target)
+
+(* THE REGRESSION PIN (coordinator review): the bug an unconditional
+ exception produced. 25 March 2057 is Lent III Sunday (I class, RG 91
+ entry 6), impeding the Annunciation; 26 March 2057 is an ordinary Lent
+ feria (III class, well before Easter, 22 April 2057) -- the general RG
+ 96 target. The general target does NOT fall after Easter, so the
+ exception must NOT fire: the Annunciation lands on 26 March, not 13
+ April (Easter + 8), which is what the unconditional reading produced
+ (verified by reverting the fix and re-running this exact test -- see the
+ task report's mutation record). Uses the REAL [Temporal_ef.temporal] as
+ [occupant] (not a synthetic stand-in), the same coupling-safety
+ convention [of_temporal]'s callers use elsewhere in this file, so this
+ is also effectively an end-to-end check of the real 2057 calendar
+ shape, not just the search's own logic in isolation. *)
+let test_transfer_target_annunciation_not_overridden_when_general_target_precedes_easter () =
+ let origin = mk 2057 3 25 in
+ Alcotest.(check string) "25 March 2057 is a Sunday (Lent III)" "sunday"
+ (D.weekday_to_string (D.weekday origin));
+ let occupant d = (T.temporal d).Colitur_kernel.Temporal.office in
+ let c = cand ~origin:P.Sanctoral ~layer:PE.universal_layer PE.annunciation_slug in
+ let target = PE.transfer_target c origin occupant in
+ Alcotest.(check string) "lands on 26 March 2057 (the general RG96 target), NOT the \
+ Annunciation exception's Monday after Low Sunday"
+ "2057-03-26" (D.to_iso8601 target)
+
+(* rite.mli's own obligations on [transfer_target] (Task 11 brief): the call
+ must TERMINATE and its result must be STRICTLY AFTER [origin], even for a
+ rite/data shape this function cannot have anticipated -- an occupant that
+ reports every single day as blocking, forever. Calendar's own round guard
+ (max_transfer_rounds) does not cover this: it bounds ROUNDS across a
+ whole year, not the internal walk one call to this function makes (see
+ precedence_ef.ml's own comment on [search_from] and [max_search_days]).
+ Deliberately NOT pinning the exact returned date against the private
+ [max_search_days] constant -- that would coalesce a behavioural contract
+ (terminates, makes forward progress) with an internal tuning value this
+ function is free to change; a generous, test-owned ceiling (1000 days,
+ comfortably past any realistic bound) is enough to prove termination is
+ genuine and not merely "didn't hang during this particular run". *)
+let test_transfer_target_terminates_under_pathological_occupant () =
+ let origin = mk 2026 1 1 in
+ let c = cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-pathological-case" in
+ let target = PE.transfer_target c origin occupant_always_blocking in
+ Alcotest.(check bool) "strictly after origin" true (D.compare target origin > 0);
+ Alcotest.(check bool)
+ "terminates within a generous bound (proves the internal search is bounded, not merely lucky)"
+ true
+ (D.compare target (D.add_days origin 1000) <= 0)
+
+(* Coordinator review: [search_from] must not probe [occupant] past
+ {!Date}'s own domain ceiling (31 December 9999). A SYNTHETIC occupant
+ (like [occupant_always_blocking] above) can never actually discriminate
+ this: it never calls [Computus.gregorian_easter] itself, so it cannot
+ raise regardless of whether the domain guard exists -- a test built on
+ one would only prove [search_from]'s unrelated step bound, not this fix.
+ [occupant] here is instead the REAL [Temporal_ef.temporal] (no sanctoral
+ layer needed: 29-31 Dec are ALREADY II class via [named]'s own Nativity-
+ octave-day entries, so three real, unbroken blocking days already sit at
+ the very end of the domain) -- exactly the shape that raises without the
+ fix: 1 January of civil year 10000 is next, and [Computus.gregorian_easter
+ 10000] does [Date.make ~year:10000 ...] and [failwith]s (the .ml's own
+ [domain_max_date] comment; also how the reviewer reproduced the bug
+ through the project's own overlay mechanism -- see the task report for
+ that end-to-end reproduction). Mutation-verified: reverting the domain
+ guard makes this test error with exactly that uncaught [Failure], not
+ merely fail an assertion (see the task report). *)
+let test_transfer_target_does_not_raise_at_domain_ceiling () =
+ let origin = mk 9999 12 28 in
+ let occupant d = (T.temporal d).Colitur_kernel.Temporal.office in
+ let c = cand ~origin:P.Sanctoral ~layer:PE.universal_layer "ef-domain-ceiling-case" in
+ let target = PE.transfer_target c origin occupant in
+ Alcotest.(check bool) "past 31 December 9999 (the guard engaged; nothing admissible remained \
+ in-domain, so the search gave up at the ceiling rather than crashing)"
+ true
+ (D.compare target (mk 9999 12 31) > 0)
+
+
+let suite =
+ ( "Precedence_ef",
+ List.map
+ (fun (desc, date, c, expect) ->
+ Alcotest.test_case desc `Quick (fun () ->
+ Alcotest.(check int) desc expect (PE.band (ctx date) c)))
+ cases
+ @ [ Alcotest.test_case "8 All Souls yields to a Sunday (resolve-level)" `Quick
+ test_all_souls_yields_to_sunday ]
+ @ List.map
+ (fun (desc, winner, loser, expect) ->
+ Alcotest.test_case desc `Quick (fun () ->
+ Alcotest.(check string) desc expect
+ (string_of_disposition (PE.disposition ~winner ~loser))))
+ disposition_cases
+ @ List.map
+ (fun (desc, winner, loser, expect) ->
+ Alcotest.test_case desc `Quick (fun () ->
+ Alcotest.(check string) desc expect
+ (string_of_disposition (PE.disposition ~winner ~loser))))
+ privilege_cases
+ @ [ Alcotest.test_case "All Souls disposition is Transfer" `Quick
+ test_all_souls_disposition_is_transfer;
+ Alcotest.test_case "All Souls transfers end-to-end (resolve, real rules)" `Quick
+ test_all_souls_transfers_end_to_end ]
+ @ List.map
+ (fun (desc, observed, comms, expect) ->
+ Alcotest.test_case desc `Quick (fun () ->
+ Alcotest.(check (list string)) desc expect
+ (slugs_of (PE.admit ~observed comms))))
+ admit_cases
+ @ [ Alcotest.test_case "admit is order-independent (III-class, 3 candidates)" `Quick
+ test_admit_order_independent;
+ Alcotest.test_case "I-class day: full drop reported in omitted, not vanished" `Quick
+ test_i_class_day_drops_into_omitted;
+ Alcotest.test_case "II-class Sunday: second loser dropped into omitted" `Quick
+ test_ii_class_sunday_drops_second_loser_into_omitted;
+ Alcotest.test_case "RG109(e) Lent feria privileged end-to-end" `Quick
+ test_privileged_lent_feria_admitted_end_to_end;
+ Alcotest.test_case
+ "II-class Sunday override: RG109(b) witness admitted over an ordinary saint, end-to-end"
+ `Quick test_ii_class_sunday_privileged_witness_admitted_end_to_end;
+ Alcotest.test_case "transfer_target: general RG96 search walks past more than one blocked day"
+ `Quick test_transfer_target_general_multi_step_search;
+ Alcotest.test_case "transfer_target: Annunciation exception starts at Monday after Low Sunday"
+ `Quick test_transfer_target_annunciation_starts_at_monday_after_low_sunday;
+ Alcotest.test_case
+ "transfer_target: Annunciation exception searches onward if that Monday is blocked" `Quick
+ test_transfer_target_annunciation_searches_onward_if_blocked;
+ Alcotest.test_case
+ "transfer_target: Annunciation NOT overridden when the general target precedes Easter \
+ (2057 regression)"
+ `Quick test_transfer_target_annunciation_not_overridden_when_general_target_precedes_easter;
+ Alcotest.test_case "transfer_target: terminates and stays forward under a pathological occupant"
+ `Quick test_transfer_target_terminates_under_pathological_occupant;
+ Alcotest.test_case "transfer_target: does not raise probing past the domain ceiling" `Quick
+ test_transfer_target_does_not_raise_at_domain_ceiling ] )
diff --git a/test/test_rite_ef.ml b/test/test_rite_ef.ml
new file mode 100644
index 0000000..c150a6d
--- /dev/null
+++ b/test/test_rite_ef.ml
@@ -0,0 +1,265 @@
+(* Coordinator review (Task 11 fix round): integration tests wiring
+ [Rite_ef.context] together with the REAL data/ef/sanctoral.sexp +
+ data/ef/adjustments.sexp through [Colitur_kernel.Calendar] -- the same
+ pipeline `colitur day` uses, proven here at the OCaml level so these
+ properties are pinned by the test suite, not merely observable in CLI
+ output (which is exactly what finding 3 flagged: with the overlay's one
+ directive replaced by [()], `colitur day 2026`'s stdout is byte-identical
+ for all 365 days, since [ef-nativity-vigil] always outranks
+ [vigil-of-christmas] regardless -- the suppression's only observable
+ effect is on [Liturgical_day.omitted], which no cram assertion reads). *)
+
+module Cal = Colitur_kernel.Calendar
+module Layer = Colitur_kernel.Layer
+module Overlay = Colitur_kernel.Overlay
+module LD = Colitur_kernel.Liturgical_day
+module Slug = Colitur_kernel.Slug
+module Date = Colitur_kernel.Date
+module Date_spec = Colitur_kernel.Date_spec
+module Cel = Colitur_kernel.Celebration
+module Colour = Colitur_kernel.Colour
+module Subject = Colitur_kernel.Subject
+module P = Colitur_kernel.Precedence
+module Comp = Colitur_kernel.Computus
+module V = Rite_ef.Vocab_ef
+module T = Rite_ef.Temporal_ef
+module PE = Rite_ef.Precedence_ef
+
+(* Relative to this test's own build directory (_build/default/test/), same
+ convention test_sanctoral_ef.ml uses -- test/dune declares both as deps
+ of the (test ...) stanza. *)
+let sanctoral_path = "../data/ef/sanctoral.sexp"
+let adjustments_path = "../data/ef/adjustments.sexp"
+
+let mk y m d = match Date.make ~year:y ~month:m ~day:d with Ok t -> t | Error e -> failwith e
+
+let real_layer () =
+ let layer =
+ match Layer.load V.rank_of_sexp sanctoral_path with
+ | Ok l -> l
+ | Error e -> Alcotest.failf "%s: failed to load: %s" sanctoral_path e
+ in
+ let overlay =
+ match Overlay.load V.rank_of_sexp adjustments_path with
+ | Ok o -> o
+ | Error e -> Alcotest.failf "%s: failed to load: %s" adjustments_path e
+ in
+ let layer, diagnostics = Overlay.apply layer overlay in
+ Alcotest.(check (list string)) "the committed overlay applies cleanly, no diagnostics" []
+ (List.map Overlay.diagnostic_to_string diagnostics);
+ layer
+
+let slug_of (c : V.rank Cel.t) = Slug.to_string c.Cel.slug
+
+(* Finding 3: the suppression's ONLY observable effect is on 24 December's
+ [omitted] (and, belt-and-braces, on every OTHER field of every OTHER day
+ too -- vigil-of-christmas must not surface anywhere at all, since the
+ overlay removes it from the layer before resolution ever runs, unlike an
+ ordinary occurrence loss). Mutation-verified (see the task report):
+ substituting `(directives ())` for the real overlay makes this test's
+ first assertion fail (24 December's [omitted] gains
+ "vigil-of-christmas"), and confirmed the whole cram suite (test/cli.t)
+ still passes under that same mutation -- so this closes the "removing
+ the deliverable breaks no test" gap the coordinator flagged, which cram
+ alone structurally cannot. *)
+let test_vigil_of_christmas_suppressed () =
+ let layer = real_layer () in
+ let days = Cal.year Rite_ef.context layer 2026 in
+ let christmas_eve =
+ Array.to_list days |> List.find (fun d -> Date.compare d.LD.date (mk 2026 12 24) = 0)
+ in
+ Alcotest.(check string) "ef-nativity-vigil is still the observed day" "ef-nativity-vigil"
+ (slug_of christmas_eve.LD.observed);
+ Alcotest.(check (list string))
+ "24 December has nothing omitted -- vigil-of-christmas never enters the RG91 contest at all"
+ []
+ (List.map (fun (c, _) -> slug_of c) christmas_eve.LD.omitted);
+ let appears_anywhere =
+ Array.to_list days
+ |> List.exists (fun d ->
+ let is_it c = slug_of c = "vigil-of-christmas" in
+ is_it d.LD.observed
+ || List.exists (fun (c, _) -> is_it c) d.LD.commemorations
+ || List.exists (fun (c, _) -> is_it c) d.LD.omitted
+ || (match d.LD.transferred_in with Some c -> is_it c | None -> false)
+ || List.exists (fun (c, _) -> is_it c) d.LD.transferred_out)
+ in
+ Alcotest.(check bool) "vigil-of-christmas appears NOWHERE in the resolved year" false
+ appears_anywhere
+
+(* Coordinator review, finding 2, reproduced through the project's OWN
+ extension path (an overlay), the same way the reviewer found it: adding
+ an I-class feast on 25 December (competing against, and losing to, the
+ real Nativity) forces an RG 96 search starting 26 December -- which, with
+ the real sanctoral data (Stephen/John/the Innocents, all II class) plus
+ the temporal cycle's own Nativity-octave-day entries (29-31 Dec, also II
+ class), is blocking every single day through 31 December 9999. Before the
+ domain-ceiling fix this raised (Computus: year 10000 out of range);
+ confirmed by mutation-testing at the precedence_ef.ml unit level (see the
+ task report) -- this is the same defect reproduced end to end, through
+ Calendar, with real data, exactly as the review found it. *)
+let test_transfer_search_does_not_raise_at_domain_ceiling () =
+ let layer = real_layer () in
+ let impeding_entry : V.rank Layer.entry =
+ { Layer.date = (match Date_spec.fixed ~month:12 ~day:25 with Ok d -> d | Error e -> failwith e);
+ cel =
+ Cel.make ~slug:(Slug.of_string_exn "test-domain-ceiling-impeder") ~rank:V.Class1
+ ~colour:Colour.White ~layer:Rite_ef.Precedence_ef.universal_layer () }
+ in
+ let overlay : V.rank Overlay.t =
+ { Overlay.id = "test-domain-ceiling"; directives = [ Overlay.Add impeding_entry ] }
+ in
+ let layer, _diagnostics = Overlay.apply layer overlay in
+ (* Must not raise -- the whole point of the fix. *)
+ let days = Cal.year Rite_ef.context layer 9999 in
+ Alcotest.(check bool) "year 9999 resolves without raising, even with an impeded Christmas Day"
+ true (Array.length days > 0);
+ let impeder_placed_or_recorded =
+ Array.to_list days
+ |> List.exists (fun d ->
+ slug_of d.LD.observed = "test-domain-ceiling-impeder"
+ || List.exists (fun (c, _) -> slug_of c = "test-domain-ceiling-impeder") d.LD.omitted)
+ in
+ Alcotest.(check bool) "the impeding candidate is accounted for (observed somewhere, or omitted \
+ with a recorded reason) -- never silently dropped"
+ true impeder_placed_or_recorded
+
+(* Task 11's re-review finding, closed here: [Precedence_ef.transfer_target]'s
+ Annunciation/Easter condition (and, more generally, RG 96's whole "not I or
+ II class" test) is correct only because [Temporal_ef] happens to make
+ every day from Easter Sunday through Low Sunday (Easter+0..+7) blocking --
+ Easter itself and Low Sunday via [named], every day between via
+ [privileged_feria]. Nothing in the type system enforces that; a future
+ edit narrowing [privileged_feria]'s Easter-octave range would silently let
+ the RG 96 walk land a translated feast inside the octave. This tests the
+ CONSEQUENCE (no day in that window ever receives one), not the mechanism
+ ([privileged_feria] itself), so it stays sensitive to any way that
+ consequence could break, not only the one code path that currently
+ protects it. *)
+
+let easter_offset (d : Date.t) =
+ let easter = Comp.gregorian_easter (Date.year d) in
+ Date.to_rata d - Date.to_rata easter
+
+let in_easter_octave d = let off = easter_offset d in off >= 0 && off <= 7
+
+(* 2005-2050: the project's own differential-testing window (CLAUDE.md),
+ reused here as a deterministic, non-trivial sample -- 46 liturgical years,
+ each with several genuine transfers (All Souls onto a Sunday, impeded
+ universal feasts, and so on; test_precedence_ef.ml's own 21k-day manual
+ review already confirmed "all 7 slugs that ever transfer have a verified
+ rubrical cause" over a similar span), so this is not a vacuous sweep over
+ years where nothing ever transfers. *)
+let sample_years =
+ let rec range a b = if a > b then [] else a :: range (a + 1) b in
+ range 2005 2050
+
+(* Property 1: no day in the resolved output, across the whole sample, is
+ EVER a transfer's landing point inside [Easter, Easter+7] -- checked two
+ ways. [transferred_out]'s own recorded target is what [transfer_target]
+ itself returned (calendar.ml's [assignment], stored verbatim), so this is
+ the more direct signal; [transferred_in] is also checked, in case some
+ future Calendar change ever let the two disagree. *)
+let test_no_transfer_lands_in_easter_octave () =
+ let layer = real_layer () in
+ let violations = ref [] in
+ List.iter
+ (fun y ->
+ let days = Cal.year Rite_ef.context layer y in
+ Array.iter
+ (fun (d : (V.season, V.rank) LD.t) ->
+ (match d.LD.transferred_in with
+ | Some c when in_easter_octave d.LD.date ->
+ violations :=
+ (Printf.sprintf "%s transferred_in on %s (Easter+%d)" (slug_of c)
+ (Date.to_iso8601 d.LD.date) (easter_offset d.LD.date))
+ :: !violations
+ | _ -> ());
+ List.iter
+ (fun (c, target) ->
+ if in_easter_octave target then
+ violations :=
+ Printf.sprintf "%s transferred_out from %s to %s (Easter+%d)" (slug_of c)
+ (Date.to_iso8601 d.LD.date) (Date.to_iso8601 target) (easter_offset target)
+ :: !violations)
+ d.LD.transferred_out)
+ days)
+ sample_years;
+ Alcotest.(check (list string))
+ "no day in [Easter, Easter+7] is ever a transfer's target, 2005-2050" [] (List.rev !violations)
+
+(* Property 2, and the LIVE case: [PE.transfer_target] called directly, with
+ an origin that genuinely starts the search INSIDE Holy Week -- Holy
+ Thursday 2026 (Easter - 3), a date no real sanctoral entry in
+ data/ef/sanctoral.sexp occupies (Holy Week carries none), so this is
+ deliberately constructed, not found. [occupant] is the REAL
+ [Temporal_ef.temporal] (not a synthetic stand-in), so the search is driven
+ by the actual blocking shape [privileged_feria] produces, not a
+ hand-picked one -- this is genuinely live: search_from walks origin+1
+ (Good Friday, Easter-2) forward through every remaining day of Holy Week,
+ all of Easter through Low Sunday (Easter+0..+7, all Class1), and only
+ stops at Easter+8 (the Monday after Low Sunday), which [named] and
+ [ferial_rank]/[privileged_feria] agree is Class4 -- confirmed below by
+ checking the OCCUPANT's own rank there, not asserted blind. Without an
+ origin inside the window itself, [search_from] could stop before ever
+ reaching it and this test would prove nothing (the vacuity trap the task
+ brief names explicitly) -- [test_search_genuinely_enters_the_window] pins
+ that it does not stop early. *)
+let holy_week_origin_2026 =
+ let easter_2026 = Comp.gregorian_easter 2026 in
+ Date.add_days easter_2026 (-3)
+
+let real_occupant d = (T.temporal d).Colitur_kernel.Temporal.office
+
+let test_transfer_target_skips_the_whole_easter_octave () =
+ let easter_2026 = Comp.gregorian_easter 2026 in
+ let c =
+ { P.cel =
+ Cel.make ~slug:(Slug.of_string_exn "test-impeded-in-holy-week") ~rank:V.Class1
+ ~colour:Colour.White ~subject:Subject.Temporal ~layer:PE.universal_layer ();
+ origin = P.Sanctoral }
+ in
+ let target = PE.transfer_target c holy_week_origin_2026 real_occupant in
+ Alcotest.(check string) "lands on Easter + 8 (Monday after Low Sunday), past the entire octave"
+ (Date.to_iso8601 (Date.add_days easter_2026 8)) (Date.to_iso8601 target);
+ Alcotest.(check bool) "strictly after origin (rite.mli's own obligation)" true
+ (Date.compare target holy_week_origin_2026 > 0);
+ Alcotest.(check bool) "not inside [Easter, Easter+7]" false
+ (let off = Date.to_rata target - Date.to_rata easter_2026 in
+ off >= 0 && off <= 7)
+
+(* The vacuity check itself: proves the search genuinely walked THROUGH the
+ window rather than [search_from] having some other reason to stop before
+ it (e.g. an off-by-one that happened to also land past the octave). Reads
+ the real occupant's own rank at every day from the origin through
+ Easter+7 and requires every one of them to be blocking (Class1 or
+ Class2) -- if any single one were not, [search_from] would have stopped
+ there instead of at Easter+8, and the test above would be passing for the
+ wrong reason. *)
+let test_search_genuinely_enters_the_window () =
+ let easter_2026 = Comp.gregorian_easter 2026 in
+ let rec days_from a b = if Date.compare a b > 0 then [] else a :: days_from (Date.add_days a 1) b in
+ let walked = days_from (Date.add_days holy_week_origin_2026 1) (Date.add_days easter_2026 7) in
+ Alcotest.(check bool)
+ "every day from origin+1 through Easter+7 (the whole span search_from must cross) is blocking"
+ true
+ (List.for_all
+ (fun d ->
+ match (real_occupant d).Cel.rank with V.Class1 | V.Class2 -> true | V.Class3 | V.Class4 -> false)
+ walked);
+ Alcotest.(check bool)
+ "the walked span is at least 8 days -- the octave alone (Easter..Easter+7), not a one-day hop"
+ true (List.length walked >= 8)
+
+let suite =
+ ( "Rite_ef (real data: overlay-in-effect, domain-ceiling)",
+ [ Alcotest.test_case "the overlay suppression is observably in effect" `Quick
+ test_vigil_of_christmas_suppressed;
+ Alcotest.test_case "RG96 search does not raise at the domain ceiling (real data)" `Quick
+ test_transfer_search_does_not_raise_at_domain_ceiling;
+ Alcotest.test_case "no transfer ever lands inside [Easter, Easter+7], 2005-2050" `Quick
+ test_no_transfer_lands_in_easter_octave;
+ Alcotest.test_case "transfer_target skips the whole Easter octave from inside Holy Week" `Quick
+ test_transfer_target_skips_the_whole_easter_octave;
+ Alcotest.test_case "the search genuinely enters the window (not vacuous)" `Quick
+ test_search_genuinely_enters_the_window ] )
diff --git a/test/test_sanctoral_ef.ml b/test/test_sanctoral_ef.ml
new file mode 100644
index 0000000..8fb178f
--- /dev/null
+++ b/test/test_sanctoral_ef.ml
@@ -0,0 +1,115 @@
+(* Loads the bootstrapped data/ef/sanctoral.sexp (Task 10, tools/
+ bootstrap_sanctoral.ml) through Layer.load and checks it against counts
+ independently derived from the source INI itself (grep -c '^\[',
+ grep '^rank' | sort | uniq -c -- see the task report), plus two named
+ spot-checks against the INI's own text so a passing count can't hide the
+ wrong 322 entries having been converted (task brief's "live hazard"). *)
+
+module L = Colitur_kernel.Layer
+module Cel = Colitur_kernel.Celebration
+module S = Colitur_kernel.Slug
+module DS = Colitur_kernel.Date_spec
+module Col = Colitur_kernel.Colour
+module Sub = Colitur_kernel.Subject
+module Lang = Colitur_kernel.Lang
+module Names = Colitur_kernel.Names
+module V = Rite_ef.Vocab_ef
+module PE = Rite_ef.Precedence_ef
+
+(* Relative to this test's own build directory (_build/default/test/); made
+ available there because test/dune declares it as a dep of the test
+ stanza. *)
+let path = "../data/ef/sanctoral.sexp"
+
+let load () =
+ match L.load V.rank_of_sexp path with
+ | Ok l -> l
+ | Error e -> Alcotest.failf "%s: failed to load: %s" path e
+
+let mkdate m d = match DS.fixed ~month:m ~day:d with Ok t -> t | Error e -> failwith e
+
+let test_load_and_counts () =
+ let l = load () in
+ Alcotest.(check int) "322 entries" 322 (List.length l.L.entries);
+ let commemoration_only =
+ List.filter (fun e -> e.L.cel.Cel.status = Cel.Commemoration_only) l.L.entries
+ in
+ Alcotest.(check int) "114 Commemoration_only" 114 (List.length commemoration_only);
+ let class1 = List.filter (fun e -> e.L.cel.Cel.rank = V.Class1) l.L.entries in
+ Alcotest.(check int) "12 Class1" 12 (List.length class1);
+ let temporal_subjects = List.filter (fun e -> e.L.cel.Cel.subject = Sub.Temporal) l.L.entries in
+ Alcotest.(check int) "no Subject.Temporal" 0 (List.length temporal_subjects);
+ (* Every slug already had to pass Slug.of_string during load (Slug.t_of_sexp
+ is the validating parser -- an invalid slug would have failed the whole
+ Layer.load with Error, never landing here silently). Re-checking is
+ still worth doing explicitly, rather than resting entirely on "load
+ didn't error", so a future loader change that weakens that guarantee
+ has a test that would catch it directly. *)
+ List.iter
+ (fun e ->
+ match S.of_string (S.to_string e.L.cel.Cel.slug) with
+ | Ok _ -> ()
+ | Error msg -> Alcotest.failf "slug %s failed re-validation: %s" (S.to_string e.L.cel.Cel.slug) msg)
+ l.L.entries;
+ (* All 322 dates are Date_spec.Fixed month/day pairs constructed via
+ Date_spec.fixed, which already rejects an out-of-range day for that
+ month against the LEAP-year maximum -- so every one must resolve in a
+ leap year (2028: divisible by 4, not by 100). *)
+ List.iter
+ (fun e ->
+ match DS.resolve e.L.date ~year:2028 with
+ | Some _ -> ()
+ | None -> Alcotest.failf "slug %s: date does not resolve in leap year 2028" (S.to_string e.L.cel.Cel.slug))
+ l.L.entries
+
+let find l slug =
+ match L.find l (S.of_string_exn slug) with
+ | Some e -> e
+ | None -> Alcotest.failf "slug %s not found in %s" slug path
+
+(* Named spot-check 1: one of the 6 entries carrying an explicit `class`
+ field in the source (INI lines: date=02-02, rank=class-2, colour=white,
+ class=lord, name.en/name.pl as below). Exercises decision 1's non-default
+ branch -- an entry where subject must NOT fall back to Saint. *)
+let test_spot_check_explicit_class () =
+ let l = load () in
+ let e = find l "purification-of-the-blessed-virgin-mary" in
+ let cel = e.L.cel in
+ Alcotest.(check bool) "date 02-02" true (e.L.date = mkdate 2 2);
+ Alcotest.(check bool) "rank Class2" true (cel.Cel.rank = V.Class2);
+ Alcotest.(check bool) "status Feast" true (cel.Cel.status = Cel.Feast);
+ Alcotest.(check bool) "colour White" true (cel.Cel.colour = Col.White);
+ Alcotest.(check bool) "subject Lord (from class = lord)" true (cel.Cel.subject = Sub.Lord);
+ Alcotest.(check (option string)) "name.en" (Some "Purification of the Blessed Virgin Mary")
+ (Names.find cel.Cel.names (Lang.of_string_exn "en"));
+ Alcotest.(check (option string)) "name.pl" (Some "Oczyszczenie N. M. P.")
+ (Names.find cel.Cel.names (Lang.of_string_exn "pl"));
+ Alcotest.(check string) "layer tagged universal (Precedence_ef.universal_layer)" PE.universal_layer
+ cel.Cel.layer
+
+(* Named spot-check 2: a `rank = commemoration` entry (INI lines: date=01-14,
+ rank=commemoration, colour=white, no class, name.en/name.pl as below).
+ Exercises decision 2 (Commemoration_only + inferred Class3) AND decision
+ 1's default branch (no class field -> Saint) on the SAME entry. *)
+let test_spot_check_commemoration () =
+ let l = load () in
+ let e = find l "maur-abbot" in
+ let cel = e.L.cel in
+ Alcotest.(check bool) "date 01-15" true (e.L.date = mkdate 1 15);
+ Alcotest.(check bool) "rank inferred Class3" true (cel.Cel.rank = V.Class3);
+ Alcotest.(check bool) "status Commemoration_only" true (cel.Cel.status = Cel.Commemoration_only);
+ Alcotest.(check bool) "colour White" true (cel.Cel.colour = Col.White);
+ Alcotest.(check bool) "subject defaults to Saint (no class field)" true (cel.Cel.subject = Sub.Saint);
+ Alcotest.(check (option string)) "name.en" (Some "St. Maur, Abbot")
+ (Names.find cel.Cel.names (Lang.of_string_exn "en"));
+ Alcotest.(check (option string)) "name.pl" (Some "św. Maura, Opata")
+ (Names.find cel.Cel.names (Lang.of_string_exn "pl"))
+
+let suite =
+ ( "Sanctoral_ef (data/ef/sanctoral.sexp)",
+ [ Alcotest.test_case "load succeeds and counts match the source INI" `Quick
+ test_load_and_counts;
+ Alcotest.test_case "spot-check: explicit class = lord (Purification of the BVM)" `Quick
+ test_spot_check_explicit_class;
+ Alcotest.test_case "spot-check: rank = commemoration (St. Maur, Abbot)" `Quick
+ test_spot_check_commemoration ] )
diff --git a/test/test_temporal_ef.ml b/test/test_temporal_ef.ml
index 2ad93e8..751abd2 100644
--- a/test/test_temporal_ef.ml
+++ b/test/test_temporal_ef.ml
@@ -306,36 +306,131 @@ let test_christmastide_feria_slugs () =
Alcotest.(check string) "13 Jan (Tue, on/after the origin)" "ef-time-after-epiphany-1-tuesday"
(slug_of (d 2026 1 13))
-(* The general property behind the fix above: no two dates in one liturgical
- year may share a slug, except the deliberate resumed-Sunday reuse (see
- test_resumed_sundays). Random years across the whole domain, not just
- 2026 -- the original bug (controller finding A) was found by grepping one
- year's CLI output for duplicates, and other years could hide others. *)
-let is_resumable_sunday_slug s =
- let prefix = "ef-time-after-epiphany-sunday-" in
- String.length s > String.length prefix && String.sub s 0 (String.length prefix) = prefix
+(* The general property behind the fix above -- no two dates in one
+ liturgical year may share a slug -- moved to
+ [Colitur_kernel.Validate]'s own ["slugs"] check (Plan 2 carried item 4),
+ asserted outright with no resumed-Sunday exemption: Plan 2 verified zero
+ duplicate slugs domain-wide, so the exemption this property used to carry
+ protected nothing real. [Validate]'s own 200-sample property
+ (test_validate.ml's [prop_invariants]) now covers every consumer,
+ including this rite, over the same 1583..9998 domain this property used
+ to sweep alone. *)
-let prop_slugs_unique_within_liturgical_year =
- QCheck.Test.make ~count:200
- ~name:"no two dates in one liturgical year share a slug, apart from the resumed-Sunday reuse"
- (QCheck.int_range 1583 9998)
+(* ---- Plan 2 carried item 5: the anchors list has no guard against its own
+ erosion ----
+
+ [Colitur_kernel.Validate] cannot own this completeness check: which of
+ [named]'s entries are Easter-derived is knowledge only [named] itself
+ has. [Rite.t] deliberately exposes just [temporal] (the merged result)
+ and [anchors] (the independent restatement), never [named] -- so a
+ rite-agnostic [Validate] has no ground truth to compare [anchors]
+ against, short of inventing one. Two ways of inventing one were
+ considered and rejected:
+
+ - Hardcoding a specific Easter offset (Ash Wednesday = Easter-46, say)
+ inside [Validate] would smuggle Western/Gregorian-Paschal-cycle
+ knowledge into code the design intends to also serve a future
+ Julian-reckoning rite (Byzantine, named explicitly as a future module
+ in this project's own architecture note) -- for which neither that
+ offset, nor even Gregorian Easter itself as the reference point
+ ([Computus.gregorian_easter], not [julian_easter]), is the right one.
+ Even [Computus]'s own [ash_wednesday]/[palm_sunday]/[ascension]/
+ [pentecost] helpers are documented "(OF + EF)" -- i.e. already scoped
+ to the two WESTERN forms, not to "any rite" the way [Validate] must
+ stay.
+ - Rediscovering "Easter-derived" structurally from [temporal] alone (scan
+ near Easter, keep whatever recurs at the same offset across years with
+ different Easters) is unsound for EF specifically: [Time_after_epiphany]
+ onward, week numbering itself is computed from Easter-relative origins
+ ([week_origin]), so almost every ORDINARY Sunday/feria slug in
+ Septuagesima/Lent/Passiontide/Paschaltide/Time_after_pentecost is ALSO
+ constant-offset-from-Easter across years -- structurally
+ indistinguishable from a genuinely named day by that test alone. Rank
+ does not separate them either: RG 91 entry 10 makes the privileged
+ Easter/Pentecost octave FERIAS class 1 too, same as many named days.
+
+ This guard is therefore entirely EF-specific and lives here, against
+ [T.named] and [T.anchors] directly -- both accessible in this file, not
+ through the [Rite.t] boundary.
+
+ EXTENDED (final fix wave, item 3): the guard originally scanned only a
+ 60/+75-day window around Easter, so it caught erosion of an
+ Easter-relative anchor (Ascension, say) but not of a FIXED-date one --
+ Nativity, the Nativity vigil, the three Nativity octave days, the
+ Circumcision, Epiphany -- nor of [christ_the_king], which is neither
+ fixed nor Easter-relative (the last Sunday of October). Deleting any of
+ those from [T.anchors] left the whole suite green: Plan 2's carried item
+ 5 was therefore only half-closed while being reported as closed, and the
+ worst-covered anchor was exactly the one with the weakest citation
+ (Christ the King -- oracle-backed, not yet primary-verified when this
+ note was written; see docs/research/rules-register.md §4/§6, since
+ primary-verified at RG 17(d) by this same fix wave). Fixed by widening
+ the scan from an Easter-centred window to the WHOLE civil year: [named]
+ only ever answers [Some] for its ~20 genuinely proper/named days
+ (ordinary Sundays and ferias are produced entirely by [temporal]'s own
+ [None] branch, never by [named]), so scanning every day of the year
+ cannot pick up an ordinary week's slug by accident any more than the
+ narrower window could -- it is simply no longer selective about WHICH
+ kind of named day it is willing to notice. *)
+
+(* Every slug [named] can produce for civil year [y] -- fixed-date AND
+ Easter-relative alike -- discovered mechanically by asking [named] itself
+ about every day of the year (366 days from 1 January, safely covering a
+ leap year plus one day of spillover into the next, which duplicates
+ rather than misleads: every slug [named] returns is a year-invariant
+ string), not hand-copied from either [named]'s or [anchors]'s own
+ source. *)
+let named_slugs_for_year y =
+ let jan1 = d y 1 1 in
+ List.filter_map
+ (fun i -> match T.named (D.add_days jan1 i) with Some (_, slug, _, _) -> Some slug | None -> None)
+ (List.init 366 (fun i -> i))
+ |> List.sort_uniq compare
+
+let anchor_slugs y = List.map fst (T.anchors y) |> List.sort_uniq compare
+
+(* The mechanism both tests below share: which of [named]'s slugs [anchors]
+ fails to restate. [] means complete. *)
+let missing_from_anchors ~named_slugs ~anchors =
+ List.filter (fun slug -> not (List.mem slug anchors)) named_slugs
+
+(* The real guard: for the domain's own Easter extremes (1598 earliest, 1666
+ latest -- see test_validate.ml's own [extreme_years], corrected by this
+ same task) plus an ordinary year, nothing [named] produces -- fixed-date
+ or Easter-relative -- is missing from [anchors]. *)
+let test_anchors_cover_all_named_days () =
+ List.iter
(fun y ->
- let start = T.year_start y in
- let stop = D.add_days (T.year_start (y + 1)) (-1) in
- let n = D.to_rata stop - D.to_rata start + 1 in
- let seen = Hashtbl.create 512 in
- let rec check i =
- i >= n
- ||
- let s = slug_of (D.add_days start i) in
- (is_resumable_sunday_slug s
- || (not (Hashtbl.mem seen s))
- && (
- Hashtbl.replace seen s ();
- true))
- && check (i + 1)
+ let missing =
+ missing_from_anchors ~named_slugs:(named_slugs_for_year y) ~anchors:(anchor_slugs y)
in
- check 0)
+ Alcotest.(check (list string))
+ (Printf.sprintf "%d: every named slug is restated in anchors" y)
+ [] missing)
+ [ 1598; 1666; 2026 ]
+
+(* Proves the guard above actually has teeth, per this task's negative-fixture
+ requirement, now over BOTH shapes of anchor: [T.anchors]'s real slug set
+ with one Easter-relative entry ("ef-ascension") AND one fixed-date entry
+ ("ef-nativity") struck out together must fail [missing_from_anchors] the
+ same way the real list passes it -- reproducing, in miniature, exactly
+ what "deleting ef-nativity, ef-epiphany and ef-christ-the-king leaves the
+ whole suite green" (final fix wave, item 3) looked like before this test
+ existed. *)
+let test_anchors_erosion_is_caught () =
+ let y = 2026 in
+ let named_slugs = named_slugs_for_year y in
+ Alcotest.(check bool) "sanity: ef-ascension is genuinely a named slug" true
+ (List.mem "ef-ascension" named_slugs);
+ Alcotest.(check bool) "sanity: ef-nativity is genuinely a named slug" true
+ (List.mem "ef-nativity" named_slugs);
+ let eroded_anchors =
+ List.filter (fun s -> s <> "ef-ascension" && s <> "ef-nativity") (anchor_slugs y)
+ in
+ Alcotest.(check (list string))
+ "the erosion is caught: both missing entries are reported, and only them"
+ [ "ef-ascension"; "ef-nativity" ]
+ (missing_from_anchors ~named_slugs ~anchors:eroded_anchors)
let test_totality () =
(* Every day of 2026 yields an office without raising. Not a slug
@@ -367,12 +462,14 @@ let suite_extra =
Alcotest.test_case "colours" `Quick test_colours;
Alcotest.test_case "christmastide feria slugs" `Quick test_christmastide_feria_slugs;
Alcotest.test_case "named days carry their week" `Quick test_named_days_carry_their_week;
- Alcotest.test_case "totality" `Quick test_totality ]
+ Alcotest.test_case "totality" `Quick test_totality;
+ Alcotest.test_case "anchors cover all named days" `Quick
+ test_anchors_cover_all_named_days;
+ Alcotest.test_case "anchors erosion is caught" `Quick test_anchors_erosion_is_caught ]
let suite =
( "Rite_ef",
[ Alcotest.test_case "vocab roundtrips" `Quick test_vocab_roundtrips;
Alcotest.test_case "slug words" `Quick test_slug_words ]
@ suite_extra
- @ List.map QCheck_alcotest.to_alcotest
- [ prop_temporal_week_matches_week; prop_slugs_unique_within_liturgical_year ] )
+ @ List.map QCheck_alcotest.to_alcotest [ prop_temporal_week_matches_week ] )
diff --git a/test/test_validate.ml b/test/test_validate.ml
index c19957d..89053c1 100644
--- a/test/test_validate.ml
+++ b/test/test_validate.ml
@@ -1,9 +1,40 @@
module Val = Colitur_kernel.Validate
+module Rite = Colitur_kernel.Rite
+module P = Colitur_kernel.Precedence
+module Layer = Colitur_kernel.Layer
+module Overlay = Colitur_kernel.Overlay
module V = Rite_ef.Vocab_ef
module T = Rite_ef.Temporal_ef
-let run year =
- Val.run V.vocab ~year_start:T.year_start ~temporal:T.temporal ~anchors:T.anchors ~year
+(* Task 12 widens Validate.run to take a resolved layer -- Precedence_ef and
+ Calendar (Tasks 5-11) now exist, so the REAL EF rite (Rite_ef.context) and
+ its REAL bootstrapped data replace the earlier placeholder rules/layer-less
+ Rite.t this module used before Plan 3's resolution engine was built.
+ Relative to this test's own build directory (_build/default/test/), same
+ convention test_rite_ef.ml already uses -- test/dune declares both as deps
+ of the (test ...) stanza. *)
+let sanctoral_path = "../data/ef/sanctoral.sexp"
+let adjustments_path = "../data/ef/adjustments.sexp"
+
+(* Loaded once at module init, not per call: [run] below is called by every
+ test and by the 200-sample property, and Calendar.year's own resolution
+ cost already dominates -- there is no reason to also re-parse a 322-entry
+ sexp file on every one of those calls. *)
+let real_ef_layer =
+ match Layer.load V.rank_of_sexp sanctoral_path with
+ | Error e -> failwith (Printf.sprintf "%s: failed to load: %s" sanctoral_path e)
+ | Ok layer -> (
+ match Overlay.load V.rank_of_sexp adjustments_path with
+ | Error e -> failwith (Printf.sprintf "%s: failed to load: %s" adjustments_path e)
+ | Ok overlay ->
+ let layer, diagnostics = Overlay.apply layer overlay in
+ if diagnostics <> [] then
+ failwith
+ (Printf.sprintf "unexpected overlay diagnostics: %s"
+ (String.concat "; " (List.map Overlay.diagnostic_to_string diagnostics)));
+ layer)
+
+let run year = Val.run Rite_ef.context real_ef_layer ~year
let check_year year =
match run year with
@@ -46,10 +77,18 @@ let extreme_years () =
let test_easter_extremes () =
let ys = extreme_years () in
- (* Both extremes genuinely occur in 1583..2500 (earliest 1818, latest
- 2038); requiring just "non-empty" would have passed even if the search
- silently found only one of them (register finding 15). *)
- Alcotest.(check int) "found both extreme years (earliest 22 Mar and latest 25 Apr)" 2 (List.length ys);
+ (* Both extremes genuinely occur in 1583..2500 (earliest 1598, latest
+ 1666 -- verified against Computus.gregorian_easter directly, not
+ transcribed). CORRECTED (final fix wave, item 7): this used to assert
+ only [List.length ys = 2], a cardinality check where an identity check
+ was called for -- the comment already named 1598 and 1666, but nothing
+ confirmed [ys] actually contained THOSE two years rather than some
+ other pair the search happened to find first; a version of
+ [extreme_years] that silently found the wrong two years but still
+ found exactly two would have passed this unchanged. Asserting the
+ identities directly is strictly stronger and costs nothing extra. *)
+ Alcotest.(check (list int)) "found exactly 1598 (earliest 22 Mar) and 1666 (latest 25 Apr)"
+ [ 1598; 1666 ] ys;
List.iter check_year ys
(* The confidence-to-9999 core: random years across the whole domain. *)
@@ -58,6 +97,74 @@ let prop_invariants =
(QCheck.int_range 1583 9998)
(fun y -> run y = [])
+(* ---- final fix wave, item 6: the exhaustive sweep, committed ----
+
+ The property above samples 200 of 8 416 years (2.4% of the domain) on a
+ RANDOM seed -- QCheck.Test.make with no ~seed argument draws a fresh one
+ from the environment/OS entropy each run, and two consecutive runs of
+ this suite were observed using different seeds (see the task report for
+ the transcript). CLAUDE.md's standing claim that Validate is "clean
+ across all 8 416 years -- exhaustive, not sampled" was true whenever it
+ was last actually re-run in full, but no committed artifact pinned it,
+ and a year-specific regression (one bad year among 8 416) would show up
+ in this suite only intermittently -- roughly 200/8416 of the time per
+ run, i.e. most runs would NOT catch it.
+
+ This is that committed artifact: every year 1583..9999, not a sample.
+ Tagged `Slow (matching this file's own naming for the check it performs
+ -- see [suite] below), but Alcotest's speed-level filtering is deliberately
+ NOT used to keep it out of the default `dune test`: that filtering (the
+ `-q`/`--quick-tests` flag, or dune wiring the runtest action to pass it)
+ is ALL-OR-NOTHING per speed level, and this codebase already tags SIX
+ OTHER cases `Slow -- the two pre-existing exhaustive Computus checks
+ (test_computus.ml, both genuinely fast, sub-second) AND, found while
+ implementing this item, EVERY QCheck property in the whole suite
+ (test_date.ml x3, test_overlay.ml, test_temporal_ef.ml, and
+ [prop_invariants] immediately above, since QCheck_alcotest.to_alcotest
+ defaults ~speed_level to `Slow when not given explicitly, which none of
+ this codebase's call sites do). Wiring `-q` at the dune level was tried
+ and reverted: it made the default `dune test` report 251 tests instead
+ of (the then-current) 260, silently excluding [prop_invariants] itself
+ -- the "confidence-to-9999" mechanism CLAUDE.md documents as this
+ project's central property-testing story -- along with five other
+ properties, none of which this task asked to remove from the fast path.
+ That is a far bigger, unintended regression than the one line this item
+ asks to add.
+
+ Instead, this test gates its OWN expensive body on an environment
+ variable, [COLITUR_EXHAUSTIVE_SWEEP], and calls {!Alcotest.skip} (marked
+ SKIPPED, not silently passed, when unset) so `dune test`'s default run
+ stays at its normal speed and reports the skip honestly rather than a
+ vacuous green. To run the real sweep (~35-45s, see the report for the
+ measured figure):
+
+ COLITUR_EXHAUSTIVE_SWEEP=1 dune test --force
+
+ or invoke the built executable directly with the same variable set. *)
+let colitur_exhaustive_sweep_env = "COLITUR_EXHAUSTIVE_SWEEP"
+
+(* 9999 is a documented, non-regression truncation, not a fresh finding:
+ [test_year_9999_does_not_raise] above already pins that [run 9999]
+ reports exactly a "seasons" failure (the domain's own ceiling truncates
+ the scan mid-Christmastide) and nothing else -- reused here rather than
+ calling [check_year] on 9999, which would fail this sweep on a shape
+ that is not a regression. *)
+let test_exhaustive_domain_sweep () =
+ if Sys.getenv_opt colitur_exhaustive_sweep_env = None then Alcotest.skip ()
+ else begin
+ for y = 1583 to 9998 do
+ check_year y
+ done;
+ let fs = run 9999 in
+ Alcotest.(check bool) "9999: no coverage failures (temporal stayed total through the clamp)" true
+ (not (List.exists (fun f -> f.Val.check = "coverage") fs));
+ Alcotest.(check bool) "9999: seasons check flags the truncated final year as incomplete" true
+ (List.exists (fun f -> f.Val.check = "seasons") fs);
+ Alcotest.(check (list string)) "9999: nothing OTHER than the documented seasons truncation fired"
+ [ "seasons" ]
+ (List.sort_uniq compare (List.map (fun f -> f.Val.check) fs))
+ end
+
(* ---- negative-path fixture (Task 14 review, finding 1) ----
Everything above only exercises the CLEAN path against real EF data: an
@@ -77,6 +184,10 @@ module Synthetic = struct
module Slug = Colitur_kernel.Slug
module Colour = Colitur_kernel.Colour
module Temporal = Colitur_kernel.Temporal
+ module P = Colitur_kernel.Precedence
+ module Rite = Colitur_kernel.Rite
+ module Layer = Colitur_kernel.Layer
+ module Date_spec = Colitur_kernel.Date_spec
type season = A | B
type rank = R1 | R2
@@ -105,6 +216,17 @@ module Synthetic = struct
let vocab_collapsed_ranks = { vocab with Vocab.rank_to_string = (fun _ -> "same") }
let vocab_collapsed_seasons = { vocab with Vocab.season_to_string = (fun _ -> "same") }
+ (* The placeholder ruleset every TEMPORAL-only fixture below still uses:
+ paired with the default empty [layer] (see [rite] below), there is never
+ a sanctoral candidate for these three functions to be called against, so
+ what they return is moot for those tests -- only the Task 12 resolution
+ fixtures further down override [rules] (and supply a non-empty
+ [layer]), each with its own small, deliberately-shaped ruleset. *)
+ let rules : (season, rank) P.rules =
+ { P.band = (fun _ _ -> 0);
+ disposition = (fun ~winner:_ ~loser:_ -> P.Omit);
+ admit = (fun ~observed:_ _ -> []) }
+
let year_start y = match D.make ~year:y ~month:1 ~day:1 with Ok d -> d | Error e -> failwith e
let weekday_index d =
@@ -149,10 +271,228 @@ module Synthetic = struct
this synthetic rite too, not only in EF. *)
let anchors _y = [ (Slug.to_string (good target).Temporal.office.Cel.slug, target) ]
- let run ?(vocab = vocab) ?(anchors = fun _ -> []) temporal =
- Val.run vocab ~year_start ~temporal ~anchors ~year:2026
+ (* Task 12: [rite] now also takes [rules]/[transfer_target] (defaulting to
+ the placeholder above and to "stand still", respectively -- harmless
+ defaults against the default empty [layer], since nothing ever contests
+ the temporal office there) so the resolution fixtures further down can
+ override them without duplicating every other field. *)
+ let rite ?(vocab = vocab) ?(anchors = fun _ -> []) ?(season_runs = [ A; B ]) ?(rules = rules)
+ ?(transfer_target = fun _ origin _ -> origin) temporal : (season, rank) Rite.t =
+ { Rite.id = "synthetic"; vocab; year_start; temporal; anchors; rules; season_runs;
+ transfer_target }
+
+ (* Empty by default: every check built before Task 12 exercises the
+ TEMPORAL-only pass, where an empty layer is exactly the fixture that
+ leaves it unable to affect anything ([Precedence.resolve] against no
+ sanctoral candidates always just observes the temporal office
+ unchallenged). Task 12's own resolution fixtures pass their own. *)
+ let empty_layer = Layer.empty ~id:"synthetic-empty" ~name:"empty"
+
+ let run ?vocab ?anchors ?season_runs ?rules ?transfer_target ?(layer = empty_layer) temporal =
+ Val.run (rite ?vocab ?anchors ?season_runs ?rules ?transfer_target temporal) layer ~year:2026
let has_check check (fs : Val.failure list) = List.exists (fun f -> f.Val.check = check) fs
+
+ (* A rite whose season B legitimately appears in two separate runs: the
+ civil year is split into calendar quarters, seasons alternating A B A B
+ -- as the modern form's Ordinary Time does (January-Ash Wednesday, then
+ Pentecost-Advent, with Lent/Easter and Advent/Christmas between). Each
+ quarter gets its own Sunday-aligned week origin, exactly as [good] does
+ for its own two runs, so every other invariant (weekday, week
+ numbering, rank, colour, determinism) stays clean and only the season
+ check is actually exercised. *)
+ let quarter_start y i =
+ match D.make ~year:y ~month:(1 + (i * 3)) ~day:1 with Ok d -> d | Error e -> failwith e
+
+ let quarter_index d = (D.month d - 1) / 3
+
+ let two_run_temporal d =
+ let y = D.year d in
+ let qi = quarter_index d in
+ let s = if qi mod 2 = 0 then A else B in
+ let origin = sunday_on_or_before (quarter_start y qi) in
+ let n = floor_div (D.to_rata d - D.to_rata origin) 7 + 1 in
+ let slug = Printf.sprintf "syn2-%s-%d" (season_to_string s) (D.to_rata d) in
+ let rank = if D.weekday d = D.Sun then R1 else R2 in
+ { Temporal.season = s; week = Some n; weekday = D.weekday d;
+ office = Cel.make ~slug:(Slug.of_string_exn slug) ~rank ~colour:Colour.Green ~layer:"synthetic" () }
+
+ let rite_with_two_runs : (season, rank) Rite.t =
+ rite ~season_runs:[ A; B; A; B ] two_run_temporal
+
+ (* ---- Task 12: resolution-level fixtures ----
+
+ Everything above only ever drives the TEMPORAL-only pass: [run]'s
+ default [layer] is empty, so [Precedence.resolve] never has a sanctoral
+ candidate to contest against the temporal office, and [rules]/
+ [transfer_target] are never meaningfully exercised. These five fixtures
+ instead give [Calendar.year] real work -- a non-empty [layer] plus a
+ small, deliberately-shaped [rules] (and, for two of them,
+ [transfer_target]) -- each built so its OWN check label fires. Four of
+ the five fire in clean isolation (the other four Task 12 labels stay
+ silent); the fifth (["unconverged"]) genuinely also fires
+ ["duplicated"] alongside it, a real consequence of Calendar's own round-
+ guard accounting, not a fixture design flaw -- see guard_rules's own
+ comment. Every fixture's isolation (or lack of it) was verified by
+ hand-tracing [Calendar]'s resolution mechanics BEFORE writing its
+ assertion (see the task report), not inferred from what the assertion
+ happens to require -- the tests below check that trace against the
+ actual engine output, one fixture at a time. [good] is reused,
+ unchanged, as every fixture's [temporal]: only [rules]/[layer]/
+ [transfer_target] vary, so the temporal-only checks (already proven
+ clean against [good] by [test_synthetic_baseline_is_clean]) cannot be
+ what fires here. *)
+
+ let mk_entry ~month ~day ~slug ~rank =
+ { Layer.date = (match Date_spec.fixed ~month ~day with Ok d -> d | Error e -> failwith e);
+ cel = Cel.make ~slug:(Slug.of_string_exn slug) ~rank ~colour:Colour.White
+ ~layer:"synthetic-sanctoral" () }
+
+ let task12_checks = [ "observed"; "lost"; "duplicated"; "unconverged"; "admission" ]
+
+ (* The Task-12-owned subset of a failure list's own check labels, as a
+ sorted, de-duplicated set -- what each isolation assertion below
+ compares against, so a fixture that (by mistake) also trips an
+ unrelated Task-12 check shows up as a wrong set, not a silently-passing
+ [has_check]. *)
+ let fired_task12_checks (fs : Val.failure list) =
+ List.filter_map (fun f -> if List.mem f.Val.check task12_checks then Some f.Val.check else None) fs
+ |> List.sort_uniq compare
+
+ (* "duplicated": a single ordinary sanctoral entry, always losing to the
+ temporal office (band: Temporal 0 < Sanctoral 10, unconditionally) and
+ always Commemorate-disposed. [admit]'s bug is exactly the shape
+ precedence_ef.mli's own [admit] contract warns against ("a value taken
+ unchanged from comms, never rebuilt"): it REBUILDS every admitted pair
+ via a record update, allocating a fresh, structurally-identical-but-
+ physically-distinct candidate. Precedence.resolve's own [dropped]
+ computation tells an admitted candidate from a dropped one by PHYSICAL
+ equality, so the rebuild defeats it -- the one candidate ends up counted
+ as both admitted (in [commemorations]) and dropped (in [omitted],
+ "admission limit reached"): two sightings for one Date_spec
+ resolution. *)
+ let dup_entry = mk_entry ~month:5 ~day:5 ~slug:"dup-target" ~rank:R2
+ let dup_layer = Layer.of_entries ~id:"dup" ~name:"dup" [ dup_entry ]
+
+ let dup_rules : (season, rank) P.rules =
+ { P.band = (fun _ c -> match c.P.origin with P.Temporal -> 0 | P.Sanctoral -> 10);
+ disposition = (fun ~winner:_ ~loser:_ -> P.Commemorate P.Ordinary);
+ admit = (fun ~observed:_ cs -> List.map (fun (c, p) -> ({ c with P.origin = c.P.origin }, p)) cs) }
+
+ (* "unconverged": two entries collide on one date (6 June), both beating
+ the temporal office and tied with each other, so slug decides:
+ "guard-aaa" wins the day outright every time, "guard-zzz" is always the
+ loser there and always Transfer-disposed. Paired with a
+ [transfer_target] that always answers with the impeded day itself --
+ never strictly forward -- this is the exact non-terminating shape
+ test_calendar.ml's own
+ [test_transfer_guard_records_failure_instead_of_looping] proves hits
+ Calendar's round guard: "guard-zzz", re-injected into 6 June every
+ round, can never win it (it always loses the tie to the natural
+ "guard-aaa" copy already sitting there), so [deferred] never empties.
+
+ GENUINE FINDING (see the task report): this ALSO fires "duplicated", not
+ "unconverged" alone. Once the guard is hit, [build_day]'s final resolve
+ at 6 June sees "guard-zzz" TWICE -- once as the permanent natural entry
+ (which never stops losing there) and once as whatever the last round's
+ [injected] state still holds for it -- and [unresolved] is evaluated per
+ CANDIDATE OBJECT, not per slug, so BOTH copies land in [omitted] with
+ the unconverged reason. Nothing is lost (both copies carry a recorded
+ reason), but the slug is sighted twice against one Date_spec resolution,
+ which is exactly what "duplicated" is for. The same double-recording is
+ latent in test_calendar.ml's own guard fixture too (day_winner/eclipsed
+ at 20 Dec, structurally identical) -- untested there only because that
+ test uses [List.exists], not a count. Calendar's round guard is
+ documented as "nothing in the 1962 calendar is expected to trigger"
+ (calendar.ml), so this is a latent accounting quirk in an unreachable
+ path, not a live bug, and calendar.ml is out of this task's file list --
+ reported, not fixed here. *)
+ let guard_winner_entry = mk_entry ~month:6 ~day:6 ~slug:"guard-aaa" ~rank:R1
+ let guard_loser_entry = mk_entry ~month:6 ~day:6 ~slug:"guard-zzz" ~rank:R1
+ let guard_layer = Layer.of_entries ~id:"guard" ~name:"guard" [ guard_winner_entry; guard_loser_entry ]
+
+ let guard_rules : (season, rank) P.rules =
+ { P.band = (fun _ c -> match c.P.origin with P.Temporal -> 50 | P.Sanctoral -> 10);
+ disposition =
+ (fun ~winner:_ ~loser ->
+ match loser.P.cel.Cel.rank with R1 -> P.Transfer | R2 -> P.Commemorate P.Ordinary);
+ admit = (fun ~observed:_ cs -> cs) }
+
+ let guard_transfer_target (_ : rank P.candidate) (origin : D.t) (_ : D.t -> rank Cel.t) = origin
+
+ (* "admission": three entries collide on one date (9 September), all
+ losing to the temporal office (band: Temporal 0 < Sanctoral 10) and all
+ Commemorate-disposed -- a genuine 3-candidate offer to [admit]. The bug:
+ cap 2 when the offer's length is ODD, cap 1 when EVEN -- a length-keyed
+ rule with no liturgical meaning, chosen as the simplest function that is
+ NOT idempotent on its own output (offer 3, admit 2; re-offer those same
+ 2, admit only 1) while staying idempotent -- and so invisible -- on
+ every OTHER shape this suite exercises (never offered exactly 2 or 3
+ candidates elsewhere), including its own clean 3-candidate day. *)
+ let adm_a_entry = mk_entry ~month:9 ~day:9 ~slug:"adm-a" ~rank:R2
+ let adm_b_entry = mk_entry ~month:9 ~day:9 ~slug:"adm-b" ~rank:R2
+ let adm_c_entry = mk_entry ~month:9 ~day:9 ~slug:"adm-c" ~rank:R2
+ let adm_layer = Layer.of_entries ~id:"adm" ~name:"adm" [ adm_a_entry; adm_b_entry; adm_c_entry ]
+
+ let adm_compare_slug (c1, _) (c2, _) = Slug.compare c1.P.cel.Cel.slug c2.P.cel.Cel.slug
+
+ let rec adm_take n = function
+ | [] -> []
+ | x :: xs -> if n <= 0 then [] else x :: adm_take (n - 1) xs
+
+ let adm_rules : (season, rank) P.rules =
+ { P.band = (fun _ c -> match c.P.origin with P.Temporal -> 0 | P.Sanctoral -> 10);
+ disposition = (fun ~winner:_ ~loser:_ -> P.Commemorate P.Ordinary);
+ admit =
+ (fun ~observed:_ cs ->
+ let sorted = List.stable_sort adm_compare_slug cs in
+ if List.length sorted mod 2 = 1 then adm_take 2 sorted else adm_take 1 sorted) }
+
+ (* "observed": two DIFFERENT layer entries sharing one slug -- a realistic
+ data mistake (a renamed or duplicated entry), not prevented by
+ [Layer.t]'s own type. [collide_a] (1 Feb, rank R1) always loses on its
+ OWN date: [band] makes the temporal office win there specifically (5,
+ beating R1's 10) and lose everywhere else (50), so [collide_a] is always
+ Transfer-disposed at 1 Feb. Its constant [transfer_target] sends it to
+ 10 Feb -- [collide_b]'s own home date -- where [collide_a]'s rank R1
+ (band 10) now beats both the temporal office (50, since the date is no
+ longer 1 Feb) and [collide_b]'s own rank R2 (band 90): the ARRIVING
+ [collide_a] wins 10 Feb outright, and [collide_b] -- same slug as the
+ new winner -- is Commemorate-disposed (R2) right alongside it. One day
+ ends up reporting the same slug as both its observed celebration and one
+ of its own commemorations. *)
+ let collide_d1 = match D.make ~year:2026 ~month:2 ~day:1 with Ok d -> d | Error e -> failwith e
+ let collide_a_entry = mk_entry ~month:2 ~day:1 ~slug:"collide-x" ~rank:R1
+ let collide_b_entry = mk_entry ~month:2 ~day:10 ~slug:"collide-x" ~rank:R2
+ let collide_layer = Layer.of_entries ~id:"collide" ~name:"collide" [ collide_a_entry; collide_b_entry ]
+
+ let collide_rules : (season, rank) P.rules =
+ { P.band =
+ (fun ctx c ->
+ match c.P.origin with
+ | P.Temporal -> if D.compare ctx.P.date collide_d1 = 0 then 5 else 50
+ | P.Sanctoral -> ( match c.P.cel.Cel.rank with R1 -> 10 | R2 -> 90));
+ disposition =
+ (fun ~winner:_ ~loser ->
+ match loser.P.cel.Cel.rank with R1 -> P.Transfer | R2 -> P.Commemorate P.Ordinary);
+ admit = (fun ~observed:_ cs -> cs) }
+
+ let collide_d2 = match D.make ~year:2026 ~month:2 ~day:10 with Ok d -> d | Error e -> failwith e
+ let collide_transfer_target (_ : rank P.candidate) (_ : D.t) (_ : D.t -> rank Cel.t) = collide_d2
+
+ (* A genuinely resolved, well-behaved day (one ordinary sanctoral entry,
+ cleanly losing and commemorated, nothing transferred) -- proving the
+ five checks stay silent against REAL resolution machinery, not merely
+ against the default empty [layer] every fixture above this section
+ uses. Without this, "no check fires" would only ever have been shown
+ for a layer with nothing in it. *)
+ let clean_sanctoral_entry = mk_entry ~month:8 ~day:8 ~slug:"clean-saint" ~rank:R2
+ let clean_sanctoral_layer = Layer.of_entries ~id:"clean" ~name:"clean" [ clean_sanctoral_entry ]
+
+ let clean_sanctoral_rules : (season, rank) P.rules =
+ { P.band = (fun _ c -> match c.P.origin with P.Temporal -> 0 | P.Sanctoral -> 10);
+ disposition = (fun ~winner:_ ~loser:_ -> P.Commemorate P.Ordinary);
+ admit = (fun ~observed:_ cs -> cs) }
end
open Synthetic
@@ -160,6 +500,18 @@ open Synthetic
let test_synthetic_baseline_is_clean () =
Alcotest.(check bool) "clean synthetic fixture has no failures" true (run good = [])
+(* The point of this task: a rite whose season B genuinely appears in two
+ separate runs (quarters 0,1,2,3 give season sequence A B A B, not a single
+ A-then-B pair) validates clean when [season_runs] says so. Before this
+ task, [Validate]'s season check hardcoded "compressed = vocab.seasons"
+ ([A; B]) with no way to say otherwise -- against that check this fixture's
+ compressed sequence, [A; B; A; B], would never match and every year would
+ report a spurious "seasons" failure. *)
+let test_two_run_season_is_accepted () =
+ let r = Synthetic.rite_with_two_runs in
+ Alcotest.(check (list string)) "no failures" []
+ (List.map Val.failure_to_string (Val.run r Synthetic.empty_layer ~year:2026))
+
let test_coverage_fires () =
let temporal d = if D.compare d target = 0 then failwith "boom" else good d in
Alcotest.(check bool) "coverage check fires when temporal raises" true
@@ -170,10 +522,10 @@ let test_seasons_fires () =
let t = good d in
let y = D.year d in
let flip_after = match D.make ~year:y ~month:9 ~day:1 with Ok d -> d | Error e -> failwith e in
- (* Season A reappears after B: breaks "each season, one unbroken run". *)
+ (* Season A reappears after B: breaks the expected [A; B] run sequence. *)
if D.compare d flip_after >= 0 then { t with Temporal.season = A } else t
in
- Alcotest.(check bool) "seasons check fires when a season recurs" true
+ Alcotest.(check bool) "seasons check fires when a season recurs outside season_runs" true
(has_check "seasons" (run temporal))
let test_week_fires () =
@@ -263,12 +615,76 @@ let test_vocab_season_injectivity_fires () =
Alcotest.(check bool) "vocab check fires when season_to_string collapses two seasons to one string" true
(has_check "vocab" (run ~vocab:vocab_collapsed_seasons good))
+(* Plan 2 carried item 4: slug uniqueness moves into [Validate] itself, no
+ exemption. [target] (17 March, mid-run) is given the NEXT day's real slug
+ verbatim -- a genuine collision between two distinct dates in the same
+ walked year, touching only the [slug] field so every other check (season,
+ week, weekday, rank, colour, determinism, anchor) stays silent against it. *)
+let test_slugs_fires () =
+ let colliding_slug = (good (D.add_days target 1)).Temporal.office.Cel.slug in
+ let temporal d =
+ let t = good d in
+ if D.compare d target = 0 then
+ { t with Temporal.office = { t.Temporal.office with Cel.slug = colliding_slug } }
+ else t
+ in
+ Alcotest.(check bool) "slugs check fires when two dates in the year share a slug" true
+ (has_check "slugs" (run temporal))
+
+(* ---- Task 12: resolution invariants ----
+
+ Each test below asserts that exactly one of the five new check labels
+ fires for its own dedicated fixture (Synthetic's own comments carry the
+ hand-traced mechanics) -- not merely "at least this one", so a fixture
+ that turns out to also trip an unrelated Task 12 check would fail loudly
+ here rather than reading as accidental corroboration. *)
+
+let test_lost_fires_on_resolution_exception () =
+ (* Reuses [test_coverage_fires]'s own broken [temporal]: [Calendar.year]
+ calls [rite.temporal] with no exception guard of its own (unlike the
+ temporal-only pass above, which wraps every call), so the same raise
+ that trips "coverage" also makes resolution itself raise -- the most
+ total form of "silently lost" there is, per validate.mli. *)
+ let temporal d = if D.compare d target = 0 then failwith "boom" else good d in
+ Alcotest.(check (list string)) "only the lost check fires" [ "lost" ] (fired_task12_checks (run temporal))
+
+let test_duplicated_fires () =
+ Alcotest.(check (list string)) "only the duplicated check fires" [ "duplicated" ]
+ (fired_task12_checks (run ~layer:dup_layer ~rules:dup_rules good))
+
+let test_unconverged_fires () =
+ (* Also asserts "duplicated" fires alongside it -- see guard_rules's own
+ comment for why that is the genuine, hand-verified consequence of
+ hitting the round guard here, not an isolation failure. *)
+ Alcotest.(check (list string)) "unconverged fires, and duplicated alongside it"
+ [ "duplicated"; "unconverged" ]
+ (fired_task12_checks
+ (run ~layer:guard_layer ~rules:guard_rules ~transfer_target:guard_transfer_target good))
+
+let test_admission_fires () =
+ Alcotest.(check (list string)) "only the admission check fires" [ "admission" ]
+ (fired_task12_checks (run ~layer:adm_layer ~rules:adm_rules good))
+
+let test_observed_fires () =
+ Alcotest.(check (list string)) "only the observed check fires" [ "observed" ]
+ (fired_task12_checks
+ (run ~layer:collide_layer ~rules:collide_rules ~transfer_target:collide_transfer_target good))
+
+(* The positive counterpart: a genuinely resolved, well-behaved day (real
+ sanctoral entry, real contest, real commemoration) must report none of the
+ five checks -- proven against actual resolution machinery, not only
+ against every OTHER fixture's default empty layer. *)
+let test_resolution_checks_clean_on_a_well_behaved_layer () =
+ Alcotest.(check (list string)) "none of the five checks fire" []
+ (fired_task12_checks (run ~layer:clean_sanctoral_layer ~rules:clean_sanctoral_rules good))
+
let suite =
( "Validate",
[ Alcotest.test_case "landmark years" `Quick test_landmark_years;
Alcotest.test_case "year 9999 does not raise" `Quick test_year_9999_does_not_raise;
Alcotest.test_case "easter extremes" `Quick test_easter_extremes;
Alcotest.test_case "synthetic baseline is clean" `Quick test_synthetic_baseline_is_clean;
+ Alcotest.test_case "two-run season is accepted" `Quick test_two_run_season_is_accepted;
Alcotest.test_case "coverage fires" `Quick test_coverage_fires;
Alcotest.test_case "seasons fires" `Quick test_seasons_fires;
Alcotest.test_case "week fires" `Quick test_week_fires;
@@ -279,5 +695,15 @@ let suite =
Alcotest.test_case "anchor clean" `Quick test_anchor_clean;
Alcotest.test_case "anchor fires" `Quick test_anchor_fires;
Alcotest.test_case "vocab rank injectivity fires" `Quick test_vocab_rank_injectivity_fires;
- Alcotest.test_case "vocab season injectivity fires" `Quick test_vocab_season_injectivity_fires ]
+ Alcotest.test_case "vocab season injectivity fires" `Quick test_vocab_season_injectivity_fires;
+ Alcotest.test_case "slugs fires" `Quick test_slugs_fires;
+ Alcotest.test_case "lost fires on resolution exception" `Quick test_lost_fires_on_resolution_exception;
+ Alcotest.test_case "duplicated fires" `Quick test_duplicated_fires;
+ Alcotest.test_case "unconverged fires" `Quick test_unconverged_fires;
+ Alcotest.test_case "admission fires" `Quick test_admission_fires;
+ Alcotest.test_case "observed fires" `Quick test_observed_fires;
+ Alcotest.test_case "resolution checks clean on a well-behaved layer" `Quick
+ test_resolution_checks_clean_on_a_well_behaved_layer;
+ Alcotest.test_case "exhaustive domain sweep (1583..9999), committed not sampled" `Slow
+ test_exhaustive_domain_sweep ]
@ List.map QCheck_alcotest.to_alcotest [ prop_invariants ] )
diff --git a/tools/bootstrap_sanctoral.ml b/tools/bootstrap_sanctoral.ml
new file mode 100644
index 0000000..19adc0b
--- /dev/null
+++ b/tools/bootstrap_sanctoral.ml
@@ -0,0 +1,235 @@
+(* Bootstraps data/ef/sanctoral.sexp from lectio's tridentine-calendar.ini
+ (spec §4, docs/superpowers/specs/2026-08-11-colitur-plan3-resolution-
+ engine-design.md). A documented one-shot under tools/, not part of the
+ kernel: reading someone else's INI needs a reader, which does not
+ contradict "no hand-written parser" -- that rule is about colitur's own
+ format (S-expressions, parsed by sexplib/ppx_sexp_conv, never by hand).
+
+ Every field is built through the kernel's own validating constructors
+ (Slug.of_string, Colour.of_string, Vocab_ef.rank_of_string, ...), so the
+ emitted sexp is valid by construction: a bad slug or an unknown rank fails
+ the bootstrap here, not a later Layer.load.
+
+ Usage: dune exec tools/bootstrap_sanctoral.exe -- [source.ini] [dest.sexp]
+ Defaults assume the sibling checkout layout documented in CLAUDE.md
+ (~/git/projects/lectio next to ~/git/projects/colitur) and a run from the
+ colitur repo root. *)
+
+module Cel = Colitur_kernel.Celebration
+module Slug = Colitur_kernel.Slug
+module Colour = Colitur_kernel.Colour
+module Subject = Colitur_kernel.Subject
+module Names = Colitur_kernel.Names
+module Lang = Colitur_kernel.Lang
+module DS = Colitur_kernel.Date_spec
+module Layer = Colitur_kernel.Layer
+module V = Rite_ef.Vocab_ef
+module PE = Rite_ef.Precedence_ef
+
+let default_source = "../lectio/internal/caldata/tridentine-calendar.ini"
+let default_dest = "data/ef/sanctoral.sexp"
+
+(* Fails loudly and stops, per the brief: a source shape the mapping does not
+ cover must never fall back to a silent default. *)
+let die fmt = Printf.ksprintf (fun s -> prerr_endline ("bootstrap_sanctoral: " ^ s); exit 1) fmt
+
+(* --- A minimal INI reader for lectio's format only ------------------------
+
+ Not a general INI library: comment lines start with ';', section headers
+ are "[name]", and every other non-blank line is "key = value" with the
+ value running to end of line (verified against the actual source file --
+ no embedded '=', quotes, or trailing whitespace in any value; see the
+ task report). This is a reader for someone else's format, not colitur's
+ own -- see the module comment above. *)
+
+type section = { name : string; fields : (string * string) list }
+
+let parse_ini path =
+ if not (Sys.file_exists path) then die "source file not found: %s" path;
+ let ic = open_in path in
+ Fun.protect
+ ~finally:(fun () -> close_in_noerr ic)
+ (fun () ->
+ let sections = ref [] in
+ let cur_name = ref None in
+ let cur_fields = ref [] in
+ let flush () =
+ match !cur_name with
+ | Some n -> sections := { name = n; fields = List.rev !cur_fields } :: !sections
+ | None -> ()
+ in
+ (try
+ while true do
+ let raw = input_line ic in
+ let line = String.trim raw in
+ if line = "" || line.[0] = ';' then ()
+ else if line.[0] = '[' && line.[String.length line - 1] = ']' then begin
+ flush ();
+ cur_name := Some (String.sub line 1 (String.length line - 2));
+ cur_fields := []
+ end
+ else
+ match String.index_opt line '=' with
+ | None -> die "%s: unparseable line (no '='): %S" path line
+ | Some i ->
+ let key = String.trim (String.sub line 0 i) in
+ let value = String.trim (String.sub line (i + 1) (String.length line - i - 1)) in
+ cur_fields := (key, value) :: !cur_fields
+ done
+ with End_of_file -> ());
+ flush ();
+ List.rev !sections)
+
+(* --- Field-level mapping (spec §4.2) --------------------------------------- *)
+
+let field sec key =
+ match List.assoc_opt key sec.fields with
+ | Some v -> v
+ | None -> die "section [%s]: missing required field %S" sec.name key
+
+let field_opt sec key = List.assoc_opt key sec.fields
+
+let parse_slug sec =
+ match Slug.of_string sec.name with
+ | Ok s -> s
+ | Error e -> die "section [%s]: invalid slug: %s" sec.name e
+
+(* All 322 entries use plain MM-DD (spec §4.1); anything else is a date form
+ the mapping does not cover. *)
+let parse_date sec =
+ let raw = field sec "date" in
+ match String.split_on_char '-' raw with
+ | [ mm; dd ] when String.length mm = 2 && String.length dd = 2 -> (
+ match (int_of_string_opt mm, int_of_string_opt dd) with
+ | Some month, Some day -> (
+ match DS.fixed ~month ~day with
+ | Ok d -> d
+ | Error e -> die "section [%s]: date %S: %s" sec.name raw e)
+ | _ -> die "section [%s]: date %S is not numeric MM-DD" sec.name raw)
+ | _ -> die "section [%s]: unsupported date form %S -- only MM-DD is mapped" sec.name raw
+
+(* rank = class-1..4 -> (Class1..4, Feast); rank = commemoration ->
+ (Class3, Commemoration_only) -- decision 2 in the task brief and spec
+ §4.3: the source gives no rank for a bare commemoration, but RG 111 orders
+ admitted commemorations by dignity, so one is needed. Class3 is a
+ documented INFERENCE (it is what the 1960 reform reduced most simple
+ feasts from), not an RG citation -- see docs/research/rules-register.md
+ §6 and Celebration.status's own doc comment for why status, not rank,
+ carries "can this ever be observed". *)
+let parse_rank_status sec =
+ let raw = field sec "rank" in
+ if raw = "commemoration" then (V.Class3, Cel.Commemoration_only)
+ else
+ match V.rank_of_string raw with
+ | Some r -> (r, Cel.Feast)
+ | None -> die "section [%s]: unknown rank %S" sec.name raw
+
+(* Sanctoral colours are white, red, violet, black only (spec §4.1) -- green
+ and rose belong to the temporal cycle. Colour.of_string's domain is wider
+ (it also names green/rose), so this rejects them explicitly rather than
+ passing through a colour that would be a modelling error if it ever
+ appeared in sanctoral data. *)
+let parse_colour sec =
+ let raw = field sec "colour" in
+ match Colour.of_string raw with
+ | Some (Colour.White | Colour.Red | Colour.Violet | Colour.Black as c) -> c
+ | Some (Colour.Green | Colour.Rose) ->
+ die "section [%s]: colour %S is temporal-only, unexpected in sanctoral data" sec.name raw
+ | None -> die "section [%s]: unknown colour %S" sec.name raw
+
+(* class = lord|bvm|saint -> Subject.t; absent -> Subject.Saint (decision 1:
+ Celebration.make's kernel default is Subject.Temporal, correct for the
+ temporal cycle and wrong for every sanctoral entry -- overridden here,
+ never left to the default). Only 6 of 322 entries carry an explicit
+ class in the source, and all 6 are "lord" as of this bootstrap; bvm/saint
+ are mapped in case a future lectio update adds one, but "temporal" is
+ rejected -- no sanctoral entry is the temporal cycle's own office. *)
+let parse_subject sec =
+ match field_opt sec "class" with
+ | None -> Subject.Saint
+ | Some raw -> (
+ match Subject.of_string raw with
+ | Some Subject.Temporal ->
+ die "section [%s]: class %S maps to Subject.Temporal, invalid for sanctoral data" sec.name
+ raw
+ | Some s -> s
+ | None -> die "section [%s]: unknown class %S" sec.name raw)
+
+let parse_names sec =
+ let en = field sec "name.en" in
+ let pl = field sec "name.pl" in
+ Names.of_list [ (Lang.of_string_exn "en", en); (Lang.of_string_exn "pl", pl) ]
+
+(* reading.* is deliberately ignored -- Plan 4's lectionary bootstrap. *)
+let convert_entry sec : V.rank Layer.entry =
+ let slug = parse_slug sec in
+ let date = parse_date sec in
+ let rank, status = parse_rank_status sec in
+ let colour = parse_colour sec in
+ let subject = parse_subject sec in
+ let names = parse_names sec in
+ (* PE.universal_layer, NOT lectio's own "tridentine" layer id and NOT the
+ Celebration.make default "temporal": Precedence_ef.band reads
+ Celebration.t.layer to classify RG 91 entries 11/16/24 (universal) vs
+ 12/19/23 (proper) vs 13/20 (indult, PE.indult_prefix). Every entry here
+ is the General Roman Calendar's own universal sanctoral, so all 322 get
+ the same provenance tag. *)
+ { Layer.date; cel = Cel.make ~slug ~names ~rank ~status ~colour ~subject ~citations:[]
+ ~layer:PE.universal_layer () }
+
+(* --- Provenance (spec §4.5) ------------------------------------------------ *)
+
+let sha256_of_file path =
+ let cmd = Printf.sprintf "sha256sum %s" (Filename.quote path) in
+ let ic = Unix.open_process_in cmd in
+ let line = try input_line ic with End_of_file -> die "sha256sum produced no output for %s" path in
+ (match Unix.close_process_in ic with
+ | Unix.WEXITED 0 -> ()
+ | _ -> die "sha256sum failed for %s" path);
+ match String.index_opt line ' ' with
+ | Some i -> String.sub line 0 i
+ | None -> die "unexpected sha256sum output: %S" line
+
+let today () =
+ let tm = Unix.gmtime (Unix.time ()) in
+ Printf.sprintf "%04d-%02d-%02d" (tm.Unix.tm_year + 1900) (tm.Unix.tm_mon + 1) tm.Unix.tm_mday
+
+(* --- Main ------------------------------------------------------------------ *)
+
+let () =
+ let source = if Array.length Sys.argv > 1 then Sys.argv.(1) else default_source in
+ let dest = if Array.length Sys.argv > 2 then Sys.argv.(2) else default_dest in
+ let sections = parse_ini source in
+ if not (List.exists (fun s -> s.name = "layer") sections) then
+ die "%s: missing the [layer] header section" source;
+ let entry_sections = List.filter (fun s -> s.name <> "layer") sections in
+ let entries = List.map convert_entry entry_sections in
+ let layer = Layer.of_entries ~id:PE.universal_layer ~name:"EF (1962) universal sanctoral" entries in
+ let sha = sha256_of_file source in
+ let feasts = List.length (List.filter (fun e -> e.Layer.cel.Cel.status = Cel.Feast) entries) in
+ let comms = List.length entries - feasts in
+ let header =
+ Printf.sprintf
+ {|; data/ef/sanctoral.sexp -- EF (1962) universal sanctoral (General Roman
+; Calendar), bootstrapped from lectio (sibling project; see CLAUDE.md).
+; Generator: tools/bootstrap_sanctoral.ml -- do not hand-edit; re-run the
+; generator against a newer lectio and commit the diff instead.
+;
+; Source: %s
+; SHA-256: %s
+; Converted (UTC): %s
+; %d entries (%d feast, %d commemoration-only). Regenerate with:
+; eval $(opam env) && dune exec tools/bootstrap_sanctoral.exe -- %s %s
+|}
+ source sha (today ()) (List.length entries) feasts comms source dest
+ in
+ let body = Sexplib.Sexp.to_string_hum ~indent:2 (Layer.sexp_of_t V.sexp_of_rank layer) in
+ let oc = open_out dest in
+ Fun.protect
+ ~finally:(fun () -> close_out_noerr oc)
+ (fun () ->
+ output_string oc header;
+ output_string oc body;
+ output_string oc "\n");
+ Printf.printf "bootstrap_sanctoral: wrote %d entries (%d feast, %d commemoration-only) to %s\n"
+ (List.length entries) feasts comms dest
diff --git a/tools/dune b/tools/dune
new file mode 100644
index 0000000..d53cd01
--- /dev/null
+++ b/tools/dune
@@ -0,0 +1,10 @@
+; A documented one-shot, not part of the build's normal product (spec §4.5):
+; converts lectio's tridentine-calendar.ini into data/ef/sanctoral.sexp. Run
+; via `dune exec tools/bootstrap_sanctoral.exe -- <source.ini> <dest.sexp>`.
+; `unix` is the OCaml distribution's bundled library (already in the switch,
+; not a new opam dependency) -- used only here, never by the kernel, to shell
+; out to `sha256sum` for the provenance header; the kernel itself never reads
+; the environment or a clock.
+(executable
+ (name bootstrap_sanctoral)
+ (libraries colitur_kernel rite_ef unix sexplib))
diff --git a/tools/extract_missalemeum_oracle.py b/tools/extract_missalemeum_oracle.py
new file mode 100644
index 0000000..044aa54
--- /dev/null
+++ b/tools/extract_missalemeum_oracle.py
@@ -0,0 +1,87 @@
+#!/usr/bin/env python3
+# A documented one-shot, not part of the OCaml build (spec's "no hand-written
+# JSON parser" rule is about colitur's OWN sexp format -- reading someone
+# else's JSON needs a reader, same reasoning as tools/bootstrap_sanctoral.ml's
+# own header comment on its INI reader). Task 16: extracts the missalemeum
+# oracle fixture (test/fixtures/missalemeum-ef-2026-2027.txt) that
+# test/test_oracle.ml compares colitur against -- there is no JSON library in
+# this project's frozen deps, so the fixture is shaped here, once, outside
+# the test, exactly as test/test_differential.ml's lectio fixture already is
+# (see that file's own header comment).
+#
+# Usage:
+# python3 tools/extract_missalemeum_oracle.py <snapshot-dir> <out-file>
+#
+# <snapshot-dir> is ~/git/projects/lectio/sources/ already unpacked (`tar xzf
+# snapshot.tar.gz` in that directory -- lectio's own scripts/snapshot-
+# sources.sh does this), so <snapshot-dir>/missalemeum/en/YYYY-MM-DD.json
+# exists for every day.
+#
+# One line per day, pipe-separated:
+# date|rank|colors|title|tempora|commemorations|displaced|n_masses
+#
+# - rank/colors/title/tempora/commemorations/displaced are info.rank,
+# info.colors (sorted, concatenated, e.g. "pv"), info.title, info.tempora
+# ("-" for JSON null), the ";"-joined titles of info.commemorations and
+# info.displaced ("-" for an empty list), verbatim from the JSON's own
+# English strings -- not translated or slugified, so the comparator (and a
+# human auditor) can match colitur's own celebration names against them.
+# - n_masses is len(the day's JSON array). Four days (Christmas, All Souls)
+# carry more than one Mass; entry[0]'s info block is used throughout (rank/
+# colors/tempora/commemorations/displaced are IDENTICAL across every Mass
+# of the same day for all 730 days -- checked below, not assumed; see the
+# task report for why entry[0] loses nothing).
+# - Spaces in tempora are turned to "_" (matching the "no field has an
+# internal space" convention test/fixtures/lectio-ef-2005-2050.txt already
+# uses, so this fixture can be read the same simple way -- split on '|',
+# not on whitespace, so title/commemoration/displaced text keeps its own
+# spaces; only tempora, which nothing in this project parses further than
+# pass-through display, is space-collapsed for a cheap column-count check).
+import json
+import os
+import sys
+
+
+def main():
+ if len(sys.argv) != 3:
+ print(f"usage: {sys.argv[0]} <snapshot-dir> <out-file>", file=sys.stderr)
+ return 2
+ snapshot_dir, out_path = sys.argv[1], sys.argv[2]
+ src = os.path.join(snapshot_dir, "missalemeum", "en")
+ rows = []
+ for fname in sorted(os.listdir(src)):
+ if not fname.endswith(".json"):
+ continue
+ date = fname[:-5]
+ with open(os.path.join(src, fname), encoding="utf-8") as f:
+ data = json.load(f)
+ first = data[0]["info"]
+ for other in data[1:]:
+ o = other["info"]
+ for k in ("rank", "colors", "tempora", "commemorations", "displaced"):
+ if first[k] != o[k]:
+ print(f"WARNING: {date} masses disagree on {k}: {first[k]!r} vs {o[k]!r}", file=sys.stderr)
+ comm_titles = [c["title"] for c in first["commemorations"]]
+ disp_titles = [d["title"] for d in first["displaced"]]
+ for t in [first["title"]] + comm_titles + disp_titles:
+ if "|" in t or ";" in t:
+ print(f"ERROR: {date}: field {t!r} contains a delimiter this fixture uses", file=sys.stderr)
+ return 1
+ colors = "".join(sorted(first["colors"]))
+ tempora = (first["tempora"] or "-").replace(" ", "_")
+ comms = ";".join(comm_titles) or "-"
+ disp = ";".join(disp_titles) or "-"
+ rows.append(f"{date}|{first['rank']}|{colors}|{first['title']}|{tempora}|{comms}|{disp}|{len(data)}")
+
+ if len(rows) != 730:
+ print(f"ERROR: expected 730 days, got {len(rows)}", file=sys.stderr)
+ return 1
+
+ with open(out_path, "w", encoding="utf-8") as f:
+ f.write("\n".join(rows) + "\n")
+ print(f"wrote {len(rows)} lines to {out_path}", file=sys.stderr)
+ return 0
+
+
+if __name__ == "__main__":
+ sys.exit(main())