Users' Mathboxes Mathbox for Scott Fenton < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  madebday Structured version   Visualization version   GIF version

Theorem madebday 34007
Description: A surreal is part of the set made by ordinal 𝐴 iff its birthday is less than or equal to 𝐴. Remark in [Conway] p. 29. (Contributed by Scott Fenton, 19-Aug-2024.)
Assertion
Ref Expression
madebday ((𝐴 ∈ On ∧ 𝑋 No ) → (𝑋 ∈ ( M ‘𝐴) ↔ ( bday 𝑋) ⊆ 𝐴))

Proof of Theorem madebday
Dummy variables 𝑎 𝑏 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 madebdayim 33997 . 2 (𝑋 ∈ ( M ‘𝐴) → ( bday 𝑋) ⊆ 𝐴)
2 sseq2 3943 . . . . . . 7 (𝑎 = 𝑏 → (( bday 𝑥) ⊆ 𝑎 ↔ ( bday 𝑥) ⊆ 𝑏))
3 fveq2 6756 . . . . . . . 8 (𝑎 = 𝑏 → ( M ‘𝑎) = ( M ‘𝑏))
43eleq2d 2824 . . . . . . 7 (𝑎 = 𝑏 → (𝑥 ∈ ( M ‘𝑎) ↔ 𝑥 ∈ ( M ‘𝑏)))
52, 4imbi12d 344 . . . . . 6 (𝑎 = 𝑏 → ((( bday 𝑥) ⊆ 𝑎𝑥 ∈ ( M ‘𝑎)) ↔ (( bday 𝑥) ⊆ 𝑏𝑥 ∈ ( M ‘𝑏))))
65ralbidv 3120 . . . . 5 (𝑎 = 𝑏 → (∀𝑥 No (( bday 𝑥) ⊆ 𝑎𝑥 ∈ ( M ‘𝑎)) ↔ ∀𝑥 No (( bday 𝑥) ⊆ 𝑏𝑥 ∈ ( M ‘𝑏))))
7 fveq2 6756 . . . . . . . 8 (𝑥 = 𝑦 → ( bday 𝑥) = ( bday 𝑦))
87sseq1d 3948 . . . . . . 7 (𝑥 = 𝑦 → (( bday 𝑥) ⊆ 𝑏 ↔ ( bday 𝑦) ⊆ 𝑏))
9 eleq1 2826 . . . . . . 7 (𝑥 = 𝑦 → (𝑥 ∈ ( M ‘𝑏) ↔ 𝑦 ∈ ( M ‘𝑏)))
108, 9imbi12d 344 . . . . . 6 (𝑥 = 𝑦 → ((( bday 𝑥) ⊆ 𝑏𝑥 ∈ ( M ‘𝑏)) ↔ (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))))
1110cbvralvw 3372 . . . . 5 (∀𝑥 No (( bday 𝑥) ⊆ 𝑏𝑥 ∈ ( M ‘𝑏)) ↔ ∀𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)))
126, 11bitrdi 286 . . . 4 (𝑎 = 𝑏 → (∀𝑥 No (( bday 𝑥) ⊆ 𝑎𝑥 ∈ ( M ‘𝑎)) ↔ ∀𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))))
13 sseq2 3943 . . . . . 6 (𝑎 = 𝐴 → (( bday 𝑥) ⊆ 𝑎 ↔ ( bday 𝑥) ⊆ 𝐴))
14 fveq2 6756 . . . . . . 7 (𝑎 = 𝐴 → ( M ‘𝑎) = ( M ‘𝐴))
1514eleq2d 2824 . . . . . 6 (𝑎 = 𝐴 → (𝑥 ∈ ( M ‘𝑎) ↔ 𝑥 ∈ ( M ‘𝐴)))
1613, 15imbi12d 344 . . . . 5 (𝑎 = 𝐴 → ((( bday 𝑥) ⊆ 𝑎𝑥 ∈ ( M ‘𝑎)) ↔ (( bday 𝑥) ⊆ 𝐴𝑥 ∈ ( M ‘𝐴))))
1716ralbidv 3120 . . . 4 (𝑎 = 𝐴 → (∀𝑥 No (( bday 𝑥) ⊆ 𝑎𝑥 ∈ ( M ‘𝑎)) ↔ ∀𝑥 No (( bday 𝑥) ⊆ 𝐴𝑥 ∈ ( M ‘𝐴))))
18 bdayelon 33898 . . . . . . . . 9 ( bday 𝑥) ∈ On
19 onsseleq 6292 . . . . . . . . 9 ((( bday 𝑥) ∈ On ∧ 𝑎 ∈ On) → (( bday 𝑥) ⊆ 𝑎 ↔ (( bday 𝑥) ∈ 𝑎 ∨ ( bday 𝑥) = 𝑎)))
2018, 19mpan 686 . . . . . . . 8 (𝑎 ∈ On → (( bday 𝑥) ⊆ 𝑎 ↔ (( bday 𝑥) ∈ 𝑎 ∨ ( bday 𝑥) = 𝑎)))
2120ad2antrr 722 . . . . . . 7 (((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) → (( bday 𝑥) ⊆ 𝑎 ↔ (( bday 𝑥) ∈ 𝑎 ∨ ( bday 𝑥) = 𝑎)))
22 simpll 763 . . . . . . . . . . 11 (((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) → 𝑎 ∈ On)
23 onelss 6293 . . . . . . . . . . . . 13 (𝑎 ∈ On → (( bday 𝑥) ∈ 𝑎 → ( bday 𝑥) ⊆ 𝑎))
2423ad2antrr 722 . . . . . . . . . . . 12 (((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) → (( bday 𝑥) ∈ 𝑎 → ( bday 𝑥) ⊆ 𝑎))
2524imp 406 . . . . . . . . . . 11 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → ( bday 𝑥) ⊆ 𝑎)
26 madess 33986 . . . . . . . . . . 11 ((𝑎 ∈ On ∧ ( bday 𝑥) ⊆ 𝑎) → ( M ‘( bday 𝑥)) ⊆ ( M ‘𝑎))
2722, 25, 26syl2an2r 681 . . . . . . . . . 10 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → ( M ‘( bday 𝑥)) ⊆ ( M ‘𝑎))
28 ssid 3939 . . . . . . . . . . 11 ( bday 𝑥) ⊆ ( bday 𝑥)
29 simpr 484 . . . . . . . . . . . . 13 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → ( bday 𝑥) ∈ 𝑎)
30 simplr 765 . . . . . . . . . . . . 13 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → 𝑥 No )
3129, 30jca 511 . . . . . . . . . . . 12 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → (( bday 𝑥) ∈ 𝑎𝑥 No ))
32 simpllr 772 . . . . . . . . . . . 12 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)))
33 sseq2 3943 . . . . . . . . . . . . . 14 (𝑏 = ( bday 𝑥) → (( bday 𝑦) ⊆ 𝑏 ↔ ( bday 𝑦) ⊆ ( bday 𝑥)))
34 fveq2 6756 . . . . . . . . . . . . . . 15 (𝑏 = ( bday 𝑥) → ( M ‘𝑏) = ( M ‘( bday 𝑥)))
3534eleq2d 2824 . . . . . . . . . . . . . 14 (𝑏 = ( bday 𝑥) → (𝑦 ∈ ( M ‘𝑏) ↔ 𝑦 ∈ ( M ‘( bday 𝑥))))
3633, 35imbi12d 344 . . . . . . . . . . . . 13 (𝑏 = ( bday 𝑥) → ((( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ↔ (( bday 𝑦) ⊆ ( bday 𝑥) → 𝑦 ∈ ( M ‘( bday 𝑥)))))
37 fveq2 6756 . . . . . . . . . . . . . . 15 (𝑦 = 𝑥 → ( bday 𝑦) = ( bday 𝑥))
3837sseq1d 3948 . . . . . . . . . . . . . 14 (𝑦 = 𝑥 → (( bday 𝑦) ⊆ ( bday 𝑥) ↔ ( bday 𝑥) ⊆ ( bday 𝑥)))
39 eleq1 2826 . . . . . . . . . . . . . 14 (𝑦 = 𝑥 → (𝑦 ∈ ( M ‘( bday 𝑥)) ↔ 𝑥 ∈ ( M ‘( bday 𝑥))))
4038, 39imbi12d 344 . . . . . . . . . . . . 13 (𝑦 = 𝑥 → ((( bday 𝑦) ⊆ ( bday 𝑥) → 𝑦 ∈ ( M ‘( bday 𝑥))) ↔ (( bday 𝑥) ⊆ ( bday 𝑥) → 𝑥 ∈ ( M ‘( bday 𝑥)))))
4136, 40rspc2v 3562 . . . . . . . . . . . 12 ((( bday 𝑥) ∈ 𝑎𝑥 No ) → (∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) → (( bday 𝑥) ⊆ ( bday 𝑥) → 𝑥 ∈ ( M ‘( bday 𝑥)))))
4231, 32, 41sylc 65 . . . . . . . . . . 11 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → (( bday 𝑥) ⊆ ( bday 𝑥) → 𝑥 ∈ ( M ‘( bday 𝑥))))
4328, 42mpi 20 . . . . . . . . . 10 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → 𝑥 ∈ ( M ‘( bday 𝑥)))
4427, 43sseldd 3918 . . . . . . . . 9 ((((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) ∧ ( bday 𝑥) ∈ 𝑎) → 𝑥 ∈ ( M ‘𝑎))
4544ex 412 . . . . . . . 8 (((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) → (( bday 𝑥) ∈ 𝑎𝑥 ∈ ( M ‘𝑎)))
46 madebdaylemlrcut 34006 . . . . . . . . . . . 12 ((∀𝑏 ∈ ( bday 𝑥)∀𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No ) → (( L ‘𝑥) |s ( R ‘𝑥)) = 𝑥)
4718a1i 11 . . . . . . . . . . . . . 14 (𝑥 No → ( bday 𝑥) ∈ On)
48 lltropt 33983 . . . . . . . . . . . . . 14 (𝑥 No → ( L ‘𝑥) <<s ( R ‘𝑥))
49 leftssold 33988 . . . . . . . . . . . . . . 15 ( L ‘𝑥) ⊆ ( O ‘( bday 𝑥))
5049a1i 11 . . . . . . . . . . . . . 14 (𝑥 No → ( L ‘𝑥) ⊆ ( O ‘( bday 𝑥)))
51 rightssold 33989 . . . . . . . . . . . . . . 15 ( R ‘𝑥) ⊆ ( O ‘( bday 𝑥))
5251a1i 11 . . . . . . . . . . . . . 14 (𝑥 No → ( R ‘𝑥) ⊆ ( O ‘( bday 𝑥)))
53 madecut 33992 . . . . . . . . . . . . . 14 (((( bday 𝑥) ∈ On ∧ ( L ‘𝑥) <<s ( R ‘𝑥)) ∧ (( L ‘𝑥) ⊆ ( O ‘( bday 𝑥)) ∧ ( R ‘𝑥) ⊆ ( O ‘( bday 𝑥)))) → (( L ‘𝑥) |s ( R ‘𝑥)) ∈ ( M ‘( bday 𝑥)))
5447, 48, 50, 52, 53syl22anc 835 . . . . . . . . . . . . 13 (𝑥 No → (( L ‘𝑥) |s ( R ‘𝑥)) ∈ ( M ‘( bday 𝑥)))
5554adantl 481 . . . . . . . . . . . 12 ((∀𝑏 ∈ ( bday 𝑥)∀𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No ) → (( L ‘𝑥) |s ( R ‘𝑥)) ∈ ( M ‘( bday 𝑥)))
5646, 55eqeltrrd 2840 . . . . . . . . . . 11 ((∀𝑏 ∈ ( bday 𝑥)∀𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No ) → 𝑥 ∈ ( M ‘( bday 𝑥)))
57 raleq 3333 . . . . . . . . . . . . 13 (( bday 𝑥) = 𝑎 → (∀𝑏 ∈ ( bday 𝑥)∀𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ↔ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))))
5857anbi1d 629 . . . . . . . . . . . 12 (( bday 𝑥) = 𝑎 → ((∀𝑏 ∈ ( bday 𝑥)∀𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No ) ↔ (∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No )))
59 fveq2 6756 . . . . . . . . . . . . 13 (( bday 𝑥) = 𝑎 → ( M ‘( bday 𝑥)) = ( M ‘𝑎))
6059eleq2d 2824 . . . . . . . . . . . 12 (( bday 𝑥) = 𝑎 → (𝑥 ∈ ( M ‘( bday 𝑥)) ↔ 𝑥 ∈ ( M ‘𝑎)))
6158, 60imbi12d 344 . . . . . . . . . . 11 (( bday 𝑥) = 𝑎 → (((∀𝑏 ∈ ( bday 𝑥)∀𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No ) → 𝑥 ∈ ( M ‘( bday 𝑥))) ↔ ((∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No ) → 𝑥 ∈ ( M ‘𝑎))))
6256, 61mpbii 232 . . . . . . . . . 10 (( bday 𝑥) = 𝑎 → ((∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No ) → 𝑥 ∈ ( M ‘𝑎)))
6362com12 32 . . . . . . . . 9 ((∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) ∧ 𝑥 No ) → (( bday 𝑥) = 𝑎𝑥 ∈ ( M ‘𝑎)))
6463adantll 710 . . . . . . . 8 (((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) → (( bday 𝑥) = 𝑎𝑥 ∈ ( M ‘𝑎)))
6545, 64jaod 855 . . . . . . 7 (((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) → ((( bday 𝑥) ∈ 𝑎 ∨ ( bday 𝑥) = 𝑎) → 𝑥 ∈ ( M ‘𝑎)))
6621, 65sylbid 239 . . . . . 6 (((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) ∧ 𝑥 No ) → (( bday 𝑥) ⊆ 𝑎𝑥 ∈ ( M ‘𝑎)))
6766ralrimiva 3107 . . . . 5 ((𝑎 ∈ On ∧ ∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏))) → ∀𝑥 No (( bday 𝑥) ⊆ 𝑎𝑥 ∈ ( M ‘𝑎)))
6867ex 412 . . . 4 (𝑎 ∈ On → (∀𝑏𝑎𝑦 No (( bday 𝑦) ⊆ 𝑏𝑦 ∈ ( M ‘𝑏)) → ∀𝑥 No (( bday 𝑥) ⊆ 𝑎𝑥 ∈ ( M ‘𝑎))))
6912, 17, 68tfis3 7679 . . 3 (𝐴 ∈ On → ∀𝑥 No (( bday 𝑥) ⊆ 𝐴𝑥 ∈ ( M ‘𝐴)))
70 fveq2 6756 . . . . . 6 (𝑥 = 𝑋 → ( bday 𝑥) = ( bday 𝑋))
7170sseq1d 3948 . . . . 5 (𝑥 = 𝑋 → (( bday 𝑥) ⊆ 𝐴 ↔ ( bday 𝑋) ⊆ 𝐴))
72 eleq1 2826 . . . . 5 (𝑥 = 𝑋 → (𝑥 ∈ ( M ‘𝐴) ↔ 𝑋 ∈ ( M ‘𝐴)))
7371, 72imbi12d 344 . . . 4 (𝑥 = 𝑋 → ((( bday 𝑥) ⊆ 𝐴𝑥 ∈ ( M ‘𝐴)) ↔ (( bday 𝑋) ⊆ 𝐴𝑋 ∈ ( M ‘𝐴))))
7473rspccva 3551 . . 3 ((∀𝑥 No (( bday 𝑥) ⊆ 𝐴𝑥 ∈ ( M ‘𝐴)) ∧ 𝑋 No ) → (( bday 𝑋) ⊆ 𝐴𝑋 ∈ ( M ‘𝐴)))
7569, 74sylan 579 . 2 ((𝐴 ∈ On ∧ 𝑋 No ) → (( bday 𝑋) ⊆ 𝐴𝑋 ∈ ( M ‘𝐴)))
761, 75impbid2 225 1 ((𝐴 ∈ On ∧ 𝑋 No ) → (𝑋 ∈ ( M ‘𝐴) ↔ ( bday 𝑋) ⊆ 𝐴))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 395  wo 843   = wceq 1539  wcel 2108  wral 3063  wss 3883   class class class wbr 5070  Oncon0 6251  cfv 6418  (class class class)co 7255   No csur 33770   bday cbday 33772   <<s csslt 33902   |s cscut 33904   M cmade 33953   O cold 33954   L cleft 33956   R cright 33957
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2156  ax-12 2173  ax-ext 2709  ax-rep 5205  ax-sep 5218  ax-nul 5225  ax-pow 5283  ax-pr 5347  ax-un 7566
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-3or 1086  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1784  df-nf 1788  df-sb 2069  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2817  df-nfc 2888  df-ne 2943  df-ral 3068  df-rex 3069  df-reu 3070  df-rmo 3071  df-rab 3072  df-v 3424  df-sbc 3712  df-csb 3829  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3902  df-nul 4254  df-if 4457  df-pw 4532  df-sn 4559  df-pr 4561  df-tp 4563  df-op 4565  df-uni 4837  df-int 4877  df-iun 4923  df-br 5071  df-opab 5133  df-mpt 5154  df-tr 5188  df-id 5480  df-eprel 5486  df-po 5494  df-so 5495  df-fr 5535  df-we 5537  df-xp 5586  df-rel 5587  df-cnv 5588  df-co 5589  df-dm 5590  df-rn 5591  df-res 5592  df-ima 5593  df-pred 6191  df-ord 6254  df-on 6255  df-suc 6257  df-iota 6376  df-fun 6420  df-fn 6421  df-f 6422  df-f1 6423  df-fo 6424  df-f1o 6425  df-fv 6426  df-riota 7212  df-ov 7258  df-oprab 7259  df-mpo 7260  df-2nd 7805  df-frecs 8068  df-wrecs 8099  df-recs 8173  df-1o 8267  df-2o 8268  df-no 33773  df-slt 33774  df-bday 33775  df-sslt 33903  df-scut 33905  df-made 33958  df-old 33959  df-left 33961  df-right 33962
This theorem is referenced by:  oldbday  34008  newbday  34009  lrcut  34010
  Copyright terms: Public domain W3C validator