MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  i1fmulc Structured version   Visualization version   GIF version

Theorem i1fmulc 25212
Description: A nonnegative constant times a simple function gives another simple function. (Contributed by Mario Carneiro, 25-Jun-2014.)
Hypotheses
Ref Expression
i1fmulc.2 (πœ‘ β†’ 𝐹 ∈ dom ∫1)
i1fmulc.3 (πœ‘ β†’ 𝐴 ∈ ℝ)
Assertion
Ref Expression
i1fmulc (πœ‘ β†’ ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) ∈ dom ∫1)

Proof of Theorem i1fmulc
Dummy variables 𝑀 π‘₯ 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 reex 11197 . . . . 5 ℝ ∈ V
21a1i 11 . . . 4 ((πœ‘ ∧ 𝐴 = 0) β†’ ℝ ∈ V)
3 i1fmulc.2 . . . . . 6 (πœ‘ β†’ 𝐹 ∈ dom ∫1)
4 i1ff 25184 . . . . . 6 (𝐹 ∈ dom ∫1 β†’ 𝐹:β„βŸΆβ„)
53, 4syl 17 . . . . 5 (πœ‘ β†’ 𝐹:β„βŸΆβ„)
65adantr 481 . . . 4 ((πœ‘ ∧ 𝐴 = 0) β†’ 𝐹:β„βŸΆβ„)
7 i1fmulc.3 . . . . 5 (πœ‘ β†’ 𝐴 ∈ ℝ)
87adantr 481 . . . 4 ((πœ‘ ∧ 𝐴 = 0) β†’ 𝐴 ∈ ℝ)
9 0red 11213 . . . 4 ((πœ‘ ∧ 𝐴 = 0) β†’ 0 ∈ ℝ)
10 simplr 767 . . . . . 6 (((πœ‘ ∧ 𝐴 = 0) ∧ π‘₯ ∈ ℝ) β†’ 𝐴 = 0)
1110oveq1d 7420 . . . . 5 (((πœ‘ ∧ 𝐴 = 0) ∧ π‘₯ ∈ ℝ) β†’ (𝐴 Β· π‘₯) = (0 Β· π‘₯))
12 mul02lem2 11387 . . . . . 6 (π‘₯ ∈ ℝ β†’ (0 Β· π‘₯) = 0)
1312adantl 482 . . . . 5 (((πœ‘ ∧ 𝐴 = 0) ∧ π‘₯ ∈ ℝ) β†’ (0 Β· π‘₯) = 0)
1411, 13eqtrd 2772 . . . 4 (((πœ‘ ∧ 𝐴 = 0) ∧ π‘₯ ∈ ℝ) β†’ (𝐴 Β· π‘₯) = 0)
152, 6, 8, 9, 14caofid2 7700 . . 3 ((πœ‘ ∧ 𝐴 = 0) β†’ ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) = (ℝ Γ— {0}))
16 i1f0 25195 . . 3 (ℝ Γ— {0}) ∈ dom ∫1
1715, 16eqeltrdi 2841 . 2 ((πœ‘ ∧ 𝐴 = 0) β†’ ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) ∈ dom ∫1)
18 remulcl 11191 . . . . . 6 ((π‘₯ ∈ ℝ ∧ 𝑦 ∈ ℝ) β†’ (π‘₯ Β· 𝑦) ∈ ℝ)
1918adantl 482 . . . . 5 ((πœ‘ ∧ (π‘₯ ∈ ℝ ∧ 𝑦 ∈ ℝ)) β†’ (π‘₯ Β· 𝑦) ∈ ℝ)
20 fconst6g 6777 . . . . . 6 (𝐴 ∈ ℝ β†’ (ℝ Γ— {𝐴}):β„βŸΆβ„)
217, 20syl 17 . . . . 5 (πœ‘ β†’ (ℝ Γ— {𝐴}):β„βŸΆβ„)
221a1i 11 . . . . 5 (πœ‘ β†’ ℝ ∈ V)
23 inidm 4217 . . . . 5 (ℝ ∩ ℝ) = ℝ
2419, 21, 5, 22, 22, 23off 7684 . . . 4 (πœ‘ β†’ ((ℝ Γ— {𝐴}) ∘f Β· 𝐹):β„βŸΆβ„)
2524adantr 481 . . 3 ((πœ‘ ∧ 𝐴 β‰  0) β†’ ((ℝ Γ— {𝐴}) ∘f Β· 𝐹):β„βŸΆβ„)
26 i1frn 25185 . . . . . . 7 (𝐹 ∈ dom ∫1 β†’ ran 𝐹 ∈ Fin)
273, 26syl 17 . . . . . 6 (πœ‘ β†’ ran 𝐹 ∈ Fin)
28 ovex 7438 . . . . . . . 8 (𝐴 Β· 𝑦) ∈ V
29 eqid 2732 . . . . . . . 8 (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)) = (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦))
3028, 29fnmpti 6690 . . . . . . 7 (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)) Fn ran 𝐹
31 dffn4 6808 . . . . . . 7 ((𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)) Fn ran 𝐹 ↔ (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)):ran 𝐹–ontoβ†’ran (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)))
3230, 31mpbi 229 . . . . . 6 (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)):ran 𝐹–ontoβ†’ran (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦))
33 fofi 9334 . . . . . 6 ((ran 𝐹 ∈ Fin ∧ (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)):ran 𝐹–ontoβ†’ran (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦))) β†’ ran (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)) ∈ Fin)
3427, 32, 33sylancl 586 . . . . 5 (πœ‘ β†’ ran (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)) ∈ Fin)
35 id 22 . . . . . . . . . . 11 (𝑀 ∈ ran 𝐹 β†’ 𝑀 ∈ ran 𝐹)
36 elsni 4644 . . . . . . . . . . . 12 (π‘₯ ∈ {𝐴} β†’ π‘₯ = 𝐴)
3736oveq1d 7420 . . . . . . . . . . 11 (π‘₯ ∈ {𝐴} β†’ (π‘₯ Β· 𝑀) = (𝐴 Β· 𝑀))
38 oveq2 7413 . . . . . . . . . . . 12 (𝑦 = 𝑀 β†’ (𝐴 Β· 𝑦) = (𝐴 Β· 𝑀))
3938rspceeqv 3632 . . . . . . . . . . 11 ((𝑀 ∈ ran 𝐹 ∧ (π‘₯ Β· 𝑀) = (𝐴 Β· 𝑀)) β†’ βˆƒπ‘¦ ∈ ran 𝐹(π‘₯ Β· 𝑀) = (𝐴 Β· 𝑦))
4035, 37, 39syl2anr 597 . . . . . . . . . 10 ((π‘₯ ∈ {𝐴} ∧ 𝑀 ∈ ran 𝐹) β†’ βˆƒπ‘¦ ∈ ran 𝐹(π‘₯ Β· 𝑀) = (𝐴 Β· 𝑦))
41 ovex 7438 . . . . . . . . . . 11 (π‘₯ Β· 𝑀) ∈ V
42 eqeq1 2736 . . . . . . . . . . . 12 (𝑧 = (π‘₯ Β· 𝑀) β†’ (𝑧 = (𝐴 Β· 𝑦) ↔ (π‘₯ Β· 𝑀) = (𝐴 Β· 𝑦)))
4342rexbidv 3178 . . . . . . . . . . 11 (𝑧 = (π‘₯ Β· 𝑀) β†’ (βˆƒπ‘¦ ∈ ran 𝐹 𝑧 = (𝐴 Β· 𝑦) ↔ βˆƒπ‘¦ ∈ ran 𝐹(π‘₯ Β· 𝑀) = (𝐴 Β· 𝑦)))
4441, 43elab 3667 . . . . . . . . . 10 ((π‘₯ Β· 𝑀) ∈ {𝑧 ∣ βˆƒπ‘¦ ∈ ran 𝐹 𝑧 = (𝐴 Β· 𝑦)} ↔ βˆƒπ‘¦ ∈ ran 𝐹(π‘₯ Β· 𝑀) = (𝐴 Β· 𝑦))
4540, 44sylibr 233 . . . . . . . . 9 ((π‘₯ ∈ {𝐴} ∧ 𝑀 ∈ ran 𝐹) β†’ (π‘₯ Β· 𝑀) ∈ {𝑧 ∣ βˆƒπ‘¦ ∈ ran 𝐹 𝑧 = (𝐴 Β· 𝑦)})
4645adantl 482 . . . . . . . 8 ((πœ‘ ∧ (π‘₯ ∈ {𝐴} ∧ 𝑀 ∈ ran 𝐹)) β†’ (π‘₯ Β· 𝑀) ∈ {𝑧 ∣ βˆƒπ‘¦ ∈ ran 𝐹 𝑧 = (𝐴 Β· 𝑦)})
47 fconstg 6775 . . . . . . . . 9 (𝐴 ∈ ℝ β†’ (ℝ Γ— {𝐴}):β„βŸΆ{𝐴})
487, 47syl 17 . . . . . . . 8 (πœ‘ β†’ (ℝ Γ— {𝐴}):β„βŸΆ{𝐴})
495ffnd 6715 . . . . . . . . 9 (πœ‘ β†’ 𝐹 Fn ℝ)
50 dffn3 6727 . . . . . . . . 9 (𝐹 Fn ℝ ↔ 𝐹:β„βŸΆran 𝐹)
5149, 50sylib 217 . . . . . . . 8 (πœ‘ β†’ 𝐹:β„βŸΆran 𝐹)
5246, 48, 51, 22, 22, 23off 7684 . . . . . . 7 (πœ‘ β†’ ((ℝ Γ— {𝐴}) ∘f Β· 𝐹):β„βŸΆ{𝑧 ∣ βˆƒπ‘¦ ∈ ran 𝐹 𝑧 = (𝐴 Β· 𝑦)})
5352frnd 6722 . . . . . 6 (πœ‘ β†’ ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βŠ† {𝑧 ∣ βˆƒπ‘¦ ∈ ran 𝐹 𝑧 = (𝐴 Β· 𝑦)})
5429rnmpt 5952 . . . . . 6 ran (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)) = {𝑧 ∣ βˆƒπ‘¦ ∈ ran 𝐹 𝑧 = (𝐴 Β· 𝑦)}
5553, 54sseqtrrdi 4032 . . . . 5 (πœ‘ β†’ ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βŠ† ran (𝑦 ∈ ran 𝐹 ↦ (𝐴 Β· 𝑦)))
5634, 55ssfid 9263 . . . 4 (πœ‘ β†’ ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) ∈ Fin)
5756adantr 481 . . 3 ((πœ‘ ∧ 𝐴 β‰  0) β†’ ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) ∈ Fin)
5824frnd 6722 . . . . . . . 8 (πœ‘ β†’ ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βŠ† ℝ)
5958ssdifssd 4141 . . . . . . 7 (πœ‘ β†’ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0}) βŠ† ℝ)
6059adantr 481 . . . . . 6 ((πœ‘ ∧ 𝐴 β‰  0) β†’ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0}) βŠ† ℝ)
6160sselda 3981 . . . . 5 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ 𝑦 ∈ ℝ)
623, 7i1fmulclem 25211 . . . . 5 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ ℝ) β†’ (β—‘((ℝ Γ— {𝐴}) ∘f Β· 𝐹) β€œ {𝑦}) = (◑𝐹 β€œ {(𝑦 / 𝐴)}))
6361, 62syldan 591 . . . 4 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (β—‘((ℝ Γ— {𝐴}) ∘f Β· 𝐹) β€œ {𝑦}) = (◑𝐹 β€œ {(𝑦 / 𝐴)}))
64 i1fima 25186 . . . . . 6 (𝐹 ∈ dom ∫1 β†’ (◑𝐹 β€œ {(𝑦 / 𝐴)}) ∈ dom vol)
653, 64syl 17 . . . . 5 (πœ‘ β†’ (◑𝐹 β€œ {(𝑦 / 𝐴)}) ∈ dom vol)
6665ad2antrr 724 . . . 4 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (◑𝐹 β€œ {(𝑦 / 𝐴)}) ∈ dom vol)
6763, 66eqeltrd 2833 . . 3 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (β—‘((ℝ Γ— {𝐴}) ∘f Β· 𝐹) β€œ {𝑦}) ∈ dom vol)
6863fveq2d 6892 . . . 4 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (volβ€˜(β—‘((ℝ Γ— {𝐴}) ∘f Β· 𝐹) β€œ {𝑦})) = (volβ€˜(◑𝐹 β€œ {(𝑦 / 𝐴)})))
693ad2antrr 724 . . . . 5 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ 𝐹 ∈ dom ∫1)
707ad2antrr 724 . . . . . . 7 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ 𝐴 ∈ ℝ)
71 simplr 767 . . . . . . 7 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ 𝐴 β‰  0)
7261, 70, 71redivcld 12038 . . . . . 6 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (𝑦 / 𝐴) ∈ ℝ)
7361recnd 11238 . . . . . . 7 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ 𝑦 ∈ β„‚)
7470recnd 11238 . . . . . . 7 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ 𝐴 ∈ β„‚)
75 eldifsni 4792 . . . . . . . 8 (𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0}) β†’ 𝑦 β‰  0)
7675adantl 482 . . . . . . 7 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ 𝑦 β‰  0)
7773, 74, 76, 71divne0d 12002 . . . . . 6 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (𝑦 / 𝐴) β‰  0)
78 eldifsn 4789 . . . . . 6 ((𝑦 / 𝐴) ∈ (ℝ βˆ– {0}) ↔ ((𝑦 / 𝐴) ∈ ℝ ∧ (𝑦 / 𝐴) β‰  0))
7972, 77, 78sylanbrc 583 . . . . 5 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (𝑦 / 𝐴) ∈ (ℝ βˆ– {0}))
80 i1fima2sn 25188 . . . . 5 ((𝐹 ∈ dom ∫1 ∧ (𝑦 / 𝐴) ∈ (ℝ βˆ– {0})) β†’ (volβ€˜(◑𝐹 β€œ {(𝑦 / 𝐴)})) ∈ ℝ)
8169, 79, 80syl2anc 584 . . . 4 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (volβ€˜(◑𝐹 β€œ {(𝑦 / 𝐴)})) ∈ ℝ)
8268, 81eqeltrd 2833 . . 3 (((πœ‘ ∧ 𝐴 β‰  0) ∧ 𝑦 ∈ (ran ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) βˆ– {0})) β†’ (volβ€˜(β—‘((ℝ Γ— {𝐴}) ∘f Β· 𝐹) β€œ {𝑦})) ∈ ℝ)
8325, 57, 67, 82i1fd 25189 . 2 ((πœ‘ ∧ 𝐴 β‰  0) β†’ ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) ∈ dom ∫1)
8417, 83pm2.61dane 3029 1 (πœ‘ β†’ ((ℝ Γ— {𝐴}) ∘f Β· 𝐹) ∈ dom ∫1)
Colors of variables: wff setvar class
Syntax hints:   β†’ wi 4   ∧ wa 396   = wceq 1541   ∈ wcel 2106  {cab 2709   β‰  wne 2940  βˆƒwrex 3070  Vcvv 3474   βˆ– cdif 3944   βŠ† wss 3947  {csn 4627   ↦ cmpt 5230   Γ— cxp 5673  β—‘ccnv 5674  dom cdm 5675  ran crn 5676   β€œ cima 5678   Fn wfn 6535  βŸΆwf 6536  β€“ontoβ†’wfo 6538  β€˜cfv 6540  (class class class)co 7405   ∘f cof 7664  Fincfn 8935  β„cr 11105  0cc0 11106   Β· cmul 11111   / cdiv 11867  volcvol 24971  βˆ«1citg1 25123
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2703  ax-rep 5284  ax-sep 5298  ax-nul 5305  ax-pow 5362  ax-pr 5426  ax-un 7721  ax-inf2 9632  ax-cnex 11162  ax-resscn 11163  ax-1cn 11164  ax-icn 11165  ax-addcl 11166  ax-addrcl 11167  ax-mulcl 11168  ax-mulrcl 11169  ax-mulcom 11170  ax-addass 11171  ax-mulass 11172  ax-distr 11173  ax-i2m1 11174  ax-1ne0 11175  ax-1rid 11176  ax-rnegex 11177  ax-rrecex 11178  ax-cnre 11179  ax-pre-lttri 11180  ax-pre-lttrn 11181  ax-pre-ltadd 11182  ax-pre-mulgt0 11183  ax-pre-sup 11184
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3or 1088  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2534  df-eu 2563  df-clab 2710  df-cleq 2724  df-clel 2810  df-nfc 2885  df-ne 2941  df-nel 3047  df-ral 3062  df-rex 3071  df-rmo 3376  df-reu 3377  df-rab 3433  df-v 3476  df-sbc 3777  df-csb 3893  df-dif 3950  df-un 3952  df-in 3954  df-ss 3964  df-pss 3966  df-nul 4322  df-if 4528  df-pw 4603  df-sn 4628  df-pr 4630  df-op 4634  df-uni 4908  df-int 4950  df-iun 4998  df-br 5148  df-opab 5210  df-mpt 5231  df-tr 5265  df-id 5573  df-eprel 5579  df-po 5587  df-so 5588  df-fr 5630  df-se 5631  df-we 5632  df-xp 5681  df-rel 5682  df-cnv 5683  df-co 5684  df-dm 5685  df-rn 5686  df-res 5687  df-ima 5688  df-pred 6297  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6492  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-isom 6549  df-riota 7361  df-ov 7408  df-oprab 7409  df-mpo 7410  df-of 7666  df-om 7852  df-1st 7971  df-2nd 7972  df-frecs 8262  df-wrecs 8293  df-recs 8367  df-rdg 8406  df-1o 8462  df-2o 8463  df-er 8699  df-map 8818  df-pm 8819  df-en 8936  df-dom 8937  df-sdom 8938  df-fin 8939  df-sup 9433  df-inf 9434  df-oi 9501  df-dju 9892  df-card 9930  df-pnf 11246  df-mnf 11247  df-xr 11248  df-ltxr 11249  df-le 11250  df-sub 11442  df-neg 11443  df-div 11868  df-nn 12209  df-2 12271  df-3 12272  df-n0 12469  df-z 12555  df-uz 12819  df-q 12929  df-rp 12971  df-xadd 13089  df-ioo 13324  df-ico 13326  df-icc 13327  df-fz 13481  df-fzo 13624  df-fl 13753  df-seq 13963  df-exp 14024  df-hash 14287  df-cj 15042  df-re 15043  df-im 15044  df-sqrt 15178  df-abs 15179  df-clim 15428  df-sum 15629  df-xmet 20929  df-met 20930  df-ovol 24972  df-vol 24973  df-mbf 25127  df-itg1 25128
This theorem is referenced by:  itg1mulc  25213  i1fsub  25217  itg1sub  25218  itg2const  25249  itg2mulclem  25255  itg2monolem1  25259  i1fibl  25316  itgitg1  25317  itg2addnclem  36527  ftc1anclem5  36553
  Copyright terms: Public domain W3C validator