PREFIX math: <http://www.w3.org/2000/10/swap/math#>
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX prolog: <http://eulersharp.sourceforge.net/2003/03swap/prolog#>
PREFIX : <http://www.agfa.com/w3c/euler/easterP#>
PREFIX r: <http://www.w3.org/2000/10/swap/reason#>

[] a r:Proof, r:Conjunction;
  r:component <#lemma1>;
  r:component <#lemma2>;
  r:component <#lemma3>;
  r:component <#lemma4>;
  r:component <#lemma5>;
  r:component <#lemma6>;
  r:component <#lemma7>;
  r:component <#lemma8>;
  r:component <#lemma9>;
  r:component <#lemma10>;
  r:component <#lemma11>;
  r:component <#lemma12>;
  r:component <#lemma13>;
  r:component <#lemma14>;
  r:component <#lemma15>;
  r:component <#lemma16>;
  r:component <#lemma17>;
  r:component <#lemma18>;
  r:component <#lemma19>;
  r:component <#lemma20>;
  r:component <#lemma21>;
  r:component <#lemma22>;
  r:component <#lemma23>;
  r:component <#lemma24>;
  r:component <#lemma25>;
  r:component <#lemma26>;
  r:component <#lemma27>;
  r:component <#lemma28>;
  r:component <#lemma29>;
  r:component <#lemma30>;
  r:gives {
    (4 4) :easterFor 2021 .
    (17 4) :easterFor 2022 .
    (9 4) :easterFor 2023 .
    (31 3) :easterFor 2024 .
    (20 4) :easterFor 2025 .
    (5 4) :easterFor 2026 .
    (28 3) :easterFor 2027 .
    (16 4) :easterFor 2028 .
    (1 4) :easterFor 2029 .
    (21 4) :easterFor 2030 .
    (13 4) :easterFor 2031 .
    (28 3) :easterFor 2032 .
    (17 4) :easterFor 2033 .
    (9 4) :easterFor 2034 .
    (25 3) :easterFor 2035 .
    (13 4) :easterFor 2036 .
    (5 4) :easterFor 2037 .
    (25 4) :easterFor 2038 .
    (10 4) :easterFor 2039 .
    (1 4) :easterFor 2040 .
    (21 4) :easterFor 2041 .
    (6 4) :easterFor 2042 .
    (29 3) :easterFor 2043 .
    (17 4) :easterFor 2044 .
    (9 4) :easterFor 2045 .
    (25 3) :easterFor 2046 .
    (14 4) :easterFor 2047 .
    (5 4) :easterFor 2048 .
    (18 4) :easterFor 2049 .
    (10 4) :easterFor 2050 .
  }.

<#lemma1> a r:Inference;
  r:gives {
    (4 4) :easterFor 2021 .
  };
  r:evidence (
    <#lemma31>
  );
  r:rule <#lemma32>.

<#lemma2> a r:Inference;
  r:gives {
    (17 4) :easterFor 2022 .
  };
  r:evidence (
    <#lemma33>
  );
  r:rule <#lemma32>.

<#lemma3> a r:Inference;
  r:gives {
    (9 4) :easterFor 2023 .
  };
  r:evidence (
    <#lemma34>
  );
  r:rule <#lemma32>.

<#lemma4> a r:Inference;
  r:gives {
    (31 3) :easterFor 2024 .
  };
  r:evidence (
    <#lemma35>
  );
  r:rule <#lemma32>.

<#lemma5> a r:Inference;
  r:gives {
    (20 4) :easterFor 2025 .
  };
  r:evidence (
    <#lemma36>
  );
  r:rule <#lemma32>.

<#lemma6> a r:Inference;
  r:gives {
    (5 4) :easterFor 2026 .
  };
  r:evidence (
    <#lemma37>
  );
  r:rule <#lemma32>.

<#lemma7> a r:Inference;
  r:gives {
    (28 3) :easterFor 2027 .
  };
  r:evidence (
    <#lemma38>
  );
  r:rule <#lemma32>.

<#lemma8> a r:Inference;
  r:gives {
    (16 4) :easterFor 2028 .
  };
  r:evidence (
    <#lemma39>
  );
  r:rule <#lemma32>.

<#lemma9> a r:Inference;
  r:gives {
    (1 4) :easterFor 2029 .
  };
  r:evidence (
    <#lemma40>
  );
  r:rule <#lemma32>.

<#lemma10> a r:Inference;
  r:gives {
    (21 4) :easterFor 2030 .
  };
  r:evidence (
    <#lemma41>
  );
  r:rule <#lemma32>.

<#lemma11> a r:Inference;
  r:gives {
    (13 4) :easterFor 2031 .
  };
  r:evidence (
    <#lemma42>
  );
  r:rule <#lemma32>.

<#lemma12> a r:Inference;
  r:gives {
    (28 3) :easterFor 2032 .
  };
  r:evidence (
    <#lemma43>
  );
  r:rule <#lemma32>.

<#lemma13> a r:Inference;
  r:gives {
    (17 4) :easterFor 2033 .
  };
  r:evidence (
    <#lemma44>
  );
  r:rule <#lemma32>.

<#lemma14> a r:Inference;
  r:gives {
    (9 4) :easterFor 2034 .
  };
  r:evidence (
    <#lemma45>
  );
  r:rule <#lemma32>.

<#lemma15> a r:Inference;
  r:gives {
    (25 3) :easterFor 2035 .
  };
  r:evidence (
    <#lemma46>
  );
  r:rule <#lemma32>.

<#lemma16> a r:Inference;
  r:gives {
    (13 4) :easterFor 2036 .
  };
  r:evidence (
    <#lemma47>
  );
  r:rule <#lemma32>.

<#lemma17> a r:Inference;
  r:gives {
    (5 4) :easterFor 2037 .
  };
  r:evidence (
    <#lemma48>
  );
  r:rule <#lemma32>.

<#lemma18> a r:Inference;
  r:gives {
    (25 4) :easterFor 2038 .
  };
  r:evidence (
    <#lemma49>
  );
  r:rule <#lemma32>.

<#lemma19> a r:Inference;
  r:gives {
    (10 4) :easterFor 2039 .
  };
  r:evidence (
    <#lemma50>
  );
  r:rule <#lemma32>.

<#lemma20> a r:Inference;
  r:gives {
    (1 4) :easterFor 2040 .
  };
  r:evidence (
    <#lemma51>
  );
  r:rule <#lemma32>.

<#lemma21> a r:Inference;
  r:gives {
    (21 4) :easterFor 2041 .
  };
  r:evidence (
    <#lemma52>
  );
  r:rule <#lemma32>.

<#lemma22> a r:Inference;
  r:gives {
    (6 4) :easterFor 2042 .
  };
  r:evidence (
    <#lemma53>
  );
  r:rule <#lemma32>.

<#lemma23> a r:Inference;
  r:gives {
    (29 3) :easterFor 2043 .
  };
  r:evidence (
    <#lemma54>
  );
  r:rule <#lemma32>.

<#lemma24> a r:Inference;
  r:gives {
    (17 4) :easterFor 2044 .
  };
  r:evidence (
    <#lemma55>
  );
  r:rule <#lemma32>.

<#lemma25> a r:Inference;
  r:gives {
    (9 4) :easterFor 2045 .
  };
  r:evidence (
    <#lemma56>
  );
  r:rule <#lemma32>.

<#lemma26> a r:Inference;
  r:gives {
    (25 3) :easterFor 2046 .
  };
  r:evidence (
    <#lemma57>
  );
  r:rule <#lemma32>.

<#lemma27> a r:Inference;
  r:gives {
    (14 4) :easterFor 2047 .
  };
  r:evidence (
    <#lemma58>
  );
  r:rule <#lemma32>.

