Mathbox for Norm Megill < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  cdlemeg46gfre Structured version   Visualization version   GIF version

Theorem cdlemeg46gfre 35339
 Description: TODO FIX COMMENT p. 116 penultimate line: g(f(r)) = r. (Contributed by NM, 4-Apr-2013.)
Hypotheses
Ref Expression
cdlemef46g.b 𝐵 = (Base‘𝐾)
cdlemef46g.l = (le‘𝐾)
cdlemef46g.j = (join‘𝐾)
cdlemef46g.m = (meet‘𝐾)
cdlemef46g.a 𝐴 = (Atoms‘𝐾)
cdlemef46g.h 𝐻 = (LHyp‘𝐾)
cdlemef46g.u 𝑈 = ((𝑃 𝑄) 𝑊)
cdlemef46g.d 𝐷 = ((𝑡 𝑈) (𝑄 ((𝑃 𝑡) 𝑊)))
cdlemefs46g.e 𝐸 = ((𝑃 𝑄) (𝐷 ((𝑠 𝑡) 𝑊)))
cdlemef46g.f 𝐹 = (𝑥𝐵 ↦ if((𝑃𝑄 ∧ ¬ 𝑥 𝑊), (𝑧𝐵𝑠𝐴 ((¬ 𝑠 𝑊 ∧ (𝑠 (𝑥 𝑊)) = 𝑥) → 𝑧 = (if(𝑠 (𝑃 𝑄), (𝑦𝐵𝑡𝐴 ((¬ 𝑡 𝑊 ∧ ¬ 𝑡 (𝑃 𝑄)) → 𝑦 = 𝐸)), 𝑠 / 𝑡𝐷) (𝑥 𝑊)))), 𝑥))
cdlemef46.v 𝑉 = ((𝑄 𝑃) 𝑊)
cdlemef46.n 𝑁 = ((𝑣 𝑉) (𝑃 ((𝑄 𝑣) 𝑊)))
cdlemefs46.o 𝑂 = ((𝑄 𝑃) (𝑁 ((𝑢 𝑣) 𝑊)))
cdlemef46.g 𝐺 = (𝑎𝐵 ↦ if((𝑄𝑃 ∧ ¬ 𝑎 𝑊), (𝑐𝐵𝑢𝐴 ((¬ 𝑢 𝑊 ∧ (𝑢 (𝑎 𝑊)) = 𝑎) → 𝑐 = (if(𝑢 (𝑄 𝑃), (𝑏𝐵𝑣𝐴 ((¬ 𝑣 𝑊 ∧ ¬ 𝑣 (𝑄 𝑃)) → 𝑏 = 𝑂)), 𝑢 / 𝑣𝑁) (𝑎 𝑊)))), 𝑎))
Assertion
Ref Expression
cdlemeg46gfre ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → (𝐺‘(𝐹𝑅)) = 𝑅)
Distinct variable groups:   𝑡,𝑠,𝑥,𝑦,𝑧,𝐴   𝐵,𝑠,𝑡,𝑥,𝑦,𝑧   𝐷,𝑠,𝑥,𝑦,𝑧   𝑥,𝐸,𝑦,𝑧   𝐻,𝑠,𝑡,𝑥,𝑦,𝑧   ,𝑠,𝑡,𝑥,𝑦,𝑧   𝐾,𝑠,𝑡,𝑥,𝑦,𝑧   ,𝑠,𝑡,𝑥,𝑦,𝑧   ,𝑠,𝑡,𝑥,𝑦,𝑧   𝑃,𝑠,𝑡,𝑥,𝑦,𝑧   𝑄,𝑠,𝑡,𝑥,𝑦,𝑧   𝑅,𝑠,𝑡,𝑥,𝑦,𝑧   𝑈,𝑠,𝑡,𝑥,𝑦,𝑧   𝑊,𝑠,𝑡,𝑥,𝑦,𝑧   𝑎,𝑏,𝑐,𝑢,𝑣,𝐴   𝐵,𝑎,𝑏,𝑐,𝑢,𝑣   𝑣,𝐷   𝐺,𝑠,𝑡,𝑥,𝑦,𝑧   𝐻,𝑎,𝑏,𝑐,𝑢,𝑣   ,𝑎,𝑏,𝑐,𝑢,𝑣   𝐾,𝑎,𝑏,𝑐,𝑢,𝑣   ,𝑎,𝑏,𝑐,𝑢,𝑣   ,𝑎,𝑏,𝑐,𝑢,𝑣   𝑁,𝑎,𝑏,𝑐   𝑂,𝑎,𝑏,𝑐   𝑃,𝑎,𝑏,𝑐,𝑢,𝑣   𝑄,𝑎,𝑏,𝑐,𝑢,𝑣   𝑅,𝑎,𝑏,𝑐,𝑢,𝑣   𝑉,𝑎,𝑏,𝑐   𝑊,𝑎,𝑏,𝑐,𝑢,𝑣,𝑥,𝑦,𝑧   𝑢,𝑁,𝑥,𝑦,𝑧   𝑥,𝑂,𝑦,𝑧   𝑣,𝑡   𝑢,𝑉   𝑥,𝑣,𝑦,𝑧,𝑉   𝐷,𝑎,𝑏,𝑐   𝐸,𝑎,𝑏,𝑐   𝐹,𝑎,𝑏,𝑐,𝑢,𝑣   𝑡,𝑁   𝑈,𝑎,𝑏,𝑐,𝑣   𝑡,𝑉   𝑠,𝑎,𝑡,𝑏,𝑐,𝑥,𝑦,𝑧,𝑢,𝑣
Allowed substitution hints:   𝐷(𝑢,𝑡)   𝑈(𝑢)   𝐸(𝑣,𝑢,𝑡,𝑠)   𝐹(𝑥,𝑦,𝑧,𝑡,𝑠)   𝐺(𝑣,𝑢,𝑎,𝑏,𝑐)   𝑁(𝑣,𝑠)   𝑂(𝑣,𝑢,𝑡,𝑠)   𝑉(𝑠)

