[TYPO3-core] RFC: Resubmission of feature #1585: Logfile by Request URI + configuration of Empty Referer handling + logline hook
Steffen Kamper
steffen at sk-typo3.de
Sun Mar 2 18:23:19 CET 2008
Hi,
here is a new patch based on Michael's initial patch which
* does syslog entry for all http errors
* extend log format for apache
* introduce SYSLOG_SEVERITY-constants for better reading
A follow up patch will replace other syslog calls in core.
vg Steffen
"Ralf Hettinger" <ng at ralfhettinger.de> schrieb im Newsbeitrag
news:mailman.1.1201357803.14832.typo3-team-core at lists.netfielders.de...
> This is an SVN patch request.
>
> Type:
> New feature
>
> Bugtracker references:
> http://bugs.typo3.org/view.php?id=1585
>
> Branches:
> trunk only
>
> Problem:
> Bundling four problems in one request, since they all subsume under the
> topic
> config.stat_apache=1 logging.
> (1) There is no option for config.stat_apache_pagenames to trigger logging
> of
> the request URI itself. But this is likely to be most interesting to log
> if some
> rewrite extension like realurl / simulateStaticDocuments / (...) is in
> place.
> (2) Logging of query parts is currently performed (ie query parts written
> to
> log) but not of any use for TYPO3.
> (3) TYPO3's logging is not able to track empty Referers and User Agents
> hits as
> Apache itself could (and would by default).
> (4) The logLine generated by class.tslib_fe.php is not extendable.
>
> Solution:
> (1) Introduce the options [requesturi] and [requesturi] to
> config.stat_apache_pagenames
> (2) stat_apache_cutQuery = [boolean] will trigger cutting query parameters
> (anything behind '?') of the logged line
> (3) Though this is not an exact solution (which I think is not possible
> due to
> missing env var), it could be made configurable how to log hits with an
> empty
> Referer and User Agent (since Apache's direct address hits will be seen as
> empty
> referer by TYPO3). Introducing the property
> stat_apache_emptyReferer=[string]
> and stat_apache_emptyUserAgent=[string]
> (4) On behalf of Thomas Oppelt: Add a LogLine hook to
> tslib_fe->statistics():
> TYPO3_CONF_VARS['SC_OPTIONS']['tslib/class.tslib_fe.php']['sys_stat-PreLogClass'][]->createLogLine($LogLine,$this)
>
> Notes:
> This feature was already suggested on 2007-11-10 to this list but Martin
> Kutschker had some good suggestions/corrections to the former patch. Those
> are
> respected within this version.
>
>
> Ralf Hettinger
>
--------------------------------------------------------------------------------
> Index: typo3/sysext/cms/tslib/class.tslib_fe.php
> ===================================================================
> --- typo3/sysext/cms/tslib/class.tslib_fe.php (revision 2966)
> +++ typo3/sysext/cms/tslib/class.tslib_fe.php (working copy)
> @@ -1945,6 +1945,11 @@
> $pageName = str_replace('[uid]',$this->page['uid'],$pageName);
> $pageName = str_replace('[alias]',$this->page['alias'],$pageName);
> $pageName = str_replace('[type]',$this->type,$pageName);
> + $pageName =
> str_replace('[typo3uri]',t3lib_div::getIndpEnv('TYPO3_SITE_SCRIPT'),$pageName);
> + $pageName =
> str_replace('[requesturi]',t3lib_div::getIndpEnv('REQUEST_URI'),$pageName);
> + if ($this->config['config']['stat_apache_cutQuery']) {
> + $pageName = strstr($pageName,'?',true);
> + }
> $temp = $this->config['rootLine'];
> array_pop($temp);
> if ($this->config['config']['stat_apache_noRoot']) {
> @@ -3254,9 +3259,24 @@
> if (@is_file($this->config['stat_vars']['logFile'])) {
> $LogLine = ((t3lib_div::getIndpEnv('REMOTE_HOST') &&
> !$this->config['config']['stat_apache_noHost']) ?
> t3lib_div::getIndpEnv('REMOTE_HOST') :
> t3lib_div::getIndpEnv('REMOTE_ADDR')).' - - '.Date('[d/M/Y:H:i:s
> +0000]',$GLOBALS['EXEC_TIME']).' "GET
> '.$this->config['stat_vars']['pageName'].' HTTP/1.1" 200
> '.strlen($this->content);
> if (!$this->config['config']['stat_apache_notExtended']) {
> - $LogLine.= ' "'.t3lib_div::getIndpEnv('HTTP_REFERER').'"
> "'.t3lib_div::getIndpEnv('HTTP_USER_AGENT').'"';
> + if ($this->config['config']['stat_apache_emptyReferer']) {
> + $LogLine.= '
> "'.((t3lib_div::getIndpEnv('HTTP_REFERER'))?t3lib_div::getIndpEnv('HTTP_REFERER'):$this->config['config']['stat_apache_emptyReferer']).'"';
> + } else {
> + $LogLine.= ' "'.t3lib_div::getIndpEnv('HTTP_REFERER').'"';
> + }
> + if ($this->config['config']['stat_apache_emptyUserAgent']) {
> + $LogLine.= '
> "'.((t3lib_div::getIndpEnv('HTTP_USER_AGENT')?t3lib_div::getIndpEnv('HTTP_USER_AGENT'):$this->config['config']['stat_apache_emptyUserAgent']).'"';
> + } else {
> + $LogLine.= ' "'.t3lib_div::getIndpEnv('HTTP_USER_AGENT').'"';
> + }
> }
> -
> + // Hook for processing LogLine
> + if
> (is_array($this->TYPO3_CONF_VARS['SC_OPTIONS']['tslib/class.tslib_fe.php']['sys_stat-PreLogClass']))
> {
> +
> foreach($this->TYPO3_CONF_VARS['SC_OPTIONS']['tslib/class.tslib_fe.php']['sys_stat-PreLogClass']
> as $_classRef) {
> + $_procObj = &t3lib_div::getUserObj($_classRef);
> + $LogLine = $_procObj->createLogLine($LogLine,$this);
> + }
> + }
> $GLOBALS['TT']->push('Write to log file (fputs)');
> $logfilehandle = fopen($this->config['stat_vars']['logFile'], 'a');
> fputs($logfilehandle, $LogLine.chr(10));
>
--------------------------------------------------------------------------------
> Ralf Hettinger, 2008-01-26 <bug>1585</bug>: statistics and realurl +
> statistics and handling of empty referer hits
> <pre>
> TSref [tsref:config/->CONFIG]
>
>
> (1) Add option to description of stat_apache_pagenames
>
> [requesturi] = The requested URI (server environment variable). Quite
> useful if you use realurl or any other rewrite extension.
> [typo3uri] = The "speaking" URL part passed to a TYPO3 system. Similar to
> [requesturi] but does not include any path parts before the actual TYPO3
> root.
>
>
>
> (2) Add new properties after stat_apache_noRoot
>
> Property:
> stat_apache_cutQuery
>
> Data type:
> boolean
>
> Description:
> Will cut of any query parts from the logged URI, since it is by default
> not available for TYPO3's logging anyways.
>
>
>
> Property:
> stat_apache_emptyReferer
>
> Data type:
> string
>
> Description:
> Configures logging of hits with an empty (i.e. "") Referer. If not set
> (default), they will be logged as "". If set, the Referer of these hits
> will be logged "[string]". Apache normally logs those Referers as "-", so
> setting this value to - might be reasonable.
>
>
>
> Property:
> stat_apache_emptyUserAgent
>
> Data type:
> string
>
> Description:
> Configures logging of hits with an empty (i.e. "") User Agent. If not set
> (default), they will be logged as "". If set, the User Agent of these hits
> will be logged as "[string]". Apache sometimes logs those User Agents as
> "-", so setting this value to - might be reasonable.
> </pre>
begin 666 1585_logging_syslog_apache.diff
M26YD97 at Z('0S;&EB+V-L87-S+G0S;&EB7V1I=BYP:' -"CT]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T-"BTM+2!T,VQI8B]C;&%S<RYT,VQI8E]D:78N<&AP"2AR
M979I<VEO;B S,S,S*0T**RLK('0S;&EB+V-L87-S+G0S;&EB7V1I=BYP:' )
M*'=O<FMI;F<@8V]P>2D-"D! ("TR,CDL-B K,C(Y+#$T($! #0H@("H at 0'!A
M8VMA9V4 at 5%E03S,*(" J($!S=6)P86-K86=E('0S;&EB"B @*B\**R **R )
M+R\@4V5V97)I='D at 8V]N<W1A;G1S('5S960 at 8GD@=#-L:6)?9&EV.CIS>7-L
M;V<**V1E9FEN92 at G4UE33$]'7U-%5D5225197TE.1D\G+" P*3L**V1E9FEN
M92 at G4UE33$]'7U-%5D5225197TY/5$E#12<L(#$I.PHK9&5F:6YE*"=365-,
M3T=?4T5615))5%E?5T%23DE.1R<L(#(I.PHK9&5F:6YE*"=365-,3T=?4T56
M15))5%E?15)23U(G+" S*3L**V1E9FEN92 at G4UE33$]'7U-%5D5225197T9!
M5$%,)RP at -"D["BL*(&-L87-S('0S;&EB7V1I=B!["B *( I);F1E>#H@='EP
M;S,O<WES97AT+V-M<R]T<VQI8B]C;&%S<RYT<VQI8E]F92YP:' -"CT]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T-"BTM+2!T>7!O,R]S>7-E>'0O8VUS+W1S;&EB
M+V-L87-S+G1S;&EB7V9E+G!H< DH<F5V:7-I;VX@,S,S,RD-"BLK*R!T>7!O
M,R]S>7-E>'0O8VUS+W1S;&EB+V-L87-S+G1S;&EB7V9E+G!H< DH=V]R:VEN
M9R!C;W!Y*0T*0$ @+30X,RPV("LT.#,L-R! 0 T*( D)"0EI9B H)'1H:7,M
M/F-H96-K4&%G955N879A:6QA8FQE2&%N9&QE<B at I*0E["B )"0D)"21T:&ES
M+3YP86=E56YA=F%I;&%B;&5!;F1%>&ET*"=#86YN;W0 at 8V]N;F5C="!T;R!T
M:&4 at 8W5R<F5N="!D871A8F%S92P@(B<N5%E03S-?9&(N)R(G*3L*( D)"0E]
M(&5L<V4@>PHK"0D)"0ET,VQI8E]D:78Z.G-Y<TQO9R at G0V%N;F]T(&-O;FYE
M8W0@=&\@=&AE(&-U<G)E;G0 at 9&%T86)A<V4G+"=C;7,G+%-94TQ/1U]3159%
M4DE465]%4E)/4BD["B )"0D)"6AE861E<B@@)TA45% O,2XP(#4P,R!397)V
M:6-E(%1E;7!O<F%R:6QY(%5N879A:6QA8FQE)R I.PH@"0D)"0DD=&AI<RT^
M<')I;G1%<G)O<B at G0V%N;F]T(&-O;FYE8W0@=&\@=&AE(&-U<G)E;G0 at 9&%T
M86)A<V4L("(G+E194$\S7V1B+B<B)RPG1&%T86)A<V4 at 17)R;W(G*3L*( D)
M"0D)97AI=#L*0$ @+34P,BPV("LU,#,L-R! 0 T*( D)"6EF("@D=&AI<RT^
M8VAE8VM086=E56YA=F%I;&%B;&5(86YD;&5R*"DI"7L*( D)"0DD=&AI<RT^
M<&%G955N879A:6QA8FQE06YD17AI="@G5&AE(&-U<G)E;G0@=7-E<FYA;64L
M('!A<W-W;W)D(&]R(&AO<W0@=V%S(&YO="!A8V-E<'1E9"!W:&5N('1H92!C
M;VYN96-T:6]N('1O('1H92!D871A8F%S92!W87, at 871T96UP=&5D('1O(&)E
M(&5S=&%B;&ES:&5D(2<I.PH@"0D)?2!E;'-E('L**PD)"0ET,VQI8E]D:78Z
M.G-Y<TQO9R at G5&AE(&-U<G)E;G0@=7-E<FYA;64L('!A<W-W;W)D(&]R(&AO
M<W0@=V%S(&YO="!A8V-E<'1E9"!W:&5N('1H92!C;VYN96-T:6]N('1O('1H
M92!D871A8F%S92!W87, at 871T96UP=&5D('1O(&)E(&5S=&%B;&ES:&5D(2<L
M)V-M<R<L4UE33$]'7U-%5D5225197T524D]2*3L*( D)"0EH96%D97(H("=(
M5%10+S$N," U,#, at 4V5R=FEC92!496UP;W)A<FEL>2!5;F%V86EL86)L92<@
M*3L*( D)"0DD=&AI<RT^<')I;G1%<G)O<B at G5&AE(&-U<G)E;G0@=7-E<FYA
M;64L('!A<W-W;W)D(&]R(&AO<W0@=V%S(&YO="!A8V-E<'1E9"!W:&5N('1H
M92!C;VYN96-T:6]N('1O('1H92!D871A8F%S92!W87, at 871T96UP=&5D('1O
M(&)E(&5S=&%B;&ES:&5D(2<L)T1A=&%B87-E($5R<F]R)RD["B )"0D)97AI
M=#L*0$ @+3DR-2PW("LY,C<L-R! 0 T*( D)"0D)"21T:&ES+3YP86=E56YA
M=F%I;&%B;&5!;F1%>&ET*"=.;R!P86=E<R!A<F4 at 9F]U;F0@;VX@=&AE(')O
M;W1L979E;"$G*3L*( D)"0D)?2!E;'-E('L*( D)"0D)"6AE861E<B@@)TA4
M5% O,2XP(#4P,R!397)V:6-E(%1E;7!O<F%R:6QY(%5N879A:6QA8FQE)R I
M.PHM"0D)"0D)=#-L:6)?9&EV.CIS>7-,;V<H)TYO('!A9V5S(&%R92!F;W5N
M9"!O;B!T:&4@<F]O=&QE=F5L(2<L("=C;7,G+" S*3L**PD)"0D)"70S;&EB
M7V1I=CHZ<WES3&]G*"=.;R!P86=E<R!A<F4 at 9F]U;F0@;VX@=&AE(')O;W1L
M979E;"$G+" G8VUS)RP at 4UE33$]'7U-%5D5225197T524D]2*3L*( D)"0D)
M"21T:&ES+3YP<FEN=$5R<F]R*"=.;R!P86=E<R!A<F4 at 9F]U;F0@;VX@=&AE
M(')O;W1L979E;"$G*3L*( D)"0D)"65X:70["B )"0D)"7T*0$ @+3$P,# L
M-R K,3 P,BPW($! #0H@"0D)"0DD=&AI<RT^<&%G94YO=$9O=6YD06YD17AI
M="@G5&AE(')E<75E<W1E9"!P86=E(&1O97,@;F]T(&5X:7-T(2<I.PH@"0D)
M"7T at 96QS92!["B )"0D)"6AE861E<B@@)TA45% O,2XP(#0P-"!086=E($YO
M="!&;W5N9"<@*3L*+0D)"0D)=#-L:6)?9&EV.CIS>7-,;V<H)U1H92!R97%U
M97-T960@<&%G92!D;V5S(&YO="!E>&ES="$G+" G8VUS)RP@,RD["BL)"0D)
M"70S;&EB7V1I=CHZ<WES3&]G*"=4:&4@<F5Q=65S=&5D('!A9V4 at 9&]E<R!N
M;W0 at 97AI<W0A)RP@)V-M<R<L(%-94TQ/1U]3159%4DE465]%4E)/4BD["B )
M"0D)"21T:&ES+3YP<FEN=$5R<F]R*"=4:&4@<F5Q=65S=&5D('!A9V4 at 9&]E
M<R!N;W0 at 97AI<W0A)RD["B )"0D)"65X:70["B )"0D)?0I 0" M,3 Q,RPW
M("LQ,#$U+#<@0$ -"B )"0D))'1H:7,M/G!A9V5.;W1&;W5N9$%N9$5X:70H
M)U1H92!R97%U97-T960@<&%G92!D;V5S(&YO="!E>&ES="$G*3L*( D)"7T@
M96QS92!["B )"0D):&5A9&5R*" G2%144"\Q+C @-# T(%!A9V4 at 3F]T($9O
M=6YD)R I.PHM"0D)"70S;&EB7V1I=CHZ<WES3&]G*"=4:&4@<F5Q=65S=&5D
M('!A9V4 at 9&]E<R!N;W0 at 97AI<W0A)RP@)V-M<R<L(#,I.PHK"0D)"70S;&EB
M7V1I=CHZ<WES3&]G*"=4:&4@<F5Q=65S=&5D('!A9V4 at 9&]E<R!N;W0 at 97AI
M<W0A)RP@)V-M<R<L(%-94TQ/1U]3159%4DE465]%4E)/4BD["B )"0D))'1H
M:7,M/G!R:6YT17)R;W(H)U1H92!R97%U97-T960@<&%G92!D;V5S(&YO="!E
M>&ES="$G*3L*( D)"0EE>&ET.PH@"0D)?0I 0" M,3 T,BPW("LQ,#0T+#<@
M0$ -"B )"0D)"21T:&ES+3YP86=E56YA=F%I;&%B;&5!;F1%>&ET*"=4:&4@
M<F5Q=65S=&5D('!A9V4 at 9&ED;EPG="!H879E(&$@<')O<&5R(&-O;FYE8W1I
M;VX@=&\@=&AE('1R964M<F]O="$G*3L*( D)"0E](&5L<V4@>PH@"0D)"0EH
M96%D97(H("=(5%10+S$N," U,#, at 4V5R=FEC92!496UP;W)A<FEL>2!5;F%V
M86EL86)L92<@*3L*+0D)"0D)=#-L:6)?9&EV.CIS>7-,;V<H)U1H92!R97%U
M97-T960@<&%G92!D:61N7"=T(&AA=F4 at 82!P<F]P97(@8V]N;F5C=&EO;B!T
M;R!T:&4@=')E92UR;V]T(2 H)RXD=&AI<RT^<WES7W!A9V4M/F5R<F]R7V=E
M=%)O;W1,:6YE+B<I)RP@)V-M<R<L(#,I.PHK"0D)"0ET,VQI8E]D:78Z.G-Y
M<TQO9R at G5&AE(')E<75E<W1E9"!P86=E(&1I9&Y<)W0@:&%V92!A('!R;W!E
M<B!C;VYN96-T:6]N('1O('1H92!T<F5E+7)O;W0A("@G+B1T:&ES+3YS>7-?
M<&%G92T^97)R;W)?9V5T4F]O=$QI;F4N)RDG+" G8VUS)RP at 4UE33$]'7U-%
M5D5225197T524D]2*3L*( D)"0D))'1H:7,M/G!R:6YT17)R;W(H)U1H92!R
M97%U97-T960@<&%G92!D:61N7"=T(&AA=F4 at 82!P<F]P97(@8V]N;F5C=&EO
M;B!T;R!T:&4@=')E92UR;V]T(2 \8G(@+SX\8G(@+SXH)RXD=&AI<RT^<WES
M7W!A9V4M/F5R<F]R7V=E=%)O;W1,:6YE+B<I)RD["B )"0D)"65X:70["B )
M"0D)?0I 0" M,3 U-RPW("LQ,#4Y+#<@0$ -"B )"0D)"21T:&ES+3YP86=E
M56YA=F%I;&%B;&5!;F1%>&ET*"=4:&4@<F5Q=65S=&5D('!A9V4@=V%S(&YO
M="!A8V-E<VEB;&4A)RD["B )"0D)?2!E;'-E('L*( D)"0D):&5A9&5R*" G
M2%144"\Q+C @-3 S(%-E<G9I8V4 at 5&5M<&]R87)I;'D at 56YA=F%I;&%B;&4G
M("D["BT)"0D)"70S;&EB7V1I=CHZ<WES3&]G*"=4:&4@<F5Q=65S=&5D('!A
M9V4@=V%S(&YO="!A8V-E<W-I8FQE(2<L("=C;7,G+" S*3L**PD)"0D)=#-L
M:6)?9&EV.CIS>7-,;V<H)U1H92!R97%U97-T960@<&%G92!W87,@;F]T(&%C
M8V5S<VEB;&4A)RP@)V-M<R<L(%-94TQ/1U]3159%4DE465]%4E)/4BD["B )
M"0D)"21T:&ES+3YP<FEN=$5R<F]R*"=4:&4@<F5Q=65S=&5D('!A9V4@=V%S
M(&YO="!A8V-E<W-I8FQE(2<I.PH@"0D)"0EE>&ET.PH@"0D)"7T*0$ @+3$Q
M,3DL-R K,3$R,2PW($! #0H@"0D)?2!E;'-E('L*( D)"0DD<&%G94QO9UM=
M(#T@)'!A9V5;)W5I9"==.PH@"0D)"6AE861E<B@@)TA45% O,2XP(#4P,"!)
M;G1E<FYA;"!397)V97(@17)R;W(G("D["BT)"0D)=#-L:6)?9&EV.CIS>7-,
M;V<H)U!A9V4@<VAO<G1C=71S('=E<F4@;&]O<&EN9R!I;B!U:61S("<N:6UP
M;&]D92 at G+"<L)'!A9V5,;V<I+B<N+BXA)RP@)V-M<R<L(#,I.PHK"0D)"70S
M;&EB7V1I=CHZ<WES3&]G*"=086=E('-H;W)T8W5T<R!W97)E(&QO;W!I;F<@
M:6X@=6ED<R G+FEM<&QO9&4H)RPG+"1P86=E3&]G*2XG+BXN(2<L("=C;7,G
M+"!365-,3T=?4T5615))5%E?15)23U(I.PH@"0D)"21T:&ES+3YP<FEN=$5R
M<F]R*"=086=E('-H;W)T8W5T<R!W97)E(&QO;W!I;F<@:6X@=6ED<R G+FEM
M<&QO9&4H)RPG+"1P86=E3&]G*2XG+BXN(2<I.PH@"0D)"65X:70["B )"0E]
M"D! ("TQ-#$W+#<@*S$T,3DL,3 @0$ -"B )("H at 0')E='5R;@EV;VED"0DH
M5&AE(&9U;F-T:6]N(&5X:71S(2D*( D@*B\*( EF=6YC=&EO;B!P86=E17)R
M;W)(86YD;&5R*"1C;V1E+" D:&5A9&5R/2<G+" D<F5A<V]N/2<G*0E["BT*
M*PD)"BL)"0DO+R!G96YE<F%T92!S>7-L;V<@96YT<GD**PD)=#-L:6)?9&EV
M.CIS>7-,;V<H)&QO9TQI;F4L)V-M<R<L(%-94TQ/1U]3159%4DE465]%4E)/
M4BD["BL)"0H@"0D)+R\@27-S=64@:&5A9&5R(&EN(&%N>2!C87-E. at H@"0EI
M9B H)&AE861E<BD)>PH@"0D))&AE861E<D%R<B ]('!R96=?<W!L:70H)R]<
M<GQ<;B\G+"1H96%D97(L+3$L4%)%1U]34$Q)5%].3U]%35!462D["D! ("TQ
M.3DU+#<@*S(P,# L-R! 0 T*( D)"0D)"21T:&ES+3YP86=E56YA=F%I;&%B
M;&5!;F1%>&ET*"=4:&4@<&%G92!I<R!N;W0 at 8V]N9FEG=7)E9"$@6W1Y<&4]
M("<N)'1H:7,M/G1Y<&4N)UU;)RXD=&AI<RT^<U!R92XG72<I.PH@"0D)"0E]
M(&5L<V4@>PH@"0D)"0D):&5A9&5R*" G2%144"\Q+C @-3 S(%-E<G9I8V4@
M5&5M<&]R87)I;'D at 56YA=F%I;&%B;&4G("D["BT)"0D)"0ET,VQI8E]D:78Z
M.G-Y<TQO9R at G5&AE('!A9V4@:7,@;F]T(&-O;F9I9W5R960A(%MT>7!E/2 G
M+B1T:&ES+3YT>7!E+B==6R<N)'1H:7,M/G-0<F4N)UTG+" G8VUS)RP@,RD[
M"BL)"0D)"0ET,VQI8E]D:78Z.G-Y<TQO9R at G5&AE('!A9V4@:7,@;F]T(&-O
M;F9I9W5R960A(%MT>7!E/2 G+B1T:&ES+3YT>7!E+B==6R<N)'1H:7,M/G-0
M<F4N)UTG+" G8VUS)RP at 4UE33$]'7U-%5D5225197T524D]2*3L*( D)"0D)
M"21T:&ES+3YP<FEN=$5R<F]R*"=4:&4@<&%G92!I<R!N;W0 at 8V]N9FEG=7)E
M9"$@6W1Y<&4]("<N)'1H:7,M/G1Y<&4N)UU;)RXD=&AI<RT^<U!R92XG72<I
M.PH@"0D)"0D)97AI=#L*( D)"0D)?0I 0" M,C T-BPR,R K,C U,2PY($!
M#0H@"0D)"0DD=&AE3&]G1FEL92 ]("1T:&ES+3Y465!/,U]#3TY&7U9!4E-;
M)T9%)UU;)VQO9V9I;&5?9&ER)UTN<W1R9G1I;64H)'1H:7,M/F-O;F9I9ULG
M8V]N9FEG)UU;)W-T871?87!A8VAE7VQO9V9I;&4G72D["B )"0D)"0DO+R!!
M9&0 at 4$%42%]S:71E(&QE9G0@=&\@)'1H94QO9T9I;&4@:68@=&AE('!A=&@@
M:7,@;F]T(&%B<V]L=71E('EE= H@"0D)"0EI9B H(70S;&EB7V1I=CHZ:7-!
M8G-0871H*"1T:&5,;V=&:6QE*2D@)'1H94QO9T9I;&4@/2!0051(7W-I=&4N
M)'1H94QO9T9I;&4["BL)"0D)"0DO+R!);FET:6%L:7IE('-T871I<W1I8W,@
M:&%N9&QI;F<Z($-H96-K(&9I;&5N86UE(&%N9"!P97)M:7-S:6]N<PHK"0D)
M"0DD<V5T4W1A=%!A9V5.86UE(#T@)'1H:7,M/G-T871I<W1I8W-?:6YI="@I
M.PH@"BT)"0D)"6EF("@D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A=%]A
M<&%C:&4G72 F)B D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A=%]A<&%C
M:&5?;&]G9FEL92==("8F("%S=')S='(H)'1H:7,M/F-O;F9I9ULG8V]N9FEG
M)UU;)W-T871?87!A8VAE7VQO9V9I;&4G72PG+R<I*0E["BT)"0D)"0EI9B H
M=#-L:6)?9&EV.CII<T%L;&]W961!8G-0871H*"1T:&5,;V=&:6QE*2D)>PHM
M"0D)"0D)"6EF("@A0&ES7V9I;&4H)'1H94QO9T9I;&4I*0E["BT)"0D)"0D)
M"71O=6-H*"1T:&5,;V=&:6QE*3L)+R\@5')Y('1O(&-R96%T92!T:&4@;&]G
M9FEL90HM"0D)"0D)"0ET,VQI8E]D:78Z.F9I>%!E<FUI<W-I;VYS*"1T:&5,
M;V=&:6QE*3L*+0D)"0D)"0E]"BT*+0D)"0D)"0EI9B H0&ES7V9I;&4H)'1H
M94QO9T9I;&4I("8F($!I<U]W<FET86)L92 at D=&AE3&]G1FEL92DI"7L*+0D)
M"0D)"0D))'1H:7,M/F-O;F9I9ULG<W1A=%]V87)S)UU;)VQO9T9I;&4G72 ]
M("1T:&5,;V=&:6QE.PHM"0D)"0D)"0DD<V5T4W1A=%!A9V5.86UE(#T@=')U
M93L)+R\@4V5T('!A9V4@;F%M92!L871E<B!O;@HM"0D)"0D)"7T at 96QS92![
M"BT)"0D)"0D)"21'3$]"04Q36R=45"==+3YS97144VQO9TUE<W-A9V4H)T-O
M=6QD(&YO="!S970@;&]G9FEL92!P871H+B!#:&5C:R!F:6QE<&%T:"!A;F0@
M<&5R;6ES<VEO;G,N)RPS*3L*+0D)"0D)"0E]"BT)"0D)"0E]"BT)"0D)"7T*
M+0H@"0D)"0DD=&AI<RT^8V]N9FEG6R=&141A=&$G72 ]("1T:&ES+3YT;7!L
M+3YS971U<%LG1D5$871A)UT["B )"0D)"21T:&ES+3YC;VYF:6=;)T9%1&%T
M82XG72 ]("1T:&ES+3YT;7!L+3YS971U<%LG1D5$871A+B==.PH@"0D)"7T*
M0$ @+3(P-S(L-R K,C V,RPW($! #0H@"0D)"0DD=&AI<RT^<&%G955N879A
M:6QA8FQE06YD17AI="@G3F\@=&5M<&QA=&4 at 9F]U;F0A)RD["B )"0D)?2!E
M;'-E('L*( D)"0D):&5A9&5R*" G2%144"\Q+C @-3 S(%-E<G9I8V4 at 5&5M
M<&]R87)I;'D at 56YA=F%I;&%B;&4G("D["BT)"0D)"70S;&EB7V1I=CHZ<WES
M3&]G*"=.;R!T96UP;&%T92!F;W5N9"$G+" G8VUS)RP@,RD["BL)"0D)"70S
M;&EB7V1I=CHZ<WES3&]G*"=.;R!T96UP;&%T92!F;W5N9"$G+" G8VUS)RP@
M4UE33$]'7U-%5D5225197T524D]2*3L*( D)"0D))'1H:7,M/G!R:6YT17)R
M;W(H)TYO('1E;7!L871E(&9O=6YD(2<I.PH@"0D)"0EE>&ET.PH@"0D)"7T*
M0$ @+3(P.#0L-3,@*S(P-S4L-R! 0 T*( H@"0D)+R\@5V4@=V%N="!N:6-E
M(&YA;65S+"!S;R!W92!N965D('1O(&AA;F1L92!T:&4 at 8VAA<G-E= H@"0EI
M9B H)'-E=%-T871086=E3F%M92D)>PHM"0D)"2\O($UA:V4@;&EF92!E87-I
M97(@86YD(&%C8V5P="!V87)I86YT<R!F;W(@=71F+3@*+0D)"6EF("AP<F5G
M7VUA=&-H*"<O=71F+3\X+VDG+" D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG
M<W1A=%]A<&%C:&5?;FEC951I=&QE)UTI*0E["BT)"0D))'1H:7,M/F-O;F9I
M9ULG8V]N9FEG)UU;)W-T871?87!A8VAE7VYI8V54:71L92==(#T@)W5T9BTX
M)SL*+0D)"7T*+0D)"6EF("@D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A
M=%]A<&%C:&5?;FEC951I=&QE)UT@/3T@)W5T9BTX)RD)>PHM"0D)"21S:&]R
M=%1I=&QE(#T@)'1H:7,M/F-S0V]N=D]B:BT^=71F.%]E;F-O9&4H)'1H:7,M
M/G!A9V5;)W1I=&QE)UTL)'1H:7,M/G)E;F1E<D-H87)S970I.PHM"0D)?2!E
M;'-E:68@*"1T:&ES+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T7V%P86-H95]N
M:6-E5&ET;&4G72D)>PHM"0D)"21S:&]R=%1I=&QE(#T@)'1H:7,M/F-S0V]N
M=D]B:BT^<W!E8T-H87)S5&]!4T-)22 at D=&AI<RT^<F5N9&5R0VAA<G-E="PD
M=&AI<RT^<&%G95LG=&ET;&4G72D["BT)"0E](&5L<V4@>PHM"0D)"21S:&]R
M=%1I=&QE(#T@)'1H:7,M/G!A9V5;)W1I=&QE)UT["BT)"0E]"BT)"0DD;&5N
M(#T@=#-L:6)?9&EV.CII;G1);E)A;F=E*"1T:&ES+3YC;VYF:6=;)V-O;F9I
M9R==6R=S=&%T7V%P86-H95]P86=E3&5N)UTL,2PQ,# L,S I.PHM"0D):68@
M*"1T:&ES+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T7V%P86-H95]N:6-E5&ET
M;&4G72 ]/2 G=71F+3 at G*0E["BT)"0D))'-H;W)T5&ET;&4@/2!R87=U<FQE
M;F-O9&4H)'1H:7,M/F-S0V]N=D]B:BT^<W5B<W1R*"=U=&8M."<L)'-H;W)T
M5&ET;&4L,"PD;&5N*2D["BT)"0E](&5L<V4@>PHM"0D)"21S:&]R=%1I=&QE
M(#T@<W5B<W1R*'!R96=?<F5P;&%C92 at G+UM>+ELZ86QN=6TZ75\M72\G+"=?
M)RPD<VAO<G14:71L92DL,"PD;&5N*3L*+0D)"7T*+0D)"21P86=E3F%M92 ]
M("1T:&ES+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T7V%P86-H95]P86=E;F%M
M97,G72 _("1T:&ES+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T7V%P86-H95]P
M86=E;F%M97,G72 Z("=;<&%T:%U;=&ET;&5=+2U;=6ED72YH=&UL)SL*+0D)
M"21P86=E3F%M92 ]('-T<E]R97!L86-E*"=;=&ET;&5=)RP@)'-H;W)T5&ET
M;&4 at +"1P86=E3F%M92D["BT)"0DD<&%G94YA;64@/2!S=')?<F5P;&%C92 at G
M6W5I9%TG+"1T:&ES+3YP86=E6R=U:60G72PD<&%G94YA;64I.PHM"0D))'!A
M9V5.86UE(#T@<W1R7W)E<&QA8V4H)UMA;&EA<UTG+"1T:&ES+3YP86=E6R=A
M;&EA<R==+"1P86=E3F%M92D["BT)"0DD<&%G94YA;64@/2!S=')?<F5P;&%C
M92 at G6W1Y<&5=)RPD=&AI<RT^='EP92PD<&%G94YA;64I.PHM"0D))'1E;7 @
M/2 D=&AI<RT^8V]N9FEG6R=R;V]T3&EN92==.PHM"0D)87)R87E?<&]P*"1T
M96UP*3L*+0D)"6EF("@D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A=%]A
M<&%C:&5?;F]2;V]T)UTI"7L*+0D)"0EA<G)A>5]S:&EF="@D=&5M<"D["BT)
M"0E]"BT)"0DD;&5N(#T@=#-L:6)?9&EV.CII;G1);E)A;F=E*"1T:&ES+3YC
M;VYF:6=;)V-O;F9I9R==6R=S=&%T7W1I=&QE3&5N)UTL,2PQ,# L,C I.PHM
M"0D):68@*"1T:&ES+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T7V%P86-H95]N
M:6-E5&ET;&4G72 ]/2 G=71F+3 at G*0E["BT)"0D))'!A=&@@/2 G)SL*+0D)
M"0DD8R ](&-O=6YT*"1T96UP*3L*+0D)"0EF;W(@*"1I/3 [("1I/"1C.R D
M:2LK*0E["BT)"0D)"6EF("@D=&5M<%LD:5U;)W5I9"==*0E["BT)"0D)"0DD
M<" ]("1T:&ES+3YC<T-O;G9/8FHM/F-R;W H)W5T9BTX)RPD=&AI<RT^8W-#
M;VYV3V)J+3YU=&8X7V5N8V]D92 at D=&5M<%LD:5U;)W1I=&QE)UTL)'1H:7,M
M/G)E;F1E<D-H87)S970I+"1L96XL(EQX13)<>#@P7'A!-B(I.PDO+R!5*S(P
M,C8[($A/4DE:3TY404P at 14Q,25!325,*+0D)"0D)"21P871H("X]("<O)R N
M(')A=W5R;&5N8V]D92 at D<"D["BT)"0D)"7T*+0D)"0E]"BT)"0E](&5L<V5I
M9B H)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T871?87!A8VAE7VYI8V54
M:71L92==*0E["BT)"0D))'!A=&@@/2 D=&AI<RT^8W-#;VYV3V)J+3YS<&5C
M0VAA<G-4;T%30TE)*"1T:&ES+3YR96YD97)#:&%R<V5T+"1T:&ES+3YS>7-?
M<&%G92T^9V5T4&%T:$9R;VU2;V]T;&EN92 at D=&5M<"PD;&5N*2D["BT)"0E]
M(&5L<V4@>PHM"0D)"21P871H(#T@)'1H:7,M/G-Y<U]P86=E+3YG9710871H
M1G)O;5)O;W1L:6YE*"1T96UP+"1L96XI.PHM"0D)?0HM"0D):68@*"1T:&ES
M+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T7V%P86-H95]N:6-E5&ET;&4G72 ]
M/2 G=71F+3 at G*0E["BT)"0D))'1H:7,M/F-O;F9I9ULG<W1A=%]V87)S)UU;
M)W!A9V5.86UE)UT@/2!S=')?<F5P;&%C92 at G6W!A=&A=)RP@)'!A=&@N)R\G
M+" D<&%G94YA;64I.PHM"0D)?2!E;'-E('L*+0D)"0DD=&AI<RT^8V]N9FEG
M6R=S=&%T7W9A<G,G75LG<&%G94YA;64G72 ]('-T<E]R97!L86-E*"=;<&%T
M:%TG+"!P<F5G7W)E<&QA8V4H)R];7BY;.F%L;G5M.EU<+U\M72\G+"=?)RPD
M<&%T:"XG+R<I+" D<&%G94YA;64I.PHM"0D)?0HK"0D))'1H:7,M/G-T871I
M<W1I8W-?:6YI=%]P86=E;F%M92 at I.PD*( D)?0H@"B )"0DO+R!.;R!C86-H
M90I 0" M,C$T-"PW("LR,#@Y+#<@0$ -"B )"0D)"21T:&ES+3YP86=E56YA
M=F%I;&%B;&5!;F1%>&ET*"=0051(7TE.1D\@=V%S(&YO="!C;VYF:6=U<F5D
M(&9O<B!T:&ES('=E8G-I=&4L(&%N9"!T:&4 at 55),('1R:65S('1O(&9I;F0@
M=&AE('!A9V4 at 8GD@4$%42%])3D9/(2<I.PH@"0D)"7T at 96QS92!["B )"0D)
M"6AE861E<B@@)TA45% O,2XP(#4P,R!397)V:6-E(%1E;7!O<F%R:6QY(%5N
M879A:6QA8FQE)R I.PHM"0D)"0ET,VQI8E]D:78Z.G-Y<TQO9R at G4$%42%])
M3D9/('=A<R!N;W0 at 8V]N9FEG=7)E9"!F;W(@=&AI<R!W96)S:71E+"!A;F0@
M=&AE(%523"!T<FEE<R!T;R!F:6YD('1H92!P86=E(&)Y(%!!5$A?24Y&3R$G
M+" G8VUS)RP@,RD["BL)"0D)"70S;&EB7V1I=CHZ<WES3&]G*"=0051(7TE.
M1D\@=V%S(&YO="!C;VYF:6=U<F5D(&9O<B!T:&ES('=E8G-I=&4L(&%N9"!T
M:&4 at 55),('1R:65S('1O(&9I;F0@=&AE('!A9V4 at 8GD@4$%42%])3D9/(2<L
M("=C;7,G+"!365-,3T=?4T5615))5%E?15)23U(I.PH@"0D)"0DD=&AI<RT^
M<')I;G1%<G)O<B at G4$%42%])3D9/('=A<R!N;W0 at 8V]N9FEG=7)E9"!F;W(@
M=&AI<R!W96)S:71E+"!A;F0@=&AE(%523"!T<FEE<R!T;R!F:6YD('1H92!P
M86=E(&)Y(%!!5$A?24Y&3R$\8G(@+SX\8G(@+SX\82!H<F5F/2(G+FAT;6QS
M<&5C:6%L8VAA<G,H)')E9&ER96-T57)L*2XG(CY#;&EC:R!H97)E('1O(&=E
M="!T;R!T:&4@<FEG:'0@<&%G92X\+V$^)RPG17)R;W(Z(%!!5$A?24Y&3R!N
M;W0 at 8V]N9FEG=7)E9"<I.PH@"0D)"7T*( D)"7T at 96QS92!["D! ("TR,S$X
M+#8@*S(R-C,L-R! 0 T*( H@"0D)+R\@268 at 9&5F875L="!T<F%N<VQA=&EO
M;B!I<R!N;W0 at 879A:6QA8FQE. at H@"0EI9B H*"$D=&AI<RT^<WES7VQA;F=U
M86=E7W5I9"!\?" A)'1H:7,M/G-Y<U]L86YG=6%G95]C;VYT96YT*2 F)B D
M=&AI<RT^<&%G95LG;#$X;E]C9F<G728Q*0E["BL)"0ET,VQI8E]D:78Z.G-Y
M<TQO9R at G4&%G92!I<R!N;W0 at 879A:6QA8FQE(&EN(&1E9F%U;'0@;&%N9W5A
M9V4N)RPG8VUS)RQ365-,3T=?4T5615))5%E?15)23U(I.PD)"0D)"B )"0DD
M=&AI<RT^<&%G94YO=$9O=6YD06YD17AI="@G4&%G92!I<R!N;W0 at 879A:6QA
M8FQE(&EN(&1E9F%U;'0@;&%N9W5A9V4N)RD["B )"7T*( I 0" M,C at R,2PW
M("LR-S8W+#<@0$ -"B )("HO"B )9G5N8W1I;VX at 86-Q=6ER95!A9V5'96YE
M<F%T:6]N3&]C:R at F)&QO8VM/8FHL("1K97DI"7L*( D):68@*"1T:&ES+3YN
M;U]C86-H92!\?" D=&AI<RT^:&5A9&5R3F]#86-H92 at I*2!["BT)"0ET,VQI
M8E]D:78Z.G-Y<TQO9R at G3&]C:VEN9SH at 4&%G92!I<R!N;W0 at 8V%C:&5D+"!N
M;R!L;V-K:6YG(')E<75I<F5D)RP@)V-M<R<L(# I.PHK"0D)=#-L:6)?9&EV
M.CIS>7-,;V<H)TQO8VMI;F<Z(%!A9V4@:7,@;F]T(&-A8VAE9"P@;F\@;&]C
M:VEN9R!R97%U:7)E9"<L("=C;7,G+"!465!/,U]3159%4DE465])3D9/*3L*
M( D)"7)E='5R;B!T<G5E.PDO+R!.;R!L;V-K:6YG(&ES(&YE961E9"!I9B!C
M86-H:6YG(&ES(&1I<V%B;&5D"B )"7T*( I 0" M,C at T,2PW("LR-S at W+#<@
M0$ -"B )"0D)?0H@"0D)?0H@"0E](&-A=&-H("A%>&-E<'1I;VX@)&4I('L*
M+0D)"21L;V-K3V)J+3YS>7-,;V<H)T9A:6QE9"!T;R!A8W%U:7)E(&QO8VLZ
M("<N)&4M/F=E=$UE<W-A9V4H*2P@,RD["BL)"0DD;&]C:T]B:BT^<WES3&]G
M*"=&86EL960@=&\@86-Q=6ER92!L;V-K.B G+B1E+3YG971-97-S86=E*"DL
M(%-94TQ/1U]3159%4DE465]%4E)/4BD["B )"0DD<W5C8V5S<R ](&9A;'-E
M.PDO+R!)9B!L;V-K:6YG(&9A:6QS+"!R971U<FX@=VET:"!F86QS92!A;F0@
M8V]N=&EN=64@=VET:&]U="!L;V-K:6YG"B )"7T*( I 0" M,S0U-2PQ,2 K
M,S0P,2PQ,#D at 0$ -"B )?0H@"B )+RHJ"BL)("H at 26YI=&EA;&EZ92!F:6QE
M+6)A<V5D('-T871I<W1I8W,@:&%N9&QI;F<Z($-H96-K(&9I;&5N86UE(&%N
M9"!P97)M:7-S:6]N<RP at 86YD(&-R96%T92!T:&4@;&]G9FEL92!I9B!I="!D
M;V5S(&YO="!E>&ES="!Y970N"BL)("H at 5&AI<R!F=6YC=&EO;B!S:&]U;&0@
M8F4 at 8V%L;&5D('=I=&@@8V%R92!B96-A=7-E(&ET(&UI9VAT(&]V97)W<FET
M92!E>&ES=&EN9R!S971T:6YG<R!O=&AE<G=I<V4N"BL)("H**PD@*B! <F5T
M=7)N"6)O;VQE86X)"51R=64@:68@<W1A=&ES=&EC<R!A<F4 at 96YA8FQE9" H
M=VEL;"!R97%U:7)E('-O;64@;6]R92!P<F]C97-S:6YG(&%F=&5R(&-H87)S
M970@:&%N9&QI;F<@:7,@:6YI=&EA;&EZ960I"BL)("H at 0&%C8V5S<R!P<FEV
M871E"BL)("HO"BL)9G5N8W1I;VX@<W1A=&ES=&EC<U]I;FET*"D@>PHK"0DD
M<V5T4W1A=%!A9V5.86UE(#T at 9F%L<V4["BL)"21T:&5,;V=&:6QE(#T@)'1H
M:7,M/E194$\S7T-/3D9?5D%24ULG1D4G75LG;&]G9FEL95]D:7(G72YS=')F
M=&EM92 at D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A=%]A<&%C:&5?;&]G
M9FEL92==*3L**PHK"0D)+R\@061D(%!!5$A?<VET92!L969T('1O("1T:&5,
M;V=&:6QE(&EF('1H92!P871H(&ES(&YO="!A8G-O;'5T92!Y970**PD):68@
M*"%T,VQI8E]D:78Z.FES06)S4&%T:"@D=&AE3&]G1FEL92DI("1T:&5,;V=&
M:6QE(#T at 4$%42%]S:71E+B1T:&5,;V=&:6QE.PHK"BL)"6EF("@D=&AI<RT^
M8V]N9FEG6R=C;VYF:6<G75LG<W1A=%]A<&%C:&4G72 F)B D=&AI<RT^8V]N
M9FEG6R=C;VYF:6<G75LG<W1A=%]A<&%C:&5?;&]G9FEL92==("8F("%S=')S
M='(H)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T871?87!A8VAE7VQO9V9I
M;&4G72PG+R<I*2!["BL)"0EI9B H=#-L:6)?9&EV.CII<T%L;&]W961!8G-0
M871H*"1T:&5,;V=&:6QE*2D)>PHK"0D)"6EF("@A0&ES7V9I;&4H)'1H94QO
M9T9I;&4I*0E["BL)"0D)"71O=6-H*"1T:&5,;V=&:6QE*3L)+R\@5')Y('1O
M(&-R96%T92!T:&4@;&]G9FEL90HK"0D)"0ET,VQI8E]D:78Z.F9I>%!E<FUI
M<W-I;VYS*"1T:&5,;V=&:6QE*3L**PD)"0E]"BL**PD)"0EI9B H0&ES7V9I
M;&4H)'1H94QO9T9I;&4I("8F($!I<U]W<FET86)L92 at D=&AE3&]G1FEL92DI
M"7L**PD)"0D))'1H:7,M/F-O;F9I9ULG<W1A=%]V87)S)UU;)VQO9T9I;&4G
M72 ]("1T:&5,;V=&:6QE.PHK"0D)"0DD<V5T4W1A=%!A9V5.86UE(#T@=')U
M93L)+R\@4V5T('!A9V4@;F%M92!L871E<B!O;@HK"0D)"7T at 96QS92!["BL)
M"0D)"21'3$]"04Q36R=45"==+3YS97144VQO9TUE<W-A9V4H)T-O=6QD(&YO
M="!S970@;&]G9FEL92!P871H+B!#:&5C:R!F:6QE<&%T:"!A;F0@<&5R;6ES
M<VEO;G,N)RPS*3L**PD)"0E]"BL)"0E]"BL)"7T**PHK"0ER971U<FX@)'-E
M=%-T871086=E3F%M93L**PE]"BL**PDO*BH**PD@*B!3970@=&AE('!A9V5N
M86UE(&9O<B!T:&4@;&]G9FEL92!E;G1R>0HK"2 J"BL)("H at 0')E='5R;@EV
M;VED"BL)("H at 0&%C8V5S<R!P<FEV871E"BL)("HO"BL)9G5N8W1I;VX@<W1A
M=&ES=&EC<U]I;FET7W!A9V5N86UE*"D@>PHK"0D)+R\@36%K92!L:69E(&5A
M<VEE<B!A;F0 at 86-C97!T('9A<FEA;G1S(&9O<B!U=&8M. HK"0EI9B H<')E
M9U]M871C:"@G+W5T9BT_."]I)RP@)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;
M)W-T871?87!A8VAE7VYI8V54:71L92==*2D@>PHK"0D))'1H:7,M/F-O;F9I
M9ULG8V]N9FEG)UU;)W-T871?87!A8VAE7VYI8V54:71L92==(#T@)W5T9BTX
M)SL**PD)?0HK"0EI9B H)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T871?
M87!A8VAE7VYI8V54:71L92==(#T]("=U=&8M."<I('L**PD)"21S:&]R=%1I
M=&QE(#T@)'1H:7,M/F-S0V]N=D]B:BT^=71F.%]E;F-O9&4H)'1H:7,M/G!A
M9V5;)W1I=&QE)UTL)'1H:7,M/G)E;F1E<D-H87)S970I.PHK"0E](&5L<V5I
M9B H)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T871?87!A8VAE7VYI8V54
M:71L92==*2'1H:7,M/G)E;F1E<D-H87)S970L)'1H:7,M
M/G!A9V5;)W1I=&QE)UTI.PHK"0E](&5L<V4@>PHK"0D))'-H;W)T5&ET;&4@
M/2 D=&AI<RT^<&%G95LG=&ET;&4G73L**PD)?0HK"0DD;&5N(#T@=#-L:6)?
M9&EV.CII;G1);E)A;F=E*"1T:&ES+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T
M7V%P86-H95]P86=E3&5N)UTL,2PQ,# L,S I.PHK"0EI9B H)'1H:7,M/F-O
M;F9I9ULG8V]N9FEG)UU;)W-T871?87!A8VAE7VYI8V54:71L92==(#T]("=U
M=&8M."<I('L**PD)"21S:&]R=%1I=&QE(#T@<F%W=7)L96YC;V1E*"1T:&ES
M+3YC<T-O;G9/8FHM/G-U8G-T<B at G=71F+3 at G+"1S:&]R=%1I=&QE+# L)&QE
M;BDI.PHK"0E](&5L<V4@>PHK"0D))'-H;W)T5&ET;&4@/2!S=6)S='(H<')E
M9U]R97!L86-E*"<O6UXN6SIA;&YU;3I=7RU=+R<L)U\G+"1S:&]R=%1I=&QE
M*2PP+"1L96XI.PHK"0E]"BL)"21P86=E3F%M92 ]("1T:&ES+3YC;VYF:6=;
M)V-O;F9I9R==6R=S=&%T7V%P86-H95]P86=E;F%M97,G72 _("1T:&ES+3YC
M;VYF:6=;)V-O;F9I9R==6R=S=&%T7V%P86-H95]P86=E;F%M97,G72 Z("=;
M<&%T:%U;=&ET;&5=+2U;=6ED72YH=&UL)SL**PD))'!A9V5.86UE(#T@<W1R
M7W)E<&QA8V4H)UMT:71L95TG+" D<VAO<G14:71L92 L)'!A9V5.86UE*3L*
M*PD))'!A9V5.86UE(#T@<W1R7W)E<&QA8V4H)UMU:61=)RPD=&AI<RT^<&%G
M95LG=6ED)UTL)'!A9V5.86UE*3L**PD))'!A9V5.86UE(#T@<W1R7W)E<&QA
M8V4H)UMA;&EA<UTG+"1T:&ES+3YP86=E6R=A;&EA<R==+"1P86=E3F%M92D[
M"BL)"21P86=E3F%M92 ]('-T<E]R97!L86-E*"=;='EP95TG+"1T:&ES+3YT
M>7!E+"1P86=E3F%M92D["BL)"21P86=E3F%M92 ]('-T<E]R97!L86-E*"=;
M<F5Q=65S=%]U<FE=)RQT,VQI8E]D:78Z.F=E=$EN9'!%;G8H)U)%455%4U1?
M55)))RDL)'!A9V5.86UE*3L**PD))'1E;7 @/2 D=&AI<RT^8V]N9FEG6R=R
M;V]T3&EN92==.PHK"0EI9B H)'1E;7 I('L)+R\@<F]O=$QI;F4 at 9&]E<R!N
M;W0 at 97AI<W0@:68@=&AI<R!F=6YC=&EO;B!I<R!C86QL960 at 870@96%R;'D@
M<W1A9V4@*&4N9RX@:68 at 1$(@8V]N;F5C=&EO;B!F86EL960I"BL)"0EA<G)A
M>5]P;W H)'1E;7 I.PHK"0D):68@*"1T:&ES+3YC;VYF:6=;)V-O;F9I9R==
M6R=S=&%T7V%P86-H95]N;U)O;W0G72D@>PHK"0D)"6%R<F%Y7W-H:69T*"1T
M96UP*3L**PD)"7T**PD)"21L96X@/2!T,VQI8E]D:78Z.FEN=$EN4F%N9V4H
M)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T871?=&ET;&5,96XG72PQ+#$P
M,"PR,"D["BL)"0EI9B H)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T871?
M87!A8VAE7VYI8V54:71L92==(#T]("=U=&8M."<I('L**PD)"0DD<&%T:" ]
M("<G.PHK"0D)"21C(#T at 8V]U;G0H)'1E;7 I.PHK"0D)"69O<B H)&D],#L@
M)&D\)&,[("1I*RLI('L**PD)"0D):68@*"1T96UP6R1I75LG=6ED)UTI('L*
M*PD)"0D)"21P(#T@)'1H:7,M/F-S0V]N=D]B:BT^8W)O<"@G=71F+3 at G+"1T
M:&ES+3YC<T-O;G9/8FHM/G5T9CA?96YC;V1E*"1T96UP6R1I75LG=&ET;&4G
M72PD=&AI<RT^<F5N9&5R0VAA<G-E="DL)&QE;BPB7'A%,EQX.#!<>$$V(BD[
M"2\O(%4K,C R-CL at 2$]225I/3E1!3"!%3$Q)4%-)4PHK"0D)"0D))'!A=&@N
M/2 G+R<@+B!R87=U<FQE;F-O9&4H)' I.PHK"0D)"0E]"BL)"0D)?0HK"0D)
M?2!E;'-E:68@*"1T:&ES+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T7V%P86-H
M95]N:6-E5&ET;&4G72D@>PHK"0D)"21P871H(#T@)'1H:7,M/F-S0V]N=D]B
M:BT^<W!E8T-H87)S5&]!4T-)22 at D=&AI<RT^<F5N9&5R0VAA<G-E="PD=&AI
M<RT^<WES7W!A9V4M/F=E=%!A=&A&<F]M4F]O=&QI;F4H)'1E;7 L)&QE;BDI
M.PHK"0D)?2!E;'-E('L**PD)"0DD<&%T:" ]("1T:&ES+3YS>7-?<&%G92T^
M9V5T4&%T:$9R;VU2;V]T;&EN92 at D=&5M<"PD;&5N*3L**PD)"7T**PD)?2!E
M;'-E('L**PD)"21P871H(#T@)R<["2\O($EF(')O;W1,:6YE(&ES(&UI<W-I
M;F<L('=E(&IU<W0 at 9')O<"!S;VUE(&9U;F-T:6]N86QI='DN+BX**PD)?0HK
M"0EI9B H)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T871?87!A8VAE7VYI
M8V54:71L92==(#T]("=U=&8M."<I('L**PD)"21T:&ES+3YC;VYF:6=;)W-T
M871?=F%R<R==6R=P86=E3F%M92==(#T@<W1R7W)E<&QA8V4H)UMP871H72<L
M("1P871H+B<O)RP@)'!A9V5.86UE*3L**PD)?2!E;'-E('L**PD)"21T:&ES
M+3YC;VYF:6=;)W-T871?=F%R<R==6R=P86=E3F%M92==(#T@<W1R7W)E<&QA
M8V4H)UMP871H72<L('!R96=?<F5P;&%C92 at G+UM>+ELZ86QN=6TZ75PO7RU=
M+R<L)U\G+"1P871H+B<O)RDL("1P86=E3F%M92D["BL)"7T**PD)"BL)"0DO
M+R!R971U<FX@=')U90HK"0ER971U<FX@=')U93L**PE]"BL**PDO*BH*( D@
M*B!3879E<R!H:70@<W1A=&ES=&EC<PH@"2 J"B )("H at 0')E='5R;@EV;VED
M"B )("HO"B )9G5N8W1I;VX@<W1A=&ES=&EC<R at I"7L**PD)"B )"6EF("@D
M=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A="==("8F"B )"0D)*"%S=')C
M;7 H)R<L)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T871?='EP94YU;4QI
M<W0G72D@?'P@=#-L:6)?9&EV.CII;DQI<W0H<W1R7W)E<&QA8V4H)R G+"<G
M+"1T:&ES+3YC;VYF:6=;)V-O;F9I9R==6R=S=&%T7W1Y<&5.=6U,:7-T)UTI
M+" D=&AI<RT^='EP92DI("8F"B )"0D)*"$D=&AI<RT^8V]N9FEG6R=C;VYF
M:6<G75LG<W1A=%]E>&-L=61E0D5U<V5R2&ET<R==('Q\("$D=&AI<RT^8F55
M<V5R3&]G:6XI("8F"D! ("TS-3(W+#$R("LS-3<Q+#(V($! #0H@"B )"0D)
M"2\O($%P86-H93H*( D)"0EI9B H)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;
M)W-T871?87!A8VAE)UT@)B8@)'1H:7,M/F-O;F9I9ULG<W1A=%]V87)S)UU;
M)W!A9V5.86UE)UTI"7L*+0D)"0D):68@*$!I<U]F:6QE*"1T:&ES+3YC;VYF
M:6=;)W-T871?=F%R<R==6R=L;V=&:6QE)UTI*0E["BT)"0D)"0DD3&]G3&EN
M92 ]("@H=#-L:6)?9&EV.CIG971);F1P16YV*"=214U/5$5?2$]35"<I("8F
M("$D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A=%]A<&%C:&5?;F](;W-T
M)UTI(#\@=#-L:6)?9&EV.CIG971);F1P16YV*"=214U/5$5?2$]35"<I(#H@
M=#-L:6)?9&EV.CIG971);F1P16YV*"=214U/5$5?041$4B<I*2XG("T at +2 G
M+D1A=&4H)UMD+TTO63I(.FDZ<R K,# P,%TG+"1'3$]"04Q36R=%6$5#7U1)
M344G72DN)R B1T54("<N)'1H:7,M/F-O;F9I9ULG<W1A=%]V87)S)UU;)W!A
M9V5.86UE)UTN)R!(5%10+S$N,2(@,C P("<N<W1R;&5N*"1T:&ES+3YC;VYT
M96YT*3L*+0D)"0D)"6EF("@A)'1H:7,M/F-O;F9I9ULG8V]N9FEG)UU;)W-T
M871?87!A8VAE7VYO=$5X=&5N9&5D)UTI"7L*+0D)"0D)"0DD3&]G3&EN92X]
M("<@(B<N=#-L:6)?9&EV.CIG971);F1P16YV*"=(5%107U)%1D5215(G*2XG
M(B B)RYT,VQI8E]D:78Z.F=E=$EN9'!%;G8H)TA45%!?55-%4E]!1T5.5"<I
M+B<B)SL*+0D)"0D)"7T**PD)"0D):68@*$!I<U]F:6QE*"1T:&ES+3YC;VYF
M:6=;)W-T871?=F%R<R==6R=L;V=&:6QE)UTI*2!["BL)"0D)"0DO+R!"=6EL
M9"!A(&QO9R!L:6YE("AF;W)M870@:7, at 9&5R:79E9"!F<F]M('1H92!.0U-!
M(&5X=&5N9&5D+V-O;6)I;F5D(&QO9R!F;W)M870I"BL)"0D)"0D)+R\@3&]G
M('!A<G0@,3H at 4F5M;W1E(&AO<W1N86UE("\@861D<F5S<PHK"0D)"0D))$QO
M9TQI;F4@/2 H=#-L:6)?9&EV.CIG971);F1P16YV*"=214U/5$5?2$]35"<I
M("8F("$D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A=%]A<&%C:&5?;F](
M;W-T)UTI(#\@=#-L:6)?9&EV.CIG971);F1P16YV*"=214U/5$5?2$]35"<I
M(#H@=#-L:6)?9&EV.CIG971);F1P16YV*"=214U/5$5?041$4B<I.PHK"0D)
M"0D)"2\O($QO9R!P87)T(#(Z($9A:V4@=&AE(')E;6]T92!L;V=N86UE"BL)
M"0D)"0DD3&]G3&EN92X]("<@+2<["BL)"0D)"0D)+R\@3&]G('!A<G0@,SH@
M4F5M;W1E('5S97)N86UE"BL)"0D)"0DD3&]G3&EN92X]("<@)RXH)'1H:7,M
M/FQO9VEN57-E<B _("1T:&ES+3YF95]U<V5R+3YU<V5R6R=U<V5R;F%M92==
M(#H@)W5N:VYO=VX@=7-E<B<I.PHK"0D)"0D)"2\O($QO9R!P87)T(#0Z(%1I
M;64**PD)"0D)"21,;V=,:6YE+CT@)R G+F1A=&4H)UMD+TTO63I(.FDZ<R K
M,# P,%TG+"1'3$]"04Q36R=%6$5#7U1)344G72D["BL)"0D)"0D)+R\@3&]G
M('!A<G0 at -3H@1FER<W0@;&EN92!O9B!R97%U97-T("AT:&4@<F5Q=65S="!F
M:6QE;F%M92D**PD)"0D)"21,;V=,:6YE+CT@)R B1T54("<N)'1H:7,M/F-O
M;F9I9ULG<W1A=%]V87)S)UU;)W!A9V5.86UE)UT["BL)"0D)"0D)+R\@3&]G
M('!A<G0 at -CH@4W1A='5S(&%N9"!C;VYT96YT(&QE;F=T:" H:6=N;W)E<R!S
M<&5C:6%L(&-O;G1E;G0@;&EK92!A9&UI;B!P86YE;"$I"BL)"0D)"0DD3&]G
M3&EN92X]("<@2%144"\Q+C$@,C P("<N<W1R;&5N*"1T:&ES+3YC;VYT96YT
M*3L*( HK"0D)"0D):68@*"$D=&AI<RT^8V]N9FEG6R=C;VYF:6<G75LG<W1A
M=%]A<&%C:&5?;F]T17AT96YD960G72D@>PHK"0D)"0D)"21R969E<F5R(#T@
M=#-L:6)?9&EV.CIG971);F1P16YV*"=(5%107U)%1D5215(G*3L**PD)"0D)
M"0DD3&]G3&EN92X]("<@(B<N*"1R969E<F5R(#\@)')E9F5R97(@.B G+2<I
M+B<B("(G+G0S;&EB7V1I=CHZ9V5T26YD<$5N=B at G2%144%]54T527T%'14Y4
M)RDN)R(G.PHK( D)"0D)"7T**PH@"0D)"0D))$=,3T)!3%-;)U14)UTM/G!U
M<V at H)U=R:71E('1O(&QO9R!F:6QE("AF<'5T<RDG*3L*( D)"0D)"0DD;&]G
M9FEL96AA;F1L92 ](&9O<&5N*"1T:&ES+3YC;VYF:6=;)W-T871?=F%R<R==
M6R=L;V=&:6QE)UTL("=A)RD["B )"0D)"0D)9G!U=',H)&QO9V9I;&5H86YD
7;&4L("1,;V=,:6YE+F-H<B at Q,"DI.PH`
`
end
More information about the TYPO3-team-core
mailing list