[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference hydra::axp-developer

Title:Alpha Developer Support
Notice:[email protected], 800-332-4786
Moderator:HYDRA::SYSTEM
Created:Mon Jun 06 1994
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:3722
Total number of notes:11359

3475.0. "Manugistics" by HYDRA::DORHAMER () Mon Apr 14 1997 14:19

    Company Name :  Manugistics
    Contact Name :  Kevin McBride
    Phone        :  301-984-5364
    Fax          :  
    Email        :  [email protected]
    Date/Time in :  14-APR-1997 13:17:03
    Entered by   :  Karen Dorhamer
    SPE center   :  MRO

    Category     :  UNIX
    OS Version   :  v3.2G
    System H/W   :  


    Brief Description of Problem:
    -----------------------------

Kevin is havin a problem with C++ and template files.  His options files
are not getting recognized.
T.RTitleUserPersonal
Name
DateLines
3475.1asked for script that shows problemHYDRA::DORHAMERMon Apr 14 1997 14:265
    I asked Kevin to e-mail us a copy of the script that shows the compile
    and link syntax that he is using and the error messages that he is
    receiving.
    
    Karen
3475.2problem descriptionHYDRA::DORHAMERMon Apr 14 1997 17:471385
From:	SMTP%"[email protected]" 14-APR-1997 15:34:47.38
To:	alpha-developer <[email protected]>
CC:	
Subj:	Attn: Karen Dorhamer - Build Problem

Karen,

As we discussed on the phone, here is a description of the build problem
I am having along with some supporting files.

We are building a large application using C++, Object Space's System
Toolkit 2.0 (STL), and Orbix 2.0.  I recently began porting to the
alpha.  We are runing Digital Unix (osf1) 3.2G and version 5.5 of the
C++ compiler (I include a listing of the
/usr/lib/cmplrs/cxx directory).

The problem seems to be in the template resolution.  As with other
platforms, I notice that the DEC auto-instatiates the templates into
.cxx files in the repository directory along with matching .cmd files
which seem to represent compiler options which
will be used to build the .cxx files into .o files for inclusion into
the libraries or executables.

The first thing I noticed was that the OSF cxx compiler, unlike most
platforms, requires a space beween certain options and the values they
take such as '-o', '-ptr', and '-ptsuf'.  So, I specify options such as
'-ptr ./ptrepositoryD' and '-ptsuf ".cc .icc
.ipp .cxx ..."'.  If I omit the spaces, these options generate errors or
are ignored, and if I leave out the suffix list and specify the
-define_templates flag, I get an error because we have template
definitions in a .icc file.  However, I noticed in the
.cmd files in the repository, the spaces are gone and the quotes in my
suffix list are gone, so the repository that actualy contains the .cxx
files is ignored.  I got around this first problem by leaving out the
'-ptr' flag and using the default
repository.  But then, the suffix list generates errors or warnings and
the various .cxx files are not found and don't get compiled and I end up
with many unresolved externals.  Editing the .cmd files to add the space
and the quotes back into the suffix
list does not seem to help.  If I omit the suffix list and the
-define_templates option (An option I usually don't use, but using it
doesn't help), then those templates it does find and create .cxx files
are created and compiled into .o files successfully,
but many unresolved externals still exist from the ones it didn't find.

The final problem is that some of the .cxx files it tries to find during
the link such as sem_wait.cxx and others simply aren't there.  These
seem os related and this may just be something I'm missing.  This
doesn't seem exactly like the other problem and
may or may not be related, but if you can help, that would be great.

My questions are (all basically why aren't the templates being
resolved?):

   Is there any way to make the compiler not need the spaces between the
option tag and its value?
   Do I have the correct format for the suffix list?
   Why do the .cmd files have the wrong option format even though they
are based on my compiler options?
   Why are certain .cxx files that the compiler looks for not in the
repository and others are there but ignored?
   Will changing our names to use only standard suffixes (what are
they?) and leaving out the '-ptsuf...' option alleviate some of the
problem for now.
   Is there anything else about template auto-instantiation and
resolution under the osf c++ compilers that I am missing and that may be
contributing to my problems?
   Are there any other manuals on the OSF1 build
environment/tools/compilers/c++/templates?


Output of build.  This directory is one of many.  This particular build
makes a library (works fine) and the an executable (eservice) that uses
that library and others.  It is the link of this executable that fails.

(See attached file: mak.out)

Directory listing of cxx_repository after compile and attempt at link:

(See attached file: repos.lst)

Directory listing of /usr/lib/cmplrs/cxx:

(See attached file: cmplrs.lst)

Sample .cmd files generated in cxx_repository from compile:

(See attached file:
append_helper__49basic_string__Tc16char_traits_char13allocator__TcXcUl.c
md)

(See attached file:
append_helper__49basic_string__Tc16char_traits_char13allocator__TcXPCcUl
.cmd)


If you need any further information, please contact me as soon as
possible as this is holding up a port for a major client.

Thanks for your help.



                                         Kevin McBride
                                         Manugistics
                                         (301) 984-5364
                                         [email protected]


begin 600 mak.out
M&UM(&UM**BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BH-"BHJ*B!U<VEN9R!N97<@0U!0
M4E5,15,N34%+#0HJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*@T**BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BH-"BHJ*B!U<VEN9R!N97<@3$E"4E5,15,N34%+#0HJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*@T**BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BH-"BHJ*B!U<VEN
M9R!/34=254Q%4RY-04L-"BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ#0HJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*@T**BHJ('5S:6YG(&YE=R!,3DM254Q%4RY-04L-"BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ#0I405)'3U!365,@:7,@;W-F,0T*+W5S<B]B
M:6XO8WAX("U)+W5S<B]I;F-L=61E+V-X>" M22]U<W(O:6YC;'5D92 M22X@
M+4DN+B M22XN+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+R M22]U
M<V5R+W5S97)S,B]K;6-B<FED92],+VEN8R M22]U<V5R+W5S97)S,B]K;6-B
M<FED92],+W-E<G9E<B]C;6YS=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B
M<FED92],+W-E<G9E<B]C;6YS=F-S("U)+W5S<B]L;V-A;"]S>7-T;V]L=C(N
M," M22]U<W(O;&]C86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E(" M22]U<V5R
M+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]O<F)S=F-S("U)+W5S97(O=7-E
M<G,R+VMM8V)R:61E+TPO<V5R=F5R+V]R8G-V8W,O:6YC("U)+W5S97(O=7-E
M<G,R+VMM8V)R:61E+TPO:6YT7W-V8W,O979S=F-S("U)+W5S97(O=7-E<G,R
M+VMM8V)R:61E+TPO:6YT7W-V8W,O:7-C;VUM;VX@+4DO=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]I;G1?<W9C<R]I<U]M971A9&%T82 @+71H<F5A9',@+7!T
M<R M<'1V("UP='-U9B B+F-C("YI<' @+FEC8R N8R N0R N8WAX("Y#6%@@
M+D-#("YC<' B("UG("U$7U]O<V9?7R M1'5N:7@@+41?3U-&,5]33U520T4@
M+41/4T8Q("U$7U)%14Y44D%.5" M1%]#34%?3D]74D%04$524U\@+41?1$5"
M54<@+41-14U?1$5"54<@+41?3D]?341!7T1,3" M1$]37T]31C%?,R M1$]3
M7TY/7U=35%))3D<@+41/4U].15=?0TA%0TL@("U$3U-?4U1,7T%34T525" @
M+41.3TU)3DU!6" M1$]37U5315]%6$-%4%1)3TY3("U$3U-?34%.52 M1$]3
M7U-94U1/3TP@+41/4U].3U]!3$Q/0T%43U)3("U$7U-%4E9%4E\@+41)5%]%
M6%]-04-23U,@("U$3U-?355,5$E?5$A214%$140@+41?341!7U1204-%7T-/
M35!/3D5.5#U<(F-O<U]E<W9C7"(@+6,@+6\@+B]O8FIS+V]S9C%$+V-O<U]E
M<W-?;W-F,2YO(&-O<U]E<W-?;W-F,2YC<' -"E=R:71A8FQE7W)E<&]S:71O
M<GDZ("XO8WAX7W)E<&]S:71O<GD-"E)E<&]S:71O<GE?;&ES=#H@+B]C>'A?
M<F5P;W-I=&]R>0T*8WAX.B!787)N:6YG.B O=7-R+VQO8V%L+V]R8FEX,B]C
M;W)B83(O:6YC;'5D92]C;W)B82]A;GDN:"P@;&EN92 Q,30Z(%1H92 B8VQA
M<W,B(&ME>7=O<F0@:7,@;6ES<VEN9R!I;B!T:&ES(&9R:65N9"!D96-L87)A
M=&EO;BX-"@D@(" @9G)I96YD($-/4D)!.CI4>7!E0V]D93L-"BTM+2TM+2TM
M+2TM+5X-"G)M("UR9B!L:6)C;W-?97-V8RYD8F<N80T*87(@<F,@;&EB8V]S
M7V5S=F,N9&)G+F$@+B]O8FIS+V]S9C%$+V-O<U]E<W-?;W-F,2YO#0IR;2 M
M<F8@;V)J<RYT;7 @9&5F<RYT;7 @=6YS961?9&5F<RYT;7 @,CXO9&5V+VYU
M;&P-"F-P("UF(&QI8F-O<U]E<W9C+F1B9RYA("]U<V5R+W5S97)S,B]K;6-B
M<FED92],+VQI8B]O<V8Q1 T*+W5S<B]B:6XO8WAX("U)+W5S<B]I;F-L=61E
M+V-X>" M22]U<W(O:6YC;'5D92 M22X@+4DN+B M22XN+VEN8R M22]U<V5R
M+W5S97)S,B]K;6-B<FED92],+R M22]U<V5R+W5S97)S,B]K;6-B<FED92],
M+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]C;6YS=F-S
M+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]C;6YS=F-S
M("U)+W5S<B]L;V-A;"]S>7-T;V]L=C(N," M22]U<W(O;&]C86PO;W)B:7@R
M+V-O<F)A,B]I;F-L=61E(" M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E
M<G9E<B]O<F)S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R
M+V]R8G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V
M8W,O979S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V8W,O
M:7-C;VUM;VX@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?<W9C<R]I
M<U]M971A9&%T82 @+71H<F5A9',@+7!T<R M<'1V("UP='-U9B B+F-C("YI
M<' @+FEC8R N8R N0R N8WAX("Y#6%@@+D-#("YC<' B("UG("U$7U]O<V9?
M7R M1'5N:7@@+41?3U-&,5]33U520T4@+41/4T8Q("U$7U)%14Y44D%.5" M
M1%]#34%?3D]74D%04$524U\@+41?1$5"54<@+41-14U?1$5"54<@+41?3D]?
M341!7T1,3" M1$]37T]31C%?,R M1$]37TY/7U=35%))3D<@+41/4U].15=?
M0TA%0TL@("U$3U-?4U1,7T%34T525" @+41.3TU)3DU!6" M1$]37U5315]%
M6$-%4%1)3TY3("U$3U-?34%.52 M1$]37U-94U1/3TP@+41/4U].3U]!3$Q/
M0T%43U)3("U$7U-%4E9%4E\@+41)5%]%6%]-04-23U,@("U$3U-?355,5$E?
M5$A214%$140@+41?341!7U1204-%7T-/35!/3D5.5#U<(F-O<U]E<W9C7"(@
M+6,@+6\@+B]O8FIS+V]S9C%$+V5S97)V:6-E+F\@97-E<G9I8V4N8W!P#0I7
M<FET86)L95]R97!O<VET;W)Y.B N+V-X>%]R97!O<VET;W)Y#0I297!O<VET
M;W)Y7VQI<W0Z("XO8WAX7W)E<&]S:71O<GD-"F-X>#H@5V%R;FEN9SH@+W5S
M<B]L;V-A;"]O<F)I>#(O8V]R8F$R+VEN8VQU9&4O8V]R8F$O86YY+F@L(&QI
M;F4@,3$T.B!4:&4@(F-L87-S(B!K97EW;W)D(&ES(&UI<W-I;F<@:6X@=&AI
M<R!F<FEE;F0@9&5C;&%R871I;VXN#0H)(" @(&9R:65N9"!#3U)"03HZ5'EP
M94-O9&4[#0HM+2TM+2TM+2TM+2U>#0HO=7-R+V)I;B]C>'@@+4DO=7-R+VEN
M8VQU9&4O8WAX("U)+W5S<B]I;F-L=61E("U)+B M22XN("U)+BXO:6YC("U)
M+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO("U)+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V-M
M;G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V-M
M;G-V8W,@+4DO=7-R+VQO8V%L+W-Y<W1O;VQV,BXP("U)+W5S<B]L;V-A;"]O
M<F)I>#(O8V]R8F$R+VEN8VQU9&4@("U)+W5S97(O=7-E<G,R+VMM8V)R:61E
M+TPO<V5R=F5R+V]R8G-V8W,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]S
M97)V97(O;W)B<W9C<R]I;F,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I
M;G1?<W9C<R]E=G-V8W,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?
M<W9C<R]I<V-O;6UO;B M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN=%]S
M=F-S+VES7VUE=&%D871A(" M=&AR96%D<R M<'1S("UP='8@+7!T<W5F("(N
M8V,@+FEP<" N:6-C("YC("Y#("YC>'@@+D-86" N0T,@+F-P<"(@+6<@+41?
M7V]S9E]?("U$=6YI>" M1%]/4T8Q7U-/55)#12 M1$]31C$@+41?4D5%3E12
M04Y4("U$7T--05].3U=205!015)37R M1%]$14)51R M1$U%35]$14)51R M
M1%].3U]-1$%?1$Q,("U$3U-?3U-&,5\S("U$3U-?3D]?5U-44DE.1R M1$]3
M7TY%5U]#2$5#2R @+41/4U]35$Q?05-315)4(" M1$Y/34E.34%8("U$3U-?
M55-%7T580T505$E/3E,@+41/4U]-04Y5("U$3U-?4UE35$]/3" M1$]37TY/
M7T%,3$]#051/4E,@+41?4T525D527R M1$E47T587TU!0U)/4R @+41/4U]-
M54Q425]42%)%041%1" M1%]-1$%?5%)!0T5?0T]-4$].14Y4/5PB8V]S7V5S
M=F-<(B M8R M;R N+V]B:G,O;W-F,40O<'5S:'-U<' N;R!P=7-H<W5P<"YC
M<' -"E=R:71A8FQE7W)E<&]S:71O<GDZ("XO8WAX7W)E<&]S:71O<GD-"E)E
M<&]S:71O<GE?;&ES=#H@+B]C>'A?<F5P;W-I=&]R>0T*8WAX.B!787)N:6YG
M.B O=7-R+VQO8V%L+V]R8FEX,B]C;W)B83(O:6YC;'5D92]C;W)B82]A;GDN
M:"P@;&EN92 Q,30Z(%1H92 B8VQA<W,B(&ME>7=O<F0@:7,@;6ES<VEN9R!I
M;B!T:&ES(&9R:65N9"!D96-L87)A=&EO;BX-"@D@(" @9G)I96YD($-/4D)!
M.CI4>7!E0V]D93L-"BTM+2TM+2TM+2TM+5X-"B]U<W(O8FEN+V-X>" M22]U
M<W(O:6YC;'5D92]C>'@@+4DO=7-R+VEN8VQU9&4@+4DN("U)+BX@+4DN+B]I
M;F,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"\@+4DO=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]I;F,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]S97)V
M97(O8VUN<W9C<R]I;F,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]S97)V
M97(O8VUN<W9C<R M22]U<W(O;&]C86PO<WES=&]O;'8R+C @+4DO=7-R+VQO
M8V%L+V]R8FEX,B]C;W)B83(O:6YC;'5D92 @+4DO=7-E<B]U<V5R<S(O:VUC
M8G)I9&4O3"]S97)V97(O;W)B<W9C<R M22]U<V5R+W5S97)S,B]K;6-B<FED
M92],+W-E<G9E<B]O<F)S=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED
M92],+VEN=%]S=F-S+V5V<W9C<R M22]U<V5R+W5S97)S,B]K;6-B<FED92],
M+VEN=%]S=F-S+VES8V]M;6]N("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO
M:6YT7W-V8W,O:7-?;65T861A=&$@("UT:')E861S("UP=',@+7!T=B M<'1S
M=68@(BYC8R N:7!P("YI8V,@+F,@+D,@+F-X>" N0UA8("Y#0R N8W!P(B M
M9R M1%]?;W-F7U\@+41U;FEX("U$7T]31C%?4T]54D-%("U$3U-&,2 M1%]2
M145.5%)!3E0@+41?0TU!7TY/5U)!4%!%4E-?("U$7T1%0E5'("U$345-7T1%
M0E5'("U$7TY/7TU$05]$3$P@+41/4U]/4T8Q7S,@+41/4U].3U]74U1224Y'
M("U$3U-?3D577T-(14-+(" M1$]37U-43%]!4U-%4E0@("U$3D]-24Y-05@@
M+41/4U]54T5?15A#15!424].4R M1$]37TU!3E4@+41/4U]365-43T],("U$
M3U-?3D]?04Q,3T-!5$]24R M1%]315)615)?("U$251?15A?34%#4D]3(" M
M1$]37TU53%1)7U1(4D5!1$5$("U$7TU$05]44D%#15]#3TU03TY%3E0]7")C
M;W-?97-V8UPB("UC("UO("XO;V)J<R]O<V8Q1"]P=7-H8V]N<RYO('!U<VAC
M;VYS+F-P< T*5W)I=&%B;&5?<F5P;W-I=&]R>3H@+B]C>'A?<F5P;W-I=&]R
M>0T*4F5P;W-I=&]R>5]L:7-T.B N+V-X>%]R97!O<VET;W)Y#0IC>'@Z(%=A
M<FYI;F<Z("]U<W(O;&]C86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E+V-O<F)A
M+V%N>2YH+"!L:6YE(#$Q-#H@5&AE(")C;&%S<R(@:V5Y=V]R9"!I<R!M:7-S
M:6YG(&EN('1H:7,@9G)I96YD(&1E8VQA<F%T:6]N+@T*"2 @("!F<FEE;F0@
M0T]20D$Z.E1Y<&5#;V1E.PT*+2TM+2TM+2TM+2TM7@T*+W5S<B]B:6XO8WAX
M("U)+W5S<B]I;F-L=61E+V-X>" M22]U<W(O:6YC;'5D92 M22X@+4DN+B M
M22XN+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+R M22]U<V5R+W5S
M97)S,B]K;6-B<FED92],+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],
M+W-E<G9E<B]C;6YS=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],
M+W-E<G9E<B]C;6YS=F-S("U)+W5S<B]L;V-A;"]S>7-T;V]L=C(N," M22]U
M<W(O;&]C86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E(" M22]U<V5R+W5S97)S
M,B]K;6-B<FED92],+W-E<G9E<B]O<F)S=F-S("U)+W5S97(O=7-E<G,R+VMM
M8V)R:61E+TPO<V5R=F5R+V]R8G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM
M8V)R:61E+TPO:6YT7W-V8W,O979S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO:6YT7W-V8W,O:7-C;VUM;VX@+4DO=7-E<B]U<V5R<S(O:VUC8G)I
M9&4O3"]I;G1?<W9C<R]I<U]M971A9&%T82 @+71H<F5A9',@+7!T<R M<'1V
M("UP='-U9B B+F-C("YI<' @+FEC8R N8R N0R N8WAX("Y#6%@@+D-#("YC
M<' B("UG("U$7U]O<V9?7R M1'5N:7@@+41?3U-&,5]33U520T4@+41/4T8Q
M("U$7U)%14Y44D%.5" M1%]#34%?3D]74D%04$524U\@+41?1$5"54<@+41-
M14U?1$5"54<@+41?3D]?341!7T1,3" M1$]37T]31C%?,R M1$]37TY/7U=3
M5%))3D<@+41/4U].15=?0TA%0TL@("U$3U-?4U1,7T%34T525" @+41.3TU)
M3DU!6" M1$]37U5315]%6$-%4%1)3TY3("U$3U-?34%.52 M1$]37U-94U1/
M3TP@+41/4U].3U]!3$Q/0T%43U)3("U$7U-%4E9%4E\@+41)5%]%6%]-04-2
M3U,@("U$3U-?355,5$E?5$A214%$140@+41?341!7U1204-%7T-/35!/3D5.
M5#U<(F-O<U]E<W9C7"(@+6,@+6\@+B]O8FIS+V]S9C%$+W!U;&QS=7!P+F\@
M<'5L;'-U<' N8W!P#0I7<FET86)L95]R97!O<VET;W)Y.B N+V-X>%]R97!O
M<VET;W)Y#0I297!O<VET;W)Y7VQI<W0Z("XO8WAX7W)E<&]S:71O<GD-"F-X
M>#H@5V%R;FEN9SH@+W5S<B]L;V-A;"]O<F)I>#(O8V]R8F$R+VEN8VQU9&4O
M8V]R8F$O86YY+F@L(&QI;F4@,3$T.B!4:&4@(F-L87-S(B!K97EW;W)D(&ES
M(&UI<W-I;F<@:6X@=&AI<R!F<FEE;F0@9&5C;&%R871I;VXN#0H)(" @(&9R
M:65N9"!#3U)"03HZ5'EP94-O9&4[#0HM+2TM+2TM+2TM+2U>#0HO=7-R+V)I
M;B]C>'@@+4DO=7-R+VEN8VQU9&4O8WAX("U)+W5S<B]I;F-L=61E("U)+B M
M22XN("U)+BXO:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO("U)+W5S
M97(O=7-E<G,R+VMM8V)R:61E+TPO:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO<V5R=F5R+V-M;G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO<V5R=F5R+V-M;G-V8W,@+4DO=7-R+VQO8V%L+W-Y<W1O;VQV,BXP
M("U)+W5S<B]L;V-A;"]O<F)I>#(O8V]R8F$R+VEN8VQU9&4@("U)+W5S97(O
M=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V]R8G-V8W,@+4DO=7-E<B]U<V5R
M<S(O:VUC8G)I9&4O3"]S97)V97(O;W)B<W9C<R]I;F,@+4DO=7-E<B]U<V5R
M<S(O:VUC8G)I9&4O3"]I;G1?<W9C<R]E=G-V8W,@+4DO=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]I;G1?<W9C<R]I<V-O;6UO;B M22]U<V5R+W5S97)S,B]K
M;6-B<FED92],+VEN=%]S=F-S+VES7VUE=&%D871A(" M=&AR96%D<R M<'1S
M("UP='8@+7!T<W5F("(N8V,@+FEP<" N:6-C("YC("Y#("YC>'@@+D-86" N
M0T,@+F-P<"(@+6<@+41?7V]S9E]?("U$=6YI>" M1%]/4T8Q7U-/55)#12 M
M1$]31C$@+41?4D5%3E1204Y4("U$7T--05].3U=205!015)37R M1%]$14)5
M1R M1$U%35]$14)51R M1%].3U]-1$%?1$Q,("U$3U-?3U-&,5\S("U$3U-?
M3D]?5U-44DE.1R M1$]37TY%5U]#2$5#2R @+41/4U]35$Q?05-315)4(" M
M1$Y/34E.34%8("U$3U-?55-%7T580T505$E/3E,@+41/4U]-04Y5("U$3U-?
M4UE35$]/3" M1$]37TY/7T%,3$]#051/4E,@+41?4T525D527R M1$E47T58
M7TU!0U)/4R @+41/4U]-54Q425]42%)%041%1" M1%]-1$%?5%)!0T5?0T]-
M4$].14Y4/5PB8V]S7V5S=F-<(B M8R M;R N+V]B:G,O;W-F,40O<'5L;&-O
M;G,N;R!P=6QL8V]N<RYC<' -"E=R:71A8FQE7W)E<&]S:71O<GDZ("XO8WAX
M7W)E<&]S:71O<GD-"E)E<&]S:71O<GE?;&ES=#H@+B]C>'A?<F5P;W-I=&]R
M>0T*8WAX.B!787)N:6YG.B O=7-R+VQO8V%L+V]R8FEX,B]C;W)B83(O:6YC
M;'5D92]C;W)B82]A;GDN:"P@;&EN92 Q,30Z(%1H92 B8VQA<W,B(&ME>7=O
M<F0@:7,@;6ES<VEN9R!I;B!T:&ES(&9R:65N9"!D96-L87)A=&EO;BX-"@D@
M(" @9G)I96YD($-/4D)!.CI4>7!E0V]D93L-"BTM+2TM+2TM+2TM+5X-"B]U
M<W(O8FEN+V-X>" M22]U<W(O:6YC;'5D92]C>'@@+4DO=7-R+VEN8VQU9&4@
M+4DN("U)+BX@+4DN+B]I;F,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"\@
M+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;F,@+4DO=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]S97)V97(O8VUN<W9C<R]I;F,@+4DO=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]S97)V97(O8VUN<W9C<R M22]U<W(O;&]C86PO<WES=&]O
M;'8R+C @+4DO=7-R+VQO8V%L+V]R8FEX,B]C;W)B83(O:6YC;'5D92 @+4DO
M=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]S97)V97(O;W)B<W9C<R M22]U<V5R
M+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]O<F)S=F-S+VEN8R M22]U<V5R
M+W5S97)S,B]K;6-B<FED92],+VEN=%]S=F-S+V5V<W9C<R M22]U<V5R+W5S
M97)S,B]K;6-B<FED92],+VEN=%]S=F-S+VES8V]M;6]N("U)+W5S97(O=7-E
M<G,R+VMM8V)R:61E+TPO:6YT7W-V8W,O:7-?;65T861A=&$@("UT:')E861S
M("UP=',@+7!T=B M<'1S=68@(BYC8R N:7!P("YI8V,@+F,@+D,@+F-X>" N
M0UA8("Y#0R N8W!P(B M9R M1%]?;W-F7U\@+41U;FEX("U$7T]31C%?4T]5
M4D-%("U$3U-&,2 M1%]2145.5%)!3E0@+41?0TU!7TY/5U)!4%!%4E-?("U$
M7T1%0E5'("U$345-7T1%0E5'("U$7TY/7TU$05]$3$P@+41/4U]/4T8Q7S,@
M+41/4U].3U]74U1224Y'("U$3U-?3D577T-(14-+(" M1$]37U-43%]!4U-%
M4E0@("U$3D]-24Y-05@@+41/4U]54T5?15A#15!424].4R M1$]37TU!3E4@
M+41/4U]365-43T],("U$3U-?3D]?04Q,3T-!5$]24R M1%]315)615)?("U$
M251?15A?34%#4D]3(" M1$]37TU53%1)7U1(4D5!1$5$("U$7TU$05]44D%#
M15]#3TU03TY%3E0]7")C;W-?97-V8UPB("UC("UO("XO;V)J<R]O<V8Q1"]P
M<'-H<W5P<"YO('!P<VAS=7!P+F-P< T*5W)I=&%B;&5?<F5P;W-I=&]R>3H@
M+B]C>'A?<F5P;W-I=&]R>0T*4F5P;W-I=&]R>5]L:7-T.B N+V-X>%]R97!O
M<VET;W)Y#0IC>'@Z(%=A<FYI;F<Z("]U<W(O;&]C86PO;W)B:7@R+V-O<F)A
M,B]I;F-L=61E+V-O<F)A+V%N>2YH+"!L:6YE(#$Q-#H@5&AE(")C;&%S<R(@
M:V5Y=V]R9"!I<R!M:7-S:6YG(&EN('1H:7,@9G)I96YD(&1E8VQA<F%T:6]N
M+@T*"2 @("!F<FEE;F0@0T]20D$Z.E1Y<&5#;V1E.PT*+2TM+2TM+2TM+2TM
M7@T*+W5S<B]B:6XO8WAX("U)+W5S<B]I;F-L=61E+V-X>" M22]U<W(O:6YC
M;'5D92 M22X@+4DN+B M22XN+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED
M92],+R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN8R M22]U<V5R+W5S
M97)S,B]K;6-B<FED92],+W-E<G9E<B]C;6YS=F-S+VEN8R M22]U<V5R+W5S
M97)S,B]K;6-B<FED92],+W-E<G9E<B]C;6YS=F-S("U)+W5S<B]L;V-A;"]S
M>7-T;V]L=C(N," M22]U<W(O;&]C86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E
M(" M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]O<F)S=F-S("U)
M+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V]R8G-V8W,O:6YC("U)
M+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V8W,O979S=F-S("U)+W5S
M97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V8W,O:7-C;VUM;VX@+4DO=7-E
M<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?<W9C<R]I<U]M971A9&%T82 @+71H
M<F5A9',@+7!T<R M<'1V("UP='-U9B B+F-C("YI<' @+FEC8R N8R N0R N
M8WAX("Y#6%@@+D-#("YC<' B("UG("U$7U]O<V9?7R M1'5N:7@@+41?3U-&
M,5]33U520T4@+41/4T8Q("U$7U)%14Y44D%.5" M1%]#34%?3D]74D%04$52
M4U\@+41?1$5"54<@+41-14U?1$5"54<@+41?3D]?341!7T1,3" M1$]37T]3
M1C%?,R M1$]37TY/7U=35%))3D<@+41/4U].15=?0TA%0TL@("U$3U-?4U1,
M7T%34T525" @+41.3TU)3DU!6" M1$]37U5315]%6$-%4%1)3TY3("U$3U-?
M34%.52 M1$]37U-94U1/3TP@+41/4U].3U]!3$Q/0T%43U)3("U$7U-%4E9%
M4E\@+41)5%]%6%]-04-23U,@("U$3U-?355,5$E?5$A214%$140@+41?341!
M7U1204-%7T-/35!/3D5.5#U<(F-O<U]E<W9C7"(@+6,@+6\@+B]O8FIS+V]S
M9C%$+W!P<VAC;VYS+F\@<'!S:&-O;G,N8W!P#0I7<FET86)L95]R97!O<VET
M;W)Y.B N+V-X>%]R97!O<VET;W)Y#0I297!O<VET;W)Y7VQI<W0Z("XO8WAX
M7W)E<&]S:71O<GD-"F-X>#H@5V%R;FEN9SH@+W5S<B]L;V-A;"]O<F)I>#(O
M8V]R8F$R+VEN8VQU9&4O8V]R8F$O86YY+F@L(&QI;F4@,3$T.B!4:&4@(F-L
M87-S(B!K97EW;W)D(&ES(&UI<W-I;F<@:6X@=&AI<R!F<FEE;F0@9&5C;&%R
M871I;VXN#0H)(" @(&9R:65N9"!#3U)"03HZ5'EP94-O9&4[#0HM+2TM+2TM
M+2TM+2U>#0HO=7-R+V)I;B]C>'@@+4DO=7-R+VEN8VQU9&4O8WAX("U)+W5S
M<B]I;F-L=61E("U)+B M22XN("U)+BXO:6YC("U)+W5S97(O=7-E<G,R+VMM
M8V)R:61E+TPO("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YC("U)+W5S
M97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V-M;G-V8W,O:6YC("U)+W5S
M97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V-M;G-V8W,@+4DO=7-R+VQO
M8V%L+W-Y<W1O;VQV,BXP("U)+W5S<B]L;V-A;"]O<F)I>#(O8V]R8F$R+VEN
M8VQU9&4@("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V]R8G-V
M8W,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]S97)V97(O;W)B<W9C<R]I
M;F,@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?<W9C<R]E=G-V8W,@
M+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?<W9C<R]I<V-O;6UO;B M
M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN=%]S=F-S+VES7VUE=&%D871A
M(" M=&AR96%D<R M<'1S("UP='8@+7!T<W5F("(N8V,@+FEP<" N:6-C("YC
M("Y#("YC>'@@+D-86" N0T,@+F-P<"(@+6<@+41?7V]S9E]?("U$=6YI>" M
M1%]/4T8Q7U-/55)#12 M1$]31C$@+41?4D5%3E1204Y4("U$7T--05].3U=2
M05!015)37R M1%]$14)51R M1$U%35]$14)51R M1%].3U]-1$%?1$Q,("U$
M3U-?3U-&,5\S("U$3U-?3D]?5U-44DE.1R M1$]37TY%5U]#2$5#2R @+41/
M4U]35$Q?05-315)4(" M1$Y/34E.34%8("U$3U-?55-%7T580T505$E/3E,@
M+41/4U]-04Y5("U$3U-?4UE35$]/3" M1$]37TY/7T%,3$]#051/4E,@+41?
M4T525D527R M1$E47T587TU!0U)/4R @+41/4U]-54Q425]42%)%041%1" M
M1%]-1$%?5%)!0T5?0T]-4$].14Y4/5PB8V]S7V5S=F-<(B M8R M;R N+V]B
M:G,O;W-F,40O<'!U;'-U<' N;R!P<'5L<W5P<"YC<' -"E=R:71A8FQE7W)E
M<&]S:71O<GDZ("XO8WAX7W)E<&]S:71O<GD-"E)E<&]S:71O<GE?;&ES=#H@
M+B]C>'A?<F5P;W-I=&]R>0T*8WAX.B!787)N:6YG.B O=7-R+VQO8V%L+V]R
M8FEX,B]C;W)B83(O:6YC;'5D92]C;W)B82]A;GDN:"P@;&EN92 Q,30Z(%1H
M92 B8VQA<W,B(&ME>7=O<F0@:7,@;6ES<VEN9R!I;B!T:&ES(&9R:65N9"!D
M96-L87)A=&EO;BX-"@D@(" @9G)I96YD($-/4D)!.CI4>7!E0V]D93L-"BTM
M+2TM+2TM+2TM+5X-"B]U<W(O8FEN+V-X>" M22]U<W(O:6YC;'5D92]C>'@@
M+4DO=7-R+VEN8VQU9&4@+4DN("U)+BX@+4DN+B]I;F,@+4DO=7-E<B]U<V5R
M<S(O:VUC8G)I9&4O3"\@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;F,@
M+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]S97)V97(O8VUN<W9C<R]I;F,@
M+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]S97)V97(O8VUN<W9C<R M22]U
M<W(O;&]C86PO<WES=&]O;'8R+C @+4DO=7-R+VQO8V%L+V]R8FEX,B]C;W)B
M83(O:6YC;'5D92 @+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]S97)V97(O
M;W)B<W9C<R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]O<F)S
M=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN=%]S=F-S+V5V
M<W9C<R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN=%]S=F-S+VES8V]M
M;6]N("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V8W,O:7-?;65T
M861A=&$@("UT:')E861S("UP=',@+7!T=B M<'1S=68@(BYC8R N:7!P("YI
M8V,@+F,@+D,@+F-X>" N0UA8("Y#0R N8W!P(B M9R M1%]?;W-F7U\@+41U
M;FEX("U$7T]31C%?4T]54D-%("U$3U-&,2 M1%]2145.5%)!3E0@+41?0TU!
M7TY/5U)!4%!%4E-?("U$7T1%0E5'("U$345-7T1%0E5'("U$7TY/7TU$05]$
M3$P@+41/4U]/4T8Q7S,@+41/4U].3U]74U1224Y'("U$3U-?3D577T-(14-+
M(" M1$]37U-43%]!4U-%4E0@("U$3D]-24Y-05@@+41/4U]54T5?15A#15!4
M24].4R M1$]37TU!3E4@+41/4U]365-43T],("U$3U-?3D]?04Q,3T-!5$]2
M4R M1%]315)615)?("U$251?15A?34%#4D]3(" M1$]37TU53%1)7U1(4D5!
M1$5$("U$7TU$05]44D%#15]#3TU03TY%3E0]7")C;W-?97-V8UPB("UC("UO
M("XO;V)J<R]O<V8Q1"]P<'5L8V]N<RYO('!P=6QC;VYS+F-P< T*5W)I=&%B
M;&5?<F5P;W-I=&]R>3H@+B]C>'A?<F5P;W-I=&]R>0T*4F5P;W-I=&]R>5]L
M:7-T.B N+V-X>%]R97!O<VET;W)Y#0IC>'@Z(%=A<FYI;F<Z("]U<W(O;&]C
M86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E+V-O<F)A+V%N>2YH+"!L:6YE(#$Q
M-#H@5&AE(")C;&%S<R(@:V5Y=V]R9"!I<R!M:7-S:6YG(&EN('1H:7,@9G)I
M96YD(&1E8VQA<F%T:6]N+@T*"2 @("!F<FEE;F0@0T]20D$Z.E1Y<&5#;V1E
M.PT*+2TM+2TM+2TM+2TM7@T*+W5S<B]B:6XO8WAX("U)+W5S<B]I;F-L=61E
M+V-X>" M22]U<W(O:6YC;'5D92 M22X@+4DN+B M22XN+VEN8R M22]U<V5R
M+W5S97)S,B]K;6-B<FED92],+R M22]U<V5R+W5S97)S,B]K;6-B<FED92],
M+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]C;6YS=F-S
M+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]C;6YS=F-S
M("U)+W5S<B]L;V-A;"]S>7-T;V]L=C(N," M22]U<W(O;&]C86PO;W)B:7@R
M+V-O<F)A,B]I;F-L=61E(" M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E
M<G9E<B]O<F)S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R
M+V]R8G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V
M8W,O979S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V8W,O
M:7-C;VUM;VX@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?<W9C<R]I
M<U]M971A9&%T82 @+71H<F5A9',@+7!T<R M<'1V("UP='-U9B B+F-C("YI
M<' @+FEC8R N8R N0R N8WAX("Y#6%@@+D-#("YC<' B("UG("U$7U]O<V9?
M7R M1'5N:7@@+41?3U-&,5]33U520T4@+41/4T8Q("U$7U)%14Y44D%.5" M
M1%]#34%?3D]74D%04$524U\@+41?1$5"54<@+41-14U?1$5"54<@+41?3D]?
M341!7T1,3" M1$]37T]31C%?,R M1$]37TY/7U=35%))3D<@+41/4U].15=?
M0TA%0TL@("U$3U-?4U1,7T%34T525" @+41.3TU)3DU!6" M1$]37U5315]%
M6$-%4%1)3TY3("U$3U-?34%.52 M1$]37U-94U1/3TP@+41/4U].3U]!3$Q/
M0T%43U)3("U$7U-%4E9%4E\@+41)5%]%6%]-04-23U,@("U$3U-?355,5$E?
M5$A214%$140@+41?341!7U1204-%7T-/35!/3D5.5#U<(F-O<U]E<W9C7"(@
M+6,@+6\@+B]O8FIS+V]S9C%$+V5V8VAA;FXN;R!E=F-H86YN+F-P< T*5W)I
M=&%B;&5?<F5P;W-I=&]R>3H@+B]C>'A?<F5P;W-I=&]R>0T*4F5P;W-I=&]R
M>5]L:7-T.B N+V-X>%]R97!O<VET;W)Y#0IC>'@Z(%=A<FYI;F<Z("]U<W(O
M;&]C86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E+V-O<F)A+V%N>2YH+"!L:6YE
M(#$Q-#H@5&AE(")C;&%S<R(@:V5Y=V]R9"!I<R!M:7-S:6YG(&EN('1H:7,@
M9G)I96YD(&1E8VQA<F%T:6]N+@T*"2 @("!F<FEE;F0@0T]20D$Z.E1Y<&5#
M;V1E.PT*+2TM+2TM+2TM+2TM7@T*+W5S<B]B:6XO8WAX("U)+W5S<B]I;F-L
M=61E+V-X>" M22]U<W(O:6YC;'5D92 M22X@+4DN+B M22XN+VEN8R M22]U
M<V5R+W5S97)S,B]K;6-B<FED92],+R M22]U<V5R+W5S97)S,B]K;6-B<FED
M92],+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]C;6YS
M=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]C;6YS
M=F-S("U)+W5S<B]L;V-A;"]S>7-T;V]L=C(N," M22]U<W(O;&]C86PO;W)B
M:7@R+V-O<F)A,B]I;F-L=61E(" M22]U<V5R+W5S97)S,B]K;6-B<FED92],
M+W-E<G9E<B]O<F)S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R
M=F5R+V]R8G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT
M7W-V8W,O979S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V
M8W,O:7-C;VUM;VX@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?<W9C
M<R]I<U]M971A9&%T82 @+71H<F5A9',@+7!T<R M<'1V("UP='-U9B B+F-C
M("YI<' @+FEC8R N8R N0R N8WAX("Y#6%@@+D-#("YC<' B("UG("U$7U]O
M<V9?7R M1'5N:7@@+41?3U-&,5]33U520T4@+41/4T8Q("U$7U)%14Y44D%.
M5" M1%]#34%?3D]74D%04$524U\@+41?1$5"54<@+41-14U?1$5"54<@+41?
M3D]?341!7T1,3" M1$]37T]31C%?,R M1$]37TY/7U=35%))3D<@+41/4U].
M15=?0TA%0TL@("U$3U-?4U1,7T%34T525" @+41.3TU)3DU!6" M1$]37U53
M15]%6$-%4%1)3TY3("U$3U-?34%.52 M1$]37U-94U1/3TP@+41/4U].3U]!
M3$Q/0T%43U)3("U$7U-%4E9%4E\@+41)5%]%6%]-04-23U,@("U$3U-?355,
M5$E?5$A214%$140@+41?341!7U1204-%7T-/35!/3D5.5#U<(F-O<U]E<W9C
M7"(@+6,@+6\@+B]O8FIS+V]S9C%$+V-O;G-A9&TN;R!C;VYS861M+F-P< T*
M5W)I=&%B;&5?<F5P;W-I=&]R>3H@+B]C>'A?<F5P;W-I=&]R>0T*4F5P;W-I
M=&]R>5]L:7-T.B N+V-X>%]R97!O<VET;W)Y#0IC>'@Z(%=A<FYI;F<Z("]U
M<W(O;&]C86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E+V-O<F)A+V%N>2YH+"!L
M:6YE(#$Q-#H@5&AE(")C;&%S<R(@:V5Y=V]R9"!I<R!M:7-S:6YG(&EN('1H
M:7,@9G)I96YD(&1E8VQA<F%T:6]N+@T*"2 @("!F<FEE;F0@0T]20D$Z.E1Y
M<&5#;V1E.PT*+2TM+2TM+2TM+2TM7@T*+W5S<B]B:6XO8WAX("U)+W5S<B]I
M;F-L=61E+V-X>" M22]U<W(O:6YC;'5D92 M22X@+4DN+B M22XN+VEN8R M
M22]U<V5R+W5S97)S,B]K;6-B<FED92],+R M22]U<V5R+W5S97)S,B]K;6-B
M<FED92],+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]C
M;6YS=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]C
M;6YS=F-S("U)+W5S<B]L;V-A;"]S>7-T;V]L=C(N," M22]U<W(O;&]C86PO
M;W)B:7@R+V-O<F)A,B]I;F-L=61E(" M22]U<V5R+W5S97)S,B]K;6-B<FED
M92],+W-E<G9E<B]O<F)S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO
M<V5R=F5R+V]R8G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO
M:6YT7W-V8W,O979S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT
M7W-V8W,O:7-C;VUM;VX@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?
M<W9C<R]I<U]M971A9&%T82 @+71H<F5A9',@+7!T<R M<'1V("UP='-U9B B
M+F-C("YI<' @+FEC8R N8R N0R N8WAX("Y#6%@@+D-#("YC<' B("UG("U$
M7U]O<V9?7R M1'5N:7@@+41?3U-&,5]33U520T4@+41/4T8Q("U$7U)%14Y4
M4D%.5" M1%]#34%?3D]74D%04$524U\@+41?1$5"54<@+41-14U?1$5"54<@
M+41?3D]?341!7T1,3" M1$]37T]31C%?,R M1$]37TY/7U=35%))3D<@+41/
M4U].15=?0TA%0TL@("U$3U-?4U1,7T%34T525" @+41.3TU)3DU!6" M1$]3
M7U5315]%6$-%4%1)3TY3("U$3U-?34%.52 M1$]37U-94U1/3TP@+41/4U].
M3U]!3$Q/0T%43U)3("U$7U-%4E9%4E\@+41)5%]%6%]-04-23U,@("U$3U-?
M355,5$E?5$A214%$140@+41?341!7U1204-%7T-/35!/3D5.5#U<(F-O<U]E
M<W9C7"(@+6,@+6\@+B]O8FIS+V]S9C%$+W-U<'!A9&TN;R!S=7!P861M+F-P
M< T*5W)I=&%B;&5?<F5P;W-I=&]R>3H@+B]C>'A?<F5P;W-I=&]R>0T*4F5P
M;W-I=&]R>5]L:7-T.B N+V-X>%]R97!O<VET;W)Y#0IC>'@Z(%=A<FYI;F<Z
M("]U<W(O;&]C86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E+V-O<F)A+V%N>2YH
M+"!L:6YE(#$Q-#H@5&AE(")C;&%S<R(@:V5Y=V]R9"!I<R!M:7-S:6YG(&EN
M('1H:7,@9G)I96YD(&1E8VQA<F%T:6]N+@T*"2 @("!F<FEE;F0@0T]20D$Z
M.E1Y<&5#;V1E.PT*+2TM+2TM+2TM+2TM7@T*+W5S<B]B:6XO8WAX("U)+W5S
M<B]I;F-L=61E+V-X>" M22]U<W(O:6YC;'5D92 M22X@+4DN+B M22XN+VEN
M8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+R M22]U<V5R+W5S97)S,B]K
M;6-B<FED92],+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E
M<B]C;6YS=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E<G9E
M<B]C;6YS=F-S("U)+W5S<B]L;V-A;"]S>7-T;V]L=C(N," M22]U<W(O;&]C
M86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E(" M22]U<V5R+W5S97)S,B]K;6-B
M<FED92],+W-E<G9E<B]O<F)S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E
M+TPO<V5R=F5R+V]R8G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E
M+TPO:6YT7W-V8W,O979S=F-S("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO
M:6YT7W-V8W,O:7-C;VUM;VX@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]I
M;G1?<W9C<R]I<U]M971A9&%T82 @+71H<F5A9',@+7!T<R M<'1V("UP='-U
M9B B+F-C("YI<' @+FEC8R N8R N0R N8WAX("Y#6%@@+D-#("YC<' B("UG
M("U$7U]O<V9?7R M1'5N:7@@+41?3U-&,5]33U520T4@+41/4T8Q("U$7U)%
M14Y44D%.5" M1%]#34%?3D]74D%04$524U\@+41?1$5"54<@+41-14U?1$5"
M54<@+41?3D]?341!7T1,3" M1$]37T]31C%?,R M1$]37TY/7U=35%))3D<@
M+41/4U].15=?0TA%0TL@("U$3U-?4U1,7T%34T525" @+41.3TU)3DU!6" M
M1$]37U5315]%6$-%4%1)3TY3("U$3U-?34%.52 M1$]37U-94U1/3TP@+41/
M4U].3U]!3$Q/0T%43U)3("U$7U-%4E9%4E\@+41)5%]%6%]-04-23U,@("U$
M3U-?355,5$E?5$A214%$140@+41?341!7U1204-%7T-/35!/3D5.5#U<(F-O
M<U]E<W9C7"(@+6,@+6\@+B]O8FIS+V]S9C%$+V5V;G1S=&]R+F\@979N='-T
M;W(N8W!P#0I7<FET86)L95]R97!O<VET;W)Y.B N+V-X>%]R97!O<VET;W)Y
M#0I297!O<VET;W)Y7VQI<W0Z("XO8WAX7W)E<&]S:71O<GD-"F-X>#H@5V%R
M;FEN9SH@+W5S<B]L;V-A;"]O<F)I>#(O8V]R8F$R+VEN8VQU9&4O8V]R8F$O
M86YY+F@L(&QI;F4@,3$T.B!4:&4@(F-L87-S(B!K97EW;W)D(&ES(&UI<W-I
M;F<@:6X@=&AI<R!F<FEE;F0@9&5C;&%R871I;VXN#0H)(" @(&9R:65N9"!#
M3U)"03HZ5'EP94-O9&4[#0HM+2TM+2TM+2TM+2U>#0IC>'@@("U,+W5S<B]L
M;V-A;"]S>7-T;V]L=C(N,"]L:6(@+4PO=7-E<B]U<V5R<S(O:VUC8G)I9&4O
M3"]L:6(O;W-F,40@+4DO=7-R+VEN8VQU9&4O8WAX("U)+W5S<B]I;F-L=61E
M("U)+B M22XN("U)+BXO:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO
M("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YC("U)+W5S97(O=7-E<G,R
M+VMM8V)R:61E+TPO<V5R=F5R+V-M;G-V8W,O:6YC("U)+W5S97(O=7-E<G,R
M+VMM8V)R:61E+TPO<V5R=F5R+V-M;G-V8W,@+4DO=7-R+VQO8V%L+W-Y<W1O
M;VQV,BXP("U)+W5S<B]L;V-A;"]O<F)I>#(O8V]R8F$R+VEN8VQU9&4@("U)
M+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V]R8G-V8W,@+4DO=7-E
M<B]U<V5R<S(O:VUC8G)I9&4O3"]S97)V97(O;W)B<W9C<R]I;F,@+4DO=7-E
M<B]U<V5R<S(O:VUC8G)I9&4O3"]I;G1?<W9C<R]E=G-V8W,@+4DO=7-E<B]U
M<V5R<S(O:VUC8G)I9&4O3"]I;G1?<W9C<R]I<V-O;6UO;B M22]U<V5R+W5S
M97)S,B]K;6-B<FED92],+VEN=%]S=F-S+VES7VUE=&%D871A(" M=&AR96%D
M<R M<'1S("UP='8@+7!T<W5F("(N8V,@+FEP<" N:6-C("YC("Y#("YC>'@@
M+D-86" N0T,@+F-P<"(@+6<@+41?7V]S9E]?("U$=6YI>" M1%]/4T8Q7U-/
M55)#12 M1$]31C$@+41?4D5%3E1204Y4("U$7T--05].3U=205!015)37R M
M1%]$14)51R M1$U%35]$14)51R M1%].3U]-1$%?1$Q,("U$3U-?3U-&,5\S
M("U$3U-?3D]?5U-44DE.1R M1$]37TY%5U]#2$5#2R @+41/4U]35$Q?05-3
M15)4(" M1$Y/34E.34%8("U$3U-?55-%7T580T505$E/3E,@+41/4U]-04Y5
M("U$3U-?4UE35$]/3" M1$]37TY/7T%,3$]#051/4E,@+41?4T525D527R M
M1$E47T587TU!0U)/4R @+41/4U]-54Q425]42%)%041%1" M1%]-1$%?5%)!
M0T5?0T]-4$].14Y4/5PB8V]S7V5S=F-<(B N+V]B:G,O;W-F,40O97-E<G9I
M8V4N;R N+V]B:G,O;W-F,40O<'5S:'-U<' N;R N+V]B:G,O;W-F,40O<'5S
M:&-O;G,N;R N+V]B:G,O;W-F,40O<'5L;'-U<' N;R N+V]B:G,O;W-F,40O
M<'5L;&-O;G,N;R N+V]B:G,O;W-F,40O<'!S:'-U<' N;R N+V]B:G,O;W-F
M,40O<'!S:&-O;G,N;R N+V]B:G,O;W-F,40O<'!U;'-U<' N;R N+V]B:G,O
M;W-F,40O<'!U;&-O;G,N;R N+V]B:G,O;W-F,40O979C:&%N;BYO("XO;V)J
M<R]O<V8Q1"]C;VYS861M+F\@+B]O8FIS+V]S9C%$+W-U<'!A9&TN;R N+V]B
M:G,O;W-F,40O8V]S7V5S<U]O<V8Q+F\@+B]O8FIS+V]S9C%$+V5V;G1S=&]R
M+F\@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F5V<W9C
M<RYD8F<N82 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB
M8V]S7V5S=F,N9&)G+F$@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S
M9C%$+VQI8FES8V]M;6]N+F1B9RYA("]U<V5R+W5S97)S,B]K;6-B<FED92],
M+VQI8B]O<V8Q1"]L:6)I<U]M971A9&%T82YD8F<N82 O=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB8VUN<W9C<RYD8F<N82 O=7-E<B]U
M<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB;W)B<W9C<RYD8F<N82 O
M=7-R+VQO8V%L+V]R8FEX,B]C;W)B83(O;&EB+VQI8DE4<W)V+F$@+6QO<W!A
M8V4@("UL;2 M;&1N971?<W1U8B M;'!T:')E861S("UL;6%C:" M;&-?<B M
M;&5X8R M;&,@+6QC>'@@+6\@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO8FEN
M+V]S9C%$+V5S97)V:6-E#0I7<FET86)L95]R97!O<VET;W)Y.B N+V-X>%]R
M97!O<VET;W)Y#0I297!O<VET;W)Y7VQI<W0Z("XO8WAX7W)E<&]S:71O<GD-
M"@T*#0IP<F5L:6YK97(@:6YV;VME9" -"@T*3&EN92!R96%D(&9R;VT@<&EP
M93H@;&0Z#0H-"DQI;F4@<F5A9"!F<F]M('!I<&4Z(%5N<F5S;VQV960Z#0H-
M"DQI;F4@<F5A9"!F<F]M('!I<&4Z(%]?8W1?7S$P341!365S<V%G95A00V-L
M56Q#-#EB87-I8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO
M8V%T;W)?7U1C0S0Y8F%S:6-?<W1R:6YG7U]48S$V8VAA<E]T<F%I='-?8VAA
M<C$S86QL;V-A=&]R7U]48T,T.6)A<VEC7W-T<FEN9U]?5&,Q-F-H87)?=')A
M:71S7V-H87(Q,V%L;&]C871O<E]?5&-#-#EB87-I8U]S=')I;F=?7U1C,39C
M:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T;W)?7U1C0S0Y8F%S:6-?<W1R:6YG
M7U]48S$V8VAA<E]T<F%I='-?8VAA<C$S86QL;V-A=&]R7U]48T,T.6)A<VEC
M7W-T<FEN9U]?5&,Q-F-H87)?=')A:71S7V-H87(Q,V%L;&]C871O<E]?5&-#
M-#EB87-I8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T
M;W)?7U1C0S0Y8F%S:6-?<W1R:6YG7U]48S$V8VAA<E]T<F%I='-?8VAA<C$S
M86QL;V-A=&]R7U]48T,T.6)A<VEC7W-T<FEN9U]?5&,Q-F-H87)?=')A:71S
M7V-H87(Q,V%L;&]C871O<E]?5&,)6W)E9CH@("XO;V)J<R]O<V8Q1"]E<V5R
M=FEC92YO("XO;V)J<R]O<V8Q1"]P<'-H<W5P<"YO("XO;V)J<R]O<V8Q1"]P
M<'-H8V]N<RYO("XO;V)J<R]O<V8Q1"]P<'5L<W5P<"YO("XO;V)J<R]O<V8Q
M1"]E=F-H86YN+F\@+B]O8FIS+V]S9C%$+W-U<'!A9&TN;R N+V]B:G,O;W-F
M,40O979N='-T;W(N;UT-"DQO;VMI;F<@9F]R(&]B:F5C="!F:6QE.B N+V-X
M>%]R97!O<VET;W)Y+U]?8W1?7S$P341!365S<V%G95A00V-L56Q#-#EB87-I
M8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T;W)?7U1C
M0S0Y8C!V<F$Q;3 N;PT*061D:6YG(%]?8W1?7S$P341!365S<V%G95A00V-L
M56Q#-#EB87-I8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO
M8V%T;W)?7U1C0S0Y8F%S:6-?<W1R:6YG7U]48S$V8VAA<E]T<F%I='-?8VAA
M<C$S86QL;V-A=&]R7U]48T,T.6)A<VEC7W-T<FEN9U]?5&,Q-F-H87)?=')A
M:71S7V-H87(Q,V%L;&]C871O<E]?5&-#-#EB87-I8U]S=')I;F=?7U1C,39C
M:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T;W)?7U1C0S0Y8F%S:6-?<W1R:6YG
M7U]48S$V8VAA<E]T<F%I='-?8VAA<C$S86QL;V-A=&]R7U]48T,T.6)A<VEC
M7W-T<FEN9U]?5&,Q-F-H87)?=')A:71S7V-H87(Q,V%L;&]C871O<E]?5&-#
M-#EB87-I8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T
M;W)?7U1C0S0Y8F%S:6-?<W1R:6YG7U]48S$V8VAA<E]T<F%I='-?8VAA<C$S
M86QL;V-A=&]R7U]48T,T.6)A<VEC7W-T<FEN9U]?5&,Q-F-H87)?=')A:71S
M7V-H87(Q,V%L;&]C871O<E]?5&,@=&\@:6YS=&%N=&EA=&EO;B!L:7-T#0H-
M"DQI;F4@<F5A9"!F<F]M('!I<&4Z(&=E=$EN<W1A;F-E7U\R-FES4VEN9VQE
M=&]N7U]4,3!I<U)E9VES=')Y6'8)6W)E9CH@("XO;V)J<R]O<V8Q1"]E<V5R
M=FEC92YO70T*3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S
M:71O<GDO9V5T26YS=&%N8V5?7S(V:7-3:6YG;&5T;VY?7U0Q,&ES4F5G:7-T
M<GE8=BYO#0I!9&1I;F<@9V5T26YS=&%N8V5?7S(V:7-3:6YG;&5T;VY?7U0Q
M,&ES4F5G:7-T<GE8=B!T;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R
M96%D(&9R;VT@<&EP93H@9V5T26YS=&%N8V5?7S(Q:7-3:6YG;&5T;VY?7U0V
M25-?3&]G6'8)6W)E9CH@("XO;V)J<R]O<V8Q1"]E<V5R=FEC92YO("XO;V)J
M<R]O<V8Q1"]P<'-H<W5P<"YO("XO;V)J<R]O<V8Q1"]P<'-H8V]N<RYO("XO
M;V)J<R]O<V8Q1"]E=FYT<W1O<BYO("]U<V5R+W5S97)S,B]K;6-B<FED92],
M+VQI8B]O<V8Q1"]L:6)I<V-O;6UO;BYD8F<N82AI<W)E9VES=')Y+F\I70T*
M3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO9V5T
M26YS=&%N8V5?7S(Q:7-3:6YG;&5T;VY?7U0V25-?3&]G6'8N;PT*061D:6YG
M(&=E=$EN<W1A;F-E7U\R,6ES4VEN9VQE=&]N7U]4-DE37TQO9UAV('1O(&EN
M<W1A;G1I871I;VX@;&ES= T*#0I,:6YE(')E860@9G)O;2!P:7!E.B!F7U\V
M-V1E<W1R;WE&=V1)=$%L;&]C871O<E1Y<&5?7U10,3!C;VYN96-T:6]N,C1A
M;&QO8V%T;W)?7U0Q,&-O;FYE8W1I;VY84#$P8V]N;F5C=&EO;E Q,&-O;FYE
M8W1I;VXR-&%L;&]C871O<E]?5#$P8V]N;F5C=&EO;@E;<F5F.B @+B]O8FIS
M+V]S9C%$+V5S97)V:6-E+F]=#0I,;V]K:6YG(&9O<B!O8FIE8W0@9FEL93H@
M+B]C>'A?<F5P;W-I=&]R>2]F7U\V-V1E<W1R;WE&=V1)=$%L;&]C871O<E1Y
M<&5?7U10,3!C;VYN96-T:6]N,C1A;&QO8V%T;W)?7U0Q,&-O;FYE8W1I;VY8
M4#$P8V]N;F4P,FPT-CEB+F\-"D%D9&EN9R!F7U\V-V1E<W1R;WE&=V1)=$%L
M;&]C871O<E1Y<&5?7U10,3!C;VYN96-T:6]N,C1A;&QO8V%T;W)?7U0Q,&-O
M;FYE8W1I;VY84#$P8V]N;F5C=&EO;E Q,&-O;FYE8W1I;VXR-&%L;&]C871O
M<E]?5#$P8V]N;F5C=&EO;B!T;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN
M92!R96%D(&9R;VT@<&EP93H@:6YS97)T7V%U>%]?,C%V96-T;W)?7U0Q,&-O
M;FYE8W1I;VY84#$P8V]N;F5C=&EO;E)#,3!C;VYN96-T:6]N"5MR968Z(" N
M+V]B:G,O;W-F,40O<'!S:'-U<' N;UT-"DQO;VMI;F<@9F]R(&]B:F5C="!F
M:6QE.B N+V-X>%]R97!O<VET;W)Y+VEN<V5R=%]A=7A?7S(Q=F5C=&]R7U]4
M,3!C;VYN96-T:6]N6% Q,&-O;FYE8W1I;VY20S$P8V]N;F5C=&EO;BYO#0I!
M9&1I;F<@:6YS97)T7V%U>%]?,C%V96-T;W)?7U0Q,&-O;FYE8W1I;VY84#$P
M8V]N;F5C=&EO;E)#,3!C;VYN96-T:6]N('1O(&EN<W1A;G1I871I;VX@;&ES
M= T*#0I,:6YE(')E860@9G)O;2!P:7!E.B!I;G-E<G1?875X7U\Q,'9E8W1O
M<E]?5'-84'-20W,)6W)E9CH@("XO;V)J<R]O<V8Q1"]E=FYT<W1O<BYO70T*
M3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO:6YS
M97)T7V%U>%]?,3!V96-T;W)?7U1S6%!S4D-S+F\-"D%D9&EN9R!I;G-E<G1?
M875X7U\Q,'9E8W1O<E]?5'-84'-20W,@=&\@:6YS=&%N=&EA=&EO;B!L:7-T
M#0H-"DQI;F4@<F5A9"!F<F]M('!I<&4Z(&%S<VEG;E]A=7A?7S$P=F5C=&]R
M7U]4<UA00W-00W,)6W)E9CH@("XO;V)J<R]O<V8Q1"]E=FYT<W1O<BYO70T*
M3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO87-S
M:6=N7V%U>%]?,3!V96-T;W)?7U1S6%!#<U!#<RYO#0I!9&1I;F<@87-S:6=N
M7V%U>%]?,3!V96-T;W)?7U1S6%!#<U!#<R!T;R!I;G-T86YT:6%T:6]N(&QI
M<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@9E]?-#5D97-T<F]Y1G=D271!
M;&QO8V%T;W)4>7!E7U]44',Q,V%L;&]C871O<E]?5'-84'-0<S$S86QL;V-A
M=&]R7U]4<PE;<F5F.B @+B]O8FIS+V]S9C%$+V5V;G1S=&]R+F]=#0I,;V]K
M:6YG(&9O<B!O8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R>2]F7U\T-61E
M<W1R;WE&=V1)=$%L;&]C871O<E1Y<&5?7U10<S$S86QL;V-A=&]R7U]4<UA0
M<U!S,3-A;&QO8V%T;W)?7U1S+F\-"D%D9&EN9R!F7U\T-61E<W1R;WE&=V1)
M=$%L;&]C871O<E1Y<&5?7U10<S$S86QL;V-A=&]R7U]4<UA0<U!S,3-A;&QO
M8V%T;W)?7U1S('1O(&EN<W1A;G1I871I;VX@;&ES= T*#0I,:6YE(')E860@
M9G)O;2!P:7!E.B!F7U\R,&-O<'E);DET3W5T271?7U10<U!S6%!S4'-0<PE;
M<F5F.B @+B]O8FIS+V]S9C%$+V5V;G1S=&]R+F]=#0I,;V]K:6YG(&9O<B!O
M8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R>2]F7U\R,&-O<'E);DET3W5T
M271?7U10<U!S6%!S4'-0<RYO#0I!9&1I;F<@9E]?,C!C;W!Y26Y)=$]U=$ET
M7U]44'-0<UA0<U!S4',@=&\@:6YS=&%N=&EA=&EO;B!L:7-T#0H-"DQI;F4@
M<F5A9"!F<F]M('!I<&4Z(&%S<VEG;E]H96QP97)?7S,U8F%S:6-?<W1R:6YG
M7U]48S-C7W0Q,V%L;&]C871O<E]?5&-84$-C56P)6W)E9CH@("]U<V5R+W5S
M97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)I<V-O;6UO;BYD8F<N82AI
M<W)E9VES=')Y+F\I("]U<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q
M1"]L:6)I<V-O;6UO;BYD8F<N82AI<W!R;V9I;&5D8BYO*2 O=7-E<B]U<V5R
M<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB:7-C;VUM;VXN9&)G+F$H=&EM
M97=I;F1O=RYO*2 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O
M;&EB8VUN<W9C<RYD8F<N82AM9&%T<F%C92YO*2 O=7-E<B]U<V5R<S(O:VUC
M8G)I9&4O3"]L:6(O;W-F,40O;&EB8VUN<W9C<RYD8F<N82AC;6]B:F5C="YO
M*2 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB8VUN<W9C
M<RYD8F<N82AE<G)M<V<N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB
M+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H>&-E<'0N;RD@+W5S97(O=7-E<G,R
M+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H;61A;&]G
M+F\I("]U<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)C;6YS
M=F-S+F1B9RYA*&9R;71M<V<N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO
M;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H8VUU;FEC;V1E+F\I70T*3&]O
M:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO87-S:6=N
M7VAE;'!E<E]?,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]4
M8UA00V-5;"YO#0I!9&1I;F<@87-S:6=N7VAE;'!E<E]?,S5B87-I8U]S=')I
M;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UA00V-5;"!T;R!I;G-T86YT:6%T
M:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@87!P96YD7VAE;'!E
M<E]?,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UA00V-5
M; E;<F5F.B @+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI
M8FES8V]M;6]N+F1B9RYA*&ES<F5G:7-T<GDN;RD@+W5S97(O=7-E<G,R+VMM
M8V)R:61E+TPO;&EB+V]S9C%$+VQI8FES8V]M;6]N+F1B9RYA*&ES<')O9FEL
M961B+F\I("]U<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)C
M;6YS=F-S+F1B9RYA*&UD871R86-E+F\I("]U<V5R+W5S97)S,B]K;6-B<FED
M92],+VQI8B]O<V8Q1"]L:6)C;6YS=F-S+F1B9RYA*&5R<FUS9RYO*2 O=7-E
M<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB8VUN<W9C<RYD8F<N
M82AX8V5P="YO*2 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O
M;&EB8VUN<W9C<RYD8F<N82AM9&%L;V<N;RD@+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H9G)M=&US9RYO*5T-
M"DQO;VMI;F<@9F]R(&]B:F5C="!F:6QE.B N+V-X>%]R97!O<VET;W)Y+V%P
M<&5N9%]H96QP97)?7S,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O
M<E]?5&-84$-C56PN;PT*061D:6YG(&%P<&5N9%]H96QP97)?7S,U8F%S:6-?
M<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-84$-C56P@=&\@:6YS=&%N
M=&EA=&EO;B!L:7-T#0H-"DQI;F4@<F5A9"!F<F]M('!I<&4Z(&%P<&5N9%]H
M96QP97)?7S,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-8
M8U5L"5MR968Z(" O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O
M;&EB:7-C;VUM;VXN9&)G+F$H:7-R96=I<W1R>2YO*2 O=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB:7-C;VUM;VXN9&)G+F$H:7-P<F]F
M:6QE9&(N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI
M8F-M;G-V8W,N9&)G+F$H;61A=')A8V4N;RD@+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H97)R;7-G+F\I70T*
M3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO87!P
M96YD7VAE;'!E<E]?,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R
M7U]48UAC56PN;PT*061D:6YG(&%P<&5N9%]H96QP97)?7S,U8F%S:6-?<W1R
M:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-88U5L('1O(&EN<W1A;G1I871I
M;VX@;&ES= T*#0I,:6YE(')E860@9G)O;2!P:7!E.B!N:6Q?9&%T85]?,S5B
M87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UAV"5MR968Z(" O
M=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB:7-C;VUM;VXN
M9&)G+F$H:7-R96=I<W1R>2YO*2 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L
M:6(O;W-F,40O;&EB:7-C;VUM;VXN9&)G+F$H:7-P<F]F:6QE9&(N;RD@+W5S
M97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8FES8V]M;6]N+F1B
M9RYA*'1I;65W:6YD;W<N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB
M+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H;61A=')A8V4N;RD@+W5S97(O=7-E
M<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H8VUO
M8FIE8W0N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI
M8F-M;G-V8W,N9&)G+F$H97)R;7-G+F\I("]U<V5R+W5S97)S,B]K;6-B<FED
M92],+VQI8B]O<V8Q1"]L:6)C;6YS=F-S+F1B9RYA*'AC97!T+F\I("]U<V5R
M+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)C;6YS=F-S+F1B9RYA
M*&UD86QO9RYO*2 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O
M;&EB8VUN<W9C<RYD8F<N82AF<FUT;7-G+F\I70T*3&]O:VEN9R!F;W(@;V)J
M96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO;FEL7V1A=&%?7S,U8F%S:6-?
M<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-8=BYO#0I!9&1I;F<@;FEL
M7V1A=&%?7S,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-8
M=B!T;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP
M93H@:6YI=%]?,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]4
M8UAV"5MR968Z(" O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O
M;&EB:7-C;VUM;VXN9&)G+F$H:7-R96=I<W1R>2YO*2 O=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB:7-C;VUM;VXN9&)G+F$H:7-P<F]F
M:6QE9&(N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI
M8FES8V]M;6]N+F1B9RYA*'1I;65W:6YD;W<N;RD@+W5S97(O=7-E<G,R+VMM
M8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H;61A=')A8V4N
M;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V
M8W,N9&)G+F$H8VUO8FIE8W0N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO
M;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H97)R;7-G+F\I("]U<V5R+W5S
M97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)C;6YS=F-S+F1B9RYA*'AC
M97!T+F\I("]U<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)C
M;6YS=F-S+F1B9RYA*&UD86QO9RYO*2 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O
M3"]L:6(O;W-F,40O;&EB8VUN<W9C<RYD8F<N82AF<FUT;7-G+F\I70T*3&]O
M:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO:6YI=%]?
M,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UAV+F\-"D%D
M9&EN9R!I;FET7U\S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?
M7U1C6'8@=&\@:6YS=&%N=&EA=&EO;B!L:7-T#0H-"DQI;F4@<F5A9"!F<F]M
M('!I<&4Z(&EN<V5R=%]A=7A?7S,T=F5C=&]R7U]44#(R5')A;G-4:6UE5VEN
M9&]W4')O9FEL95A04#(R5')A;G-4:6UE5VEN9&]W4')O9FEL95)#4#(R5')A
M;G-4:6UE5VEN9&]W4')O9FEL90E;<F5F.B @+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO;&EB+V]S9C%$+VQI8FES8V]M;6]N+F1B9RYA*&ES<F5G:7-T<GDN
M;RE=#0I,;V]K:6YG(&9O<B!O8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R
M>2]I;G-E<G1?875X7U\S-'9E8W1O<E]?5% R,E1R86YS5&EM95=I;F1O=U!R
M;V9I;&584% R,E1R86YS5&EM95=I;F1O=U!R;V9I;&520U R,E0P,# S;7)H
M+F\-"D%D9&EN9R!I;G-E<G1?875X7U\S-'9E8W1O<E]?5% R,E1R86YS5&EM
M95=I;F1O=U!R;V9I;&584% R,E1R86YS5&EM95=I;F1O=U!R;V9I;&520U R
M,E1R86YS5&EM95=I;F1O=U!R;V9I;&4@=&\@:6YS=&%N=&EA=&EO;B!L:7-T
M#0H-"DQI;F4@<F5A9"!F<F]M('!I<&4Z(&%S<VEG;E]A=7A?7S,T=F5C=&]R
M7U]44#(R5')A;G-4:6UE5VEN9&]W4')O9FEL95A00U R,E1R86YS5&EM95=I
M;F1O=U!R;V9I;&500U R,E1R86YS5&EM95=I;F1O=U!R;V9I;&4)6W)E9CH@
M("]U<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)I<V-O;6UO
M;BYD8F<N82AI<W)E9VES=')Y+F\I70T*3&]O:VEN9R!F;W(@;V)J96-T(&9I
M;&4Z("XO8WAX7W)E<&]S:71O<GDO87-S:6=N7V%U>%]?,S1V96-T;W)?7U10
M,C)4<F%N<U1I;657:6YD;W=0<F]F:6QE6%!#4#(R5')A;G-4:6UE5VEN9&]W
M4')O9FEL95!#4#(R,6MD<F@Y-"YO#0I!9&1I;F<@87-S:6=N7V%U>%]?,S1V
M96-T;W)?7U10,C)4<F%N<U1I;657:6YD;W=0<F]F:6QE6%!#4#(R5')A;G-4
M:6UE5VEN9&]W4')O9FEL95!#4#(R5')A;G-4:6UE5VEN9&]W4')O9FEL92!T
M;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@
M:6YS97)T7V%U>%]?-#9V96-T;W)?7U0S-6)A<VEC7W-T<FEN9U]?5&,S8U]T
M,3-A;&QO8V%T;W)?7U1C6% S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO
M8V%T;W)?7U1C4D,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?
M7U1C"5MR968Z(" O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O
M;&EB:7-C;VUM;VXN9&)G+F$H:7-R96=I<W1R>2YO*5T-"DQO;VMI;F<@9F]R
M(&]B:F5C="!F:6QE.B N+V-X>%]R97!O<VET;W)Y+VEN<V5R=%]A=7A?7S0V
M=F5C=&]R7U]4,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]4
M8UA0,S5B87-I8U]S=')I;F=?7U1C,S%O<C,V,6\N;PT*061D:6YG(&EN<V5R
M=%]A=7A?7S0V=F5C=&]R7U]4,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL
M;V-A=&]R7U]48UA0,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R
M7U]48U)#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48R!T
M;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@
M87-S:6=N7V%U>%]?-#9V96-T;W)?7U0S-6)A<VEC7W-T<FEN9U]?5&,S8U]T
M,3-A;&QO8V%T;W)?7U1C6%!#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL
M;V-A=&]R7U]48U!#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R
M7U]48PE;<F5F.B @+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$
M+VQI8FES8V]M;6]N+F1B9RYA*&ES<F5G:7-T<GDN;RE=#0I,;V]K:6YG(&9O
M<B!O8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R>2]A<W-I9VY?875X7U\T
M-G9E8W1O<E]?5#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?
M5&-84$,S-6)A<VEC7W-T<FEN9U]?5&,P:# W:F=L+F\-"D%D9&EN9R!A<W-I
M9VY?875X7U\T-G9E8W1O<E]?5#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L
M;&]C871O<E]?5&-84$,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T
M;W)?7U1C4$,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?7U1C
M('1O(&EN<W1A;G1I871I;VX@;&ES= T*#0I,:6YE(')E860@9G)O;2!P:7!E
M.B!F7U\Q,3=D97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]44#,U8F%S:6-?
M<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&,T.6%L;&]C871O<E]?5#,U
M8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-84#,U8F%S:6-?
M<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-0,S5B87-I8U]S=')I;F=?
M7U1C,V-?=#$S86QL;V-A=&]R7U]48S0Y86QL;V-A=&]R7U]4,S5B87-I8U]S
M=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48PE;<F5F.B @+W5S97(O=7-E
M<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8FES8V]M;6]N+F1B9RYA*&ES
M<F5G:7-T<GDN;RE=#0I,;V]K:6YG(&9O<B!O8FIE8W0@9FEL93H@+B]C>'A?
M<F5P;W-I=&]R>2]F7U\Q,3=D97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]4
M4#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&,T.6%L;&]C
M870P,7(W;V=B+F\-"D%D9&EN9R!F7U\Q,3=D97-T<F]Y1G=D271!;&QO8V%T
M;W)4>7!E7U]44#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?
M5&,T.6%L;&]C871O<E]?5#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C
M871O<E]?5&-84#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?
M5&-0,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48S0Y86QL
M;V-A=&]R7U]4,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]4
M8R!T;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP
M93H@9E]?.3-D97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]44% R,E1R86YS
M5&EM95=I;F1O=U!R;V9I;&4S-V%L;&]C871O<E]?5% R,E1R86YS5&EM95=I
M;F1O=U!R;V9I;&584% R,E1R86YS5&EM95=I;F1O=U!R;V9I;&504#(R5')A
M;G-4:6UE5VEN9&]W4')O9FEL93,W86QL;V-A=&]R7U]44#(R5')A;G-4:6UE
M5VEN9&]W4')O9FEL90E;<F5F.B @+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO
M;&EB+V]S9C%$+VQI8FES8V]M;6]N+F1B9RYA*&ES<F5G:7-T<GDN;RE=#0I,
M;V]K:6YG(&9O<B!O8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R>2]F7U\Y
M,V1E<W1R;WE&=V1)=$%L;&]C871O<E1Y<&5?7U104#(R5')A;G-4:6UE5VEN
M9&]W4')O9FEL93,W86QL;V-A=&]R7U]44#(R5')A;G,P,#4P,6)K+F\-"D%D
M9&EN9R!F7U\Y,V1E<W1R;WE&=V1)=$%L;&]C871O<E1Y<&5?7U104#(R5')A
M;G-4:6UE5VEN9&]W4')O9FEL93,W86QL;V-A=&]R7U]44#(R5')A;G-4:6UE
M5VEN9&]W4')O9FEL95A04#(R5')A;G-4:6UE5VEN9&]W4')O9FEL95!0,C)4
M<F%N<U1I;657:6YD;W=0<F]F:6QE,S=A;&QO8V%T;W)?7U10,C)4<F%N<U1I
M;657:6YD;W=0<F]F:6QE('1O(&EN<W1A;G1I871I;VX@;&ES= T*#0I,:6YE
M(')E860@9G)O;2!P:7!E.B!F7U\V.&-O<'E);DET3W5T271?7U104#(R5')A
M;G-4:6UE5VEN9&]W4')O9FEL95!0,C)4<F%N<U1I;657:6YD;W=0<F]F:6QE
M6%!0,C)4<F%N<U1I;657:6YD;W=0<F]F:6QE4% R,E1R86YS5&EM95=I;F1O
M=U!R;V9I;&504#(R5')A;G-4:6UE5VEN9&]W4')O9FEL90E;<F5F.B @+W5S
M97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8FES8V]M;6]N+F1B
M9RYA*&ES<F5G:7-T<GDN;RE=#0I,;V]K:6YG(&9O<B!O8FIE8W0@9FEL93H@
M+B]C>'A?<F5P;W-I=&]R>2]F7U\V.&-O<'E);DET3W5T271?7U104#(R5')A
M;G-4:6UE5VEN9&]W4')O9FEL95!0,C)4<F%N<U1I;657:6YD;W=0<F]F:6QE
M6%!0,C)4<F$P,F-D9'1N+F\-"D%D9&EN9R!F7U\V.&-O<'E);DET3W5T271?
M7U104#(R5')A;G-4:6UE5VEN9&]W4')O9FEL95!0,C)4<F%N<U1I;657:6YD
M;W=0<F]F:6QE6%!0,C)4<F%N<U1I;657:6YD;W=0<F]F:6QE4% R,E1R86YS
M5&EM95=I;F1O=U!R;V9I;&504#(R5')A;G-4:6UE5VEN9&]W4')O9FEL92!T
M;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@
M9E]?.3)C;W!Y26Y)=$]U=$ET7U]44#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q
M,V%L;&]C871O<E]?5&-0,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A
M=&]R7U]48UA0,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]4
M8U S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?7U1C4#,U8F%S
M:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&,)6W)E9CH@("]U<V5R
M+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)I<V-O;6UO;BYD8F<N
M82AI<W)E9VES=')Y+F\I70T*3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO
M8WAX7W)E<&]S:71O<GDO9E]?.3)C;W!Y26Y)=$]U=$ET7U]44#,U8F%S:6-?
M<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-0,S5B87-I8U]S=')I;F=?
M7U1C,V-?,[email protected]<U<"YO#0I!9&1I;F<@9E]?.3)C;W!Y26Y)=$]U=$ET7U]4
M4#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-0,S5B87-I
M8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UA0,S5B87-I8U]S=')I
M;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48U S-6)A<VEC7W-T<FEN9U]?5&,S
M8U]T,3-A;&QO8V%T;W)?7U1C4#,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L
M;&]C871O<E]?5&,@=&\@:6YS=&%N=&EA=&EO;B!L:7-T#0H-"DQI;F4@<F5A
M9"!F<F]M('!I<&4Z(&9I;F1?7T,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A
M;&QO8V%T;W)?7U1C6%!#8U5L56P)6W)E9CH@("]U<V5R+W5S97)S,B]K;6-B
M<FED92],+VQI8B]O<V8Q1"]L:6)I<V-O;6UO;BYD8F<N82AI<W!R;V9I;&5D
M8BYO*2 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB8VUN
M<W9C<RYD8F<N82AM9&%T<F%C92YO*2 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O
M3"]L:6(O;W-F,40O;&EB8VUN<W9C<RYD8F<N82AF<FUT;7-G+F\I70T*3&]O
M:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO9FEN9%]?
M0S,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-84$-C56Q5
M;"YO#0I!9&1I;F<@9FEN9%]?0S,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L
M;&]C871O<E]?5&-84$-C56Q5;"!T;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*
M3&EN92!R96%D(&9R;VT@<&EP93H@<F9I;F1?7T,S-6)A<VEC7W-T<FEN9U]?
M5&,S8U]T,3-A;&QO8V%T;W)?7U1C6%!#8U5L56P)6W)E9CH@("]U<V5R+W5S
M97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)I<V-O;6UO;BYD8F<N82AI
M<W!R;V9I;&5D8BYO*5T-"DQO;VMI;F<@9F]R(&]B:F5C="!F:6QE.B N+V-X
M>%]R97!O<VET;W)Y+W)F:6YD7U]#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S
M86QL;V-A=&]R7U]48UA00V-5;%5L+F\-"D%D9&EN9R!R9FEN9%]?0S,U8F%S
M:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-84$-C56Q5;"!T;R!I
M;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@<W5B
M<W1R7U]#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UA5
M;%5L"5MR968Z(" O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O
M;&EB:7-C;VUM;VXN9&)G+F$H:7-P<F]F:6QE9&(N;RD@+W5S97(O=7-E<G,R
M+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H;61A=')A
M8V4N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-M
M;G-V8W,N9&)G+F$H9G)M=&US9RYO*5T-"DQO;VMI;F<@9F]R(&]B:F5C="!F
M:6QE.B N+V-X>%]R97!O<VET;W)Y+W-U8G-T<E]?0S,U8F%S:6-?<W1R:6YG
M7U]48S-C7W0Q,V%L;&]C871O<E]?5&-856Q5;"YO#0I!9&1I;F<@<W5B<W1R
M7U]#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UA5;%5L
M('1O(&EN<W1A;G1I871I;VX@;&ES= T*#0I,:6YE(')E860@9G)O;2!P:7!E
M.B!C;VUP87)E7VAE;'!E<E]?0S,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L
M;&]C871O<E]?5&-84D,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T
M;W)?7U1C56Q5; E;<F5F.B @+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB
M+V]S9C%$+VQI8FES8V]M;6]N+F1B9RYA*&ES<')O9FEL961B+F\I70T*3&]O
M:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO8V]M<&%R
M95]H96QP97)?7T,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?
M7U1C6%)#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S,# S;&0T82YO#0I!9&1I
M;F<@8V]M<&%R95]H96QP97)?7T,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A
M;&QO8V%T;W)?7U1C6%)#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A
M=&]R7U]48U5L56P@=&\@:6YS=&%N=&EA=&EO;B!L:7-T#0H-"DQI;F4@<F5A
M9"!F<F]M('!I<&4Z(&-O;7!A<F5?:&5L<&5R7U]#,S5B87-I8U]S=')I;F=?
M7U1C,V-?=#$S86QL;V-A=&]R7U]48UA00V-5;%5L"5MR968Z(" O=7-E<B]U
M<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB:7-C;VUM;VXN9&)G+F$H
M:7-P<F]F:6QE9&(N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S
M9C%$+VQI8F-M;G-V8W,N9&)G+F$H;61A=')A8V4N;RD@+W5S97(O=7-E<G,R
M+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H97)R;7-G
M+F\I70T*3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O
M<GDO8V]M<&%R95]H96QP97)?7T,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A
M;&QO8V%T;W)?7U1C6%!#8U5L56PN;PT*061D:6YG(&-O;7!A<F5?:&5L<&5R
M7U]#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UA00V-5
M;%5L('1O(&EN<W1A;G1I871I;VX@;&ES= T*#0I,:6YE(')E860@9G)O;2!P
M:7!E.B!A<W-I9VY?:&5L<&5R7U\S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A
M;&QO8V%T;W)?7U1C6&-5; E;<F5F.B @+W5S97(O=7-E<G,R+VMM8V)R:61E
M+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H;61A=')A8V4N;RE=#0I,
M;V]K:6YG(&9O<B!O8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R>2]A<W-I
M9VY?:&5L<&5R7U\S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?
M7U1C6&-5;"YO#0I!9&1I;F<@87-S:6=N7VAE;'!E<E]?,S5B87-I8U]S=')I
M;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UAC56P@=&\@:6YS=&%N=&EA=&EO
M;B!L:7-T#0H-"DQI;F4@<F5A9"!F<F]M('!I<&4Z(')E<&QA8V5?:&5L<&5R
M7U\S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?7U1C6%5L56Q0
M0V-5; E;<F5F.B @+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$
M+VQI8F-M;G-V8W,N9&)G+F$H;61A=')A8V4N;RE=#0I,;V]K:6YG(&9O<B!O
M8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R>2]R97!L86-E7VAE;'!E<E]?
M,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48UA5;%5L4$-C
M56PN;PT*061D:6YG(')E<&QA8V5?:&5L<&5R7U\S-6)A<VEC7W-T<FEN9U]?
M5&,S8U]T,3-A;&QO8V%T;W)?7U1C6%5L56Q00V-5;"!T;R!I;G-T86YT:6%T
M:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@7U]L<U]?6%(W;W-T
M<F5A;5)#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48PE;
M<F5F.B @+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-M
M;G-V8W,N9&)G+F$H;61A=')A8V4N;RD@+W5S97(O=7-E<G,R+VMM8V)R:61E
M+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$H97)R;7-G+F\I70T*3&]O
M:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO7U]L<U]?
M6%(W;W-T<F5A;5)#,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R
M7U]48RYO#0I!9&1I;F<@7U]L<U]?6%(W;W-T<F5A;5)#,S5B87-I8U]S=')I
M;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48R!T;R!I;G-T86YT:6%T:6]N(&QI
M<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@:6YS97)T7V%U>%]?,C%V96-T
M;W)?7U0Q,&-M37-G4&%R86U84#$P8VU-<V=087)A;5)#,3!C;4US9U!A<F%M
M"5MR968Z(" O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O;W-F,40O;&EB
M8VUN<W9C<RYD8F<N82AM9&%T<F%C92YO*2 O=7-E<B]U<V5R<S(O:VUC8G)I
M9&4O3"]L:6(O;W-F,40O;&EB8VUN<W9C<RYD8F<N82AE<G)M<V<N;RE=#0I,
M;V]K:6YG(&9O<B!O8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R>2]I;G-E
M<G1?875X7U\R,79E8W1O<E]?5#$P8VU-<V=087)A;5A0,3!C;4US9U!A<F%M
M4D,Q,&-M37-G4&%R86TN;PT*061D:6YG(&EN<V5R=%]A=7A?7S(Q=F5C=&]R
M7U]4,3!C;4US9U!A<F%M6% Q,&-M37-G4&%R86U20S$P8VU-<V=087)A;2!T
M;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@
M9E]?-C=D97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]44#$P8VU-<V=087)A
M;3(T86QL;V-A=&]R7U]4,3!C;4US9U!A<F%M6% Q,&-M37-G4&%R86U0,3!C
M;4US9U!A<F%M,C1A;&QO8V%T;W)?7U0Q,&-M37-G4&%R86T)6W)E9CH@("]U
M<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)C;6YS=F-S+F1B
M9RYA*&UD871R86-E+F\I("]U<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O
M<V8Q1"]L:6)C;6YS=F-S+F1B9RYA*&5R<FUS9RYO*5T-"DQO;VMI;F<@9F]R
M(&]B:F5C="!F:6QE.B N+V-X>%]R97!O<VET;W)Y+V9?7S8W9&5S=')O>49W
M9$ET06QL;V-A=&]R5'EP95]?5% Q,&-M37-G4&%R86TR-&%L;&]C871O<E]?
M5#$P8VU-<V=087)A;5A0,3!C;4US9S P,C0Q8G N;PT*061D:6YG(&9?7S8W
M9&5S=')O>49W9$ET06QL;V-A=&]R5'EP95]?5% Q,&-M37-G4&%R86TR-&%L
M;&]C871O<E]?5#$P8VU-<V=087)A;5A0,3!C;4US9U!A<F%M4#$P8VU-<V=0
M87)A;3(T86QL;V-A=&]R7U]4,3!C;4US9U!A<F%M('1O(&EN<W1A;G1I871I
M;VX@;&ES= T*#0I,:6YE(')E860@9G)O;2!P:7!E.B!I;G-E<G1?875X7U\R
M,G9E8W1O<E]?5% Q,$U$04UE<W-A9V584% Q,$U$04UE<W-A9V520U Q,$U$
M04UE<W-A9V4)6W)E9CH@("]U<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O
M<V8Q1"]L:6)C;6YS=F-S+F1B9RYA*'AC97!T+F\I70T*3&]O:VEN9R!F;W(@
M;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO:6YS97)T7V%U>%]?,C)V
M96-T;W)?7U10,3!-1$%-97-S86=E6%!0,3!-1$%-97-S86=E4D-0,3!-1$%-
M97-S86=E+F\-"D%D9&EN9R!I;G-E<G1?875X7U\R,G9E8W1O<E]?5% Q,$U$
M04UE<W-A9V584% Q,$U$04UE<W-A9V520U Q,$U$04UE<W-A9V4@=&\@:6YS
M=&%N=&EA=&EO;B!L:7-T#0H-"DQI;F4@<F5A9"!F<F]M('!I<&4Z(&9?7S8Y
M9&5S=')O>49W9$ET06QL;V-A=&]R5'EP95]?5%!0,3!-1$%-97-S86=E,C5A
M;&QO8V%T;W)?7U10,3!-1$%-97-S86=E6%!0,3!-1$%-97-S86=E4% Q,$U$
M04UE<W-A9V4R-6%L;&]C871O<E]?5% Q,$U$04UE<W-A9V4)6W)E9CH@("]U
M<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)C;6YS=F-S+F1B
M9RYA*'AC97!T+F\I70T*3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX
M7W)E<&]S:71O<GDO9E]?-CED97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]4
M4% Q,$U$04UE<W-A9V4R-6%L;&]C871O<E]?5% Q,$U$04UE<W-A9V584% Q
M,$U$,6QB.31M:2YO#0I!9&1I;F<@9E]?-CED97-T<F]Y1G=D271!;&QO8V%T
M;W)4>7!E7U]44% Q,$U$04UE<W-A9V4R-6%L;&]C871O<E]?5% Q,$U$04UE
M<W-A9V584% Q,$U$04UE<W-A9V504#$P341!365S<V%G93(U86QL;V-A=&]R
M7U]44#$P341!365S<V%G92!T;R!I;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN
M92!R96%D(&9R;VT@<&EP93H@<V5M7VEN:70)6W)E9CH@("]U<W(O;&]C86PO
M;W)B:7@R+V-O<F)A,B]L:6(O;&EB251S<G8N82AO<V9?=&AR+F\I70T*3&]O
M:VEN9R!F;W(@;V)J96-T(&9I;&4Z("XO8WAX7W)E<&]S:71O<GDO<V5M7VEN
M:70N;PT*061D:6YG('-E;5]I;FET('1O(&EN<W1A;G1I871I;VX@;&ES= T*
M#0I,:6YE(')E860@9G)O;2!P:7!E.B!S96U?9&5S=')O>0E;<F5F.B @+W5S
M<B]L;V-A;"]O<F)I>#(O8V]R8F$R+VQI8B]L:6))5'-R=BYA*&]S9E]T:'(N
M;RE=#0I,;V]K:6YG(&9O<B!O8FIE8W0@9FEL93H@+B]C>'A?<F5P;W-I=&]R
M>2]S96U?9&5S=')O>2YO#0I!9&1I;F<@<V5M7V1E<W1R;WD@=&\@:6YS=&%N
M=&EA=&EO;B!L:7-T#0H-"DQI;F4@<F5A9"!F<F]M('!I<&4Z('-E;5]W86ET
M"5MR968Z(" O=7-R+VQO8V%L+V]R8FEX,B]C;W)B83(O;&EB+VQI8DE4<W)V
M+F$H;W-F7W1H<BYO*5T-"DQO;VMI;F<@9F]R(&]B:F5C="!F:6QE.B N+V-X
M>%]R97!O<VET;W)Y+W-E;5]W86ET+F\-"D%D9&EN9R!S96U?=V%I="!T;R!I
M;G-T86YT:6%T:6]N(&QI<W0-"@T*3&EN92!R96%D(&9R;VT@<&EP93H@<V5M
M7W!O<W0)6W)E9CH@("]U<W(O;&]C86PO;W)B:7@R+V-O<F)A,B]L:6(O;&EB
M251S<G8N82AO<V9?=&AR+F\I70T*3&]O:VEN9R!F;W(@;V)J96-T(&9I;&4Z
M("XO8WAX7W)E<&]S:71O<GDO<V5M7W!O<W0N;PT*061D:6YG('-E;5]P;W-T
M('1O(&EN<W1A;G1I871I;VX@;&ES= T*#0I,:6YE(')E860@9G)O;2!P:7!E
M.B!L9')?<')O8V5S<U]C;VYT97AT"5MR968Z(" O=7-R+W-H;&EB+VQI8F-?
M<BYS;UT-"DQO;VMI;F<@9F]R(&]B:F5C="!F:6QE.B N+V-X>%]R97!O<VET
M;W)Y+VQD<E]P<F]C97-S7V-O;G1E>'0N;PT*061D:6YG(&QD<E]P<F]C97-S
M7V-O;G1E>'0@=&\@:6YS=&%N=&EA=&EO;B!L:7-T#0H-"DQI;F4@<F5A9"!F
M<F]M('!I<&4Z(&QD<E]P<F]C97-S7V-O;G1E>'0)6W)E9CH@("]U<W(O<VAL
M:6(O;&EB8RYS;UT-"DQO;VMI;F<@9F]R(&]B:F5C="!F:6QE.B N+V-X>%]R
M97!O<VET;W)Y+VQD<E]P<F]C97-S7V-O;G1E>'0N;PT*56YA8FQE('1O(&%C
M8V5S<R!F:6QE+" N+V-X>%]R97!O<VET;W)Y+U]?8W1?7S$P341!365S<V%G
M95A00V-L56Q#-#EB87-I8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R
M,3-A;&QO8V%T;W)?7U1C0S0Y8C!V<F$Q;3 N8WAX#0IE<G)N;[email protected]!.;R!S
M=6-H(&9I;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L
M("XO8WAX7W)E<&]S:71O<GDO7U]L<U]?6%(W;W-T<F5A;5)#,S5B87-I8U]S
M=')I;F=?7U1C,V-?=#$S86QL;V-A=&]R7U]48RYC>'@-"F5R<FYO.B Z($YO
M('-U8V@@9FEL92!O<B!D:7)E8W1O<GD-"E5N86)L92!T;R!A8V-E<W,@9FEL
M92P@+B]C>'A?<F5P;W-I=&]R>2]A<'!E;F1?:&5L<&5R7U\S-6)A<VEC7W-T
M<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?7U1C6%!#8U5L+F-X> T*97)R;F\Z
M(#H@3F\@<W5C:"!F:6QE(&]R(&1I<F5C=&]R>0T*56YA8FQE('1O(&%C8V5S
M<R!F:6QE+" N+V-X>%]R97!O<VET;W)Y+V%P<&5N9%]H96QP97)?7S,U8F%S
M:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-88U5L+F-X> T*97)R
M;F\Z(#H@3F\@<W5C:"!F:6QE(&]R(&1I<F5C=&]R>0T*26YS=&%N=&EA=&EN
M9R N+V-X>%]R97!O<VET;W)Y+V%S<VEG;E]A=7A?7S$P=F5C=&]R7U]4<UA0
M0W-00W,N8WAX#0IC>'@Z(%-E=F5R93H@3F\@<W5C:"!F:6QE(&]R(&1I<F5C
M=&]R>0T*+BXN(&9I;&4@:7,@)RYI<' G#0I5;F%B;&4@=&\@86-C97-S(&9I
M;&4L("XO8WAX7W)E<&]S:71O<GDO87-S:6=N7V%U>%]?,S1V96-T;W)?7U10
M,C)4<F%N<U1I;657:6YD;W=0<F]F:6QE6%!#4#(R5')A;G-4:6UE5VEN9&]W
M4')O9FEL95!#4#(R,6MD<F@Y-"YC>'@-"F5R<FYO.B Z($YO('-U8V@@9FEL
M92!O<B!D:7)E8W1O<GD-"E5N86)L92!T;R!A8V-E<W,@9FEL92P@+B]C>'A?
M<F5P;W-I=&]R>2]A<W-I9VY?875X7U\T-G9E8W1O<E]?5#,U8F%S:6-?<W1R
M:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-84$,S-6)A<VEC7W-T<FEN9U]?
M5&,P:# W:F=L+F-X> T*97)R;F\Z(#H@3F\@<W5C:"!F:6QE(&]R(&1I<F5C
M=&]R>0T*56YA8FQE('1O(&%C8V5S<R!F:6QE+" N+V-X>%]R97!O<VET;W)Y
M+V%S<VEG;E]H96QP97)?7S,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C
M871O<E]?5&-84$-C56PN8WAX#0IE<G)N;[email protected]!.;R!S=6-H(&9I;&4@;W(@
M9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO8WAX7W)E<&]S
M:71O<GDO87-S:6=N7VAE;'!E<E]?,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S
M86QL;V-A=&]R7U]48UAC56PN8WAX#0IE<G)N;[email protected]!.;R!S=6-H(&9I;&4@
M;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO8WAX7W)E
M<&]S:71O<GDO8V]M<&%R95]H96QP97)?7T,S-6)A<VEC7W-T<FEN9U]?5&,S
M8U]T,3-A;&QO8V%T;W)?7U1C6%!#8U5L56PN8WAX#0IE<G)N;[email protected]!.;R!S
M=6-H(&9I;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L
M("XO8WAX7W)E<&]S:71O<GDO8V]M<&%R95]H96QP97)?7T,S-6)A<VEC7W-T
M<FEN9U]?5&,S8U]T,3-A;&QO8V%T;W)?7U1C6%)#,S5B87-I8U]S=')I;F=?
M7U1C,V-?=#$S,# S;&0T82YC>'@-"F5R<FYO.B Z($YO('-U8V@@9FEL92!O
M<B!D:7)E8W1O<GD-"E5N86)L92!T;R!A8V-E<W,@9FEL92P@+B]C>'A?<F5P
M;W-I=&]R>2]F7U\Q,3=D97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]44#,U
M8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&,T.6%L;&]C870P
M,7(W;V=B+F-X> T*97)R;F\Z(#H@3F\@<W5C:"!F:6QE(&]R(&1I<F5C=&]R
M>0T*26YS=&%N=&EA=&EN9R N+V-X>%]R97!O<VET;W)Y+V9?7S(P8V]P>4EN
M271/=71)=%]?5%!S4'-84'-0<U!S+F-X> T*8WAX.B!3979E<F4Z($YO('-U
M8V@@9FEL92!O<B!D:7)E8W1O<GD-"BXN+B!F:6QE(&ES("<N:7!P)PT*26YS
M=&%N=&EA=&EN9R N+V-X>%]R97!O<VET;W)Y+V9?7S0U9&5S=')O>49W9$ET
M06QL;V-A=&]R5'EP95]?5%!S,3-A;&QO8V%T;W)?7U1S6%!S4',Q,V%L;&]C
M871O<E]?5',N8WAX#0IC>'@Z(%-E=F5R93H@3F\@<W5C:"!F:6QE(&]R(&1I
M<F5C=&]R>0T*+BXN(&9I;&4@:7,@)RYI<' G#0I5;F%B;&4@=&\@86-C97-S
M(&9I;&4L("XO8WAX7W)E<&]S:71O<GDO9E]?-C=D97-T<F]Y1G=D271!;&QO
M8V%T;W)4>7!E7U]44#$P8VU-<V=087)A;3(T86QL;V-A=&]R7U]4,3!C;4US
M9U!A<F%M6% Q,&-M37-G,# R-#%B<"YC>'@-"F5R<FYO.B Z($YO('-U8V@@
M9FEL92!O<B!D:7)E8W1O<GD-"DEN<W1A;G1I871I;F<@+B]C>'A?<F5P;W-I
M=&]R>2]F7U\V-V1E<W1R;WE&=V1)=$%L;&]C871O<E1Y<&5?7U10,3!C;VYN
M96-T:6]N,C1A;&QO8V%T;W)?7U0Q,&-O;FYE8W1I;VY84#$P8V]N;F4P,FPT
M-CEB+F-X> T*8WAX.B!3979E<F4Z($YO('-U8V@@9FEL92!O<B!D:7)E8W1O
M<GD-"BXN+B!F:6QE(&ES("<N:7!P)PT*56YA8FQE('1O(&%C8V5S<R!F:6QE
M+" N+V-X>%]R97!O<VET;W)Y+V9?7S8X8V]P>4EN271/=71)=%]?5%!0,C)4
M<F%N<U1I;657:6YD;W=0<F]F:6QE4% R,E1R86YS5&EM95=I;F1O=U!R;V9I
M;&584% R,E1R83 R8V1D=&XN8WAX#0IE<G)N;[email protected]!.;R!S=6-H(&9I;&4@
M;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO8WAX7W)E
M<&]S:71O<GDO9E]?-CED97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]44% Q
M,$U$04UE<W-A9V4R-6%L;&]C871O<E]?5% Q,$U$04UE<W-A9V584% Q,$U$
M,6QB.31M:2YC>'@-"F5R<FYO.B Z($YO('-U8V@@9FEL92!O<B!D:7)E8W1O
M<GD-"E5N86)L92!T;R!A8V-E<W,@9FEL92P@+B]C>'A?<F5P;W-I=&]R>2]F
M7U\Y,F-O<'E);DET3W5T271?7U10,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S
M86QL;V-A=&]R7U]48U S-6)A<VEC7W-T<FEN9U]?5&,S8U\Q.#<Y9S5P+F-X
M> T*97)R;F\Z(#H@3F\@<W5C:"!F:6QE(&]R(&1I<F5C=&]R>0T*56YA8FQE
M('1O(&%C8V5S<R!F:6QE+" N+V-X>%]R97!O<VET;W)Y+V9?7SDS9&5S=')O
M>49W9$ET06QL;V-A=&]R5'EP95]?5%!0,C)4<F%N<U1I;657:6YD;W=0<F]F
M:6QE,S=A;&QO8V%T;W)?7U10,C)4<F%N<S P-3 Q8FLN8WAX#0IE<G)N;SH@
M.B!.;R!S=6-H(&9I;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S
M(&9I;&4L("XO8WAX7W)E<&]S:71O<GDO9FEN9%]?0S,U8F%S:6-?<W1R:6YG
M7U]48S-C7W0Q,V%L;&]C871O<E]?5&-84$-C56Q5;"YC>'@-"F5R<FYO.B Z
M($YO('-U8V@@9FEL92!O<B!D:7)E8W1O<GD-"DEN<W1A;G1I871I;F<@+B]C
M>'A?<F5P;W-I=&]R>2]G971);G-T86YC95]?,C%I<U-I;F=L971O;E]?5#9)
M4U],;V=8=BYC>'@-"F-X>#H@4V5V97)E.B!.;R!S=6-H(&9I;&4@;W(@9&ER
M96-T;W)Y#0HN+BX@9FEL92!I<R G+FEP<"<-"DEN<W1A;G1I871I;F<@+B]C
M>'A?<F5P;W-I=&]R>2]G971);G-T86YC95]?,C9I<U-I;F=L971O;E]?5#$P
M:7-296=I<W1R>5AV+F-X> T*8WAX.B!3979E<F4Z($YO('-U8V@@9FEL92!O
M<B!D:7)E8W1O<GD-"BXN+B!F:6QE(&ES("<N:7!P)PT*56YA8FQE('1O(&%C
M8V5S<R!F:6QE+" N+V-X>%]R97!O<VET;W)Y+VEN:71?7S,U8F%S:6-?<W1R
M:6YG7U]48S-C7W0Q,V%L;&]C871O<E]?5&-8=BYC>'@-"F5R<FYO.B Z($YO
M('-U8V@@9FEL92!O<B!D:7)E8W1O<GD-"DEN<W1A;G1I871I;F<@+B]C>'A?
M<F5P;W-I=&]R>2]I;G-E<G1?875X7U\Q,'9E8W1O<E]?5'-84'-20W,N8WAX
M#0IC>'@Z(%-E=F5R93H@3F\@<W5C:"!F:6QE(&]R(&1I<F5C=&]R>0T*+BXN
M(&9I;&4@:7,@)RYI<' G#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO8WAX
M7W)E<&]S:71O<GDO:6YS97)T7V%U>%]?,C%V96-T;W)?7U0Q,&-M37-G4&%R
M86U84#$P8VU-<V=087)A;5)#,3!C;4US9U!A<F%M+F-X> T*97)R;F\Z(#H@
M3F\@<W5C:"!F:6QE(&]R(&1I<F5C=&]R>0T*26YS=&%N=&EA=&EN9R N+V-X
M>%]R97!O<VET;W)Y+VEN<V5R=%]A=7A?7S(Q=F5C=&]R7U]4,3!C;VYN96-T
M:6]N6% Q,&-O;FYE8W1I;VY20S$P8V]N;F5C=&EO;BYC>'@-"F-X>#H@4V5V
M97)E.B!.;R!S=6-H(&9I;&4@;W(@9&ER96-T;W)Y#0HN+BX@9FEL92!I<R G
M+FEP<"<-"E5N86)L92!T;R!A8V-E<W,@9FEL92P@+B]C>'A?<F5P;W-I=&]R
M>2]I;G-E<G1?875X7U\R,G9E8W1O<E]?5% Q,$U$04UE<W-A9V584% Q,$U$
M04UE<W-A9V520U Q,$U$04UE<W-A9V4N8WAX#0IE<G)N;[email protected]!.;R!S=6-H
M(&9I;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO
M8WAX7W)E<&]S:71O<GDO:6YS97)T7V%U>%]?,S1V96-T;W)?7U10,C)4<F%N
M<U1I;657:6YD;W=0<F]F:6QE6%!0,C)4<F%N<U1I;657:6YD;W=0<F]F:6QE
M4D-0,C)4,# P,VUR:"YC>'@-"F5R<FYO.B Z($YO('-U8V@@9FEL92!O<B!D
M:7)E8W1O<GD-"E5N86)L92!T;R!A8V-E<W,@9FEL92P@+B]C>'A?<F5P;W-I
M=&]R>2]I;G-E<G1?875X7U\T-G9E8W1O<E]?5#,U8F%S:6-?<W1R:6YG7U]4
M8S-C7W0Q,V%L;&]C871O<E]?5&-84#,U8F%S:6-?<W1R:6YG7U]48S,Q;W(S
M-C%O+F-X> T*97)R;F\Z(#H@3F\@<W5C:"!F:6QE(&]R(&1I<F5C=&]R>0T*
M56YA8FQE('1O(&%C8V5S<R!F:6QE+" N+V-X>%]R97!O<VET;W)Y+VQD<E]P
M<F]C97-S7V-O;G1E>'0N8WAX#0IE<G)N;[email protected]!.;R!S=6-H(&9I;&4@;W(@
M9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO8WAX7W)E<&]S
M:71O<GDO;FEL7V1A=&%?7S,U8F%S:6-?<W1R:6YG7U]48S-C7W0Q,V%L;&]C
M871O<E]?5&-8=BYC>'@-"F5R<FYO.B Z($YO('-U8V@@9FEL92!O<B!D:7)E
M8W1O<GD-"E5N86)L92!T;R!A8V-E<W,@9FEL92P@+B]C>'A?<F5P;W-I=&]R
M>2]R97!L86-E7VAE;'!E<E]?,S5B87-I8U]S=')I;F=?7U1C,V-?=#$S86QL
M;V-A=&]R7U]48UA5;%5L4$-C56PN8WAX#0IE<G)N;[email protected]!.;R!S=6-H(&9I
M;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO8WAX
M7W)E<&]S:71O<GDO<F9I;F1?7T,S-6)A<VEC7W-T<FEN9U]?5&,S8U]T,3-A
M;&QO8V%T;W)?7U1C6%!#8U5L56PN8WAX#0IE<G)N;[email protected]!.;R!S=6-H(&9I
M;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO8WAX
M7W)E<&]S:71O<GDO<V5M7V1E<W1R;WDN8WAX#0IE<G)N;[email protected]!.;R!S=6-H
M(&9I;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO
M8WAX7W)E<&]S:71O<GDO<V5M7VEN:70N8WAX#0IE<G)N;[email protected]!.;R!S=6-H
M(&9I;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO
M8WAX7W)E<&]S:71O<GDO<V5M7W!O<W0N8WAX#0IE<G)N;[email protected]!.;R!S=6-H
M(&9I;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO
M8WAX7W)E<&]S:71O<GDO<V5M7W=A:70N8WAX#0IE<G)N;[email protected]!.;R!S=6-H
M(&9I;&4@;W(@9&ER96-T;W)Y#0I5;F%B;&4@=&\@86-C97-S(&9I;&4L("XO
M8WAX7W)E<&]S:71O<GDO<W5B<W1R7U]#,S5B87-I8U]S=')I;F=?7U1C,V-?
M=#$S86QL;V-A=&]R7U]48UA5;%5L+F-X> T*97)R;F\Z(#H@3F\@<W5C:"!F
M:6QE(&]R(&1I<F5C=&]R>0T*;&0Z#0I5;G)E<V]L=F5D.@T*341!365S<V%G
M93HZ341!365S<V%G92AC;VYS="!C:&%R*BP@;&]N9RP@=6YS:6=N960@;&]N
M9RP@8V]N<W0@8F%S:6-?<W1R:6YG/&-H87(L(&-H87)?=')A:71S7V-H87(L
M(&%L;&]C871O<CQC:&%R/B ^+"!C;VYS="!B87-I8U]S=')I;F<\8VAA<BP@
M8VAA<E]T<F%I='-?8VAA<BP@86QL;V-A=&]R/&-H87(^(#XL(&-O;G-T(&)A
M<VEC7W-T<FEN9SQC:&%R+"!C:&%R7W1R86ET<U]C:&%R+"!A;&QO8V%T;W(\
M8VAA<CX@/BP@8V]N<W0@8F%S:6-?<W1R:6YG/&-H87(L(&-H87)?=')A:71S
M7V-H87(L(&%L;&]C871O<CQC:&%R/B ^+"!C;VYS="!B87-I8U]S=')I;F<\
M8VAA<BP@8VAA<E]T<F%I='-?8VAA<BP@86QL;V-A=&]R/&-H87(^(#XL(&-O
M;G-T(&)A<VEC7W-T<FEN9SQC:&%R+"!C:&%R7W1R86ET<U]C:&%R+"!A;&QO
M8V%T;W(\8VAA<CX@/BP@8V]N<W0@8F%S:6-?<W1R:6YG/&-H87(L(&-H87)?
M=')A:71S7V-H87(L(&%L;&]C871O<CQC:&%R/B ^+"!C;VYS="!B87-I8U]S
M=')I;F<\8VAA<BP@8VAA<E]T<F%I='-?8VAA<BP@86QL;V-A=&]R/&-H87(^
M(#XL(&-O;G-T(&)A<VEC7W-T<FEN9SQC:&%R+"!C:&%R7W1R86ET<U]C:&%R
M+"!A;&QO8V%T;W(\8VAA<CX@/BD-"FES4VEN9VQE=&]N/&ES4F5G:7-T<GD^
M.CIG971);G-T86YC92AV;VED*0T*:7-3:6YG;&5T;VX\25-?3&]G/CHZ9V5T
M26YS=&%N8V4H=F]I9"D-"F1E<W1R;WE&=V1)=$%L;&]C871O<E1Y<&4\8V]N
M;F5C=&EO;BHL(&%L;&]C871O<CQC;VYN96-T:6]N/B ^.CIF*&-O;FYE8W1I
M;VXJ+"!C;VYN96-T:6]N*BP@86QL;V-A=&]R/&-O;FYE8W1I;VX^*0T*=F5C
M=&]R/&-O;FYE8W1I;VX^.CII;G-E<G1?875X*&-O;FYE8W1I;VXJ+"!C;VYS
M="!C;VYN96-T:6]N)BD-"G9E8W1O<CQS:&]R=#XZ.FEN<V5R=%]A=7@H<VAO
M<G0J+"!C;VYS="!S:&]R="8I#0IV96-T;W(\<VAO<G0^.CIA<W-I9VY?875X
M*&-O;G-T('-H;W)T*BP@8V]N<W0@<VAO<G0J*0T*9&5S=')O>49W9$ET06QL
M;V-A=&]R5'EP93QS:&]R="HL(&%L;&]C871O<CQS:&]R=#X@/CHZ9BAS:&]R
M="HL('-H;W)T*BP@86QL;V-A=&]R/'-H;W)T/BD-"F-O<'E);DET3W5T270\
M<VAO<G0J+"!S:&]R="H^.CIF*'-H;W)T*BP@<VAO<G0J+"!S:&]R="HI#0IB
M87-I8U]S=')I;F<\8VAA<BP@8U]T+"!A;&QO8V%T;W(\8VAA<CX@/CHZ87-S
M:6=N7VAE;'!E<BAC;VYS="!C:&%R*BP@=6YS:6=N960@;&]N9RD-"F)A<VEC
M7W-T<FEN9SQC:&%R+"!C7W0L(&%L;&]C871O<CQC:&%R/B ^.CIA<'!E;F1?
M:&5L<&5R*&-O;G-T(&-H87(J+"!U;G-I9VYE9"!L;VYG*0T*8F%S:6-?<W1R
M:6YG/&-H87(L(&-?="P@86QL;V-A=&]R/&-H87(^(#XZ.F%P<&5N9%]H96QP
M97(H8VAA<BP@=6YS:6=N960@;&]N9RD-"F)A<VEC7W-T<FEN9SQC:&%R+"!C
M7W0L(&%L;&]C871O<CQC:&%R/B ^.CIN:6Q?9&%T82AV;VED*0T*8F%S:6-?
M<W1R:6YG/&-H87(L(&-?="P@86QL;V-A=&]R/&-H87(^(#XZ.FEN:70H=F]I
M9"D-"G9E8W1O<CQ4<F%N<U1I;657:6YD;W=0<F]F:6QE*CXZ.FEN<V5R=%]A
M=7@H5')A;G-4:6UE5VEN9&]W4')O9FEL92HJ+"!4<F%N<U1I;657:6YD;W=0
M<F]F:6QE*B!C;VYS="8I#0IV96-T;W(\5')A;G-4:6UE5VEN9&]W4')O9FEL
M92H^.CIA<W-I9VY?875X*%1R86YS5&EM95=I;F1O=U!R;V9I;&4J(&-O;G-T
M*BP@5')A;G-4:6UE5VEN9&]W4')O9FEL92H@8V]N<W0J*0T*=F5C=&]R/&)A
M<VEC7W-T<FEN9SQC:&%R+"!C7W0L(&%L;&]C871O<CQC:&%R/B ^(#XZ.FEN
M<V5R=%]A=7@H8F%S:6-?<W1R:6YG/&-H87(L(&-?="P@86QL;V-A=&]R/&-H
M87(^(#XJ+"!C;VYS="!B87-I8U]S=')I;F<\8VAA<BP@8U]T+"!A;&QO8V%T
M;W(\8VAA<CX@/B8I#0IV96-T;W(\8F%S:6-?<W1R:6YG/&-H87(L(&-?="P@
M86QL;V-A=&]R/&-H87(^(#X@/CHZ87-S:6=N7V%U>"AC;VYS="!B87-I8U]S
M=')I;F<\8VAA<BP@8U]T+"!A;&QO8V%T;W(\8VAA<CX@/BHL(&-O;G-T(&)A
M<VEC7W-T<FEN9SQC:&%R+"!C7W0L(&%L;&]C871O<CQC:&%R/B ^*BD-"F1E
M<W1R;WE&=V1)=$%L;&]C871O<E1Y<&4\8F%S:6-?<W1R:6YG/&-H87(L(&-?
M="P@86QL;V-A=&]R/&-H87(^(#XJ+"!A;&QO8V%T;W(\8F%S:6-?<W1R:6YG
M/&-H87(L(&-?="P@86QL;V-A=&]R/&-H87(^(#X@/B ^.CIF*&)A<VEC7W-T
M<FEN9SQC:&%R+"!C7W0L(&%L;&]C871O<CQC:&%R/B ^*BP@8F%S:6-?<W1R
M:6YG/&-H87(L(&-?="P@86QL;V-A=&]R/&-H87(^(#XJ+"!A;&QO8V%T;W(\
M8F%S:6-?<W1R:6YG/&-H87(L(&-?="P@86QL;V-A=&]R/&-H87(^(#X@/BD-
M"F1E<W1R;WE&=V1)=$%L;&]C871O<E1Y<&4\5')A;G-4:6UE5VEN9&]W4')O
M9FEL92HJ+"!A;&QO8V%T;W(\5')A;G-4:6UE5VEN9&]W4')O9FEL92H^(#XZ
M.F8H5')A;G-4:6UE5VEN9&]W4')O9FEL92HJ+"!4<F%N<U1I;657:6YD;W=0
M<F]F:6QE*BHL(&%L;&]C871O<CQ4<F%N<U1I;657:6YD;W=0<F]F:6QE*CXI
M#0IC;W!Y26Y)=$]U=$ET/%1R86YS5&EM95=I;F1O=U!R;V9I;&4J*BP@5')A
M;G-4:6UE5VEN9&]W4')O9FEL92HJ/CHZ9BA4<F%N<U1I;657:6YD;W=0<F]F
M:6QE*BHL(%1R86YS5&EM95=I;F1O=U!R;V9I;&4J*BP@5')A;G-4:6UE5VEN
M9&]W4')O9FEL92HJ*0T*8V]P>4EN271/=71)=#QB87-I8U]S=')I;F<\8VAA
M<BP@8U]T+"!A;&QO8V%T;W(\8VAA<CX@/BHL(&)A<VEC7W-T<FEN9SQC:&%R
M+"!C7W0L(&%L;&]C871O<CQC:&%R/B ^*CXZ.F8H8F%S:6-?<W1R:6YG/&-H
M87(L(&-?="P@86QL;V-A=&]R/&-H87(^(#XJ+"!B87-I8U]S=')I;F<\8VAA
M<BP@8U]T+"!A;&QO8V%T;W(\8VAA<CX@/BHL(&)A<VEC7W-T<FEN9SQC:&%R
M+"!C7W0L(&%L;&]C871O<CQC:&%R/B ^*BD-"F)A<VEC7W-T<FEN9SQC:&%R
M+"!C7W0L(&%L;&]C871O<CQC:&%R/B ^.CIF:6YD*&-O;G-T(&-H87(J+"!U
M;G-I9VYE9"!L;VYG+"!U;G-I9VYE9"!L;VYG*2!C;VYS=" -"F)A<VEC7W-T
M<FEN9SQC:&%R+"!C7W0L(&%L;&]C871O<CQC:&%R/B ^.CIR9FEN9"AC;VYS
M="!C:&%R*BP@=6YS:6=N960@;&]N9RP@=6YS:6=N960@;&]N9RD@8V]N<W0@
M#0IB87-I8U]S=')I;F<\8VAA<BP@8U]T+"!A;&QO8V%T;W(\8VAA<CX@/CHZ
M<W5B<W1R*'5N<VEG;F5D(&QO;F<L('5N<VEG;F5D(&QO;F<I(&-O;G-T( T*
M8F%S:6-?<W1R:6YG/&-H87(L(&-?="P@86QL;V-A=&]R/&-H87(^(#XZ.F-O
M;7!A<F5?:&5L<&5R*&-O;G-T(&)A<VEC7W-T<FEN9SQC:&%R+"!C7W0L(&%L
M;&]C871O<CQC:&%R/B ^)BP@=6YS:6=N960@;&]N9RP@=6YS:6=N960@;&]N
M9RD@8V]N<W0@#0IB87-I8U]S=')I;F<\8VAA<BP@8U]T+"!A;&QO8V%T;W(\
M8VAA<CX@/CHZ8V]M<&%R95]H96QP97(H8V]N<W0@8VAA<BHL('5N<VEG;F5D
M(&QO;F<L('5N<VEG;F5D(&QO;F<I(&-O;G-T( T*8F%S:6-?<W1R:6YG/&-H
M87(L(&-?="P@86QL;V-A=&]R/&-H87(^(#XZ.F%S<VEG;E]H96QP97(H8VAA
M<BP@=6YS:6=N960@;&]N9RD-"F)A<VEC7W-T<FEN9SQC:&%R+"!C7W0L(&%L
M;&]C871O<CQC:&%R/B ^.CIR97!L86-E7VAE;'!E<BAU;G-I9VYE9"!L;VYG
M+"!U;G-I9VYE9"!L;VYG+"!C;VYS="!C:&%R*BP@=6YS:6=N960@;&]N9RD-
M"F]P97)A=&]R(#P\*&]S=')E86TF+"!C;VYS="!B87-I8U]S=')I;F<\8VAA
M<BP@8U]T+"!A;&QO8V%T;W(\8VAA<CX@/B8I#0IV96-T;W(\8VU-<V=087)A
M;3XZ.FEN<V5R=%]A=7@H8VU-<V=087)A;2HL(&-O;G-T(&-M37-G4&%R86TF
M*0T*9&5S=')O>49W9$ET06QL;V-A=&]R5'EP93QC;4US9U!A<F%M*BP@86QL
M;V-A=&]R/&-M37-G4&%R86T^(#XZ.F8H8VU-<V=087)A;2HL(&-M37-G4&%R
M86TJ+"!A;&QO8V%T;W(\8VU-<V=087)A;3XI#0IV96-T;W(\341!365S<V%G
M92H^.CII;G-E<G1?875X*$U$04UE<W-A9V4J*BP@341!365S<V%G92H@8V]N
M<W0F*0T*9&5S=')O>49W9$ET06QL;V-A=&]R5'EP93Q-1$%-97-S86=E*BHL
M(&%L;&]C871O<CQ-1$%-97-S86=E*CX@/CHZ9BA-1$%-97-S86=E*BHL($U$
M04UE<W-A9V4J*BP@86QL;V-A=&]R/$U$04UE<W-A9V4J/BD-"G-E;5]I;FET
M#0IS96U?9&5S=')O>0T*<V5M7W=A:70-"G-E;5]P;W-T#0I"=6EL9#H@97)R
M;W(@97AI=" Q(&9R;VT@8V]M;6%N9#H-"@DB8WAX(" M3"]U<W(O;&]C86PO
M<WES=&]O;'8R+C O;&EB("U,+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB
M+V]S9C%$("U)+W5S<B]I;F-L=61E+V-X>" M22]U<W(O:6YC;'5D92 M22X@
M+4DN+B M22XN+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+R M22]U
M<V5R+W5S97)S,B]K;6-B<FED92],+VEN8R M22]U<V5R+W5S97)S,B]K;6-B
M<FED92],+W-E<G9E<B]C;6YS=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B
M<FED92],+W-E<G9E<B]C;6YS=F-S("U)+W5S<B]L;V-A;"]S>7-T;V]L=C(N
M," M22]U<W(O;&]C86PO;W)B:7@R+V-O<F)A,B]I;F-L=61E(" M22]U<V5R
M+W5S97)S,B]K;6-B<FED92],+W-E<G9E<B]O<F)S=F-S("U)+W5S97(O=7-E
M<G,R+VMM8V)R:61E+TPO<V5R=F5R+V]R8G-V8W,O:6YC("U)+W5S97(O=7-E
M<G,R+VMM8V)R:61E+TPO:6YT7W-V8W,O979S=F-S("U)+W5S97(O=7-E<G,R
M+VMM8V)R:61E+TPO:6YT7W-V8W,O:7-C;VUM;VX@+4DO=7-E<B]U<V5R<S(O
M:VUC8G)I9&4O3"]I;G1?<W9C<R]I<U]M971A9&%T82 @+71H<F5A9',@+7!T
M<R M<'1V("UP='-U9B B+F-C("YI<' @+FEC8R N8R N0R N8WAX("Y#6%@@
M+D-#("YC<' B("UG("U$7U]O<V9?7R M1'5N:7@@+41?3U-&,5]33U520T4@
M+41/4T8Q("U$7U)%14Y44D%.5" M1%]#34%?3D]74D%04$524U\@+41?1$5"
M54<@+41-14U?1$5"54<@+41?3D]?341!7T1,3" M1$]37T]31C%?,R M1$]3
M7TY/7U=35%))3D<@+41/4U].15=?0TA%0TL@("U$3U-?4U1,7T%34T525" @
M+41.3TU)3DU!6" M1$]37U5315]%6$-%4%1)3TY3("U$3U-?34%.52 M1$]3
M7U-94U1/3TP@+41/4U].3U]!3$Q/0T%43U)3("U$7U-%4E9%4E\@+41)5%]%
M6%]-04-23U,@("U$3U-?355,5$E?5$A214%$140@+41?341!7U1204-%7T-/
M35!/3D5.5#U<(F-O<U]E<W9C7"(@+B]O8FIS+V]S9C%$+V5S97)V:6-E+F\@
M+B]O8FIS+V]S9C%$+W!U<VAS=7!P+F\@+B]O8FIS+V]S9C%$+W!U<VAC;VYS
M+F\@+B]O8FIS+V]S9C%$+W!U;&QS=7!P+F\@+B]O8FIS+V]S9C%$+W!U;&QC
M;VYS+F\@+B]O8FIS+V]S9C%$+W!P<VAS=7!P+F\@+B]O8FIS+V]S9C%$+W!P
M<VAC;VYS+F\@+B]O8FIS+V]S9C%$+W!P=6QS=7!P+F\@+B]O8FIS+V]S9C%$
M+W!P=6QC;VYS+F\@+B]O8FIS+V]S9C%$+V5V8VAA;FXN;R N+V]B:G,O;W-F
M,40O8V]N<V%D;2YO("XO;V)J<R]O<V8Q1"]S=7!P861M+F\@+B]O8FIS+V]S
M9C%$+V-O<U]E<W-?;W-F,2YO("XO;V)J<R]O<V8Q1"]E=FYT<W1O<BYO("]U
M<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L:6)E=G-V8W,N9&)G
M+F$@+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F-O<U]E
M<W9C+F1B9RYA("]U<V5R+W5S97)S,B]K;6-B<FED92],+VQI8B]O<V8Q1"]L
M:6)I<V-O;6UO;BYD8F<N82 O=7-E<B]U<V5R<S(O:VUC8G)I9&4O3"]L:6(O
M;W-F,40O;&EB:7-?;65T861A=&$N9&)G+F$@+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO;&EB+V]S9C%$+VQI8F-M;G-V8W,N9&)G+F$@+W5S97(O=7-E<G,R
M+VMM8V)R:61E+TPO;&EB+V]S9C%$+VQI8F]R8G-V8W,N9&)G+F$@+W5S<B]L
M;V-A;"]O<F)I>#(O8V]R8F$R+VQI8B]L:6))5'-R=BYA("UL;W-P86-E(" M
M;&T@+6QD;F5T7W-T=6(@+6QP=&AR96%D<R M;&UA8V@@+6QC7W(@+6QE>&,@
M+6QC("UL8WAX("UO("]U<V5R+W5S97)S,B]K;6-B<FED92],+V)I;B]O<V8Q
M1"]E<V5R=FEC92(N#0H-"BTM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM#0H-
M"F)U:6QD("UN;VQO9V\@+7-C<FEP=" @8V]S7V5S=F,@(" @(" @(" -"@T*
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
<+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T-"BTM
`
end

begin 600 repos.lst
M(" @,"!!<'(@,30@,30Z,C,@5&5M<&QA=&4N;6%P#0HQ,#$Q($%P<B Q-" Q
M-#HR-"!A<'!E;F1?:&5L<&5R7U\T.6)A<VEC7W-T<FEN9U]?5&,Q-F-H87)?
M=')A:71S7V-H87(Q,V%L;&]C871O<E]?5&-84$-C56PN8VUD#0H@,S W($%P
M<B Q-" Q-#HR-"!A<'!E;F1?:&5L<&5R7U\T.6)A<VEC7W-T<FEN9U]?5&,Q
M-F-H87)?=')A:71S7V-H87(Q,V%L;&]C871O<E]?5&-84$-C56PN8WAX#0HQ
M,#$Q($%P<B Q-" Q-#HR-"!A<'!E;F1?:&5L<&5R7U\T.6)A<VEC7W-T<FEN
M9U]?5&,Q-F-H87)?=')A:71S7V-H87(Q,V%L;&]C871O<E]?5&-88U5L+F-M
M9 T*(#,P-R!!<'(@,30@,30Z,C0@87!P96YD7VAE;'!E<E]?-#EB87-I8U]S
M=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T;W)?7U1C6&-5
M;"YC>'@-"C$P,3$@07!R(#$T(#$T.C(T(&%S<VEG;E]A=7A?7S$P=F5C=&]R
M7U]4<UA00W-00W,N8VUD#0H@,C8V($%P<B Q-" Q-#HR-"!A<W-I9VY?875X
M7U\Q,'9E8W1O<E]?5'-84$-S4$-S+F-X> T*,3 Q,2!!<'(@,30@,30Z,C0@
M87-S:6=N7VAE;'!E<E]?-#EB87-I8U]S=')I;F=?7U1C,39C:&%R7W1R86ET
M<U]C:&%R,3-A;&QO8V%T;W)?7U1C6%!#8U5L+F-M9 T*(#,P-R!!<'(@,30@
M,30Z,C0@87-S:6=N7VAE;'!E<E]?-#EB87-I8U]S=')I;F=?7U1C,39C:&%R
M7W1R86ET<U]C:&%R,3-A;&QO8V%T;W)?7U1C6%!#8U5L+F-X> T*,3 Q,2!!
M<'(@,30@,30Z,C0@8V]M<&%R95]H96QP97)?7T,T.6)A<VEC7W-T<FEN9U]?
M5&,Q-F-H87)?=')A:71S7V-H87(Q,V%L;&]C871O<E]?5&-84$-C56Q5;"YC
M;60-"B S,#<@07!R(#$T(#$T.C(T(&-O;7!A<F5?:&5L<&5R7U]#-#EB87-I
M8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T;W)?7U1C
M6%!#8U5L56PN8WAX#0HQ,#$Q($%P<B Q-" Q-#HR-"!F7U\R,&-O<'E);DET
M3W5T271?7U10<U!S6%!S4'-0<RYC;60-"B R.#0@07!R(#$T(#$T.C(T(&9?
M7S(P8V]P>4EN271/=71)=%]?5%!S4'-84'-0<U!S+F-X> T*,3 Q,2!!<'(@
M,30@,30Z,C0@9E]?-#5D97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]44',Q
M,V%L;&]C871O<E]?5'-84'-0<S$S86QL;V-A=&]R7U]4<RYC;60-"B S,#8@
M07!R(#$T(#$T.C(T(&9?7S0U9&5S=')O>49W9$ET06QL;V-A=&]R5'EP95]?
M5%!S,3-A;&QO8V%T;W)?7U1S6%!S4',Q,V%L;&]C871O<E]?5',N8WAX#0HQ
M,#$Q($%P<B Q-" Q-#HR-"!F7U\V-V1E<W1R;WE&=V1)=$%L;&]C871O<E1Y
M<&5?7U10,3!C;VYN96-T:6]N,C1A;&QO8V%T;W)?7U0Q,&-O;FYE8W1I;VY8
M4#$P8V]N;F4P,FPT-CEB+F-M9 T*(#(S-"!!<'(@,30@,30Z,C0@9E]?-C=D
M97-T<F]Y1G=D271!;&QO8V%T;W)4>7!E7U]44#$P8V]N;F5C=&EO;C(T86QL
M;V-A=&]R7U]4,3!C;VYN96-T:6]N6% Q,&-O;FYE,#)L-#8Y8BYC>'@-"C$P
M,3$@07!R(#$T(#$T.C(T(&=E=$EN<W1A;F-E7U\R,6ES4VEN9VQE=&]N7U]4
M-DE37TQO9UAV+F-M9 T*(#(W,B!!<'(@,30@,30Z,C0@9V5T26YS=&%N8V5?
M7S(Q:7-3:6YG;&5T;VY?7U0V25-?3&]G6'8N8WAX#0HQ,#$Q($%P<B Q-" Q
M-#HR-"!G971);G-T86YC95]?,C9I<U-I;F=L971O;E]?5#$P:7-296=I<W1R
M>5AV+F-M9 T*(#$Y-"!!<'(@,30@,30Z,C0@9V5T26YS=&%N8V5?7S(V:7-3
M:6YG;&5T;VY?7U0Q,&ES4F5G:7-T<GE8=BYC>'@-"C$P,3$@07!R(#$T(#$T
M.C(T(&EN:71?7S0Y8F%S:6-?<W1R:6YG7U]48S$V8VAA<E]T<F%I='-?8VAA
M<C$S86QL;V-A=&]R7U]48UAV+F-M9 T*(#,P-R!!<'(@,30@,30Z,C0@:6YI
M=%]?-#EB87-I8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO
M8V%T;W)?7U1C6'8N8WAX#0HQ,#$Q($%P<B Q-" Q-#HR-"!I;G-E<G1?875X
M7U\Q,'9E8W1O<E]?5'-84'-20W,N8VUD#0H@,C8V($%P<B Q-" Q-#HR-"!I
M;G-E<G1?875X7U\Q,'9E8W1O<E]?5'-84'-20W,N8WAX#0HQ,#$Q($%P<B Q
M-" Q-#HR-"!I;G-E<G1?875X7U\R,79E8W1O<E]?5#$P8V]N;F5C=&EO;EA0
M,3!C;VYN96-T:6]N4D,Q,&-O;FYE8W1I;VXN8VUD#0H@,C$X($%P<B Q-" Q
M-#HR-"!I;G-E<G1?875X7U\R,79E8W1O<E]?5#$P8V]N;F5C=&EO;EA0,3!C
M;VYN96-T:6]N4D,Q,&-O;FYE8W1I;VXN8WAX#0HQ,#$Q($%P<B Q-" Q-#HR
M-"!M7VEN<W1A;F-E7U\R,6ES4VEN9VQE=&]N7U]4-DE37TQO9RYC;60-"B S
M,#,@07!R(#$T(#$T.C(T(&U?:6YS=&%N8V5?7S(Q:7-3:6YG;&5T;VY?7U0V
M25-?3&]G+F-X> T*,3 Q,2!!<'(@,30@,30Z,C0@;5]I;G-T86YC95]?,C9I
M<U-I;F=L971O;E]?5#$P:7-296=I<W1R>2YC;60-"B R,C4@07!R(#$T(#$T
M.C(T(&U?:6YS=&%N8V5?7S(V:7-3:6YG;&5T;VY?7U0Q,&ES4F5G:7-T<GDN
M8WAX#0HQ,#$Q($%P<B Q-" Q-#HR-"!M7VUU=&5X7U\R,6ES4VEN9VQE=&]N
M7U]4-DE37TQO9RYC;60-"B S,#,@07!R(#$T(#$T.C(T(&U?;75T97A?7S(Q
M:7-3:6YG;&5T;VY?7U0V25-?3&]G+F-X> T*,3 Q,2!!<'(@,30@,30Z,C0@
M;5]M=71E>%]?,C9I<U-I;F=L971O;E]?5#$P:7-296=I<W1R>2YC;60-"B R
M,C4@07!R(#$T(#$T.C(T(&U?;75T97A?7S(V:7-3:6YG;&5T;VY?7U0Q,&ES
M4F5G:7-T<GDN8WAX#0HQ,#$Q($%P<B Q-" Q-#HR-"!N:6Q?9&%T85]?-#EB
M87-I8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T;W)?
M7U1C6'8N8VUD#0H@,S W($%P<B Q-" Q-#HR-"!N:6Q?9&%T85]?-#EB87-I
M8U]S=')I;F=?7U1C,39C:&%R7W1R86ET<U]C:&%R,3-A;&QO8V%T;W)?7U1C
(6'8N8WAX#0I?
`
end

begin 600 cmplrs.lst
M=&]T86P@-S0Y-@T*+7(M>'(M>'(M>" @(#$@8FEN(" @(" @8FEN(" @(" @
M(" @(#0V,"!$96,@,38@(#$Y.30@0UA84TA21$$N3&EN:W,-"BUR=RUR+2UR
M+2T@(" Q(')O;W0@(" @(')O;W0@(" @(" @-CDT,3 @4V5P(#$S(" Q.3DV
M($1%0T-86#4U,"YR96QE87-E+6YO=&5S#0HM<G<M<G<M<BTM(" @,2!R;V]T
M(" @("!R;V]T(" @(" @(" @,3,R($9E8B R-R @,3DY-B!?7T1%0T-?:6YC
M;'5D95]E<&EL;V=U92YH#0HM<G<M<G<M<BTM(" @,2!R;V]T(" @("!R;V]T
M(" @(" @(" @,38W($9E8B R-R @,3DY-B!?7T1%0T-?:6YC;'5D95]P<F]L
M;V=U92YH#0HM<G<M<G<M<BTM(" @,2!R;V]T(" @("!R;V]T(" @(" @(" R
M.3DR(%-E<" Q,B @,3DY-B!?;6%I;BYO#0IL<G=X<G=X<BUX(" @,2!R;V]T
M(" @("!R;V]T(" @(" @(" @(" Y($UA<B @-B Q,CHP.2!A<S @+3X@+BXO
M8V,O87,P#0IL<G=X<G=X<BUX(" @,2!R;V]T(" @("!R;V]T(" @(" @(" @
M(" Y($UA<B @-B Q,CHP.2!A<S$@+3X@+BXO8V,O87,Q#0HM<G=X<BUX<BUX
M(" @,2!R;V]T(" @("!R;V]T(" @(" @(#$T,C,Q($%U9R @-2 @,3DY-B!B
M=6EL9%]C;VUM;VY?:6YS=&%N=&EA=&EO;E]L:6)R87)Y+G-H#0IL<G=X<G=X
M<BUX(" @,2!R;V]T(" @("!R;V]T(" @(" @(" @(#$R($UA<B @-B Q,CHP
M.2!C8R M/B N+B]C8R]D<FEV97(-"FQR=WAR=WAR+7@@(" Q(')O;W0@(" @
M(')O;W0@(" @(" @(" @,3 @36%R(" V(#$R.C Y(&-O<F0@+3X@+BXO8V,O
M8V]R9 T*+7)W>'(M>'(M>" @(#$@<F]O=" @(" @<F]O=" @(" @(#$P-C0Y
M-B!397 @,3(@(#$Y.38@9&5C8WAX7V1R:79E<@T*+7)W>'(M>'(M>" @(#$@
M<F]O=" @(" @<F]O=" @(" @(" U-S,T-"!397 @,3(@(#$Y.38@9&5M86YG
M;&4-"FQR=WAR=WAR+7@@(" Q(')O;W0@(" @(')O;W0@(" @(" @(" @,3 @
M36%R(" V(#$R.C Y(&9T;V,@+3X@+BXO8V,O9G1O8PT*+7)W>'(M>'(M>" @
M(#$@<F]O=" @(" @<F]O=" @(" @-3$V,#DV,"!397 @,3(@(#$Y.38@9V5M
M8U]C>'@-"BUR=WAR+7AR+7@@(" Q(')O;W0@(" @(')O;W0@(" @(" X,#(X
M,38@2F%N(#(V(" Q.3DV(&QD8WAX7W-Y;7,-"BUR=RUR+2UR+2T@(" Q(')O
M;W0@(" @(')O;W0@(" @(" @-3 Y-S@@075G(" U(" Q.3DV(&QI8F-O;7!L
M97@N80T*+7(M>'(M>'(M>" @(#$@8FEN(" @(" @8FEN(" @(" @(" X,#DY
M,B!.;W8@,S @(#$Y.34@;&EB8V]M<&QE>"YS;PT*+7)W+7(M+7(M+2 @(#$@
M<F]O=" @(" @<F]O=" @(" @(#4Q,#<Q-B!!=6<@(#4@(#$Y.38@;&EB8WAX
M+F$-"BUR+7AR+7AR+7@@(" Q(&)I;B @(" @(&)I;B @(" @(" T,#<X-38@
M3F]V(#,P(" Q.3DU(&QI8F-X>"YS;PT*+7)W+7(M+7(M+2 @(#$@<F]O=" @
M(" @<F]O=" @(" @(" W-3DQ,"!!=6<@(#4@(#$Y.38@;&EB8WAX<W1D+F$-
M"FQR=WAR=WAR+7@@(" Q(')O;W0@(" @(')O;W0@(" @(" @(" @,30@36%R
M(" V(#$R.C$P(&QI8F5X8RYA("T^("XN+V-C+VQI8F5X8RYA#0IL<G=X<G=X
M<BUX(" @,2!R;V]T(" @("!R;V]T(" @(" @(" @(#$V($UA<B @-B Q,CHQ
M,"!L:6)P<F]F,2YA("T^("XN+V-C+VQI8G!R;V8Q+F$-"BUR=RUR+2UR+2T@
M(" Q(')O;W0@(" @(')O;W0@(" @(" R,3,W,#8@075G(" U(" Q.3DV(&QI
M8G1A<VLN80T*+7(M>'(M>'(M>" @(#$@8FEN(" @(" @8FEN(" @(" @(#,P
M-#(X."!.;W8@,S @(#$Y.34@;&EB=&%S:RYS;PT*;')W>')W>'(M>" @(#$@
M<F]O=" @(" @<F]O=" @(" @(" @(" Q,2!-87(@(#8@,3(Z,3 @<&EX:64@
M+3X@+BXO8V,O<&EX:64-"FQR=WAR=WAR+7@@(" Q(')O;W0@(" @(')O;W0@
M(" @(" @(" @,3 @36%R(" V(#$R.C$P('!R;V8@+3X@+BXO8V,O<')O9@T*
M+7)W>'(M>'(M>" @(#$@<F]O=" @(" @<F]O=" @(" @(" @-3@Q,"!*=6X@
M,C4@(#$Y.38@<')O=&5C=%]S>7-T96U?:&5A9&5R<RYS: T*;')W>')W>'(M
M>" @(#$@<F]O=" @(" @<F]O=" @(" @(" @(" Q,"!-87(@(#8@,3(Z,3 @
M<VEZ92 M/B N+B]C8R]S:7IE#0HM<G=X<BUX<BUX(" @,2!R;V]T(" @("!R
M;V]T(" @(" @(" T,38R($%U9R @-2 @,3DY-B!U<&1A=&5?<W1L7V)O;VM?
-97AA;7!L97,N<V@-"C8R
`
end

begin 600 append_helper__49basic_string__Tc16char_traits_char13allocator__TcXcUl.cmd
M("US:6=N960@+6UE;6)E<E]A;&EG;FUE;G0@+6<R("U/,B M8W!P("US:&]W
M(&AE861E<B M<VAO=R!S;W5R8V4@+7)E861O;FQY7W-T<FEN9W,@+6%N<VE?
M86QI87,@+7=E86M?=F]L871I;&4@+7!T<R M<'1R+B]C>'A?<F5P;W-I=&]R
M>2 M<'1S=68N8V,@+FEP<" N:6-C("YC("Y#("YC>'@@+D-86" N0T,@+F-P
M<" M1%]2145.5%)!3E0@+41?4%1(4D5!1%]54T5?1#0@+41?7V]S9E]?("U$
M=6YI>" M1%]/4T8Q7U-/55)#12 M1$]31C$@+41?4D5%3E1204Y4("U$7T--
M05].3U=205!015)37R M1%]$14)51R M1$U%35]$14)51R M1%].3U]-1$%?
M1$Q,("U$3U-?3U-&,5\S("U$3U-?3D]?5U-44DE.1R M1$]37TY%5U]#2$5#
M2R M1$]37U-43%]!4U-%4E0@+41.3TU)3DU!6" M1$]37U5315]%6$-%4%1)
M3TY3("U$3U-?34%.52 M1$]37U-94U1/3TP@+41/4U].3U]!3$Q/0T%43U)3
M("U$7U-%4E9%4E\@+41)5%]%6%]-04-23U,@+41/4U]-54Q425]42%)%041%
M1" M1%]-1$%?5%)!0T5?0T]-4$].14Y4/2)C;W-?97-V8R(@+4DO=7-R+VEN
M8VQU9&4O8WAX("U)+W5S<B]I;F-L=61E("U)+B M22XN("U)+BXO:6YC("U)
M+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO("U)+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V-M
M;G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V-M
M;G-V8W,@+4DO=7-R+VQO8V%L+W-Y<W1O;VQV,BXP("U)+W5S<B]L;V-A;"]O
M<F)I>#(O8V]R8F$R+VEN8VQU9&4@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O
M3"]S97)V97(O;W)B<W9C<R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E
M<G9E<B]O<F)S=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN
M=%]S=F-S+V5V<W9C<R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN=%]S
M=F-S+VES8V]M;6]N("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V
58W,O:7-?;65T861A=&$@+5AS9"XO
`
end

begin 600 append_helper__49basic_string__Tc16char_traits_char13allocator__TcXPCcUl.cmd
M("US:6=N960@+6UE;6)E<E]A;&EG;FUE;G0@+6<R("U/,B M8W!P("US:&]W
M(&AE861E<B M<VAO=R!S;W5R8V4@+7)E861O;FQY7W-T<FEN9W,@+6%N<VE?
M86QI87,@+7=E86M?=F]L871I;&4@+7!T<R M<'1R+B]C>'A?<F5P;W-I=&]R
M>2 M<'1S=68N8V,@+FEP<" N:6-C("YC("Y#("YC>'@@+D-86" N0T,@+F-P
M<" M1%]2145.5%)!3E0@+41?4%1(4D5!1%]54T5?1#0@+41?7V]S9E]?("U$
M=6YI>" M1%]/4T8Q7U-/55)#12 M1$]31C$@+41?4D5%3E1204Y4("U$7T--
M05].3U=205!015)37R M1%]$14)51R M1$U%35]$14)51R M1%].3U]-1$%?
M1$Q,("U$3U-?3U-&,5\S("U$3U-?3D]?5U-44DE.1R M1$]37TY%5U]#2$5#
M2R M1$]37U-43%]!4U-%4E0@+41.3TU)3DU!6" M1$]37U5315]%6$-%4%1)
M3TY3("U$3U-?34%.52 M1$]37U-94U1/3TP@+41/4U].3U]!3$Q/0T%43U)3
M("U$7U-%4E9%4E\@+41)5%]%6%]-04-23U,@+41/4U]-54Q425]42%)%041%
M1" M1%]-1$%?5%)!0T5?0T]-4$].14Y4/2)C;W-?97-V8R(@+4DO=7-R+VEN
M8VQU9&4O8WAX("U)+W5S<B]I;F-L=61E("U)+B M22XN("U)+BXO:6YC("U)
M+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO("U)+W5S97(O=7-E<G,R+VMM8V)R
M:61E+TPO:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V-M
M;G-V8W,O:6YC("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO<V5R=F5R+V-M
M;G-V8W,@+4DO=7-R+VQO8V%L+W-Y<W1O;VQV,BXP("U)+W5S<B]L;V-A;"]O
M<F)I>#(O8V]R8F$R+VEN8VQU9&4@+4DO=7-E<B]U<V5R<S(O:VUC8G)I9&4O
M3"]S97)V97(O;W)B<W9C<R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+W-E
M<G9E<B]O<F)S=F-S+VEN8R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN
M=%]S=F-S+V5V<W9C<R M22]U<V5R+W5S97)S,B]K;6-B<FED92],+VEN=%]S
M=F-S+VES8V]M;6]N("U)+W5S97(O=7-E<G,R+VMM8V)R:61E+TPO:6YT7W-V
58W,O:7-?;65T861A=&$@+5AS9"XO
`
end
3475.3DEC C++ documentation on automatic instantiationHYDRA::DORHAMERSat Apr 19 1997 17:151139
From:	HYDRA::AXPDEVELOPER "[email protected]" 19-APR-1997 16:12:10.69
To:	SMTP%"[email protected]"
CC:	AXPDEVELOPER
Subj:	DEC C++ documentation

Kevin,

I am checking with the C++ compiler group about your questions.  You asked
about available documentation.  Do you have the "Using DEC C++ for Digital
UNIX" manual?  This can be found on disk 1 of the Digital UNIX Alpha Online
Documentation Library.  The v5.5 manual is on the April 1997 CDrom set.
Let me know if you have this CDrom set and need instructions on how to read
the online docs.  The Using C++ manual has a chapter on "Using Templates"
(chapter 5).  I have attached the section  5.2 "Automatic Instantiation
Specifics" below.  I noted that the compiler has a -ptv switch which displays 
each phase of instantiation.  This may help you in debugging your problems.  
I will let you know what suggestions I receive from the C++ compiler group.

Karen Dorhamer 
Alpha Developer Support

From "Using DEC C++ for Digital UNIX" manual:

 5.2  Automatic Instantiation Specifics

   This section describes automatic instantiation in detail, begin-
   ning with an overview of the instantiation process.


   5.2.1  Overview of the Instantiation Process
   The process of automatically instantiating a template has the
   following steps:

    1.  The user issues a cxx command to compile or link speci-
        fied files.

        If the user invokes the  cxx command specifying no source
        files but only object, archive, or shared library files, the
        process skips ahead to step 5. Remember that if you
        explicitly specified the repository path name during com-
        pilation, you must also specify the repository path name
        on the cxx command at link time.

    2.  DEC C++ sets the current repository. If the user speci-
        fies the -ptr option and the specified repository does not
        exist, DEC C++ creates the user-specified repository.
        Otherwise, DEC C++ checks for the existence of a repos-
        itory named  ./cxx_repository . If ./cxx_repository does
        not exist, DEC C++ creates one in your current working
        directory.

    3.  DEC C++ invokes the compiler in default mode. The
        compiler uses the template declaration file, the tem-
        plate definition file, and the top-level header files of your
        application to create an instantiation source file for each
        function template or class template used within the source
        program. If you use the  -pts switch, a separate instan-
        tiation source file is created for each member function
        template or static data member template used within the
        source program.

        If an instantiation source file already exists in the repos-
        itory, the compiler checks whether this file is current
        with regard to the corresponding header files and the
        command-line options. If the instantiation source file is
        out of date, the compiler re-creates it.

    4.  If you specified the -c option on the command line, DEC
        C++ has completed the compilation and returns control to
        the user.

    5.  DEC C++ invokes  ld to perform a prelink, to partially
        link those object files that are generated from the C++
        or C source files specified on the command line, plus any
        archived or shared library files. The linker performs
        symbol processing only; it does not create an executable.

    6.  For each unresolved symbol reported by the linker in
        step 5, DEC C++ searches either the default or the user-
        specified repositories for the corresponding instantiation
        object file. The writeable repository is searched first, fol-
        lowed by any read-only repositories specified on the  cxx
        command.

    7.  For each instantiation object file found in the writeable
        repository, DEC C++ checks whether that file is up to
        date with regard to the instantiation source file. For class
        templates, DEC C++ also checks the contents of the in-
        stantiation request file to see whether it specifies all the
        members that have been requested thus far during the
        prelink phase. If the instantiation object file is found to
        be out of date or the instantiation request file is missing
        any requests, DEC C++ invokes the compiler in template
        request mode to generate the instantiation. In template
        request mode, the compiler generates code only for the
        function template or class template members specified in
        the instantiation request file. The resulting object file is
        placed in the writeable repository and added to the link
        command in step 5. If the instantiation object file is up to
        date, DEC C++ simply adds the file to the link command
        in step 5.

        For each instantiation object file found in a read-only
        repository, DEC C++ performs no dependency checking
        except for class templates: DEC C++ verifies that the in-
        stantiation request file specifies all the members that have
        been requested thus far during the prelink phase. If the
        instantiation request file is missing any requests, DEC
        C++ ignores the object file. Otherwise DEC C++ adds the
        object file to the link command in step 5.

        If no instantiation object file is found, or if a read-only
        repository object was found but is missing requests, DEC
        C++ creates an instantiation object file by compiling (in
        template request mode) the instantiation source file lo-
        cated in the writeable repository. The resulting object is
        placed in the writeable repository and added to the link
        command in step 5.

    8.  DEC C++ repeats steps 5 through 7 until either no un-
        resolved symbols remain or no object files can be found
        within the repositories that correspond to the unresolved
        symbols.

    9.  DEC C++ invokes  ld with the modified link command to
        perform the final link.


5.2.2  Command-Line Options Specific to Templates
   The following cxx command-line options are specific to
   automatic instantiation of templates:

   -nopragma_template define_template

                                 Directs the compiler to ignore any #pragma
   				 This option is
                                 provided for users who want to quickly migrate
                                 to automatic instantiation without having to
                                 remove all the pragma directives from their
                                 code base.

   -nopt                     Directs the compiler to not automatically in-
                                 stantiate templates.

   -pt                        Directs the compiler to automatically instanti-
                                 ate templates. Each function template is placed
                                 in its own instantiation file, and member func-
                                 tions and static data members of each class
                                 template are grouped into one instantiation file.
                                 This option is the default.

   -ptrpathname         Specifies a repository, with ./cxx_repository
                                 as the default. If you specify several reposito-
                                 ries, only the first is writable, and the rest are
                                 read only.

                                 Specifying this option at link time enables DEC
                                 C++ to recognize and use the various template

                                 instantiations within the specified repository. If
                                 you use this option, make sure that the repos-
                                 itory specified at compile time is the same one
                                 specified at link time.

   -pts                       Directs DEC C++ to automatically instantiate
                                 needed templates. Each member function or
                                 static data member is instantiated in its own
                                 separate file.

   -ptsuf" list "         Specifies a list of file name suffixes that are
                                 valid for template definition files. Items in
                                 the list must be separated by commas and
                                 each suffix preceded by a period. A suffix
                                 may have no more than eight characters ex-
                                 cluding the beginning period. The default is
                                 ".cxx,.CXX,.C,.cc,.CC,.cpp,.c" .

   -ptv                       Turns on verbose or verify mode to display
                                 each phase of instantiation as it occurs.
                                 This option is useful as a debugging aid; see
                                 Section 5.2.9.1.3.

   -use_ld_input        Directs DEC C++ to record the names of re-
                                 quested automatic template instantiation object
                                 files in a linker options file in the writable
                                 repository.

                                 DEC C++ then adds the linker options file to the
                                 ld command line using the -inputfile linker
                                 command line option.
                                 The default behavior is to add the instantiation
                                 file names directly to theld command line.

                                 You can use the -use_ld_input option to re-
                                 duce long ld command lines that cause linking
                                 to fail because of ``Arg list too long'' errors.

                                 This option is supported on only Digital UNIX
                                 Version 3.2C and later systems.


   5.2.3  Repositories
   Between distinct compilations and linking, DEC C++ stores
   the necessary template instantiation information in a reposi-
   tory. You can specify a path name for the repository at both
   compile time and link time using the   -ptrcommand-line op-
   tion. If you specify multiple path names, the first becomes
   the writeable repository and the rest are designated as read-
   only repositories. A repository is implemented as a UNIX
   directory that can contain the following:

    �   Name-mapping file, a text file that directs the com-
        piler to the template definition files created by the user.
        The default name is  Template.map . See Section 5.2.6 for
        instructions on how to create and use this file.

    �   Instantiation source files that, when compiled in template
        request mode, generate the instantiation. These files have
        the extension  .cxx(see Section 5.2.7).
    �   Dependency files that contain information regarding the
        header files included by a particular instantiation and the
        command-line options used to generate the instantiation.
        The files have the extension  .o.d and .cmd respectively
        (see Section 5.2.8).

    �   Instantiation object files that contain template instantia-
        tions. These files have the extension  .o .

    �   Instantiation request files for class templates that contain
        the list of member instantiations generated in the cor-
        responding instantiation object file. These files have the
        extension .req .

   For example, given an instantiation request for the mem-
   ber function element(T)of template class  Vector<int> , the
   repository would contain the following files:


   File                     Description

   Vector__Ti.cmd  Dependency file containing the command-line
                             options

   Vector__Ti.cxx  Instantiation source file

   Vector__Ti.o     Instantiation object file

   Vector__Ti.o.d  Dependency file containing the list of header files

   Vector__Ti.req  Instantiation request file
Repository Permissions

   The default repository acquires the same permissions as the
   directory in which it resides, and therefore has the same
   access as the parent directory. Any files created in the repos-
   itory reflect this access.


   5.2.4  Template Declaration File
   This file contains the declaration of the template; include it in
   your application using the  #includesyntax.

   The following is an example of a declaration file,   AAA.h ,
   containing a class template:

   #ifndef AAA_H
   #define AAA_H
   template <class T> class AAA
   {
         T x;
         int y;
   public:
         void f(void);
         void g(T&);
   };
   #endif

   The following is an example of a forward declaration for a
   function template:
template <class T> void sort (T*, int n);

   A template declaration file should include the header files it
   needs for the types it uses. It should not include header files
   for types used as template arguments or the definition of the
   template itself because DEC C++ handles these automatically.


   5.2.5  Template Definition File
   This file contains the template implementation. Given the
   previous declaration file example,  AAA.h , the corresponding
   template definition file,  AAA.cxx , would contain code fragments
   as follows:

   template <class T> void AAA <T>::f(void) { /* ...  */ }
        .
        .
        .
   template <class T> void AAA <T>::g(T&) { /* ...  */ }

   Template definition files are treated like header files. They
   should contain only definitions of function, member function,
   or static data member templates. To avoid external linkages
   leading to unresolved symbols, DEC C++ ignores any defini-
   tions of functions or data items found in template definition
   files.
 If you include the corresponding declaration file in the tem-
   plate definition file, or include the header files that declare
   any template argument types, you should guard against mul-
   tiple inclusion. If a definition file does not exist for each cor-
   responding declaration file, you must write a name-mapping
   file to override the standard convention (see   Section 5.2.6).
   Otherwise, DEC C++ does not include the definition file in the
   instantiation source file.


   5.2.6  Name-Mapping File
   The name-mapping file is supplied by the user and must be
   named Template.map . The file is in the repository directory
   and contains information the compiler uses to automatically
   instantiate templates; it supplements template information
   found in the source code and in header files.

   A name-mapping file consists of the following entries:

    �   Comment entries

        These start with a sharp sign (#) followed by comment
        text.

    �   Definition entries

        These tell the compiler where to find a function tem-
plate body, a member function template body, or a static
        member initializer. A definition entry has the following
        format:

        definition name in "filename " [, "filename " . . . ];


        name
        A simple name to identify the template to the com-
        piler. Qualified names are unnecessary and not allowed.
        Parentheses, return types, and parameter lists are also
        not allowed.


        filename
        The path name of the file containing the template def-
        inition. Each file listed will be included in the resulting
        instantiation source file.

   DEC C++ permits only one definition entry per template
   name. Thus, if the same name is used to define three differ-
   ent templates, each within its own file, you must list all three
   files in a single definition entry for that name.


   Example 1

   Consider the following template function:
template <class T> void sort( T *p ) {}

   The following is a valid name-mapping file definition entry:

   definition sort in "sort_impl.cxx";

   With this definition, the compiler expects to find the body of
   function template  sort()in the source file sort_impl.cxx .


   Example 2

   Consider the following template member function:

        template <class T> class List {
        public:
               void add_item(T new_item);
        /*  ...   */
        };

   The following is a valid name-mapping file definition entry:

        definition add_item in "List_funcs.cxx";

   This definition instructs the compiler to find the body of
   the member function template   add_item()in the source file
   List_funcs.cxx .

   Presumably the source file  List_funcs.cxx contains the fol-
   lowing code:
#include "List.h"
   template <class T> void List<T>::add_item(T new_item){}

   Automatic instantiation makes including    List.hmore than
   once a possibility.  To guard against this happening, you
   should enclose the code in include guards, as in the following
   example:

   #ifndef List_H
   #define List_H
    ...   // code for List.h
   #endif


   Example 3

   Consider the following overloaded template member function:

   //List.h
   #ifndef List_H
   #define List_H
   template <class T> class List {
   Public:
        List();
        List(const List& l);
        /*  ...   */
   };
   #endif

   //List.cxx
   #include "List.h"
   template <class T> List<T>::List(){}

   //List_copy.cxx
   #include "List.h"
   template <class T> List<T>::List(const List& l){}

   The following is a valid name-mapping file definition entry:

   definition List in "List.cxx", "List_copy.cxx";


   5.2.7  Instantiation Source File
   By default, DEC C++ creates one instantiation source file
   for each function template instantiation request, and one for
   each class template instantiation request. The instantiation
   source file includes all the headers needed to correctly in-
   stantiate a template. The order of inclusion is as follows (no
   file is included more than once):

    1.  Template declaration file and top-level header files, in the
        order they appeared in the compilation unit requesting
        the instantiation.

    2.  Template definition files.

   For example, consider the following name-mapping file:
   # Stack Implementation
   definition Stack in "Stack_Impl.cxx";

   With an external unresolved symbol,   Stack<C>::push(C) ,
   where class C is defined in the header file   Cdef.h , the result
   would be the following instantiation source file:

   #include "Cdef.h"
   #include "Stack.h"
   #include "Stack_Impl.cxx"

   typedef Stack<C> __dummy_;


   5.2.7.1  Template Definition File Lookup
   DEC C++ matches each instantiation request with the cor-
   responding template definition file to create the instantiation
   source file.  The name of this source file must be similar
   to that of the template declaration file. DEC C++ uses the
   following lookup order:

    1.  Search the user-provided name-mapping file (  Template.map ,
        in the repository list) for the name of the function, mem-
        ber function, or static data member template.

    2.  If the #includename for the header file containing the
        template declaration is specified with an absolute path
        name, look only in the directory specified by the path
        name.

    3.  If the #includename for the header file containing the
        template declaration is specified with a relative path
        name, take the following action:

         a.  If the header file name is specified with double quo-
              tation marks (" ") and the   -nocurrent_include option
              was not specified, append the relative path name to
              the directory containing the source file, and search for
              files with the appropriate suffixes.

         b.  Otherwise, append the relative path name to all the   -
              I directories and look in those resulting directories for
              files with the appropriate suffixes.

        For source files, the appropriate suffixes are, in order
        of preference:  .cxx ,.CXX ,.C ,.cc ,.CC ,.cpp , and.c , or as
        defined by the -ptsufoption.

        DEC C++ ignores any file extension that does not begin
        with a dot (.) or that has more than eight total characters
        in the extension.


   5.2.8  Dependency Management
   When a program makes a template instantiation request,
   DEC C++ avoids creating and compiling a new instantiation
   source file if existing source and object files can be reused.

   For each instantiation request, when DEC C++ finds a corre-
   sponding instantiation source file or object file in the writeable
   repository, the following checks are performed:

    1.  DEC C++ compares the command-line options used to
        compile the existing instantiation source file with the cur-
        rent command-line options. If the options do not match,
        then DEC C++ creates and compiles a new instantiation
        source file.

    2.  The creation date of the instantiation object file is com-
        pared to the modification date of each header file included
        by the instantiation source file. If any header files have
        changed since the object file was created, then DEC C++
        creates and compiles a new instantiation source file.

    3.  For class templates, DEC C++ examines the contents of
        the instantiation request file to determine if any requests
        are missing. If the instantiation request file is not com-
        plete, DEC C++ modifies the file and then recompiles the
        instantiation source file.

   5.2.9  Building Libraries and Applications That Use
             Templates
   When you build libraries and applications using manual
   instantiation, you face the tedious tasks of ensuring that
   all necessary templates are instantiated and of determin-
   ing where each template instantiation is generated to avoid
   duplicates. The advantage of this method is that you have
   complete control over template instantiations; however using
   this approach can be time-consuming.

   Automatic template instantiation performs these man-
   ual tasks for you if your build procedure and sources are
   properly set up. The procedure for building libraries and
   applications using automatic template instantiation differs
   somewhat from the procedure for manual instantiation. This
   section discusses the basic issues when using automatic tem-
   plate instantiation; it also provides suggestions and examples
   for resolving these issues.

   See Section 3.4 for suggestions on organizing your sources.


   5.2.9.1  Building a Standalone Library
   Library vendors obviously need to provide a standalone li-
   brary to their customers. With respect to templates,    stan-
   dalone means that the library contains:

    �   All the template instantiations it uses

    �   Any additional template instantiations that the vendor
        wants to provide to the customer

   In addition to library vendors, developers of large applica-
   tions may want to divide their application into one or more
   standalone libraries to facilitate building. Creating a single
   library is straightforward. However, creating multiple li-
   braries is more difficult if the libraries use the same template
   instantiations.


   5.2.9.1.1  Creating a Single Library
   Before DEC C++ added support for automatic template in-
   stantiation, a typical build procedure would compile all the
   library sources and place the resulting object files into an ob-
   ject library. Template instantiations were generated through
   the use of the  -define_templates option or explicit instan-
   tiation or #pragma define_template statements within the
   sources.

   When you use automatic template instantiation, the ba-
   sic method is the same: you want to compile all the library
   sources and place the resulting object files into an object li-
   brary. However you first need to examine your sources and
   determine whether or not you need the explicit instantiation
   statements. Also you need to change your build procedure to
   specify different options on the  cxx command line. See the
   following paragraphs for details.


   Your Library Sources

   An important similarity between manual and automatic
   template instantiation is that   only the requested templates are
   instantiated . A requested template  is one that is either of
   the following:

    �   Explicitly requested by way of an explicit instantiation or a
        #pragma define_template statement

    �   Implicitly requested  through its use in a previously in-
        stantiated template or nontemplate function

   Therefore, when you examine your library sources, consider
   the following:

    �   If the functions and objects provided by your library are
        not templates, even though they may use template func-
        tions or objects, then your library sources need no explicit
        instantiation statements. The automatic instantiation
        process guarantees that all requested templates will be
        instantiated.

        If you previously relied on manual instantiation and your
        sources contain  #pragma define_template statements, you
        may keep the statements in your sources and disable
        them with the  -nopragma_template option on yourcxx
        command.

    �   If you want to provide instantiations of templates that
        are not implicitly requested, you need explicit instantia-
        tion statements for those templates in your sources. See
        Section 5.2.9.3 for an example of this.

        In this case, do not use the -nopragma_template option.


   Building Your Library Sources

   As you compile each library source, you must include the
   following options on your cxx command line:

    �   -Hf

        This causes the driver to perform the prelink phase, en-
        suring that both the source and template instantiations
        are compiled. No executable is created and the object files
        are not deleted. Do not use the -c option because that
        prevents the compilation of the template instantiations.

    �   -ptrpathname
        You must use the same repository when compiling each
        library source.

        If your build procedure sets a directory default and per-
        forms all the compile commands from that one directory,
        you can leave off the  -ptr option and use the default
        repository location, ./cxx_repository .

   Do not specify the -define_templates option on yourcxx com-
   mand.

   If you intend to create a shareable library from these sources
   and you plan to let your customers preempt the sym-
   bols in your shareable library, you must also specify the
   -preempt_symbol option on yourcxx command line.


   A Sample Build Procedure

   Suppose you want to create a standalone library of window
   routines and your build directories look like the following:

                             windows_library
                                        |
               -------------------------------------
               |                    |                             |
              src                  build                   include
               w1.cxx              |                           template1.hxx
               w2.cxx           repository                template1.cxx
                ...                                               ...

   Your build procedure, build_libwindows.sh , would be as fol-
   lows:

   lroot=pathname/windows_library
   lbuild=$lroot/build

   # Compile each source separately using -Hf
   #
   #      -Hf option ensures that both the source and template instantiations
   #            are compiled; do not use the -c option because that prevents
   #            compilation of the template instantiations
   #
   #      -ptr option causes all template instantiation files and objects to be
   #            placed in the build/repository directory; you must specify the same
   #            repository for each cxx command
   #
   #      -o option causes the source object files to be placed in the build
   #            directory

   cxx $lroot/src/w1.cxx -I $lroot/include -ptr $lbuild/repository \
         -o $lbuild/w1.o -Hf
   cxx $lroot/src/w2.cxx -I $lroot/include -ptr $lbuild/repository \
         -o $lbuild/w2.o -Hf

   # ... and so on for all library source files

   # And now place all the source objects and template instantiation objects
   # into the object library

   ar r $lbuild/libwindows.a $lbuild/*.o $lbuild/repository/*.o

   If you are a library provider, you may wish to create a share-
   able library from the resulting object library and provide one
   or both libraries to your customers. As noted in   Section 3.4,
   you must also provide the template declaration and template
   definition files for any templates that your customers may
   use directly. You do not need to provide template declaration
   and definition files for templates that are solely used by your
   library sources.


   5.2.9.1.2  Creating Multiple Libraries
   If there are no common template instantiations among the
   libraries, then you can follow the directions in   Section 5.2.9.1.1
   to build each library.

   If the libraries do share template instantiations, you must
   avoid creating the same instantiations in multiple libraries.
   Otherwise, any applications that link against your libraries
   will encounter multiply defined symbols. To solve this prob-
   lem, you need to create another library that will contain the
   common instantiations.

   No automated way exists to determine the set of common in-
   stantiations needed by your libraries. One method is to first
   build each library as described in  Section 5.2.9.1.1, then com-
   pare the list of object files from each library's repository and
   select the duplicates to place in your common instantiation li-
   brary. Another method is to build each library and then link
   them together using the   -all option on your ld command.
   The resulting multiply defined symbols should be placed in
   your common instantiation library. For details on building
   this common instantiation library, see   Section 5.2.9.3.


   5.2.9.1.3  Using the -ptv Option
   When you specify the  -ptv option during compilation, DEC
   C++ displays informational messages about the repository
   or repositories being used. When you specify the  -ptv option
   during the prelink or link phase, DEC C++ displays infor-
   mational messages about the repositories as well as each
   unresolved symbol, each instantiation object file found, and
   each compilation of an instantiation source file.

   These messages can be a useful debugging tool when you
   are trying to determine which template instantiations are
   reused, created, or not found. You may see  Unable to access
   file messages. Remember that during the prelink phase,
   DEC C++ searches the repositories for corresponding files
   for every unresolved symbol and displays the access message
   for any file that is not found. Thus, instead of watching for
   these access messages, Digital recommends that you examine
   the results of the final link or final partial link to determine
   whether you have unresolved symbols.
   Typically, unresolved symbols indicate that an external li-
   brary or object file is missing from your  cxx command.
   Unresolved symbols are also caused when a source file or
   instantiation source file cannot be compiled, so examine your
   build results for compilation errors. If you cannot determine
   the cause of an unresolved symbol, refer to  Section 3.4 for an
   explanation of how to organize your code to ensure that the
   symbol is generated.


   5.2.9.2  Building an Application
   Whether you have a large or small application, whether you
   have one or multiple source directories, remember to use the
   same repository for all components that are accumulated into
   any one executable. This is important because it ensures that
   no duplicate instantiations are created or accumulated into
   the executable, and it provides the best build performance.

   If you previously relied on manual instantiation to build your
   application, you should no longer use the  -define_templates
   option on your cxx command nor make explicit instantiation
   requests within your sources. The automatic instantiation
   process guarantees that all needed template instantiations
   will be generated. Otherwise, unless you maintain the man-
   ual instantiation requests, they may generate unnecessary
   instantiations as your sources change.


   5.2.9.2.1  Building from Multiple Source Directories
   Large applications are often divided into multiple compo-
   nents because building each component individually is easier
   to manage than building the whole. Typically each compo-
   nent is built by compiling all the component's source files, and
   then once all the components are built, the resulting object
   files are linked together to create the final executable.

   This basic method applies when you are using automatic
   template instantiation, but you have the added concern of en-
   suring that template instantiations are generated and linked
   into the final executable.


   Building Your Application Sources

   Because you will be performing a final link of your sources,
   you can delay the prelink phase until the final link.
   Therefore, you can continue to compile your application
   sources using the  -c option and do not need to specify the -
   Hf option as described in Section 5.2.9.1. However you must
   include the following options on your cxx commands:

    �   -I full pathname
       Because you will be delaying the compilation of tem-
        plate instantiations until the final link, you must specify
        full pathnamefor all include directories listed in your
        cxx command. Otherwise the compilation of template
        instantiations may fail due to missing include files.

    �   -ptrpathname

        You must specify the same repository for each source file
        across all components, and on your final link command
        as well.


   A Sample Build Procedure

   Suppose you have a spreadsheet application that is sepa-
   rated into three major components: user interface, reporting,
   and computing. These components are built individually and
   then accumulated along with the main program into a single
   executable.

   Your build directories look like the following, where each
   component has its own subdirectory for sources, includes, and
   building in addition to the final build directory:

                                          spreadsheet_proj
                                                      |
                 ----------------------------------------------------------
                 |                                   |                    |            |                        ui                                rpt               comp       main         final_build
                 |                                   |                    |            |             |
        ----------------         --------------         ...      main.cxx    repository
        |         |          |          |         |       |
      src    build   include    src    build include

   You would have one build procedure for each component as
   well as a final build procedure. What is important is that
   each build procedure, including the final build, uses the same
   -ptr option. The ui build procedure, build_ui.sh , would look
   like the following, and the other component procedures would
   be similar:

   sroot=pathname/spreadsheet_proj
   uiroot=$sroot/ui
   uibuild=$uiroot/build
   fibuild=$sroot/final_build

   # Compile each source separately using -c
   #
   #      -ptr option causes all template instantiation files to be placed
   #            in the final_build/repository directory; you must specify the same
   #            repository for each cxx command
   #
   #      -I option specifies the full pathname so that later compilation of
   #            the template instantiations will succeed
   #
   #      -o option causes the source object files to be placed in the ui/build
   #            directory

   cxx $uiroot/src/ui1.cxx -I$uiroot/include -ptr $fibuild/repository \
         -o $uibuild/ui.o -c
   # ... and so on for each source in this component

   Your final build procedure,  build_spreadsheet.sh , would look
   like the following:

   sroot=pathname/spreadsheet_proj
   uiroot=$sroot/ui
   uibuild=$uiroot/build
   comproot=$sroot/comp
   compbuild=$comproot/build
   rptroot=$sroot/rpt
   rptbuild=$rptroot/build
   fibuild=$sroot/final_build

   # Compile the main program and create the final executable
   #
   #      -ptr option must specify the same repository used by the component builds
   #
   #      all objects from component builds are included in the final executable;
   #      the template instantiation objects are created during the prelink phase
   #      and are included in the final executable

   cxx $sroot/main/main.cxx $uibuild/*.o $rptbuild/*.o $compbuild/*.o \
        -I$uiroot/include -I$comproot/include -I$rptroot/include \
        -ptr $fibuild/repository -o $fibuild/spreadsheet


   5.2.9.2.2  Building Against a Standalone Library
   Your application usually needs to link against external li-
   braries. When an external library contains template instan-
   tiations, your application needs access to the external object
   (or shareable) library as well as to any template declaration
   and template definition files provided with the library.

   To ensure that your application uses the instantiations pro-
   vided by a particular library, instead of re-creating the
   instantiations, do the following:

    �   During every compile, use the  -I option to specify the lo-
        cation of the library's template declaration and template
        definition files.

    �   Specify the object or shareable library on the   cxx com-
        mand during every prelink phase; that is, whenever you
        specify the -Hf option or create an executable.

   Using the previous spreadsheet example and assuming the
   library's include directory is  $library/include and the object
   library exists in  $library/build/libwindows.a , the following
   changes are necessary:

    �   The cxx commands in the  ui build procedure must specify
        an additional -I option for the library's include directory.
        For example:

        cxx $uiroot/src/ui1.cxx -I$uiroot/include -I$library/include \
             -ptr $fibuild/repository -o $uibuild/ui.o -c

    �   The cxx command in the final build procedure must spec-
        ify the additional -I option as well as specifying the  -L and
        -l options for the object library. For example:

        cxx $sroot/main/main.cxx $uibuild/*.o $rptbuild/*.o $compbuild/*.o \
             -I$uiroot/include -I$comproot/include -I$rptroot/include \
             -I$library/include -L$library/build -lwindows \
             -ptr $fibuild/repository -o $fibuild/spreadsheet


   5.2.9.3  Building a Common Instantiation Library
   One way to speed up your build process is to create a reusable
   library of the stable, common instantiations used by your
   program. Examples of stable instantiations are STL tem-
   plates instantiated with built-in types. You can create such a
   library by producing one or more source files containing ex-
   plicit instantiation requests for each instantiation you want
   in the library. Then, build the source files, place the result-
   ing object files in a library, and specify the library during the
   prelink or final link of your program.

   For example, suppose you wanted instantiations of the STL
   vector class with types int ,char , andconst char* . You could
   create a file called vector_inst.cxx as follows:


   #include <vector>

   template vector<int>;
   template vector<char>;
   template vector<const char*>;

   Then, compile this file using the same command as described
   in Section 5.2.9.1.1:

   cxx -Hf -ptr ./lib_repository vector_inst.cxx

   In this example, the  cxx command will compile  vec-
   tor_inst.cxx and create and compile any further instan-
   tiations that are needed. The object file   vector_inst.o will
   be in the current directory.  If additional instantiations
   are generated, their object files will be in the repository    .
   /lib_repository .

   If you have multiple source files similar to   vector_inst.cxx ,
   compile each of them using the same   -Hf option and the same
   repository.

                                              Note

        If you intend to release a shared library of instantia-
        tions and let customers override any instantiations in
        your library, you must compile your instantiation files
        with the -preempt_symbol option.


   You can then use the following commands to create an object
   library called libinst.a :

   ar r libinst.a vector_inst.o ./lib_repository/*.o
   ranlib libinst.a

   For the C++ Standard Library, Digital provides a shell script
   called /usr/lib/cmplrs/cxx/build_common_instantiation_library.sh
   that automatically creates a library of common instantiations
   for the STL containers and other class templates. You can
   examine this script as an example of makefile and source
   files.


   5.2.10  Useful Conventions
   This section describes ways to structure and name an ap-
   plication's files to make the best use of automated template
   instantiation.


   5.2.10.1  Inline Functions
   You can declare and define an inline member function within
   a class template definition. For example:

   template <class T> class List {
   public:
         List() {}
         /*  ...   */
   };

   You also can define it in the template definition file.  For
   example:

   template <class T> inline List<T>::List() {}

   The inlinekeyword is required if the inline function is de-
   fined outside the class template definition; otherwise, the
   member is not inlined.


   5.2.10.2  Specializations
   To provide special implementations for classes that have
   slightly different semantics or to optimize performance, users
   can override the standard version of a class, a particular
   member of the class, or a function template.

   The following example shows how specializations work:

   //Array.h
   template <class T> class Array {
   private:
         T *data;
         int size;
   public:
         Array(int s = 100);
         Array(const Array<T> &);
         T &operator[](int);
         ~Array();
   };

   //Array.cxx
   #include <string.h>

   template <class T> Array<T>(int s) : size(s) { data = new T[size]; }

   template <class T> Array<T>::Array(const Array<T> &v)
   {
         size = v.size;
         data = new T[v.size];
         for (int i=0; i < size; i++)
               data[i] = v.data[i];
   }

   //Create a specialization of this member function for Array<char>
   template <class T> Array<char>::Array(const Array<char> &v)
   {
         size = v.size;
         data = new T[v.size];
         strcpy(data, v.data);
   }

   template <class T> T &Array<T>::operator[](int n) { return data[n]; }

   template <class T> Array<T>::~Array() { delete data; }

   //main.cxx
   #include "Array.h"

   int main()
   {
         Array<char> v(10);

         for (int i=0; i < 10; i++);
               v[i] = 'A';

         Array<char> copy_of_v(v);

         /* ... */

         return 0;
   }

   To compile and link this example, issue the following com-
   mand:

   % cxx main.cxx

   In this example the member function,   Array(Array<T> &v) , of
   class template Array is specialized for   char by the definition
   in Array.cxx . When this member function is instantiated, the
   compiler uses the specialization in   Array.cxxinstead of using
   the definition specified by the generic template.

   Alternatively, you can supply the specialization in a sepa-
   rate source file as suggested in  Section 3.4 (and remove the
   specialization from  Array.cxx ). For example:


   // Array_char.cxx
   #include "Array.h"
   #include <string.h>
   template <class T> Array<char>::Array(const Array<char> &v)
   {
         size = v.size;
         data = new T[v.size];
         strcpy(data, v.data);
   }

   To compile this source file, use the following command:

   cxx -c Array_char.cxx

   Then you can place the resulting object file in a library to be
   linked later into your application. Note that, if this source file
   requests any template instantiations, you will need to spec-
   ify the -Hf option on your cxx command and also include the
   resulting repository object files in your library.

   You can declare a specialization in a template declaration file.
   However do not define a specialization in a template declara-
   tion file because it will cause multiple definitions when the file
   is included by multiple modules.


   5.2.10.3  Debugging Instantiations
   When you specify one of the -g options to the cxx command,
   DEC C++ instantiates any requested templates with this op-
   tion as well. If the application's binary file has moved with
   regard to the repository used to build it, and a relative path
   name was specified to the  -ptr command-line option, you
   must specify a full repository path name to ensure that the
   debugger can find the source files.


   5.2.10.4  Linking Applications That Do Not Use Templates
   By default, DEC C++ performs the prelink steps associated
   with automatic template instantiation. To avoid automatic
   template instantiation, specify the   -nopt option to the cxx
   command.

    
3475.4response from DEC C++ engineeringHYDRA::DORHAMERThu Apr 24 1997 12:04102
    From:   HYDRA::AXPDEVELOPER "[email protected]" 22-APR-1997
    00:02:44.4
    7
    To:     US6RMC::"[email protected]"
    CC:     AXPDEVELOPER
    Subj:   info on C++ compiler syntax
    
    Kevin,
    
    Here are some responses to your C++ template resolution questions from
    one of the C++ compiler engineers.  Please let me know if you need
    further help.
    
    Karen Dorhamer
    Alpha Developer Support
    
                                        -< C++ >-
    ================================================================================
    Note 3544.1        automatic template instantiation questions            
    1 of 1
         -< Here are some answers you can provide the customer.  Hope this
    h >-
    --------------------------------------------------------------------------------
    >   Is there any way to make the compiler not need the spaces between the
    >option tag and its value?
    
    No.
    
    >   Do I have the correct format for the suffix list?
    
    Yes.  You need to specify a space.  For example,
    
            cxx -ptr ./my_rep -ptsuf ".c.inc" t1.cxx
    
    >   Why do the .cmd files have the wrong option format even though they
    >are based on my compiler options?
    
    The .cmd files do not have the wrong option format.
    The .cmd files are used internally by the DEC C++ driver
    to invoke the DEC C++ compiler image directly.  If you
    specify -v on the command line you will notice that the
    DEC C++ driver changes for example "-ptr ./my_rep" to
    "-ptr./my_rep" when invoking the compiler image in
    /usr/lib/cmplrs/cxx.
    
    >   Why are certain .cxx files that the compiler looks for not in the
    >repository and others are there but ignored?
    
    This is a hard question to answer without an example.  I
    can only guess that based on your previous experiences with
    the -ptr command line option that the compiler is looking
    in the wrong repository and not finding the correct instantiation
    source files.  As to why other instantiation source files in
    the repository might be ignored maybe due to specializations
    that you have specified within your source program.  The DEC C++
    compiler sees a request for a template and creates an
    instantiation source file in the specified repository.  At
    link time if another module of your application contains
    a specialization of that template, your request is satisfied
    and the compiler does not proceed further to compile the
    instantiation source file in the repository.
    
    >   Will changing our names to use only standard suffixes (what are
    >they?) and leaving out the '-ptsuf...' option alleviate some of the
    >problem for now.
    
    The -ptsuf option can be specified by providing a list
    of file name extensions that are valid for your
    template definition files. The list must be contained in
    quotation marks and a space must present between -ptsuf
    and the list.  Currently we do not have any known problem
    reports against the -ptsuf command line option.  Given
    some of the explainations above please try specifying
    the -ptsuf option again.  For example, I wrote a quick
    program that worked with V5.5 where the template definition
    file had a file name extension of ".inc".
    
            cxx -v -ptsuf ".inc" t1.cxx
    
    If you are still having problems please send a reproduceable
    example and we will take a look.
    
    
    >   Is there anything else about template auto-instantiation and
    >resolution under the osf c++ compilers that I am missing and that may be
    >contributing to my problems?
    >   Are there any other manuals on the OSF1 build
    >environment/tools/compilers/c++/templates?
    
    From your problem description is sounds like that most of your
    problems are originating from the command line options.  I hope
    some of my answers to the above questions will solve
    the problems you are experiencing with DEC C++ template automatic
    instantiation.  The documentation I can point you at is
    the "Using DEC C++ on Digital UNIX" manual which I
    believe Karen Dorhamer has already suggested.  Also there
    is some last minute information in the release notes for
    V5.5 that might be of value as well.  You can find the
    release notes on your system in the /usr/lib/cmplr/cxx
    directory.
    
    Hope this helps.
3475.5I forwarded this to Kevin alsoHYDRA::DORHAMERThu Apr 24 1997 12:08278
    From:   DECCXL::MITCHELL     "Charlie Mitchell" 22-APR-1997 16:11:59.17
    To:     HYDRA::DORHAMER
    CC:     FOLTAN,MITCHELL
    Subj:   Manugistics
    
    Lois, thanks for your recent reply in c_plus_plus 3544.
    
    Karen, I was involved with a Manugistics fire drill last week.  This
    involved Nina Keating, Chuck Piper and others, and I had the feeling
    that I was dealing with a new set of people who had never worked ISV
    issues before.  Nina was only vaguely aware of Mike Greenfield's group,
    but perhaps she has learned more since then.
    
    Anyhow, I talked to Tom Drollet at Manugistics and sent him the
    following information.  I'm sending it along just for your information.
    Please continue to post problems in the c_plus_plus conference.
    
    Charlie
    
    -------
    
    From:   DECCXX::MITCHELL     "Charlie Mitchell" 18-APR-1997 16:47:34.54
    To:     US2RMC::"[email protected]"
    CC:     MIASYS::KEATING_N,
    US2RMC::"[email protected]",BECKLEY,US2RMC::"simons@z
    k3.dec.com",MITCHELL
    Subj:   Follow up on con call regarding DEC C++
    
    Hi,
    
    Thanks for talking today about the C++ issues.  To summarize some
    of the key points:
    
        -   It's likely that you will encounter some build time problems
            with either DEC C++ V5.5 or V5.6.  We would be happy to work
            with you to help find a way to minimize these problems.
            Several options include selective use of manual instantiation,
            use of the -define_templates option for a single module that
            instantiates many templates, or building a reusable library
            of instantiations.  I have attached relevant portions of
            the V5.6 release notes.
    
        -   The STL that we're supporting in V5.6 is based on
            Rougewave's code.  You may find it more satisfactory
            than the version of STL we supported when you ported your
            Version 4.7.
    
        -   We submit DEC C++ V5.6 to software manufacturing 11-Jun-97.
            Please think about beta testing this version.  That makes it very
            easy for developers on the C++ team to work directly with your
            developers and makes it easy to get fixes to you.  If that
            isn't acceptable to you for some reason, we would still
            be interested in doing whatever we can to help.
        -   DEC C++ V6.0 should solve the build time problems.  We
            expect to be beta testing it in the fall.
    
    Please feel free to call me at 603 481-2089 or send mail if you have
    questions.
    
    Charlie
    
    -----
    
    Attachment from V5.6 release notes
    
    1.5 Improving Build Performance
    
           This section contains suggestions for improving the
           performance of DEC C++ on your system.
    
     1.5.1 Object File Compression
           On Digital UNIX V4.0 or later, object files are compressed
           by default. (Object file compression is not supported
           on versions prior to Digital UNIX V4.0.) Object file
           compression reduces object file size. Compressed object
           files may result in shorted link times, depending on
           characteristics of the system and the application. If
           link times are an issue, compare the times to build your
           application when compiling with -compress (the default on
           Digital UNIX V4.0) and -nocompress.
    
     1.5.2 Use of Shared Libraries
    
           Partitioning a large application into several shared
           libraries, which are then linked into an executable,
           is a useful technique for reducing link times during
           development. See Section 3.4.4 Using DEC C++ for Digital
           UNIX Systems.
     1.5.3 Template Instantiation
    
           The cxx command automatically instantiates templates by
           prelinking to find unresolved symbols due to uninstantiated
           templates. Instantiations are completed by compiling
           instantiation source files in the repository. The
           prelinking and compiling process is repeated until all
           template instantiations have been compiled.
    
           For some applications, the link-time automatic
           instantiation process can be time consuming. The following
           approaches may be helpful in reducing the amount of time it
           takes to build your application:
    
           o  Selectively use compile-time instantiation options
              for some modules. These options can improve build
              performance because templates are instantiated when
              the original C++ sources files are compiled without the
              need to reprocess large header files. See Section 1.9
              for more information concerning the -define_templates,
              -tused, and -tlocal command line options.
    
           o  Build a reusable library of instantiations. With this
              approach, stable and common instantiations are compiled,
              and the resulting object files are put in a library.
              When building your program, you link with this library
              rather than redoing all instantiations every time you
              build. At the end of Section 5.2 in Using DEC C++ for
              Digital UNIX Systems is a step by step example on how to
              create a library of common instantiations.
    
    1.9 Additional Template Instantiation Options for Version 5.5
    
           In addition to link-time automatic instantiation (the
           default) and compile-time instantiation using the -
           define_templates option, DEC C++ Version 5.5 provides two
           additional forms of compile-time instantiation, as follows:
    
           -tlocal     Instantiate only the template entities that
                       are used in this compilation, and force those
                       entities to be local to this compilation.
    
           -tused      Instantiate only the template entities that are
                       used in this compilation. The template entities
                       are instantiated with external linkage.
    
           Similarities and differences between the three compile-time
           instantiation options are as follows:
    
           o  With all three options, if a module contains a call to a
              function template (or takes its address), an instance of
              the template is generated.
    
           o  The options differ when a class template is used within
              a module.
    
              With the -define_templates option, all member functions
              within a class template are instantiated, whether or
              not they are used. With the -tused and -tlocal options,
              only the member functions that are actually used in the
              module are instantiated.
    
           o  The options differ with regard to the linkage chosen for
              the instantiated functions and static data members.
    
              With the -define_templates and -tused options, functions
              and static data members are instantiated with external
              linkage. This can lead to multiply defined symbol
              errors at link time, if the same template entities are
              instantiated in different modules. Thus, these options
              generally should not be specified for all modules in an
              application.
    
              With the -tlocal option, functions and static data
              members are instantiated with internal linkage and
              are thus local to the module that generates the
              instantiation. This avoids the problem of multiply
              defined symbol errors that can occur at link time
              when you specify either the -define_templates or -tused
              option for more than one module in an application.
    
           o  With all three options, static members of a requested
              class template are instantiated, whether or not they are
              used.
    
              When you specify the -tlocal option, each module
              contains an instance of any static data members
              instantiated from a requested class template. If the
              initializers for such static data members cause side-
              effects at runtime, note that the side-effects will
              occur for each instantiation in each module.
    
           o  With all three instantiation options, instantiations
              for requested template entities are generated at compile
              time when the template is used. This implies that the
              module requesting the template entity must contain the
              corresponding template definition for that particular
              template and any dependencies that the template
              definition contains, prior to the template's point of
              use. If the template definition is not present within
              the compilation prior to the instantiation request, DEC
              C++ will be unable to materialize the requested template
              entity.
    
           Determining When to Use the Compile-time Instantiation
           Options
    
           The compile-time instantiation options are primarily useful
           for reducing the time required to build an application.
    
           One approach to reduce build times, would be to identify
           within your application the one module that contains the
           most uses of template entities. Once identified, this
           module can be compiled with either the -define_templates      
    or -tused option and the remaining modules compiled with
           automatic instantiation. This approach avoids the problem
           of multiply defined symbols at link time that can occur
           when using these options; this approach also offers the
           convenience of automatic instantiation.
    
           You can also use the -tlocal option to improve build times,
           provided that any redundant initializers for static data
           members do not have unwanted side effects. You can specify
           the -tlocal option for all modules in your application,
           something you cannot do with the -define_templates and -
           tused options. With the -tlocal option, instantiations are
           local to each module. These local instantiations are not
           shared across the various modules within an application.
           For some applications, multiple copies of the same instance
           can greatly increase the size of executables.
    
     1.10 Explicit Instantiation       The new ANSI syntax for explicit
    instantiation has been
           implemented in the DEC C++ compiler. The syntax for this
           (as of the January 26th, ANSI C++ working paper) is as
           follows:
    
           template declaration
    
           Currently, DEC C++ accepts only template function
           declarations and template class declarations. DEC C++ does
           not yet support explicitly instantiating template member
           functions or template static data members.
    
           Note that because explicit specification of function
           template arguments is not yet implemented, a template
           argument list may not be specified in an explicit
           instantiation.
    
           Examples of use:
           template <class T> class X { public:
                   // stuff;
           };
           template <class T> void f(const T &t) { printf("f(const T&)
    called\n"); }
    
           template class X<int>;        // instantiate template class X
    with T=int
           template void f(int &);       // instantiate template function f
    with T=i
    nt
           template void f<int>(int &);  // not yet implemented
    
           The ANSI syntax is unambiguous regarding template
           functions. Only the template function that matches
           the declaration in the explicit instantiation will be
           instantiated. The DEC C++ #pragma define_template directive
           is ambiguous, and instantiates all the template functions
           that have the same number of template parameters as
           specified in the pragma.
    
           To explicitly instantiate templates, DIGITAL now recommends
           that you use the new ANSI syntax instead of the #pragma
           define_template directive because the new syntax is more
           portable, as other compiler vendors implement the ANSI
           standard.
    
           Note that the ANSI syntax for explicit instantiation
           uses a semicolon at the end of the declaration, while the
           syntax for the #pragma define_template directive does not.
           Omitting the semicolon can lead to obtuse error messages,
           because the code that follows may look like part of the
           declaration in the explicit instantiation.
    
           Explicit instantiation currently has the same restrictions
           on code ordering as does the #pragma define_template
           directive. The explicit instantiation must appear in
           the code after the definitions of a class and its member
           functions or after the definition of the template function.
    
3475.6checking statusHYDRA::DORHAMERThu May 08 1997 15:2817
        #2           8-MAY-1997 14:27:12.37                                 
    NEWMAIL
    From:   HYDRA::AXPDEVELOPER "[email protected]"
    To:     SMTP%"[email protected]"
    CC:     AXPDEVELOPER
    Subj:   How are things going with C++ template resolution
    
    Kevin,
    
    Just wanted to check on how things are going.  Did the info that I provided
    help you resolve the C++ template resolution problems on your Digital UNIX
    system?  Please let me know if you need additional help from us.
    
    Thanks,
    Karen Dorhamer
    Alpha Developer Support
    
3475.7all setHYDRA::DORHAMERFri May 16 1997 12:164
    I spoke with Kevin and he is all set for now.  He was able to work out
    a method to compile and link that did instantiate all his templates.
    
    Karen