<#lemma28> a r:Inference;
  r:gives {
    (5 4) :easterFor 2048 .
  };
  r:evidence (
    <#lemma59>
  );
  r:rule <#lemma32>.

<#lemma29> a r:Inference;
  r:gives {
    (18 4) :easterFor 2049 .
  };
  r:evidence (
    <#lemma60>
  );
  r:rule <#lemma32>.

<#lemma30> a r:Inference;
  r:gives {
    (10 4) :easterFor 2050 .
  };
  r:evidence (
    <#lemma61>
  );
  r:rule <#lemma32>.

<#lemma31> a r:Inference;
  r:gives {
    (4 4) :easterFor 2021 .
  };
  r:evidence (
    <#lemma62>
    [ a r:Fact; r:gives {(2021 19) math:remainder 7}]
    [ a r:Fact; r:gives {(2021 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2021 100) math:remainder 21}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 7) math:product 133}]
    [ a r:Fact; r:gives {(133 20) math:sum 153}]
    [ a r:Fact; r:gives {(153 5) math:difference 148}]
    [ a r:Fact; r:gives {(148 6) math:difference 142}]
    [ a r:Fact; r:gives {(142 15) math:sum 157}]
    [ a r:Fact; r:gives {(157 30) math:remainder 7}]
    [ a r:Fact; r:gives {(21 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(21 4) math:remainder 1}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 5) math:product 10}]
    [ a r:Fact; r:gives {7 math:negation -7}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {(32 0 10 -7 -1) math:sum 34}]
    [ a r:Fact; r:gives {(34 7) math:remainder 6}]
    [ a r:Fact; r:gives {(11 7) math:product 77}]
    [ a r:Fact; r:gives {(22 6) math:product 132}]
    [ a r:Fact; r:gives {(7 77 132) math:sum 216}]
    [ a r:Fact; r:gives {(216 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(7 6 0 114) math:sum 127}]
    [ a r:Fact; r:gives {(127 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(127 31) math:remainder 3}]
    [ a r:Fact; r:gives {(3 1) math:sum 4}]
  );
  r:rule <#lemma63>.

<#lemma32> a r:Extraction;
  r:gives {
    {?x_0_1 :easterFor ?x_1_1} => {?x_0_1 :easterFor ?x_1_1}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterF.n3>].

<#lemma33> a r:Inference;
  r:gives {
    (17 4) :easterFor 2022 .
  };
  r:evidence (
    <#lemma64>
    [ a r:Fact; r:gives {(2022 19) math:remainder 8}]
    [ a r:Fact; r:gives {(2022 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2022 100) math:remainder 22}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 8) math:product 152}]
    [ a r:Fact; r:gives {(152 20) math:sum 172}]
    [ a r:Fact; r:gives {(172 5) math:difference 167}]
    [ a r:Fact; r:gives {(167 6) math:difference 161}]
    [ a r:Fact; r:gives {(161 15) math:sum 176}]
    [ a r:Fact; r:gives {(176 30) math:remainder 26}]
    [ a r:Fact; r:gives {(22 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(22 4) math:remainder 2}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 5) math:product 10}]
    [ a r:Fact; r:gives {26 math:negation -26}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {(32 0 10 -26 -2) math:sum 14}]
    [ a r:Fact; r:gives {(14 7) math:remainder 0}]
    [ a r:Fact; r:gives {(11 26) math:product 286}]
    [ a r:Fact; r:gives {(22 0) math:product 0}]
    [ a r:Fact; r:gives {(8 286 0) math:sum 294}]
    [ a r:Fact; r:gives {(294 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(26 0 0 114) math:sum 140}]
    [ a r:Fact; r:gives {(140 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(140 31) math:remainder 16}]
    [ a r:Fact; r:gives {(16 1) math:sum 17}]
  );
  r:rule <#lemma63>.

<#lemma34> a r:Inference;
  r:gives {
    (9 4) :easterFor 2023 .
  };
  r:evidence (
    <#lemma65>
    [ a r:Fact; r:gives {(2023 19) math:remainder 9}]
    [ a r:Fact; r:gives {(2023 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2023 100) math:remainder 23}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 9) math:product 171}]
    [ a r:Fact; r:gives {(171 20) math:sum 191}]
    [ a r:Fact; r:gives {(191 5) math:difference 186}]
    [ a r:Fact; r:gives {(186 6) math:difference 180}]
    [ a r:Fact; r:gives {(180 15) math:sum 195}]
    [ a r:Fact; r:gives {(195 30) math:remainder 15}]
    [ a r:Fact; r:gives {(23 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(23 4) math:remainder 3}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 5) math:product 10}]
    [ a r:Fact; r:gives {15 math:negation -15}]
    [ a r:Fact; r:gives {3 math:negation -3}]
    [ a r:Fact; r:gives {(32 0 10 -15 -3) math:sum 24}]
    [ a r:Fact; r:gives {(24 7) math:remainder 3}]
    [ a r:Fact; r:gives {(11 15) math:product 165}]
    [ a r:Fact; r:gives {(22 3) math:product 66}]
    [ a r:Fact; r:gives {(9 165 66) math:sum 240}]
    [ a r:Fact; r:gives {(240 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(15 3 0 114) math:sum 132}]
    [ a r:Fact; r:gives {(132 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(132 31) math:remainder 8}]
    [ a r:Fact; r:gives {(8 1) math:sum 9}]
  );
  r:rule <#lemma63>.

<#lemma35> a r:Inference;
  r:gives {
    (31 3) :easterFor 2024 .
  };
  r:evidence (
    <#lemma66>
    [ a r:Fact; r:gives {(2024 19) math:remainder 10}]
    [ a r:Fact; r:gives {(2024 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2024 100) math:remainder 24}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 10) math:product 190}]
    [ a r:Fact; r:gives {(190 20) math:sum 210}]
    [ a r:Fact; r:gives {(210 5) math:difference 205}]
    [ a r:Fact; r:gives {(205 6) math:difference 199}]
    [ a r:Fact; r:gives {(199 15) math:sum 214}]
    [ a r:Fact; r:gives {(214 30) math:remainder 4}]
    [ a r:Fact; r:gives {(24 4) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(24 4) math:remainder 0}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 6) math:product 12}]
    [ a r:Fact; r:gives {4 math:negation -4}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(32 0 12 -4 0) math:sum 40}]
    [ a r:Fact; r:gives {(40 7) math:remainder 5}]
    [ a r:Fact; r:gives {(11 4) math:product 44}]
    [ a r:Fact; r:gives {(22 5) math:product 110}]
    [ a r:Fact; r:gives {(10 44 110) math:sum 164}]
    [ a r:Fact; r:gives {(164 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(4 5 0 114) math:sum 123}]
    [ a r:Fact; r:gives {(123 31) math:integerQuotient 3}]
    [ a r:Fact; r:gives {(123 31) math:remainder 30}]
    [ a r:Fact; r:gives {(30 1) math:sum 31}]
  );
  r:rule <#lemma63>.