Proof of Theorem cdlemeg46gfre
Dummy variable 𝑒 is distinct from all other variables.
StepHypRef Expression
1 simp11 1089 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → (𝐾 ∈ HL ∧ 𝑊𝐻))
2 simp12 1090 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → (𝑃𝐴 ∧ ¬ 𝑃 𝑊))
3 simp13 1091 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → (𝑄𝐴 ∧ ¬ 𝑄 𝑊))
4 simp2l 1085 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → 𝑃𝑄)
5 cdlemef46g.l . . . 4 = (le‘𝐾)
6 cdlemef46g.j . . . 4 = (join‘𝐾)
7 cdlemef46g.a . . . 4 𝐴 = (Atoms‘𝐾)
8 cdlemef46g.h . . . 4 𝐻 = (LHyp‘𝐾)
95, 6, 7, 8cdlemb2 34846 . . 3 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ 𝑃𝑄) → ∃𝑒𝐴𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))
101, 2, 3, 4, 9syl121anc 1328 . 2 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → ∃𝑒𝐴𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))
11 simp1 1059 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → ((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)))
12 simp2l 1085 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → 𝑃𝑄)
13 simp2r 1086 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → (𝑅𝐴 ∧ ¬ 𝑅 𝑊))
14 simp32 1096 . . . . . . . 8 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → 𝑒𝐴)
15 simp33l 1186 . . . . . . . 8 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → ¬ 𝑒 𝑊)
1614, 15jca 554 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → (𝑒𝐴 ∧ ¬ 𝑒 𝑊))
17 simp31 1095 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → 𝑅 (𝑃 𝑄))
18 simp33r 1187 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → ¬ 𝑒 (𝑃 𝑄))
19 cdlemef46g.b . . . . . . . 8 𝐵 = (Base‘𝐾)
20 cdlemef46g.m . . . . . . . 8 = (meet‘𝐾)
21 cdlemef46g.u . . . . . . . 8 𝑈 = ((𝑃 𝑄) 𝑊)
22 cdlemef46g.d . . . . . . . 8 𝐷 = ((𝑡 𝑈) (𝑄 ((𝑃 𝑡) 𝑊)))
23 cdlemefs46g.e . . . . . . . 8 𝐸 = ((𝑃 𝑄) (𝐷 ((𝑠 𝑡) 𝑊)))
24 cdlemef46g.f . . . . . . . 8 𝐹 = (𝑥𝐵 ↦ if((𝑃𝑄 ∧ ¬ 𝑥 𝑊), (𝑧𝐵𝑠𝐴 ((¬ 𝑠 𝑊 ∧ (𝑠 (𝑥 𝑊)) = 𝑥) → 𝑧 = (if(𝑠 (𝑃 𝑄), (𝑦𝐵𝑡𝐴 ((¬ 𝑡 𝑊 ∧ ¬ 𝑡 (𝑃 𝑄)) → 𝑦 = 𝐸)), 𝑠 / 𝑡𝐷) (𝑥 𝑊)))), 𝑥))
25 cdlemef46.v . . . . . . . 8 𝑉 = ((𝑄 𝑃) 𝑊)
26 cdlemef46.n . . . . . . . 8 𝑁 = ((𝑣 𝑉) (𝑃 ((𝑄 𝑣) 𝑊)))
27 cdlemefs46.o . . . . . . . 8 𝑂 = ((𝑄 𝑃) (𝑁 ((𝑢 𝑣) 𝑊)))
28 cdlemef46.g . . . . . . . 8 𝐺 = (𝑎𝐵 ↦ if((𝑄𝑃 ∧ ¬ 𝑎 𝑊), (𝑐𝐵𝑢𝐴 ((¬ 𝑢 𝑊 ∧ (𝑢 (𝑎 𝑊)) = 𝑎) → 𝑐 = (if(𝑢 (𝑄 𝑃), (𝑏𝐵𝑣𝐴 ((¬ 𝑣 𝑊 ∧ ¬ 𝑣 (𝑄 𝑃)) → 𝑏 = 𝑂)), 𝑢 / 𝑣𝑁) (𝑎 𝑊)))), 𝑎))
2919, 5, 6, 20, 7, 8, 21, 22, 23, 24, 25, 26, 27, 28cdlemeg46gfr 35338 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊) ∧ (𝑒𝐴 ∧ ¬ 𝑒 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ ¬ 𝑒 (𝑃 𝑄))) → (𝐺‘(𝐹𝑅)) = 𝑅)
3011, 12, 13, 16, 17, 18, 29syl132anc 1341 . . . . . 6 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ (𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)))) → (𝐺‘(𝐹𝑅)) = 𝑅)
31303expia 1264 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊))) → ((𝑅 (𝑃 𝑄) ∧ 𝑒𝐴 ∧ (¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄))) → (𝐺‘(𝐹𝑅)) = 𝑅))
32313expd 1281 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊))) → (𝑅 (𝑃 𝑄) → (𝑒𝐴 → ((¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)) → (𝐺‘(𝐹𝑅)) = 𝑅))))
33323impia 1258 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → (𝑒𝐴 → ((¬ 𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)) → (𝐺‘(𝐹𝑅)) = 𝑅)))
3433rexlimdv 3025 . 2 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → (∃𝑒𝐴𝑒 𝑊 ∧ ¬ 𝑒 (𝑃 𝑄)) → (𝐺‘(𝐹𝑅)) = 𝑅))
3510, 34mpd 15 1 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑃𝑄 ∧ (𝑅𝐴 ∧ ¬ 𝑅 𝑊)) ∧ 𝑅 (𝑃 𝑄)) → (𝐺‘(𝐹𝑅)) = 𝑅)
 Colors of variables: wff setvar class Syntax hints:  ¬ wn 3   → wi 4   ∧ wa 384   ∧ w3a 1036   = wceq 1480   ∈ wcel 1987   ≠ wne 2790  ∀wral 2908  ∃wrex 2909  ⦋csb 3519  ifcif 4064   class class class wbr 4623   ↦ cmpt 4683  ‘cfv 5857  ℩crio 6575  (class class class)co 6615  Basecbs 15800  lecple 15888  joincjn 16884  meetcmee 16885  Atomscatm 34069  HLchlt 34156  LHypclh 34789 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1836  ax-6 1885  ax-7 1932  ax-8 1989  ax-9 1996  ax-10 2016  ax-11 2031  ax-12 2044  ax-13 2245  ax-ext 2601  ax-rep 4741  ax-sep 4751  ax-nul 4759  ax-pow 4813  ax-pr 4877  ax-un 6914  ax-riotaBAD 33758 This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-tru 1483  df-ex 1702  df-nf 1707  df-sb 1878  df-eu 2473  df-mo 2474  df-clab 2608  df-cleq 2614  df-clel 2617  df-nfc 2750  df-ne 2791  df-nel 2894  df-ral 2913  df-rex 2914  df-reu 2915  df-rmo 2916  df-rab 2917  df-v 3192  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-nul 3898  df-if 4065  df-pw 4138  df-sn 4156  df-pr 4158  df-op 4162  df-uni 4410  df-iun 4494  df-iin 4495  df-br 4624  df-opab 4684  df-mpt 4685  df-id 4999  df-xp 5090  df-rel 5091  df-cnv 5092  df-co 5093  df-dm 5094  df-rn 5095  df-res 5096  df-ima 5097  df-iota 5820  df-fun 5859  df-fn 5860  df-f 5861  df-f1 5862  df-fo 5863  df-f1o 5864  df-fv 5865  df-riota 6576  df-ov 6618  df-oprab 6619  df-mpt2 6620  df-1st 7128  df-2nd 7129  df-undef 7359  df-preset 16868  df-poset 16886  df-plt 16898  df-lub 16914  df-glb 16915  df-join 16916  df-meet 16917  df-p0 16979  df-p1 16980  df-lat 16986  df-clat 17048  df-oposet 33982  df-ol 33984  df-oml 33985  df-covers 34072  df-ats 34073  df-atl 34104  df-cvlat 34128  df-hlat 34157  df-llines 34303  df-lplanes 34304  df-lvols 34305  df-lines 34306  df-psubsp 34308  df-pmap 34309  df-padd 34601  df-lhyp 34793 This theorem is referenced by:  cdlemeg46gf  35340
 Copyright terms: Public domain W3C validator