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

Theorem cdleme22f 35951
Description: Part of proof of Lemma E in [Crawley] p. 113, 3rd paragraph, 6th and 7th lines on p. 115. 𝐹, 𝑁 represent f(t), ft(s) respectively. If s t v, then ft(s) f(t) v. (Contributed by NM, 6-Dec-2012.)
Hypotheses
Ref Expression
cdleme22.l = (le‘𝐾)
cdleme22.j = (join‘𝐾)
cdleme22.m = (meet‘𝐾)
cdleme22.a 𝐴 = (Atoms‘𝐾)
cdleme22.h 𝐻 = (LHyp‘𝐾)
cdleme22f.u 𝑈 = ((𝑃 𝑄) 𝑊)
cdleme22f.f 𝐹 = ((𝑇 𝑈) (𝑄 ((𝑃 𝑇) 𝑊)))
cdleme22f.n 𝑁 = ((𝑃 𝑄) (𝐹 ((𝑆 𝑇) 𝑊)))
Assertion
Ref Expression
cdleme22f ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑁 (𝐹 𝑉))

Proof of Theorem cdleme22f
StepHypRef Expression
1 cdleme22f.n . 2 𝑁 = ((𝑃 𝑄) (𝐹 ((𝑆 𝑇) 𝑊)))
2 simp11l 1192 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝐾 ∈ HL)
3 hllat 34968 . . . . 5 (𝐾 ∈ HL → 𝐾 ∈ Lat)
42, 3syl 17 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝐾 ∈ Lat)
5 simp12l 1194 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑃𝐴)
6 simp13l 1196 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑄𝐴)
7 eqid 2651 . . . . . 6 (Base‘𝐾) = (Base‘𝐾)
8 cdleme22.j . . . . . 6 = (join‘𝐾)
9 cdleme22.a . . . . . 6 𝐴 = (Atoms‘𝐾)
107, 8, 9hlatjcl 34971 . . . . 5 ((𝐾 ∈ HL ∧ 𝑃𝐴𝑄𝐴) → (𝑃 𝑄) ∈ (Base‘𝐾))
112, 5, 6, 10syl3anc 1366 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑃 𝑄) ∈ (Base‘𝐾))
12 simp11r 1193 . . . . . 6 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑊𝐻)
13 simp22 1115 . . . . . 6 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑇𝐴)
14 cdleme22.l . . . . . . 7 = (le‘𝐾)
15 cdleme22.m . . . . . . 7 = (meet‘𝐾)
16 cdleme22.h . . . . . . 7 𝐻 = (LHyp‘𝐾)
17 cdleme22f.u . . . . . . 7 𝑈 = ((𝑃 𝑄) 𝑊)
18 cdleme22f.f . . . . . . 7 𝐹 = ((𝑇 𝑈) (𝑄 ((𝑃 𝑇) 𝑊)))
1914, 8, 15, 9, 16, 17, 18, 7cdleme1b 35831 . . . . . 6 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴𝑄𝐴𝑇𝐴)) → 𝐹 ∈ (Base‘𝐾))
202, 12, 5, 6, 13, 19syl23anc 1373 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝐹 ∈ (Base‘𝐾))
21 simp21l 1198 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑆𝐴)
227, 8, 9hlatjcl 34971 . . . . . . 7 ((𝐾 ∈ HL ∧ 𝑆𝐴𝑇𝐴) → (𝑆 𝑇) ∈ (Base‘𝐾))
232, 21, 13, 22syl3anc 1366 . . . . . 6 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑆 𝑇) ∈ (Base‘𝐾))
247, 16lhpbase 35602 . . . . . . 7 (𝑊𝐻𝑊 ∈ (Base‘𝐾))
2512, 24syl 17 . . . . . 6 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑊 ∈ (Base‘𝐾))
267, 15latmcl 17099 . . . . . 6 ((𝐾 ∈ Lat ∧ (𝑆 𝑇) ∈ (Base‘𝐾) ∧ 𝑊 ∈ (Base‘𝐾)) → ((𝑆 𝑇) 𝑊) ∈ (Base‘𝐾))
274, 23, 25, 26syl3anc 1366 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑆 𝑇) 𝑊) ∈ (Base‘𝐾))
287, 8latjcl 17098 . . . . 5 ((𝐾 ∈ Lat ∧ 𝐹 ∈ (Base‘𝐾) ∧ ((𝑆 𝑇) 𝑊) ∈ (Base‘𝐾)) → (𝐹 ((𝑆 𝑇) 𝑊)) ∈ (Base‘𝐾))
294, 20, 27, 28syl3anc 1366 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝐹 ((𝑆 𝑇) 𝑊)) ∈ (Base‘𝐾))
307, 14, 15latmle2 17124 . . . 4 ((𝐾 ∈ Lat ∧ (𝑃 𝑄) ∈ (Base‘𝐾) ∧ (𝐹 ((𝑆 𝑇) 𝑊)) ∈ (Base‘𝐾)) → ((𝑃 𝑄) (𝐹 ((𝑆 𝑇) 𝑊))) (𝐹 ((𝑆 𝑇) 𝑊)))
314, 11, 29, 30syl3anc 1366 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑃 𝑄) (𝐹 ((𝑆 𝑇) 𝑊))) (𝐹 ((𝑆 𝑇) 𝑊)))
32 simp21 1114 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑆𝐴 ∧ ¬ 𝑆 𝑊))
33 simp3l 1109 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑆𝑇)
34 simp23l 1202 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉𝐴)
35 simp23r 1203 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉 𝑊)
36 simp3r 1110 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑆 (𝑇 𝑉))
378, 9hlatjcom 34972 . . . . . . . 8 ((𝐾 ∈ HL ∧ 𝑇𝐴𝑉𝐴) → (𝑇 𝑉) = (𝑉 𝑇))
382, 13, 34, 37syl3anc 1366 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑇 𝑉) = (𝑉 𝑇))
3936, 38breqtrd 4711 . . . . . 6 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑆 (𝑉 𝑇))
40 hlcvl 34964 . . . . . . . 8 (𝐾 ∈ HL → 𝐾 ∈ CvLat)
412, 40syl 17 . . . . . . 7 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝐾 ∈ CvLat)
4214, 8, 9cvlatexch2 34942 . . . . . . 7 ((𝐾 ∈ CvLat ∧ (𝑆𝐴𝑉𝐴𝑇𝐴) ∧ 𝑆𝑇) → (𝑆 (𝑉 𝑇) → 𝑉 (𝑆 𝑇)))
4341, 21, 34, 13, 33, 42syl131anc 1379 . . . . . 6 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝑆 (𝑉 𝑇) → 𝑉 (𝑆 𝑇)))
4439, 43mpd 15 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉 (𝑆 𝑇))
45 eqid 2651 . . . . . 6 ((𝑆 𝑇) 𝑊) = ((𝑆 𝑇) 𝑊)
4614, 8, 15, 9, 16, 45cdleme22aa 35944 . . . . 5 (((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴𝑆𝑇) ∧ (𝑉𝐴𝑉 𝑊𝑉 (𝑆 𝑇))) → 𝑉 = ((𝑆 𝑇) 𝑊))
472, 12, 32, 13, 33, 34, 35, 44, 46syl233anc 1395 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑉 = ((𝑆 𝑇) 𝑊))
4847oveq2d 6706 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → (𝐹 𝑉) = (𝐹 ((𝑆 𝑇) 𝑊)))
4931, 48breqtrrd 4713 . 2 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → ((𝑃 𝑄) (𝐹 ((𝑆 𝑇) 𝑊))) (𝐹 𝑉))
501, 49syl5eqbr 4720 1 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑆𝐴 ∧ ¬ 𝑆 𝑊) ∧ 𝑇𝐴 ∧ (𝑉𝐴𝑉 𝑊)) ∧ (𝑆𝑇𝑆 (𝑇 𝑉))) → 𝑁 (𝐹 𝑉))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 383  w3a 1054   = wceq 1523  wcel 2030  wne 2823   class class class wbr 4685  cfv 5926  (class class class)co 6690  Basecbs 15904  lecple 15995  joincjn 16991  meetcmee 16992  Latclat 17092  Atomscatm 34868  CvLatclc 34870  HLchlt 34955  LHypclh 35588
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-rep 4804  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ne 2824  df-ral 2946  df-rex 2947  df-reu 2948  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-op 4217  df-uni 4469  df-iun 4554  df-br 4686  df-opab 4746  df-mpt 4763  df-id 5053  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-iota 5889  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-fv 5934  df-riota 6651  df-ov 6693  df-oprab 6694  df-preset 16975  df-poset 16993  df-plt 17005  df-lub 17021  df-glb 17022  df-join 17023  df-meet 17024  df-p0 17086  df-p1 17087  df-lat 17093  df-clat 17155  df-oposet 34781  df-ol 34783  df-oml 34784  df-covers 34871  df-ats 34872  df-atl 34903  df-cvlat 34927  df-hlat 34956  df-lhyp 35592
This theorem is referenced by:  cdleme22f2  35952  cdleme26fALTN  35967  cdleme26f  35968
  Copyright terms: Public domain W3C validator