<#lemma36> a r:Inference;
  r:gives {
    (20 4) :easterFor 2025 .
  };
  r:evidence (
    <#lemma67>
    [ a r:Fact; r:gives {(2025 19) math:remainder 11}]
    [ a r:Fact; r:gives {(2025 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2025 100) math:remainder 25}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 11) math:product 209}]
    [ a r:Fact; r:gives {(209 20) math:sum 229}]
    [ a r:Fact; r:gives {(229 5) math:difference 224}]
    [ a r:Fact; r:gives {(224 6) math:difference 218}]
    [ a r:Fact; r:gives {(218 15) math:sum 233}]
    [ a r:Fact; r:gives {(233 30) math:remainder 23}]
    [ a r:Fact; r:gives {(25 4) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(25 4) math:remainder 1}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 6) math:product 12}]
    [ a r:Fact; r:gives {23 math:negation -23}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {(32 0 12 -23 -1) math:sum 20}]
    [ a r:Fact; r:gives {(20 7) math:remainder 6}]
    [ a r:Fact; r:gives {(11 23) math:product 253}]
    [ a r:Fact; r:gives {(22 6) math:product 132}]
    [ a r:Fact; r:gives {(11 253 132) math:sum 396}]
    [ a r:Fact; r:gives {(396 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(23 6 0 114) math:sum 143}]
    [ a r:Fact; r:gives {(143 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(143 31) math:remainder 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
  );
  r:rule <#lemma63>.

<#lemma37> a r:Inference;
  r:gives {
    (5 4) :easterFor 2026 .
  };
  r:evidence (
    <#lemma68>
    [ a r:Fact; r:gives {(2026 19) math:remainder 12}]
    [ a r:Fact; r:gives {(2026 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2026 100) math:remainder 26}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 12) math:product 228}]
    [ a r:Fact; r:gives {(228 20) math:sum 248}]
    [ a r:Fact; r:gives {(248 5) math:difference 243}]
    [ a r:Fact; r:gives {(243 6) math:difference 237}]
    [ a r:Fact; r:gives {(237 15) math:sum 252}]
    [ a r:Fact; r:gives {(252 30) math:remainder 12}]
    [ a r:Fact; r:gives {(26 4) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(26 4) math:remainder 2}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 6) math:product 12}]
    [ a r:Fact; r:gives {12 math:negation -12}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {(32 0 12 -12 -2) math:sum 30}]
    [ a r:Fact; r:gives {(30 7) math:remainder 2}]
    [ a r:Fact; r:gives {(11 12) math:product 132}]
    [ a r:Fact; r:gives {(22 2) math:product 44}]
    [ a r:Fact; r:gives {(12 132 44) math:sum 188}]
    [ a r:Fact; r:gives {(188 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(12 2 0 114) math:sum 128}]
    [ a r:Fact; r:gives {(128 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(128 31) math:remainder 4}]
    [ a r:Fact; r:gives {(4 1) math:sum 5}]
  );
  r:rule <#lemma63>.

<#lemma38> a r:Inference;
  r:gives {
    (28 3) :easterFor 2027 .
  };
  r:evidence (
    <#lemma69>
    [ a r:Fact; r:gives {(2027 19) math:remainder 13}]
    [ a r:Fact; r:gives {(2027 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2027 100) math:remainder 27}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 13) math:product 247}]
    [ a r:Fact; r:gives {(247 20) math:sum 267}]
    [ a r:Fact; r:gives {(267 5) math:difference 262}]
    [ a r:Fact; r:gives {(262 6) math:difference 256}]
    [ a r:Fact; r:gives {(256 15) math:sum 271}]
    [ a r:Fact; r:gives {(271 30) math:remainder 1}]
    [ a r:Fact; r:gives {(27 4) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(27 4) math:remainder 3}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 6) math:product 12}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {3 math:negation -3}]
    [ a r:Fact; r:gives {(32 0 12 -1 -3) math:sum 40}]
    [ a r:Fact; r:gives {(40 7) math:remainder 5}]
    [ a r:Fact; r:gives {(11 1) math:product 11}]
    [ a r:Fact; r:gives {(22 5) math:product 110}]
    [ a r:Fact; r:gives {(13 11 110) math:sum 134}]
    [ a r:Fact; r:gives {(134 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(1 5 0 114) math:sum 120}]
    [ a r:Fact; r:gives {(120 31) math:integerQuotient 3}]
    [ a r:Fact; r:gives {(120 31) math:remainder 27}]
    [ a r:Fact; r:gives {(27 1) math:sum 28}]
  );
  r:rule <#lemma63>.

<#lemma39> a r:Inference;
  r:gives {
    (16 4) :easterFor 2028 .
  };
  r:evidence (
    <#lemma70>
    [ a r:Fact; r:gives {(2028 19) math:remainder 14}]
    [ a r:Fact; r:gives {(2028 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2028 100) math:remainder 28}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 14) math:product 266}]
    [ a r:Fact; r:gives {(266 20) math:sum 286}]
    [ a r:Fact; r:gives {(286 5) math:difference 281}]
    [ a r:Fact; r:gives {(281 6) math:difference 275}]
    [ a r:Fact; r:gives {(275 15) math:sum 290}]
    [ a r:Fact; r:gives {(290 30) math:remainder 20}]
    [ a r:Fact; r:gives {(28 4) math:integerQuotient 7}]
    [ a r:Fact; r:gives {(28 4) math:remainder 0}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 7) math:product 14}]
    [ a r:Fact; r:gives {20 math:negation -20}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(32 0 14 -20 0) math:sum 26}]
    [ a r:Fact; r:gives {(26 7) math:remainder 5}]
    [ a r:Fact; r:gives {(11 20) math:product 220}]
    [ a r:Fact; r:gives {(22 5) math:product 110}]
    [ a r:Fact; r:gives {(14 220 110) math:sum 344}]
    [ a r:Fact; r:gives {(344 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(20 5 0 114) math:sum 139}]
    [ a r:Fact; r:gives {(139 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(139 31) math:remainder 15}]
    [ a r:Fact; r:gives {(15 1) math:sum 16}]
  );
  r:rule <#lemma63>.

<#lemma40> a r:Inference;
  r:gives {
    (1 4) :easterFor 2029 .
  };
  r:evidence (
    <#lemma71>
    [ a r:Fact; r:gives {(2029 19) math:remainder 15}]
    [ a r:Fact; r:gives {(2029 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2029 100) math:remainder 29}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 15) math:product 285}]
    [ a r:Fact; r:gives {(285 20) math:sum 305}]
    [ a r:Fact; r:gives {(305 5) math:difference 300}]
    [ a r:Fact; r:gives {(300 6) math:difference 294}]
    [ a r:Fact; r:gives {(294 15) math:sum 309}]
    [ a r:Fact; r:gives {(309 30) math:remainder 9}]
    [ a r:Fact; r:gives {(29 4) math:integerQuotient 7}]
    [ a r:Fact; r:gives {(29 4) math:remainder 1}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 7) math:product 14}]
    [ a r:Fact; r:gives {9 math:negation -9}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {(32 0 14 -9 -1) math:sum 36}]
    [ a r:Fact; r:gives {(36 7) math:remainder 1}]
    [ a r:Fact; r:gives {(11 9) math:product 99}]
    [ a r:Fact; r:gives {(22 1) math:product 22}]
    [ a r:Fact; r:gives {(15 99 22) math:sum 136}]
    [ a r:Fact; r:gives {(136 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(9 1 0 114) math:sum 124}]
    [ a r:Fact; r:gives {(124 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(124 31) math:remainder 0}]
    [ a r:Fact; r:gives {(0 1) math:sum 1}]
  );
  r:rule <#lemma63>.

<#lemma41> a r:Inference;
  r:gives {
    (21 4) :easterFor 2030 .
  };
  r:evidence (
    <#lemma72>
    [ a r:Fact; r:gives {(2030 19) math:remainder 16}]
    [ a r:Fact; r:gives {(2030 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2030 100) math:remainder 30}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 16) math:product 304}]
    [ a r:Fact; r:gives {(304 20) math:sum 324}]
    [ a r:Fact; r:gives {(324 5) math:difference 319}]
    [ a r:Fact; r:gives {(319 6) math:difference 313}]
    [ a r:Fact; r:gives {(313 15) math:sum 328}]
    [ a r:Fact; r:gives {(328 30) math:remainder 28}]
    [ a r:Fact; r:gives {(30 4) math:integerQuotient 7}]
    [ a r:Fact; r:gives {(30 4) math:remainder 2}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 7) math:product 14}]
    [ a r:Fact; r:gives {28 math:negation -28}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {(32 0 14 -28 -2) math:sum 16}]
    [ a r:Fact; r:gives {(16 7) math:remainder 2}]
    [ a r:Fact; r:gives {(11 28) math:product 308}]
    [ a r:Fact; r:gives {(22 2) math:product 44}]
    [ a r:Fact; r:gives {(16 308 44) math:sum 368}]
    [ a r:Fact; r:gives {(368 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(28 2 0 114) math:sum 144}]
    [ a r:Fact; r:gives {(144 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(144 31) math:remainder 20}]
    [ a r:Fact; r:gives {(20 1) math:sum 21}]
  );
  r:rule <#lemma63>.

<#lemma42> a r:Inference;
  r:gives {
    (13 4) :easterFor 2031 .
  };
  r:evidence (
    <#lemma73>
    [ a r:Fact; r:gives {(2031 19) math:remainder 17}]
    [ a r:Fact; r:gives {(2031 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2031 100) math:remainder 31}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 17) math:product 323}]
    [ a r:Fact; r:gives {(323 20) math:sum 343}]
    [ a r:Fact; r:gives {(343 5) math:difference 338}]
    [ a r:Fact; r:gives {(338 6) math:difference 332}]
    [ a r:Fact; r:gives {(332 15) math:sum 347}]
    [ a r:Fact; r:gives {(347 30) math:remainder 17}]
    [ a r:Fact; r:gives {(31 4) math:integerQuotient 7}]
    [ a r:Fact; r:gives {(31 4) math:remainder 3}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 7) math:product 14}]
    [ a r:Fact; r:gives {17 math:negation -17}]
    [ a r:Fact; r:gives {3 math:negation -3}]
    [ a r:Fact; r:gives {(32 0 14 -17 -3) math:sum 26}]
    [ a r:Fact; r:gives {(26 7) math:remainder 5}]
    [ a r:Fact; r:gives {(11 17) math:product 187}]
    [ a r:Fact; r:gives {(22 5) math:product 110}]
    [ a r:Fact; r:gives {(17 187 110) math:sum 314}]
    [ a r:Fact; r:gives {(314 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(17 5 0 114) math:sum 136}]
    [ a r:Fact; r:gives {(136 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(136 31) math:remainder 12}]
    [ a r:Fact; r:gives {(12 1) math:sum 13}]
  );
  r:rule <#lemma63>.

<#lemma43> a r:Inference;
  r:gives {
    (28 3) :easterFor 2032 .
  };
  r:evidence (
    <#lemma74>
    [ a r:Fact; r:gives {(2032 19) math:remainder 18}]
    [ a r:Fact; r:gives {(2032 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2032 100) math:remainder 32}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 18) math:product 342}]
    [ a r:Fact; r:gives {(342 20) math:sum 362}]
    [ a r:Fact; r:gives {(362 5) math:difference 357}]
    [ a r:Fact; r:gives {(357 6) math:difference 351}]
    [ a r:Fact; r:gives {(351 15) math:sum 366}]
    [ a r:Fact; r:gives {(366 30) math:remainder 6}]
    [ a r:Fact; r:gives {(32 4) math:integerQuotient 8}]
    [ a r:Fact; r:gives {(32 4) math:remainder 0}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 8) math:product 16}]
    [ a r:Fact; r:gives {6 math:negation -6}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(32 0 16 -6 0) math:sum 42}]
    [ a r:Fact; r:gives {(42 7) math:remainder 0}]
    [ a r:Fact; r:gives {(11 6) math:product 66}]
    [ a r:Fact; r:gives {(22 0) math:product 0}]
    [ a r:Fact; r:gives {(18 66 0) math:sum 84}]
    [ a r:Fact; r:gives {(84 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(6 0 0 114) math:sum 120}]
    [ a r:Fact; r:gives {(120 31) math:integerQuotient 3}]
    [ a r:Fact; r:gives {(120 31) math:remainder 27}]
    [ a r:Fact; r:gives {(27 1) math:sum 28}]
  );
  r:rule <#lemma63>.

