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

Theorem cdleme22d 40928
Description: Part of proof of Lemma E in [Crawley] p. 113, 3rd paragraph, 9th line on p. 115. (Contributed by NM, 4-Dec-2012.)
Hypotheses
Ref Expression
cdleme22.l = (le‘𝐾)
cdleme22.j = (join‘𝐾)
cdleme22.m = (meet‘𝐾)
cdleme22.a 𝐴 = (Atoms‘𝐾)
cdleme22.h 𝐻 = (LHyp‘𝐾)
Assertion
Ref Expression
cdleme22d (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉 = ((𝑆 𝑇) 𝑊))

Proof of Theorem cdleme22d
StepHypRef Expression
1 simp3r 1215 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑆 (𝑇 𝑉))
2 simp1l 1210 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝐾 ∈ HL)
3 simp22l 1305 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑇𝐴)
4 simp23l 1307 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉𝐴)
5 cdleme22.l . . . . . . . 8 = (le‘𝐾)
6 cdleme22.j . . . . . . . 8 = (join‘𝐾)
7 cdleme22.a . . . . . . . 8 𝐴 = (Atoms‘𝐾)
85, 6, 7hlatlej1 39960 . . . . . . 7 ((𝐾 ∈ HL ∧ 𝑇𝐴𝑉𝐴) → 𝑇 (𝑇 𝑉))
92, 3, 4, 8syl3anc 1389 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑇 (𝑇 𝑉))
102hllatd 39949 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝐾 ∈ Lat)
11 simp21l 1303 . . . . . . . 8 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑆𝐴)
12 eqid 2761 . . . . . . . . 9 (Base‘𝐾) = (Base‘𝐾)
1312, 7atbase 39874 . . . . . . . 8 (𝑆𝐴𝑆 ∈ (Base‘𝐾))
1411, 13syl 17 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑆 ∈ (Base‘𝐾))
1512, 7atbase 39874 . . . . . . . 8 (𝑇𝐴𝑇 ∈ (Base‘𝐾))
163, 15syl 17 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑇 ∈ (Base‘𝐾))
1712, 6, 7hlatjcl 39952 . . . . . . . 8 ((𝐾 ∈ HL ∧ 𝑇𝐴𝑉𝐴) → (𝑇 𝑉) ∈ (Base‘𝐾))
182, 3, 4, 17syl3anc 1389 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑇 𝑉) ∈ (Base‘𝐾))
1912, 5, 6latjle12 18473 . . . . . . 7 ((𝐾 ∈ Lat ∧ (𝑆 ∈ (Base‘𝐾) ∧ 𝑇 ∈ (Base‘𝐾) ∧ (𝑇 𝑉) ∈ (Base‘𝐾))) → ((𝑆 (𝑇 𝑉) ∧ 𝑇 (𝑇 𝑉)) ↔ (𝑆 𝑇) (𝑇 𝑉)))
2010, 14, 16, 18, 19syl13anc 1390 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑆 (𝑇 𝑉) ∧ 𝑇 (𝑇 𝑉)) ↔ (𝑆 𝑇) (𝑇 𝑉)))
211, 9, 20mpbi2and 722 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑆 𝑇) (𝑇 𝑉))
2212, 6, 7hlatjcl 39952 . . . . . . 7 ((𝐾 ∈ HL ∧ 𝑆𝐴𝑇𝐴) → (𝑆 𝑇) ∈ (Base‘𝐾))
232, 11, 3, 22syl3anc 1389 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑆 𝑇) ∈ (Base‘𝐾))
24 simp1r 1211 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑊𝐻)
25 cdleme22.h . . . . . . . 8 𝐻 = (LHyp‘𝐾)
2612, 25lhpbase 40583 . . . . . . 7 (𝑊𝐻𝑊 ∈ (Base‘𝐾))
2724, 26syl 17 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑊 ∈ (Base‘𝐾))
28 cdleme22.m . . . . . . 7 = (meet‘𝐾)
2912, 5, 28latmlem1 18492 . . . . . 6 ((𝐾 ∈ Lat ∧ ((𝑆 𝑇) ∈ (Base‘𝐾) ∧ (𝑇 𝑉) ∈ (Base‘𝐾) ∧ 𝑊 ∈ (Base‘𝐾))) → ((𝑆 𝑇) (𝑇 𝑉) → ((𝑆 𝑇) 𝑊) ((𝑇 𝑉) 𝑊)))
3010, 23, 18, 27, 29syl13anc 1390 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑆 𝑇) (𝑇 𝑉) → ((𝑆 𝑇) 𝑊) ((𝑇 𝑉) 𝑊)))
3121, 30mpd 15 . . . 4 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑆 𝑇) 𝑊) ((𝑇 𝑉) 𝑊))
32 simp1 1148 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝐾 ∈ HL ∧ 𝑊𝐻))
33 simp22 1220 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑇𝐴 ∧ ¬ 𝑇 𝑊))
34 eqid 2761 . . . . . . . 8 (0.‘𝐾) = (0.‘𝐾)
355, 28, 34, 7, 25lhpmat 40615 . . . . . . 7 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) → (𝑇 𝑊) = (0.‘𝐾))
3632, 33, 35syl2anc 593 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑇 𝑊) = (0.‘𝐾))
3736oveq1d 7406 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑇 𝑊) 𝑉) = ((0.‘𝐾) 𝑉))
38 simp23r 1308 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉 𝑊)
3912, 5, 6, 28, 7atmod4i1 40451 . . . . . 6 ((𝐾 ∈ HL ∧ (𝑉𝐴𝑇 ∈ (Base‘𝐾) ∧ 𝑊 ∈ (Base‘𝐾)) ∧ 𝑉 𝑊) → ((𝑇 𝑊) 𝑉) = ((𝑇 𝑉) 𝑊))
402, 4, 16, 27, 38, 39syl131anc 1401 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑇 𝑊) 𝑉) = ((𝑇 𝑉) 𝑊))
41 hlol 39946 . . . . . . 7 (𝐾 ∈ HL → 𝐾 ∈ OL)
422, 41syl 17 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝐾 ∈ OL)
4312, 7atbase 39874 . . . . . . 7 (𝑉𝐴𝑉 ∈ (Base‘𝐾))
444, 43syl 17 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉 ∈ (Base‘𝐾))
4512, 6, 34olj02 39811 . . . . . 6 ((𝐾 ∈ OL ∧ 𝑉 ∈ (Base‘𝐾)) → ((0.‘𝐾) 𝑉) = 𝑉)
4642, 44, 45syl2anc 593 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((0.‘𝐾) 𝑉) = 𝑉)
4737, 40, 463eqtr3d 2804 . . . 4 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑇 𝑉) 𝑊) = 𝑉)
4831, 47breqtrd 5123 . . 3 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑆 𝑇) 𝑊) 𝑉)
49 hlatl 39945 . . . . 5 (𝐾 ∈ HL → 𝐾 ∈ AtLat)
502, 49syl 17 . . . 4 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝐾 ∈ AtLat)
51 simp21r 1304 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ¬ 𝑆 𝑊)
52 simp3l 1214 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑆𝑇)
535, 6, 28, 7, 25lhpat 40628 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴𝑆𝑇)) → ((𝑆 𝑇) 𝑊) ∈ 𝐴)
542, 24, 11, 51, 3, 52, 53syl222anc 1404 . . . 4 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑆 𝑇) 𝑊) ∈ 𝐴)
555, 7atcmp 39896 . . . 4 ((𝐾 ∈ AtLat ∧ ((𝑆 𝑇) 𝑊) ∈ 𝐴𝑉𝐴) → (((𝑆 𝑇) 𝑊) 𝑉 ↔ ((𝑆 𝑇) 𝑊) = 𝑉))
5650, 54, 4, 55syl3anc 1389 . . 3 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (((𝑆 𝑇) 𝑊) 𝑉 ↔ ((𝑆 𝑇) 𝑊) = 𝑉))
5748, 56mpbid 234 . 2 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑆 𝑇) 𝑊) = 𝑉)
5857eqcomd 2767 1 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉 = ((𝑆 𝑇) 𝑊))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 208  wa 399  w3a 1097   = wceq 1559  wcel 2141  wne 2956   class class class wbr 5097  cfv 6516  (class class class)co 7391  Basecbs 17236  lecple 17284  joincjn 18334  meetcmee 18335  0.cp0 18444  Latclat 18454  OLcol 39759  Atomscatm 39848  AtLatcal 39849  HLchlt 39935  LHypclh 40569
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1814  ax-4 1828  ax-5 1929  ax-6 1986  ax-7 2027  ax-8 2143  ax-9 2151  ax-10 2174  ax-11 2190  ax-12 2211  ax-ext 2733  ax-rep 5224  ax-sep 5243  ax-nul 5253  ax-pow 5319  ax-pr 5387  ax-un 7713
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-3an 1099  df-tru 1562  df-fal 1572  df-ex 1799  df-nf 1803  df-sb 2090  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3076  df-rex 3086  df-rmo 3366  df-reu 3367  df-rab 3414  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-nul 4284  df-if 4478  df-pw 4554  df-sn 4580  df-pr 4582  df-op 4586  df-uni 4863  df-iun 4948  df-iin 4949  df-br 5098  df-opab 5160  df-mpt 5179  df-id 5538  df-xp 5649  df-rel 5650  df-cnv 5651  df-co 5652  df-dm 5653  df-rn 5654  df-res 5655  df-ima 5656  df-iota 6472  df-fun 6518  df-fn 6519  df-f 6520  df-f1 6521  df-fo 6522  df-f1o 6523  df-fv 6524  df-riota 7348  df-ov 7394  df-oprab 7395  df-mpo 7396  df-1st 7965  df-2nd 7966  df-proset 18317  df-poset 18336  df-plt 18351  df-lub 18367  df-glb 18368  df-join 18369  df-meet 18370  df-p0 18446  df-p1 18447  df-lat 18455  df-clat 18522  df-oposet 39761  df-ol 39763  df-oml 39764  df-covers 39851  df-ats 39852  df-atl 39883  df-cvlat 39907  df-hlat 39936  df-psubsp 40088  df-pmap 40089  df-padd 40381  df-lhyp 40573
This theorem is referenced by:  cdleme22g  40933
  Copyright terms: Public domain W3C validator