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

Theorem dochss 35318
Description: Subset law for orthocomplement. (Contributed by NM, 16-Apr-2014.)
Hypotheses
Ref Expression
dochss.h  |-  H  =  ( LHyp `  K
)
dochss.u  |-  U  =  ( ( DVecH `  K
) `  W )
dochss.v  |-  V  =  ( Base `  U
)
dochss.o  |-  ._|_  =  ( ( ocH `  K
) `  W )
Assertion
Ref Expression
dochss  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  (  ._|_  `  Y
)  C_  (  ._|_  `  X ) )

Proof of Theorem dochss
Dummy variable  z is distinct from all other variables.
StepHypRef Expression
1 simp1l 1012 . . . . . 6  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  K  e.  HL )
2 hlclat 33311 . . . . . 6  |-  ( K  e.  HL  ->  K  e.  CLat )
31, 2syl 16 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  K  e.  CLat )
4 ssrab2 3537 . . . . . 6  |-  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) }  C_  ( Base `  K
)
54a1i 11 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) }  C_  ( Base `  K
) )
6 simpll3 1029 . . . . . . . 8  |-  ( ( ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  /\  z  e.  ( Base `  K
) )  /\  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z )
)  ->  X  C_  Y
)
7 simpr 461 . . . . . . . 8  |-  ( ( ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  /\  z  e.  ( Base `  K
) )  /\  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z )
)  ->  Y  C_  (
( ( DIsoH `  K
) `  W ) `  z ) )
86, 7sstrd 3466 . . . . . . 7  |-  ( ( ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  /\  z  e.  ( Base `  K
) )  /\  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z )
)  ->  X  C_  (
( ( DIsoH `  K
) `  W ) `  z ) )
98ex 434 . . . . . 6  |-  ( ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  /\  z  e.  ( Base `  K
) )  ->  ( Y  C_  ( ( (
DIsoH `  K ) `  W ) `  z
)  ->  X  C_  (
( ( DIsoH `  K
) `  W ) `  z ) ) )
109ss2rabdv 3533 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) }  C_  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )
11 eqid 2451 . . . . . 6  |-  ( Base `  K )  =  (
Base `  K )
12 eqid 2451 . . . . . 6  |-  ( le
`  K )  =  ( le `  K
)
13 eqid 2451 . . . . . 6  |-  ( glb `  K )  =  ( glb `  K )
1411, 12, 13clatglbss 15401 . . . . 5  |-  ( ( K  e.  CLat  /\  {
z  e.  ( Base `  K )  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) }  C_  ( Base `  K
)  /\  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) }  C_  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  ->  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ( le
`  K ) ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) )
153, 5, 10, 14syl3anc 1219 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( glb `  K ) `  {
z  e.  ( Base `  K )  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ( le
`  K ) ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) )
16 hlop 33315 . . . . . 6  |-  ( K  e.  HL  ->  K  e.  OP )
171, 16syl 16 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  K  e.  OP )
1811, 13clatglbcl 15388 . . . . . 6  |-  ( ( K  e.  CLat  /\  {
z  e.  ( Base `  K )  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) }  C_  ( Base `  K
) )  ->  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  e.  (
Base `  K )
)
193, 4, 18sylancl 662 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( glb `  K ) `  {
z  e.  ( Base `  K )  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  e.  (
Base `  K )
)
20 ssrab2 3537 . . . . . 6  |-  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) }  C_  ( Base `  K
)
2111, 13clatglbcl 15388 . . . . . 6  |-  ( ( K  e.  CLat  /\  {
z  e.  ( Base `  K )  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) }  C_  ( Base `  K
) )  ->  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  e.  (
Base `  K )
)
223, 20, 21sylancl 662 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( glb `  K ) `  {
z  e.  ( Base `  K )  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  e.  (
Base `  K )
)
23 eqid 2451 . . . . . 6  |-  ( oc
`  K )  =  ( oc `  K
)
2411, 12, 23oplecon3b 33153 . . . . 5  |-  ( ( K  e.  OP  /\  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  e.  (
Base `  K )  /\  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  e.  (
Base `  K )
)  ->  ( (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ( le
`  K ) ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  <->  ( ( oc `  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ( le `  K ) ( ( oc `  K ) `  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ) )
2517, 19, 22, 24syl3anc 1219 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( ( glb `  K ) `
 { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ( le
`  K ) ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  <->  ( ( oc `  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ( le `  K ) ( ( oc `  K ) `  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ) )
2615, 25mpbid 210 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( oc
`  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ( le `  K ) ( ( oc `  K ) `  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) )
27 simp1 988 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( K  e.  HL  /\  W  e.  H ) )
2811, 23opoccl 33147 . . . . 5  |-  ( ( K  e.  OP  /\  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  e.  (
Base `  K )
)  ->  ( ( oc `  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) )  e.  ( Base `  K
) )
2917, 22, 28syl2anc 661 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( oc
`  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) )  e.  ( Base `  K
) )
3011, 23opoccl 33147 . . . . 5  |-  ( ( K  e.  OP  /\  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } )  e.  (
Base `  K )
)  ->  ( ( oc `  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) )  e.  ( Base `  K
) )
3117, 19, 30syl2anc 661 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( oc
`  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) )  e.  ( Base `  K
) )
32 dochss.h . . . . 5  |-  H  =  ( LHyp `  K
)
33 eqid 2451 . . . . 5  |-  ( (
DIsoH `  K ) `  W )  =  ( ( DIsoH `  K ) `  W )
3411, 12, 32, 33dihord 35217 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( ( oc
`  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) )  e.  ( Base `  K
)  /\  ( ( oc `  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) )  e.  ( Base `  K
) )  ->  (
( ( ( DIsoH `  K ) `  W
) `  ( ( oc `  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ) 
C_  ( ( (
DIsoH `  K ) `  W ) `  (
( oc `  K
) `  ( ( glb `  K ) `  { z  e.  (
Base `  K )  |  X  C_  ( ( ( DIsoH `  K ) `  W ) `  z
) } ) ) )  <->  ( ( oc
`  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ( le `  K ) ( ( oc `  K ) `  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ) )
3527, 29, 31, 34syl3anc 1219 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( ( ( DIsoH `  K ) `  W ) `  (
( oc `  K
) `  ( ( glb `  K ) `  { z  e.  (
Base `  K )  |  Y  C_  ( ( ( DIsoH `  K ) `  W ) `  z
) } ) ) )  C_  ( (
( DIsoH `  K ) `  W ) `  (
( oc `  K
) `  ( ( glb `  K ) `  { z  e.  (
Base `  K )  |  X  C_  ( ( ( DIsoH `  K ) `  W ) `  z
) } ) ) )  <->  ( ( oc
`  K ) `  ( ( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ( le `  K ) ( ( oc `  K ) `  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ) )
3626, 35mpbird 232 . 2  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  ( ( (
DIsoH `  K ) `  W ) `  (
( oc `  K
) `  ( ( glb `  K ) `  { z  e.  (
Base `  K )  |  Y  C_  ( ( ( DIsoH `  K ) `  W ) `  z
) } ) ) )  C_  ( (
( DIsoH `  K ) `  W ) `  (
( oc `  K
) `  ( ( glb `  K ) `  { z  e.  (
Base `  K )  |  X  C_  ( ( ( DIsoH `  K ) `  W ) `  z
) } ) ) ) )
37 dochss.u . . . 4  |-  U  =  ( ( DVecH `  K
) `  W )
38 dochss.v . . . 4  |-  V  =  ( Base `  U
)
39 dochss.o . . . 4  |-  ._|_  =  ( ( ocH `  K
) `  W )
4011, 13, 23, 32, 33, 37, 38, 39dochval 35304 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V
)  ->  (  ._|_  `  Y )  =  ( ( ( DIsoH `  K
) `  W ) `  ( ( oc `  K ) `  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  Y  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ) )
41403adant3 1008 . 2  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  (  ._|_  `  Y
)  =  ( ( ( DIsoH `  K ) `  W ) `  (
( oc `  K
) `  ( ( glb `  K ) `  { z  e.  (
Base `  K )  |  Y  C_  ( ( ( DIsoH `  K ) `  W ) `  z
) } ) ) ) )
42 simp3 990 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  X  C_  Y
)
43 simp2 989 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  Y  C_  V
)
4442, 43sstrd 3466 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  X  C_  V
)
4511, 13, 23, 32, 33, 37, 38, 39dochval 35304 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  X  C_  V
)  ->  (  ._|_  `  X )  =  ( ( ( DIsoH `  K
) `  W ) `  ( ( oc `  K ) `  (
( glb `  K
) `  { z  e.  ( Base `  K
)  |  X  C_  ( ( ( DIsoH `  K ) `  W
) `  z ) } ) ) ) )
4627, 44, 45syl2anc 661 . 2  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  (  ._|_  `  X
)  =  ( ( ( DIsoH `  K ) `  W ) `  (
( oc `  K
) `  ( ( glb `  K ) `  { z  e.  (
Base `  K )  |  X  C_  ( ( ( DIsoH `  K ) `  W ) `  z
) } ) ) ) )
4736, 41, 463sstr4d 3499 1  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  Y  C_  V  /\  X  C_  Y )  ->  (  ._|_  `  Y
)  C_  (  ._|_  `  X ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 369    /\ w3a 965    = wceq 1370    e. wcel 1758   {crab 2799    C_ wss 3428   class class class wbr 4392   ` cfv 5518   Basecbs 14278   lecple 14349   occoc 14350   glbcglb 15217   CLatccla 15381   OPcops 33125   HLchlt 33303   LHypclh 33936   DVecHcdvh 35031   DIsoHcdih 35181   ocHcoch 35300
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1592  ax-4 1603  ax-5 1671  ax-6 1710  ax-7 1730  ax-8 1760  ax-9 1762  ax-10 1777  ax-11 1782  ax-12 1794  ax-13 1952  ax-ext 2430  ax-rep 4503  ax-sep 4513  ax-nul 4521  ax-pow 4570  ax-pr 4631  ax-un 6474  ax-cnex 9441  ax-resscn 9442  ax-1cn 9443  ax-icn 9444  ax-addcl 9445  ax-addrcl 9446  ax-mulcl 9447  ax-mulrcl 9448  ax-mulcom 9449  ax-addass 9450  ax-mulass 9451  ax-distr 9452  ax-i2m1 9453  ax-1ne0 9454  ax-1rid 9455  ax-rnegex 9456  ax-rrecex 9457  ax-cnre 9458  ax-pre-lttri 9459  ax-pre-lttrn 9460  ax-pre-ltadd 9461  ax-pre-mulgt0 9462  ax-riotaBAD 32912
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 966  df-3an 967  df-tru 1373  df-fal 1376  df-ex 1588  df-nf 1591  df-sb 1703  df-eu 2264  df-mo 2265  df-clab 2437  df-cleq 2443  df-clel 2446  df-nfc 2601  df-ne 2646  df-nel 2647  df-ral 2800  df-rex 2801  df-reu 2802  df-rmo 2803  df-rab 2804  df-v 3072  df-sbc 3287  df-csb 3389  df-dif 3431  df-un 3433  df-in 3435  df-ss 3442  df-pss 3444  df-nul 3738  df-if 3892  df-pw 3962  df-sn 3978  df-pr 3980  df-tp 3982  df-op 3984  df-uni 4192  df-int 4229  df-iun 4273  df-iin 4274  df-br 4393  df-opab 4451  df-mpt 4452  df-tr 4486  df-eprel 4732  df-id 4736  df-po 4741  df-so 4742  df-fr 4779  df-we 4781  df-ord 4822  df-on 4823  df-lim 4824  df-suc 4825  df-xp 4946  df-rel 4947  df-cnv 4948  df-co 4949  df-dm 4950  df-rn 4951  df-res 4952  df-ima 4953  df-iota 5481  df-fun 5520  df-fn 5521  df-f 5522  df-f1 5523  df-fo 5524  df-f1o 5525  df-fv 5526  df-riota 6153  df-ov 6195  df-oprab 6196  df-mpt2 6197  df-om 6579  df-1st 6679  df-2nd 6680  df-tpos 6847  df-undef 6894  df-recs 6934  df-rdg 6968  df-1o 7022  df-oadd 7026  df-er 7203  df-map 7318  df-en 7413  df-dom 7414  df-sdom 7415  df-fin 7416  df-pnf 9523  df-mnf 9524  df-xr 9525  df-ltxr 9526  df-le 9527  df-sub 9700  df-neg 9701  df-nn 10426  df-2 10483  df-3 10484  df-4 10485  df-5 10486  df-6 10487  df-n0 10683  df-z 10750  df-uz 10965  df-fz 11541  df-struct 14280  df-ndx 14281  df-slot 14282  df-base 14283  df-sets 14284  df-ress 14285  df-plusg 14355  df-mulr 14356  df-sca 14358  df-vsca 14359  df-0g 14484  df-poset 15220  df-plt 15232  df-lub 15248  df-glb 15249  df-join 15250  df-meet 15251  df-p0 15313  df-p1 15314  df-lat 15320  df-clat 15382  df-mnd 15519  df-submnd 15569  df-grp 15649  df-minusg 15650  df-sbg 15651  df-subg 15782  df-cntz 15939  df-lsm 16241  df-cmn 16385  df-abl 16386  df-mgp 16699  df-ur 16711  df-rng 16755  df-oppr 16823  df-dvdsr 16841  df-unit 16842  df-invr 16872  df-dvr 16883  df-drng 16942  df-lmod 17058  df-lss 17122  df-lsp 17161  df-lvec 17292  df-oposet 33129  df-ol 33131  df-oml 33132  df-covers 33219  df-ats 33220  df-atl 33251  df-cvlat 33275  df-hlat 33304  df-llines 33450  df-lplanes 33451  df-lvols 33452  df-lines 33453  df-psubsp 33455  df-pmap 33456  df-padd 33748  df-lhyp 33940  df-laut 33941  df-ldil 34056  df-ltrn 34057  df-trl 34111  df-tendo 34707  df-edring 34709  df-disoa 34982  df-dvech 35032  df-dib 35092  df-dic 35126  df-dih 35182  df-doch 35301
This theorem is referenced by:  dochsscl  35321  dochord  35323  dihoml4  35330  dochocsp  35332  dochdmj1  35343  dochpolN  35443  lclkrlem2p  35475  lclkrslem1  35490  lclkrslem2  35491  lcfrvalsnN  35494  mapdsn  35594
  Copyright terms: Public domain W3C validator