<#lemma44> a r:Inference;
  r:gives {
    (17 4) :easterFor 2033 .
  };
  r:evidence (
    <#lemma75>
    [ a r:Fact; r:gives {(2033 19) math:remainder 0}]
    [ a r:Fact; r:gives {(2033 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2033 100) math:remainder 33}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 0) math:product 0}]
    [ a r:Fact; r:gives {(0 20) math:sum 20}]
    [ a r:Fact; r:gives {(20 5) math:difference 15}]
    [ a r:Fact; r:gives {(15 6) math:difference 9}]
    [ a r:Fact; r:gives {(9 15) math:sum 24}]
    [ a r:Fact; r:gives {(24 30) math:remainder 24}]
    [ a r:Fact; r:gives {(33 4) math:integerQuotient 8}]
    [ a r:Fact; r:gives {(33 4) math:remainder 1}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 8) math:product 16}]
    [ a r:Fact; r:gives {24 math:negation -24}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {(32 0 16 -24 -1) math:sum 23}]
    [ a r:Fact; r:gives {(23 7) math:remainder 2}]
    [ a r:Fact; r:gives {(11 24) math:product 264}]
    [ a r:Fact; r:gives {(22 2) math:product 44}]
    [ a r:Fact; r:gives {(0 264 44) math:sum 308}]
    [ a r:Fact; r:gives {(308 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(24 2 0 114) math:sum 140}]
    [ a r:Fact; r:gives {(140 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(140 31) math:remainder 16}]
    [ a r:Fact; r:gives {(16 1) math:sum 17}]
  );
  r:rule <#lemma63>.

<#lemma45> a r:Inference;
  r:gives {
    (9 4) :easterFor 2034 .
  };
  r:evidence (
    <#lemma76>
    [ a r:Fact; r:gives {(2034 19) math:remainder 1}]
    [ a r:Fact; r:gives {(2034 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2034 100) math:remainder 34}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 1) math:product 19}]
    [ a r:Fact; r:gives {(19 20) math:sum 39}]
    [ a r:Fact; r:gives {(39 5) math:difference 34}]
    [ a r:Fact; r:gives {(34 6) math:difference 28}]
    [ a r:Fact; r:gives {(28 15) math:sum 43}]
    [ a r:Fact; r:gives {(43 30) math:remainder 13}]
    [ a r:Fact; r:gives {(34 4) math:integerQuotient 8}]
    [ a r:Fact; r:gives {(34 4) math:remainder 2}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 8) math:product 16}]
    [ a r:Fact; r:gives {13 math:negation -13}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {(32 0 16 -13 -2) math:sum 33}]
    [ a r:Fact; r:gives {(33 7) math:remainder 5}]
    [ a r:Fact; r:gives {(11 13) math:product 143}]
    [ a r:Fact; r:gives {(22 5) math:product 110}]
    [ a r:Fact; r:gives {(1 143 110) math:sum 254}]
    [ a r:Fact; r:gives {(254 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(13 5 0 114) math:sum 132}]
    [ a r:Fact; r:gives {(132 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(132 31) math:remainder 8}]
    [ a r:Fact; r:gives {(8 1) math:sum 9}]
  );
  r:rule <#lemma63>.

<#lemma46> a r:Inference;
  r:gives {
    (25 3) :easterFor 2035 .
  };
  r:evidence (
    <#lemma77>
    [ a r:Fact; r:gives {(2035 19) math:remainder 2}]
    [ a r:Fact; r:gives {(2035 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2035 100) math:remainder 35}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 2) math:product 38}]
    [ a r:Fact; r:gives {(38 20) math:sum 58}]
    [ a r:Fact; r:gives {(58 5) math:difference 53}]
    [ a r:Fact; r:gives {(53 6) math:difference 47}]
    [ a r:Fact; r:gives {(47 15) math:sum 62}]
    [ a r:Fact; r:gives {(62 30) math:remainder 2}]
    [ a r:Fact; r:gives {(35 4) math:integerQuotient 8}]
    [ a r:Fact; r:gives {(35 4) math:remainder 3}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 8) math:product 16}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {3 math:negation -3}]
    [ a r:Fact; r:gives {(32 0 16 -2 -3) math:sum 43}]
    [ a r:Fact; r:gives {(43 7) math:remainder 1}]
    [ a r:Fact; r:gives {(11 2) math:product 22}]
    [ a r:Fact; r:gives {(22 1) math:product 22}]
    [ a r:Fact; r:gives {(2 22 22) math:sum 46}]
    [ a r:Fact; r:gives {(46 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(2 1 0 114) math:sum 117}]
    [ a r:Fact; r:gives {(117 31) math:integerQuotient 3}]
    [ a r:Fact; r:gives {(117 31) math:remainder 24}]
    [ a r:Fact; r:gives {(24 1) math:sum 25}]
  );
  r:rule <#lemma63>.

<#lemma47> a r:Inference;
  r:gives {
    (13 4) :easterFor 2036 .
  };
  r:evidence (
    <#lemma78>
    [ a r:Fact; r:gives {(2036 19) math:remainder 3}]
    [ a r:Fact; r:gives {(2036 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2036 100) math:remainder 36}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 3) math:product 57}]
    [ a r:Fact; r:gives {(57 20) math:sum 77}]
    [ a r:Fact; r:gives {(77 5) math:difference 72}]
    [ a r:Fact; r:gives {(72 6) math:difference 66}]
    [ a r:Fact; r:gives {(66 15) math:sum 81}]
    [ a r:Fact; r:gives {(81 30) math:remainder 21}]
    [ a r:Fact; r:gives {(36 4) math:integerQuotient 9}]
    [ a r:Fact; r:gives {(36 4) math:remainder 0}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 9) math:product 18}]
    [ a r:Fact; r:gives {21 math:negation -21}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(32 0 18 -21 0) math:sum 29}]
    [ a r:Fact; r:gives {(29 7) math:remainder 1}]
    [ a r:Fact; r:gives {(11 21) math:product 231}]
    [ a r:Fact; r:gives {(22 1) math:product 22}]
    [ a r:Fact; r:gives {(3 231 22) math:sum 256}]
    [ a r:Fact; r:gives {(256 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(21 1 0 114) math:sum 136}]
    [ a r:Fact; r:gives {(136 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(136 31) math:remainder 12}]
    [ a r:Fact; r:gives {(12 1) math:sum 13}]
  );
  r:rule <#lemma63>.

<#lemma48> a r:Inference;
  r:gives {
    (5 4) :easterFor 2037 .
  };
  r:evidence (
    <#lemma79>
    [ a r:Fact; r:gives {(2037 19) math:remainder 4}]
    [ a r:Fact; r:gives {(2037 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2037 100) math:remainder 37}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 4) math:product 76}]
    [ a r:Fact; r:gives {(76 20) math:sum 96}]
    [ a r:Fact; r:gives {(96 5) math:difference 91}]
    [ a r:Fact; r:gives {(91 6) math:difference 85}]
    [ a r:Fact; r:gives {(85 15) math:sum 100}]
    [ a r:Fact; r:gives {(100 30) math:remainder 10}]
    [ a r:Fact; r:gives {(37 4) math:integerQuotient 9}]
    [ a r:Fact; r:gives {(37 4) math:remainder 1}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 9) math:product 18}]
    [ a r:Fact; r:gives {10 math:negation -10}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {(32 0 18 -10 -1) math:sum 39}]
    [ a r:Fact; r:gives {(39 7) math:remainder 4}]
    [ a r:Fact; r:gives {(11 10) math:product 110}]
    [ a r:Fact; r:gives {(22 4) math:product 88}]
    [ a r:Fact; r:gives {(4 110 88) math:sum 202}]
    [ a r:Fact; r:gives {(202 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(10 4 0 114) math:sum 128}]
    [ a r:Fact; r:gives {(128 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(128 31) math:remainder 4}]
    [ a r:Fact; r:gives {(4 1) math:sum 5}]
  );
  r:rule <#lemma63>.

<#lemma49> a r:Inference;
  r:gives {
    (25 4) :easterFor 2038 .
  };
  r:evidence (
    <#lemma80>
    [ a r:Fact; r:gives {(2038 19) math:remainder 5}]
    [ a r:Fact; r:gives {(2038 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2038 100) math:remainder 38}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 5) math:product 95}]
    [ a r:Fact; r:gives {(95 20) math:sum 115}]
    [ a r:Fact; r:gives {(115 5) math:difference 110}]
    [ a r:Fact; r:gives {(110 6) math:difference 104}]
    [ a r:Fact; r:gives {(104 15) math:sum 119}]
    [ a r:Fact; r:gives {(119 30) math:remainder 29}]
    [ a r:Fact; r:gives {(38 4) math:integerQuotient 9}]
    [ a r:Fact; r:gives {(38 4) math:remainder 2}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 9) math:product 18}]
    [ a r:Fact; r:gives {29 math:negation -29}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {(32 0 18 -29 -2) math:sum 19}]
    [ a r:Fact; r:gives {(19 7) math:remainder 5}]
    [ a r:Fact; r:gives {(11 29) math:product 319}]
    [ a r:Fact; r:gives {(22 5) math:product 110}]
    [ a r:Fact; r:gives {(5 319 110) math:sum 434}]
    [ a r:Fact; r:gives {(434 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(29 5 0 114) math:sum 148}]
    [ a r:Fact; r:gives {(148 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(148 31) math:remainder 24}]
    [ a r:Fact; r:gives {(24 1) math:sum 25}]
  );
  r:rule <#lemma63>.

<#lemma50> a r:Inference;
  r:gives {
    (10 4) :easterFor 2039 .
  };
  r:evidence (
    <#lemma81>
    [ a r:Fact; r:gives {(2039 19) math:remainder 6}]
    [ a r:Fact; r:gives {(2039 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2039 100) math:remainder 39}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 6) math:product 114}]
    [ a r:Fact; r:gives {(114 20) math:sum 134}]
    [ a r:Fact; r:gives {(134 5) math:difference 129}]
    [ a r:Fact; r:gives {(129 6) math:difference 123}]
    [ a r:Fact; r:gives {(123 15) math:sum 138}]
    [ a r:Fact; r:gives {(138 30) math:remainder 18}]
    [ a r:Fact; r:gives {(39 4) math:integerQuotient 9}]
    [ a r:Fact; r:gives {(39 4) math:remainder 3}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 9) math:product 18}]
    [ a r:Fact; r:gives {18 math:negation -18}]
    [ a r:Fact; r:gives {3 math:negation -3}]
    [ a r:Fact; r:gives {(32 0 18 -18 -3) math:sum 29}]
    [ a r:Fact; r:gives {(29 7) math:remainder 1}]
    [ a r:Fact; r:gives {(11 18) math:product 198}]
    [ a r:Fact; r:gives {(22 1) math:product 22}]
    [ a r:Fact; r:gives {(6 198 22) math:sum 226}]
    [ a r:Fact; r:gives {(226 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(18 1 0 114) math:sum 133}]
    [ a r:Fact; r:gives {(133 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(133 31) math:remainder 9}]
    [ a r:Fact; r:gives {(9 1) math:sum 10}]
  );
  r:rule <#lemma63>.

<#lemma51> a r:Inference;
  r:gives {
    (1 4) :easterFor 2040 .
  };
  r:evidence (
    <#lemma82>
    [ a r:Fact; r:gives {(2040 19) math:remainder 7}]
    [ a r:Fact; r:gives {(2040 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2040 100) math:remainder 40}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 7) math:product 133}]
    [ a r:Fact; r:gives {(133 20) math:sum 153}]
    [ a r:Fact; r:gives {(153 5) math:difference 148}]
    [ a r:Fact; r:gives {(148 6) math:difference 142}]
    [ a r:Fact; r:gives {(142 15) math:sum 157}]
    [ a r:Fact; r:gives {(157 30) math:remainder 7}]
    [ a r:Fact; r:gives {(40 4) math:integerQuotient 10}]
    [ a r:Fact; r:gives {(40 4) math:remainder 0}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 10) math:product 20}]
    [ a r:Fact; r:gives {7 math:negation -7}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(32 0 20 -7 0) math:sum 45}]
    [ a r:Fact; r:gives {(45 7) math:remainder 3}]
    [ a r:Fact; r:gives {(11 7) math:product 77}]
    [ a r:Fact; r:gives {(22 3) math:product 66}]
    [ a r:Fact; r:gives {(7 77 66) math:sum 150}]
    [ a r:Fact; r:gives {(150 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(7 3 0 114) math:sum 124}]
    [ a r:Fact; r:gives {(124 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(124 31) math:remainder 0}]
    [ a r:Fact; r:gives {(0 1) math:sum 1}]
  );
  r:rule <#lemma63>.

<#lemma52> a r:Inference;
  r:gives {
    (21 4) :easterFor 2041 .
  };
  r:evidence (
    <#lemma83>
    [ a r:Fact; r:gives {(2041 19) math:remainder 8}]
    [ a r:Fact; r:gives {(2041 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2041 100) math:remainder 41}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 8) math:product 152}]
    [ a r:Fact; r:gives {(152 20) math:sum 172}]
    [ a r:Fact; r:gives {(172 5) math:difference 167}]
    [ a r:Fact; r:gives {(167 6) math:difference 161}]
    [ a r:Fact; r:gives {(161 15) math:sum 176}]
    [ a r:Fact; r:gives {(176 30) math:remainder 26}]
    [ a r:Fact; r:gives {(41 4) math:integerQuotient 10}]
    [ a r:Fact; r:gives {(41 4) math:remainder 1}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 10) math:product 20}]
    [ a r:Fact; r:gives {26 math:negation -26}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {(32 0 20 -26 -1) math:sum 25}]
    [ a r:Fact; r:gives {(25 7) math:remainder 4}]
    [ a r:Fact; r:gives {(11 26) math:product 286}]
    [ a r:Fact; r:gives {(22 4) math:product 88}]
    [ a r:Fact; r:gives {(8 286 88) math:sum 382}]
    [ a r:Fact; r:gives {(382 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(26 4 0 114) math:sum 144}]
    [ a r:Fact; r:gives {(144 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(144 31) math:remainder 20}]
    [ a r:Fact; r:gives {(20 1) math:sum 21}]
  );
  r:rule <#lemma63>.

<#lemma53> a r:Inference;
  r:gives {
    (6 4) :easterFor 2042 .
  };
  r:evidence (
    <#lemma84>
    [ a r:Fact; r:gives {(2042 19) math:remainder 9}]
    [ a r:Fact; r:gives {(2042 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2042 100) math:remainder 42}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 9) math:product 171}]
    [ a r:Fact; r:gives {(171 20) math:sum 191}]
    [ a r:Fact; r:gives {(191 5) math:difference 186}]
    [ a r:Fact; r:gives {(186 6) math:difference 180}]
    [ a r:Fact; r:gives {(180 15) math:sum 195}]
    [ a r:Fact; r:gives {(195 30) math:remainder 15}]
    [ a r:Fact; r:gives {(42 4) math:integerQuotient 10}]
    [ a r:Fact; r:gives {(42 4) math:remainder 2}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 10) math:product 20}]
    [ a r:Fact; r:gives {15 math:negation -15}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {(32 0 20 -15 -2) math:sum 35}]
    [ a r:Fact; r:gives {(35 7) math:remainder 0}]
    [ a r:Fact; r:gives {(11 15) math:product 165}]
    [ a r:Fact; r:gives {(22 0) math:product 0}]
    [ a r:Fact; r:gives {(9 165 0) math:sum 174}]
    [ a r:Fact; r:gives {(174 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(15 0 0 114) math:sum 129}]
    [ a r:Fact; r:gives {(129 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(129 31) math:remainder 5}]
    [ a r:Fact; r:gives {(5 1) math:sum 6}]
  );
  r:rule <#lemma63>.

<#lemma54> a r:Inference;
  r:gives {
    (29 3) :easterFor 2043 .
  };
  r:evidence (
    <#lemma85>
    [ a r:Fact; r:gives {(2043 19) math:remainder 10}]
    [ a r:Fact; r:gives {(2043 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2043 100) math:remainder 43}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 10) math:product 190}]
    [ a r:Fact; r:gives {(190 20) math:sum 210}]
    [ a r:Fact; r:gives {(210 5) math:difference 205}]
    [ a r:Fact; r:gives {(205 6) math:difference 199}]
    [ a r:Fact; r:gives {(199 15) math:sum 214}]
    [ a r:Fact; r:gives {(214 30) math:remainder 4}]
    [ a r:Fact; r:gives {(43 4) math:integerQuotient 10}]
    [ a r:Fact; r:gives {(43 4) math:remainder 3}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 10) math:product 20}]
    [ a r:Fact; r:gives {4 math:negation -4}]
    [ a r:Fact; r:gives {3 math:negation -3}]
    [ a r:Fact; r:gives {(32 0 20 -4 -3) math:sum 45}]
    [ a r:Fact; r:gives {(45 7) math:remainder 3}]
    [ a r:Fact; r:gives {(11 4) math:product 44}]
    [ a r:Fact; r:gives {(22 3) math:product 66}]
    [ a r:Fact; r:gives {(10 44 66) math:sum 120}]
    [ a r:Fact; r:gives {(120 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(4 3 0 114) math:sum 121}]
    [ a r:Fact; r:gives {(121 31) math:integerQuotient 3}]
    [ a r:Fact; r:gives {(121 31) math:remainder 28}]
    [ a r:Fact; r:gives {(28 1) math:sum 29}]
  );
  r:rule <#lemma63>.

<#lemma55> a r:Inference;
  r:gives {
    (17 4) :easterFor 2044 .
  };
  r:evidence (
    <#lemma86>
    [ a r:Fact; r:gives {(2044 19) math:remainder 11}]
    [ a r:Fact; r:gives {(2044 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2044 100) math:remainder 44}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 11) math:product 209}]
    [ a r:Fact; r:gives {(209 20) math:sum 229}]
    [ a r:Fact; r:gives {(229 5) math:difference 224}]
    [ a r:Fact; r:gives {(224 6) math:difference 218}]
    [ a r:Fact; r:gives {(218 15) math:sum 233}]
    [ a r:Fact; r:gives {(233 30) math:remainder 23}]
    [ a r:Fact; r:gives {(44 4) math:integerQuotient 11}]
    [ a r:Fact; r:gives {(44 4) math:remainder 0}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 11) math:product 22}]
    [ a r:Fact; r:gives {23 math:negation -23}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(32 0 22 -23 0) math:sum 31}]
    [ a r:Fact; r:gives {(31 7) math:remainder 3}]
    [ a r:Fact; r:gives {(11 23) math:product 253}]
    [ a r:Fact; r:gives {(22 3) math:product 66}]
    [ a r:Fact; r:gives {(11 253 66) math:sum 330}]
    [ a r:Fact; r:gives {(330 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(23 3 0 114) math:sum 140}]
    [ a r:Fact; r:gives {(140 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(140 31) math:remainder 16}]
    [ a r:Fact; r:gives {(16 1) math:sum 17}]
  );
  r:rule <#lemma63>.

<#lemma56> a r:Inference;
  r:gives {
    (9 4) :easterFor 2045 .
  };
  r:evidence (
    <#lemma87>
    [ a r:Fact; r:gives {(2045 19) math:remainder 12}]
    [ a r:Fact; r:gives {(2045 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2045 100) math:remainder 45}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 12) math:product 228}]
    [ a r:Fact; r:gives {(228 20) math:sum 248}]
    [ a r:Fact; r:gives {(248 5) math:difference 243}]
    [ a r:Fact; r:gives {(243 6) math:difference 237}]
    [ a r:Fact; r:gives {(237 15) math:sum 252}]
    [ a r:Fact; r:gives {(252 30) math:remainder 12}]
    [ a r:Fact; r:gives {(45 4) math:integerQuotient 11}]
    [ a r:Fact; r:gives {(45 4) math:remainder 1}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 11) math:product 22}]
    [ a r:Fact; r:gives {12 math:negation -12}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {(32 0 22 -12 -1) math:sum 41}]
    [ a r:Fact; r:gives {(41 7) math:remainder 6}]
    [ a r:Fact; r:gives {(11 12) math:product 132}]
    [ a r:Fact; r:gives {(22 6) math:product 132}]
    [ a r:Fact; r:gives {(12 132 132) math:sum 276}]
    [ a r:Fact; r:gives {(276 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(12 6 0 114) math:sum 132}]
    [ a r:Fact; r:gives {(132 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(132 31) math:remainder 8}]
    [ a r:Fact; r:gives {(8 1) math:sum 9}]
  );
  r:rule <#lemma63>.

<#lemma57> a r:Inference;
  r:gives {
    (25 3) :easterFor 2046 .
  };
  r:evidence (
    <#lemma88>
    [ a r:Fact; r:gives {(2046 19) math:remainder 13}]
    [ a r:Fact; r:gives {(2046 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2046 100) math:remainder 46}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 13) math:product 247}]
    [ a r:Fact; r:gives {(247 20) math:sum 267}]
    [ a r:Fact; r:gives {(267 5) math:difference 262}]
    [ a r:Fact; r:gives {(262 6) math:difference 256}]
    [ a r:Fact; r:gives {(256 15) math:sum 271}]
    [ a r:Fact; r:gives {(271 30) math:remainder 1}]
    [ a r:Fact; r:gives {(46 4) math:integerQuotient 11}]
    [ a r:Fact; r:gives {(46 4) math:remainder 2}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 11) math:product 22}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {(32 0 22 -1 -2) math:sum 51}]
    [ a r:Fact; r:gives {(51 7) math:remainder 2}]
    [ a r:Fact; r:gives {(11 1) math:product 11}]
    [ a r:Fact; r:gives {(22 2) math:product 44}]
    [ a r:Fact; r:gives {(13 11 44) math:sum 68}]
    [ a r:Fact; r:gives {(68 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(1 2 0 114) math:sum 117}]
    [ a r:Fact; r:gives {(117 31) math:integerQuotient 3}]
    [ a r:Fact; r:gives {(117 31) math:remainder 24}]
    [ a r:Fact; r:gives {(24 1) math:sum 25}]
  );
  r:rule <#lemma63>.

<#lemma58> a r:Inference;
  r:gives {
    (14 4) :easterFor 2047 .
  };
  r:evidence (
    <#lemma89>
    [ a r:Fact; r:gives {(2047 19) math:remainder 14}]
    [ a r:Fact; r:gives {(2047 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2047 100) math:remainder 47}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 14) math:product 266}]
    [ a r:Fact; r:gives {(266 20) math:sum 286}]
    [ a r:Fact; r:gives {(286 5) math:difference 281}]
    [ a r:Fact; r:gives {(281 6) math:difference 275}]
    [ a r:Fact; r:gives {(275 15) math:sum 290}]
    [ a r:Fact; r:gives {(290 30) math:remainder 20}]
    [ a r:Fact; r:gives {(47 4) math:integerQuotient 11}]
    [ a r:Fact; r:gives {(47 4) math:remainder 3}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 11) math:product 22}]
    [ a r:Fact; r:gives {20 math:negation -20}]
    [ a r:Fact; r:gives {3 math:negation -3}]
    [ a r:Fact; r:gives {(32 0 22 -20 -3) math:sum 31}]
    [ a r:Fact; r:gives {(31 7) math:remainder 3}]
    [ a r:Fact; r:gives {(11 20) math:product 220}]
    [ a r:Fact; r:gives {(22 3) math:product 66}]
    [ a r:Fact; r:gives {(14 220 66) math:sum 300}]
    [ a r:Fact; r:gives {(300 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(20 3 0 114) math:sum 137}]
    [ a r:Fact; r:gives {(137 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(137 31) math:remainder 13}]
    [ a r:Fact; r:gives {(13 1) math:sum 14}]
  );
  r:rule <#lemma63>.

<#lemma59> a r:Inference;
  r:gives {
    (5 4) :easterFor 2048 .
  };
  r:evidence (
    <#lemma90>
    [ a r:Fact; r:gives {(2048 19) math:remainder 15}]
    [ a r:Fact; r:gives {(2048 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2048 100) math:remainder 48}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 15) math:product 285}]
    [ a r:Fact; r:gives {(285 20) math:sum 305}]
    [ a r:Fact; r:gives {(305 5) math:difference 300}]
    [ a r:Fact; r:gives {(300 6) math:difference 294}]
    [ a r:Fact; r:gives {(294 15) math:sum 309}]
    [ a r:Fact; r:gives {(309 30) math:remainder 9}]
    [ a r:Fact; r:gives {(48 4) math:integerQuotient 12}]
    [ a r:Fact; r:gives {(48 4) math:remainder 0}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 12) math:product 24}]
    [ a r:Fact; r:gives {9 math:negation -9}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(32 0 24 -9 0) math:sum 47}]
    [ a r:Fact; r:gives {(47 7) math:remainder 5}]
    [ a r:Fact; r:gives {(11 9) math:product 99}]
    [ a r:Fact; r:gives {(22 5) math:product 110}]
    [ a r:Fact; r:gives {(15 99 110) math:sum 224}]
    [ a r:Fact; r:gives {(224 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(9 5 0 114) math:sum 128}]
    [ a r:Fact; r:gives {(128 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(128 31) math:remainder 4}]
    [ a r:Fact; r:gives {(4 1) math:sum 5}]
  );
  r:rule <#lemma63>.

<#lemma60> a r:Inference;
  r:gives {
    (18 4) :easterFor 2049 .
  };
  r:evidence (
    <#lemma91>
    [ a r:Fact; r:gives {(2049 19) math:remainder 16}]
    [ a r:Fact; r:gives {(2049 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2049 100) math:remainder 49}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 16) math:product 304}]
    [ a r:Fact; r:gives {(304 20) math:sum 324}]
    [ a r:Fact; r:gives {(324 5) math:difference 319}]
    [ a r:Fact; r:gives {(319 6) math:difference 313}]
    [ a r:Fact; r:gives {(313 15) math:sum 328}]
    [ a r:Fact; r:gives {(328 30) math:remainder 28}]
    [ a r:Fact; r:gives {(49 4) math:integerQuotient 12}]
    [ a r:Fact; r:gives {(49 4) math:remainder 1}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 12) math:product 24}]
    [ a r:Fact; r:gives {28 math:negation -28}]
    [ a r:Fact; r:gives {1 math:negation -1}]
    [ a r:Fact; r:gives {(32 0 24 -28 -1) math:sum 27}]
    [ a r:Fact; r:gives {(27 7) math:remainder 6}]
    [ a r:Fact; r:gives {(11 28) math:product 308}]
    [ a r:Fact; r:gives {(22 6) math:product 132}]
    [ a r:Fact; r:gives {(16 308 132) math:sum 456}]
    [ a r:Fact; r:gives {(456 451) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(7 1) math:product 7}]
    [ a r:Fact; r:gives {7 math:negation -7}]
    [ a r:Fact; r:gives {(28 6 -7 114) math:sum 141}]
    [ a r:Fact; r:gives {(141 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(141 31) math:remainder 17}]
    [ a r:Fact; r:gives {(17 1) math:sum 18}]
  );
  r:rule <#lemma63>.

<#lemma61> a r:Inference;
  r:gives {
    (10 4) :easterFor 2050 .
  };
  r:evidence (
    <#lemma92>
    [ a r:Fact; r:gives {(2050 19) math:remainder 17}]
    [ a r:Fact; r:gives {(2050 100) math:integerQuotient 20}]
    [ a r:Fact; r:gives {(2050 100) math:remainder 50}]
    [ a r:Fact; r:gives {(20 4) math:integerQuotient 5}]
    [ a r:Fact; r:gives {(20 4) math:remainder 0}]
    [ a r:Fact; r:gives {(20 8) math:sum 28}]
    [ a r:Fact; r:gives {(28 25) math:integerQuotient 1}]
    [ a r:Fact; r:gives {(20 1) math:difference 19}]
    [ a r:Fact; r:gives {(19 1) math:sum 20}]
    [ a r:Fact; r:gives {(20 3) math:integerQuotient 6}]
    [ a r:Fact; r:gives {(19 17) math:product 323}]
    [ a r:Fact; r:gives {(323 20) math:sum 343}]
    [ a r:Fact; r:gives {(343 5) math:difference 338}]
    [ a r:Fact; r:gives {(338 6) math:difference 332}]
    [ a r:Fact; r:gives {(332 15) math:sum 347}]
    [ a r:Fact; r:gives {(347 30) math:remainder 17}]
    [ a r:Fact; r:gives {(50 4) math:integerQuotient 12}]
    [ a r:Fact; r:gives {(50 4) math:remainder 2}]
    [ a r:Fact; r:gives {(2 0) math:product 0}]
    [ a r:Fact; r:gives {(2 12) math:product 24}]
    [ a r:Fact; r:gives {17 math:negation -17}]
    [ a r:Fact; r:gives {2 math:negation -2}]
    [ a r:Fact; r:gives {(32 0 24 -17 -2) math:sum 37}]
    [ a r:Fact; r:gives {(37 7) math:remainder 2}]
    [ a r:Fact; r:gives {(11 17) math:product 187}]
    [ a r:Fact; r:gives {(22 2) math:product 44}]
    [ a r:Fact; r:gives {(17 187 44) math:sum 248}]
    [ a r:Fact; r:gives {(248 451) math:integerQuotient 0}]
    [ a r:Fact; r:gives {(7 0) math:product 0}]
    [ a r:Fact; r:gives {0 math:negation 0}]
    [ a r:Fact; r:gives {(17 2 0 114) math:sum 133}]
    [ a r:Fact; r:gives {(133 31) math:integerQuotient 4}]
    [ a r:Fact; r:gives {(133 31) math:remainder 9}]
    [ a r:Fact; r:gives {(9 1) math:sum 10}]
  );
  r:rule <#lemma63>.

<#lemma62> a r:Extraction;
  r:gives {
    2021 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma63> a r:Extraction;
  r:gives {
    {?x_0_2 a :Year.
     (?x_0_2 19) math:remainder ?x_1_2.
     (?x_0_2 100) math:integerQuotient ?x_2_2.
     (?x_0_2 100) math:remainder ?x_3_2.
     (?x_2_2 4) math:integerQuotient ?x_4_2.
     (?x_2_2 4) math:remainder ?x_5_2.
     (?x_2_2 8) math:sum ?x_6_2.
     (?x_6_2 25) math:integerQuotient ?x_7_2.
     (?x_2_2 ?x_7_2) math:difference ?x_8_2.
     (?x_8_2 1) math:sum ?x_9_2.
     (?x_9_2 3) math:integerQuotient ?x_10_2.
     (19 ?x_1_2) math:product ?x_11_2.
     (?x_11_2 ?x_2_2) math:sum ?x_12_2.
     (?x_12_2 ?x_4_2) math:difference ?x_13_2.
     (?x_13_2 ?x_10_2) math:difference ?x_14_2.
     (?x_14_2 15) math:sum ?x_15_2.
     (?x_15_2 30) math:remainder ?x_16_2.
     (?x_3_2 4) math:integerQuotient ?x_17_2.
     (?x_3_2 4) math:remainder ?x_18_2.
     (2 ?x_5_2) math:product ?x_19_2.
     (2 ?x_17_2) math:product ?x_20_2.
     ?x_16_2 math:negation ?x_21_2.
     ?x_18_2 math:negation ?x_22_2.
     (32 ?x_19_2 ?x_20_2 ?x_21_2 ?x_22_2) math:sum ?x_23_2.
     (?x_23_2 7) math:remainder ?x_24_2.
     (11 ?x_16_2) math:product ?x_25_2.
     (22 ?x_24_2) math:product ?x_26_2.
     (?x_1_2 ?x_25_2 ?x_26_2) math:sum ?x_27_2.
     (?x_27_2 451) math:integerQuotient ?x_28_2.
     (7 ?x_28_2) math:product ?x_29_2.
     ?x_29_2 math:negation ?x_30_2.
     (?x_16_2 ?x_24_2 ?x_30_2 114) math:sum ?x_31_2.
     (?x_31_2 31) math:integerQuotient ?x_32_2.
     (?x_31_2 31) math:remainder ?x_33_2.
     (?x_33_2 1) math:sum ?x_34_2} => {(?x_34_2 ?x_32_2) :easterFor ?x_0_2}.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma64> a r:Extraction;
  r:gives {
    2022 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma65> a r:Extraction;
  r:gives {
    2023 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma66> a r:Extraction;
  r:gives {
    2024 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma67> a r:Extraction;
  r:gives {
    2025 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma68> a r:Extraction;
  r:gives {
    2026 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma69> a r:Extraction;
  r:gives {
    2027 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma70> a r:Extraction;
  r:gives {
    2028 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma71> a r:Extraction;
  r:gives {
    2029 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma72> a r:Extraction;
  r:gives {
    2030 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma73> a r:Extraction;
  r:gives {
    2031 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma74> a r:Extraction;
  r:gives {
    2032 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma75> a r:Extraction;
  r:gives {
    2033 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma76> a r:Extraction;
  r:gives {
    2034 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma77> a r:Extraction;
  r:gives {
    2035 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma78> a r:Extraction;
  r:gives {
    2036 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma79> a r:Extraction;
  r:gives {
    2037 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma80> a r:Extraction;
  r:gives {
    2038 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma81> a r:Extraction;
  r:gives {
    2039 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma82> a r:Extraction;
  r:gives {
    2040 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma83> a r:Extraction;
  r:gives {
    2041 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma84> a r:Extraction;
  r:gives {
    2042 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma85> a r:Extraction;
  r:gives {
    2043 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma86> a r:Extraction;
  r:gives {
    2044 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma87> a r:Extraction;
  r:gives {
    2045 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma88> a r:Extraction;
  r:gives {
    2046 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma89> a r:Extraction;
  r:gives {
    2047 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma90> a r:Extraction;
  r:gives {
    2048 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma91> a r:Extraction;
  r:gives {
    2049 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

<#lemma92> a r:Extraction;
  r:gives {
    2050 a :Year.
  };
  r:because [ a r:Parsing; r:source <http://josd.github.io/eye/reasoning/easter/easterP.n3>].

