Article View: comp.sys.next.programmer
Article #1816Re: Coding Rules/Suggestions (RTF)
From: nevin
Date: Wed, 18 Nov 1992 21:18
Date: Wed, 18 Nov 1992 21:18
544 lines
31554 bytes
31554 bytes
Well, I'm glad you at least received some of what you where after .
Why email vs. a post? I figured (perhaps incorrectly) that this
subject was, well, fairly subjective and tends to be religeous in
nature. That is, people tend to strongly hold opinions about how to
layout software. This is especially true when you collect a tallented
group of people who all have succeeded in past ventures and wish to
instill their experience into the group. I've seen people (myself
included) go to irrational lengths to support their positions. So, I
felt I'd respond to your challenge without insighting a jahad.
[...]
It'll port easily to every NeXTSTEP supported platform and that's all
I care about. Other programmers may not be as lucky, though, and may
not have that luxury.
Sigh... Most of us in the "Real World" (tm) don't have that luxury.
In fact, most business cases for making money cannot count on NeXT
(WP, Lotus, Boss, Adobe, etc), or the business plans are extremely
optimistic without much hard data (AppSoft), or are destined to
remain small players (Metrosoft, Stone Design). If NeXT can get their
act together for the cross-platform support many of us will be ready
and willing to ride the bow-wave. So far, NeXT lags in that area .
Hence, we look at markets like Windoze (tm).
[...]
I'm against Hungarian notation. I'm also not inclined to make any
rules governing instance variable names, but class names are covered
(see comment above).
BTW: complete Hungarian covers variable, function, method, class, and
file names. In short, everything that you'd never want to see
Hungarian on :-).
[...]
Also notice the clarification at the end of the paragraph regarding
localized NIB's (I had one person email me in disagreement, arguing
that they wanted localized NIB names instead).
The one window-per-nib is considered proper NeXT IB ettiquete. It
also was originally related to early performance considerations (i.e.
wanting to lazy-load as much as possible). An anti-example of this
(If I remember correctly) is WordPerfect, which loads slowly because
multiple windows/panels in a single nib (in which the archived
objects will be getting a read: and awake call). I might add that
there has been discussion about nib loading and 3.0 which might tend
to reverse NeXT's original position (most of the 3.0 slow-down is
related to nib/disk/memory stuff). Although the stance has not
changed, hopefully this demonstrates that the convention rose from an
underlying intent: perforformance, which can change how things get
implemented.
I think that's also my position on standards: a standard for the sake
of a standard is nearly akin to dogma. A standard in and of itself is
there to serve a purpose or set of purposes. These purposes will
likely vary depending on the environment one finds themselves in, and
so the standards will be of increased service if they can adapt to
aims of the present application (broad meaning).
I perceive that you're attempting to implement a set of rules
(standards) that serve your best utility. IMHO, find out what goals
you're trying to achieve, prioritize them, and then see how they
codify into a rule-set. My experience is that you'll end up with a
different set of standards :-).
I presume you mean: "some panels/windows in some NIB's don't have
titles". My question would then be: why doesn't the panel/window
have a title? What would it hurt to put a title in? Note that the
rule I gave does give you some discretion in the choice of the title:
Often times nibs are used to collection images (as in parts of WM),
or controls (common for custom windows), or insets to other panels
(i.e. customizing NeXT's print panel, NeXT's use of subpanels in the
Color picker). These titles never get displayed and often are
multi-purpose.
[...]
re: never touching attributes/instance vars...
It depends on how "purist" or theoretical vs. practical you want to
get. Within the same module/class it may be acceptable to refer to
the instance variable vs. the method, especially where speed is
concerned.
If it's within the same instance of a class (i.e., the same "module"?
what do you mean by a "module", anyway?), the instance variables of a
given instance of a class are accessible to all methods of that
instance anyway, regardless of the variables' classification (public,
protected, or private) so in this case there would be no advantage to
declaring any of them public.
But, if you are talking about different instances of the same class
what relevance does the fact that they are of the same class have? I
guess if it executes faster, then we should all just go back to
having global variables for everything (ala Windoze)?
A module in ObjC is any *.m file. Strictly speaking I'll mean to
interpret the above as using an instance variable within the confines
of the original class category and within a single file. So, I'm not
advocating directly using an instance variable in a subclass or
category, only within the bounds of it's class implementation, and
then only for reasons of speed. Otherwise you risk skirting the
benefits of OOP.
[...]
I've been finding that the third checking you mention (invarients) is
especially important with Distributed Objects. These types of
objects seem to either need state-machine logic inside of them, or
else provide some sort of mutex-locking methods. And in any case, to
implement such mechanisms, the object must "remember" who sent each
message so "state" information is quite common.
Distributed Objects is probably a good place to apply the invarient
checking.
..
protocols are cool, but not supported outside NeXT :-(
So? :-)
Actually, we use categories, but it's yet another thing that makes
life hell porting things to other platforms :-(
Thank-you for your response. Should we start sharing our discussion
with the net?
If you'd like, perhaps you can post a summary.
regards,
Kevin
--
Nevin Pratt, Digital Technology, Int'l Orem, Ut
NeXTmail preferred, but ONLY at my REAL email address:
nevin@dtint.dtint.com
-- NewsGrazer, a NeXTstep(tm) news reader, posting --
M>UQR=&8P7&%N<VE[7&9O;G1T8FQ<9C!<9G-W:7-S($AE;'9E=&EC83M<9C)<
M9FYI;"!4:6UE<RU2;VUA;CM<9C%<9FUO9&5R;B!#;W5R:65R.WT*7&UA<F=L
M,3(P"EQM87)G<C$R,`I[7&-O;&]R=&)L.UQR960P7&=R965N,%QB;'5E,#M]
M"EQP87)D7'1X-3(P7'1X,3`V,%QT>#$V,#!<='@R,3(P7'1X,C8V,%QT>#,R
M,#!<='@S-S(P7'1X-#(V,%QT>#0X,#!<='@U,S(P7&8P7&(P7&DP7'5L;F]N
M95QF<S(T7&9C,%QC9C`@5V5L;"P@22=M(&=L860@>6]U(&%T(&QE87-T(')E
M8V5I=F5D('-O;64@;V8@=VAA="!Y;W4@=VAE<F4@869T97(@"GM[7$Y'1W)A
M<&AI8S8V('-M:6QI92YE<',*,3`V-C(@32DR)3`T4E4A.29=0CDR5%(K0V!`
M,34A,S%"5%(K0V`J*3(U-#HW,4PY,TA`(D(T13!7*44X-S%//$-(0`I-,2<I
M03U02$4I-"U2.38E5#HV74XQ)B54.3-(0#56-40H)$E5.T)@0"TR8%(L,TA5
M+B-(42TB8%$N,T11"DTB0C1%,49=4BY"(4<[)C5..T!(12DT,4\X5S5-.399
M5#%&74X])RQ:*")!03TF-4XY(D0J*3(U,#@V/44*33Q32$`L(F!1(D(T13!&
M754[1C%).T8](CM70%HH(R19+B)@5"U38$`L0RA7*",P6"TP2$4I-#5..20M
M3PI-.S9513M',5,B0$A%*30I13E614XQ)EU#/39513M',%HH(EU5/%<H3SLF
M14(K5%E%/B<Q,STF-5`K5R%2"DTZ-EE4-"8E0SI6)4<Y,EE0/%!(12@U(3,K
M-"5$.U8I12LS*$XL8$A%*34Q23TF444N0B$P/$9%3CTF14X*33E2(3`X-BU+
M.#8]12)"-$4Q-EE$,%9=33LV-4X])RPJ*34Y13Q'+4D[5EA:*",H3BQ@2$4P
M5EU0/C<I20I-.59!5"Y"8%$N,T!8*R(A+CDU030K(B$I.T8L3B)`2$\W55TN
M-B8Q13E'3%$H)D5..28U6"@G/4@Y-RE%"DT^5R%//"(A4#M78$`\)EU0/S=-
M1#DV.5TZ-CE%.R<M13\V*4D[1C!`.28U1B)"73\W5%DX.$8Q13E'3%$*32@F
M14XY)C58*"<]2#DW*44^5R%//"(A4#M78$`\)EU0/S=-0CHV640H)C%%.4=5
M23E&-4P\5C5=.$9%3@I-.2(A1#DV."HK5353.3<I+SA&244X5S%3*",D4"@F
M)5(\1B59*"5=/S-%040Y-C@J*U8Q13E&14XY-S53"DTY-RE/.$9)13A7,5LB
M0$5%/B8M2"@F,54\(F!1*"8E1#DB(40]-V!`-3<M13Q$74(Z1C5#/2<L0#LF
M-4X*33E7,4@H)CU4/E!(*2(V)5(\1B59*"8Q53PB8%`H)353.3<I+SA&244X
M5S%3*"<A53TF14X])C52/48E3`I-(D!$*2M5-5,Y-RDO.$9)13A7,5,H)C58
M.%9`0#DF-48B0$5=/E<A3SPG54DY1C5,/%8T0#4W+44\1%U""DTZ1C5#/2<L
M0#DW04,Z(F!3*")442@G*4\[)E!`/"<U5")'53\W5%DX.$8Q13E`2$\]-EE$
M.38Y23M&-54*33Q6-5([5BE*.38M5#Y5-5,Y-RDO.$9)13A7,5,H)C58.%9`
M0#M'-4P[(B%0/3<Q73=572XV)BE$.38X*@I-*U8U6#DV+54\5C52.U8I2CDV
M+50^5353.3<I+SA&244X5S%3*"8U6#A60$`Y5C54*"8U6#DV+5TW55TN"DTV
M)BE$.38X*BM573\S14$R.38M5#0F)50Z)TQ4*",H0#Q&74P[(B%-.U<Y13TF
M7$`L,B%).T8Q13XB8%`*32@G*4PZ-EE%/29<*BPB(44^)BU(*"<I3#HV644]
M)EQ`.T8U1R@C8$`\1E%).T8U5#M2(4,[)EU3.3<A00I-/29!73=572XV)BE$
M.38X*BM573\S14$P/$9=0SDW+5,T1C5#/20E4CE7+5LB0$11*"9%3CDF-5@H
M)S%9"DT\)C1`*U8E4CQ&)5D])T50.3(A13PW3"HB,$5%/B8M2"@C8$`M(F!2
M*"9%3CDF-5@H)E%%.T8]5#HB8%$*32@G+54X1TPJ(C!$*3DG-5`H(RQ`.#8Q
M1"@C)$`Y-T%#.B=,42@F14XY)C58*"8U6#A60$`Y5C54*"8U6`I-.%9!73E&
M75(B0$0I(C,T0"PR(5([5E%,*",T0#HV640Y-T!`.3=!13A02"DB-U5&.U<H
M0#PF75`H)R%/"DT\8$@I/S=-13XF-4,_-D5&.3914SDP25TW55TN-B8I1#DV
M."HK5RE%.%<Q1CHV44P^5CU3.#<Y12@F644*33U7(4$])D!`/E5=/S-%03(Y
M-BU4-"8E5#HB(48Z-E%,/S(A/S=463@T)RE/.%8U4SQ5*44X5S$A/$8]4PI-
M*"8]4CDW+50[5RE%/S5=/S-%04(Y)C5&(D)=4CDV+50X5E%)/"=-3CDW/5`X
M-S%(*"=-/S=463@T1C5#"DT])2%!/29!72@E73\S14$P/$9=0SDW+5,T1C5#
M/20E4CE7+$`X5E%)/"(A3CDW/5`X-S%(/S5=/S-%04(*33DF-48B0EU2.38M
M5#Q7,5([5DU%/E!(*3E7+4$]1C1`.T8U5SPF)50Z(B%$/3=@0#TG15`Y,F!/
M.#<I4@I-.#=%5#XW(44H)C51/E8Q53PB(4PY-EE'/29`0"U"(44\-U5;.48E
M3#Q6-5TZ-CE%.R<M13Y02"DB-TU'"DT\5B56.3(A/S=463@T1C5#/24A03TF
M0$`[1S5,.R(A0SM664,X-S!`/%<Q4CM6344H)CU2.3<M5#M7*44*33\P2"DB
M-C%5/"(A3#DV64<])D!`.#<I4C@W1$`X5SE8*"8M3SPG1$`Y)S50*",H0"TB
M8$TL,B%2.U913`I-*"<A53TB(3\W5%DX-"<I3SA6-5,\52E%.%<Q(3Q&/5,B
M0$5=/E=-/S=463@T1C5#/24A03TF0$`\5S%2"DT[5DU%/S(A/S=463@T)RE/
M.%8U4SQ5*44X5S$A/$8]4S\V148Y-E%3.3(A1SQ&-5,])EU2.3!)73=572X*
M338F*40Y-C@J*U=!63Q604\]5TPJ(C-@0"PR8%,H)D5..28U6"@F444[1CU4
M.B)@42@G+54X1TPJ(C!%0PI-/3<I4CDV650\)EU).T<P0"TB(4D[1C%%/B)@
M4R@F14XY)C58*",D0#E6-50Z-EE4.3<I5C@V4$`\5D%/"DT]4$@I(C,L0#HV
M640Y-T!`+%(A23M&,44^(F!2*"9553LB8%$H)B5$.2(A1SDW,$`X-C%$*"8U
M6#A60"H*32(P1%,H)D5..28U6"(S+$`Z-EE$.3=`0"Q"(4T]-E!`.58U5"@F
M)40Y(B%%/B8M2"@F54\]1C54.U(A4`I-.U=@*B(W548[5RA`/"9=4"@G(4\\
M8$E=-U5=+C8F*40Y-C@J*U=!4SHF75<^4$@I+")@42@C+$`Z-EE$"DTY-T!`
M.R8U3CE7,4@H(R1`/%<U0CY02"DB-BU5/$<I13M',5`[5D5./2)@5"@F14XY
M)C58*",L0#HV640*33DW0$`L,B%'.3<Q23M',44\1SE!.R(A4SHF75<B0$0I
M.3=!0SHB8%,H)D5..28U6"@C+$`Z-EE$.3=`0`I-.58U5"@F)40Y(B%%/B8M
M2"@F54\]1C54.U(A4#M78"HB-U5&.U<H0#PF75`H)R%//&!)73=572XV)BE$
M"DTY-C@J*U=%4SHF75<^4$@I+")@42@C+$`Z-EE$.3=`0#LF-4XY5S%(*",D
M0#Q7-4(^4$@I(C8M53Q'*44*33M',5`[5D5./2)@5"@F14XY)C58*",L0#HV
M640Y-T!`+#(A1SDW,4D[1S%%/$<Y03LB(5,Z)EU7(D!$*0I-+%(A23M&,44^
M(F!3*"9%3CDF-5@H)CU%/2(A03DF,$`[-EU6.3<Q3R@G(4\\8$@I/S8Y3SQ"
M(5`[5V!`"DT\)EU0(D=5/S=463@X1C%%.4!(3S@W*4,])TU!/$8M5#M2(5`[
M5V!`/"9=4"@G(4\\(B%0.U<A73=572X*338F*40Y-C@J*U<M13TF*4([5T%;
M/"9=4"@G(4\\(B%0.U=@0#PF75`_-5T_,T5!0CDF-48B0EU5.%8E0PI-.B8U
M6S\U73\S14%".28U1B)"754X5B5#.B8U4STF)50]-RU;.S8E4CI28%`H(V!`
M+")@4"@C(5TW55TN"DTV)BE$.38X*BM7+44])S5#.#8M2#DW(4$\1B5-/%=-
M0SLF-4$\1S%/.S8E4CI753\W5%DX.$8Q13E`2$\*33TV)5`\)C5..2=-4SXW
M+50Y-E5$.C8M5"@F*44Y5D5.*"8M5CXB(44^)C5#*"8U3CDG53\W5%DX.$8Q
M10I-.4!(3STV-4\Y1D5,.R=-1SQ6)58Y,B%..3<]4#@W,4@H)S5!/"<A13M&
M,$`Y-EU&.C913"@F/5(Y-RU4"DT[5RE%/S5=/S-%04(Y)C5&(D)=53E&14P[
M)TU'/%8E5CDR(4XY-SU0.#<Q2"@G-4$\)R%%.T8P0#E&14P*33LB(4<\1C53
M/29=4CDW53\W5%DX.$8Q13E`2$\]-RU4/$9=2SDW3"HB-CU3.#<Y12@F644]
M5R%!/29`0`I-.2<U4"@F444[1CU4.B)@5B@F-5$B0$5;.3=!0SHB(54X-R%0
M.3991"@F+4\[1BU!/2=56STV)5`\)C5."DTY)U5).48U3#Q6-"HB-RU4/$9=
M2SDR(4<\1C53/29=4CDP25TW55TN-B8I1#DV."HK55T_,T5!53Q7,5(*33M6
M344\)B54.B1503TG*4D^(B%$/3=@0#U6044\1C1`/E<A3SPB(5`[5R%=/E95
M03TG*4D^(B%$.38Y70I-.C8Y13LG+44B0EU5/%<Q4CM6344\)B54.B=,*B(V
M644]5R%!/29`0#DG-5`H)E%%.T8]5#HB8%8H)C51"DT^4$@I(C8U6#A60$`]
M-B50/"8U3CDB(3\W5%DX/3<M5#Q&74LY-R%!/29!+3@W,5(Z-T!`.%<U4CQ&
M-4X*33TF54$])RE)/B(A13XF+4@H)BU/.T8M03U@2"DB-RU4/$9=2SDW(4$]
M)D!`/%8U5#LV)50\1D58(D!%70I-/E<U03PG(44[1C!`/%<Q4CM6344\)B54
M.B=523E&-4P\5C0J/S(A/S=463@X1C%%.4!(3STW(4$])D%;"DTB0$4[.3=!
M0SHB(5LK5S5#.#8M2#DR(4,]1T%=.C8X0#PF)50Z)BE".U=`0"M7+44])BE"
M.U=`0#A7.5@*32)`1$`^4EU-.U<Y13TF7$`X5SE8/S=,3SLF14XY-S%/*"8M
M5CXG55LK5BU5/$<Y13TF7$`X5SE8/S=,3PI-.%913SQ6-5`X-S%(*"8M5CXG
M55`X-S%(.49=4C@V44PW-BU6/F!)72@E73\S14%".28U1B)"75,Y-S%3"DT]
M)RE/.E8U03DF254\5S%;/"9=4#\U73\S14%".28U1B)"74,]-RE2.3995#Q7
M,5([5DU%.#8Q2CTW+50*33Y6.4$[)RU%/S5=/S-%04(Y)C5&(D)=4SDV444X
M5S%&.U995#Y6-5@X5D!`.49%3CDF.4\[1S!`.3=!0PI-.F!)1#TW8$`])T50
M.3)@3S@W*5(X-T54/C<A12@F-5$H)TU-.#9-13E&74X])U5;/%8M03LF-48[
M5EE4"DT_-D5&.3914SDR(5,Y-S%&.U995#\U73\S14%".28U1B)"73\S14$C
M.U950CHV644P-RE2.#=%4SY02"D*33A6754[1S%4.U9503Q&3$`Y)S50*",H
M0#@V,40H)D5..28U6"@F,54\(B%,.3991STF0$`L4F!-+#(A4@I-.U913"@G
M3"HB,$12*"9%3CDF-5@H)E%%.T8]5#HB(5,]-BA`.2<U4"@C,$`L,B%2.U91
M3"@C)$`Z-EE$"DTY-T!`.3=!0SHB8%0H(E11*"<I3SLF4$`\)S54.C995#DW
M*58X-E!`.3=!0SI@2"D_-RE%/"8U03TB(5`*33M78$`\)EU0*"<A3SQ@25TW
M55TN-B8I1#DV."HK5RU%/28M33XV34,[5E%//$=,*B(S)$XL(B%%/B8M2`I-
M*"<M53A"(40]-V!`.2<U4"@C.$`K,R1`/$9=3#M@2"D\5S5"*"8Q53PB8%`H
M)E%4/E<A3SPB8%`_-D5&"DTH(S1`+#(A4CM644PB0$14*")442@G*4\[)E!`
M/%<U0B@F,54\(F!0*"915#Y7(4\\(F!0/S9%1B@C+$`*32PR(5([5E%,(D!%
M13XF+4@H)RU5.$(A1#TW8$`L(B%,/2=-4#M78$`L)U5).4(A4SDW,5(Y5BE#
M.U913PI-/$!)73=572XV)BE$.38X*BM6+54\1RE%.T<Q0SLW14LX5EU,.U<I
M6SA7-5(\1C5./2<I1SA&+4\[)EU2"DTH(RU;+#)84"@F-5@X5D!`/%<U0B@C
M+$`L,B%2.U913#\W*44\)C5!/2)@4#\U73\S14%".28U1B)"748*33LG-5,Z
M)CU2.#<A2#HV+5,^5U5$.38X*BM7+44])SU).T8Q3SU7,5D\)C5;/"9=4"@G
M(4\\)U5$.38X*@I-*U8M53Q'*44[1S%7.C991#M7/50^-R%%/E<A3SPB8%`_
M-C%%.4!(3SQ6-50X-E%0.B8E6SPF75`_-C%%"DTY0$A/.%<U4CQ&-4X])B5,
M/"9!03Y3)$XL)U5$.38X*BM604DY)C5#/3<I4SM7*5L_-C%%.4!(3SM6*5,*
M33A7-5(Y-BU5/$<M3SQ'35TY)C5&(D)=4CDW.44X-E%#/3<I4SM7*5L_-C%%
M.4!(3SQ6-50X5S52/%9=4@I-/E,P0#Y7(4\\)U52.3<A13@W,5TX1D5..2(A
M1#DV."HK5RU(.U<]0STW*5,[5RE;/S8Q13E`2$\S1C58"DT])2U4.3<A)3M&
M+4\Y)D5..5(A5SHF-5(Y,B%..U<Q6R)"72XY-T%4-%<Q13PD-4XX5EU$.C99
M1R@E+50*33@V640X-RE$,3990SM6,4D[1CQ`+$,T5B@F)5(\1B59*"8M3SPG
M1$`Y)C5&(D-@0#93)%(N,ETA.5<I00I-/48T3S`V)4,]-S%%*U0E0SHW*4,]
M-E5&.R8U6"M4)50Z-E%$.3)=(3DF144\1C53.C<L3S`W*4D[1CQ/"DTP5BU%
M.29%3#LF)$\Q-CU2.#<Y12)"724X-BU5/28T3S$V+4D\1BU5.S8Y3#DW0$\Q
M-C%).3<I13Q615,*32M414<\1B56.3)=*3@V+54])C1/,C8M23Q&+54[-CE,
M.3=`3S(V,4DY-RE%/%9%4R)"724])D!/,T<Q20I-.R8Q12M474<\1B56.3)=
M+S@V+54])C1/,U8M23Q&+54[-CE,.3=`3S-7,4D[)C%%*U1=1#HV-5(Y-RU)
M"DT\4ETU.5<I03U&-$\U-B5#/3<Q12)"734X5D52.%<U33E&444^(ETU.29%
M13Q&-5,Z-RQ/-C8E0STW,44*32M5,4@[5RE.*U9552M6554[)S%)/"9162M6
M,4D]1D5$.3)=0SM7(5D\1D5'.B<P*BPS/%8K5RE%.59%4PI-/28U4CDV,$`L
M,T!1*U8I4CM6344[1BE!/$)@42XS8$\[)EU'.C8M03LF64\](F!1+C,H3SM6
M644\5S50"DTY-RE).U<H0"Q#8%$K5S%7.U<M53PF-5(Z-EU2(D,H4"TB750Z
M)RE%.3<M53PF-5(Z-EU2*",H4"XR75`*33LG-5,[-D5./3<L3SM6644\-S5!
M/$<Q13Q"74\[1C5(.#911BM7,4@\1C5%/#<U03Q',44\1RQ/.#8]4@I-.#<Y
M12)"74$X-BU5/28T3S@V+4D\1BU5.S8Y3#DW0$\X-S%).R8Q12M6)40Z-C52
M.3<M23Q274$\1D5."DTY4EU#.%8U1#HV44PX,EU%.5<I03U&-$\Y-B5#/3<Q
M12)"744X5D52.%<U33E&444^(EU%.29%13Q&-5,*33HW+$\Z-CU2.#<Y12@C
M*%(M0EU).#8M53TF-$`L0RA8*U9%0SHW*4,]-E5&.R8U6"M6140Z-C52.3<M
M20I-/%)=13TF0"HK5EE4.C911#DR8%(L4SA/.U8]4C@W.44K5EU!.%<U5#DR
M74\X5D52.%<U33E&444^(EU/"DT])D5,.28T3SM6,4DY-RE%/%9%4R@C*%0L
M0EU5.5<I03U&-$\]-B5#/3<Q12)"754X5D52.%<U33E&444*33XB8%(M(SA/
M/38Q23DW*44\5D53*U=%03A7-50Y,F!2+3,H3STF04\\1EA//C8Q23DW*44\
M5D53-S!)6PI-.2<U4"@G,5D\)C1`*U9903LV-50^-R%%*"8U42)"(5LS1C58
M/24M5#DW(24[1BU/.29%3CE28%(H)D5."DTY)C58*",H0#HV640Y-T!`/"<U
M5"@G(4\\(F!1*"8E1#DG55LY-T%#.B(A4#M7(5TZ-CE%.R<M12)'548*33M7
M*4$[)E!`/"9=4")"72XY-T%4-%<Q13PD-4XX5EU$.C991R@D644^)S$S/28U
M4#$V64,[5C%).T8\0`I-/$8U03DF74X[)T1`.28U1B@B8$`B0ET_,T5!1CQ7
M,5(H(R12+B(A4STG*4D[1CQ`.2<U4"@C8$`J)5TN"DTV(D1`/"<U5#HV650Y
M-RE6.#900#DF-48H(F!`(D)<2BI&.4D[1C%&.U995"@B748Z-EE$.49=3CTB
M(4P*33M6)40H)C%%.4!(3SE&14XY)CE/.T<Q6R)"8$4H)"E%.%8E53Q6-$`]
M5C1`.%8E3B@F644]1C52*"9110I-/2(A+CDW050T5S%%/"0U3CA6740Z-EE'
M*"8]13TB(4D[1S%/(D)@12@E+4@X-RE%.20Y3SM',20Z-RE%"DTX5S%//$=$
M3"@G/44H)BU!.T993STB(5(Y-C5..%9=1#DR(4$H)CE/.T<P0#TF7$`S1C58
M/24M5#DW(24*33M&+4\Y)D5..5!(0"DR(4DY0B%7.3(A03Q&-$`Z-EA`/%9!
M03Q&-40H)E5/.28T3B@B(3,[4B%).4(A0PI-/3<I4CDV650\5D%!/$8U1"@F
M15,H)S%2/38T3")"8$4H)SU%*"8M03LF4$`])D%%*"993SQ&54$[(B%&"DTZ
M-EE$.49=3CTB(4$[1C!`/$8U5#TW*4XH)S%(.#<P*B@B74,]-RE2.3995#Q6
M04$\1C5$*"<]2#DW*44*32@G35`[5V!`.%<U4CQ&-4X])RU(.#<I13DG5$`^
M5CE!.R<M13\R(4DY1C5,/%8T*B@G3$HJ1CE).T8Q1@I-.U995"@G5"HH)TU$
M/3=@0#=463@Y1RU4/$)@4R@C)%(M,B%'.3<Q23M',44\1SE!.R(A0SU'+$`[
M)C5."DTY5S%(*",L0#@V,40H)5TN-B8Y4STG*$`L(F!3*")442@G*4\[)E`J
M*"(A1SDW,4D[1S%%/$<Y03LB(4,*33U&6$`Y-T%#.B(A)CM6650Q)D52.38M
M5#M7*5DH(RA`.C991#DW0$`Z5EE//5980")"8$`^5R%//"(A)@I-.U995#$F
M15(Y-BU4.U<I62@F-5@X5D!`.58U5#\P2$`H)TQ**D8Y23M&,48[5EE4*"8Q
M53PB8$\Q-EE#"DT[5C%).T8\0#E6-50H)2U4.#991#@W*40Q-EE#.U8Q23M&
M/$`Y-R0J*")@0#Y0140]-V!`.R8U3CE7,4@*32@F,4DX5S!`.3=!0SI@2"D^
M4R1`.C991#DW0$`K5#DI,2(A3CDR(5LL0B%).T8Q13XB8%,H(R1`/$9=3`I-
M.R(A4#TW,5T^5R%//"(A4#M7(5TZ-CE%.R<M13\V.4\\1B5,.V!(*2@F,54\
M(F!/,3990SM6,4D[1CQ`"DTS1C58/24M5#DW(24[1BU/.29%3CE2(5`]-S!`
M.28U1CHV644Y1EU./6!(*3\W344^)BU(*"<A3SPG5$`*33HV.44[)RU%(D)@
M0"@G54DY1C5,/%8T*B@G54DY1C5,/%8T*C\V*4D[1C!`.28U1B)'55L\)EU0
M/S9%1@I-.3914SDP2$\W5%DX-"<I3SA4)5(\1B59*",T0#@W*5(X-T1`-U5=
M+C8F,44Y0$A/-U19.#!604$[1EE%"DT[)RQ`+"(A/S=463@Y)C5&(D)=/S-%
M030[5S%!.R0I63TF-5,H(V!`-U5=+C8F,44Y0$A/-U19.#$F72D*33LV)4<Y
M-%U0/E!(*2PR(4D[1C%%/B=-1#TW(5T^4R5=.C8Y13LG+44H(ET_,T5!(SHF
M)4X[1C5,/%(A10I-/B8M2"@G+50[5RE%(D!%/S-%02,Z)B5..T8U3#Q28%(H
M)B5$.2)@4B@G*4\[)E!`-U19.#0G*4\X5"52"DT\1B59*"-@0#=463@P5D%!
M.T9913LG+$`Y5C54.C995#DW*58X-E!`.#<M5#M7*44H)R%//&!(*2TR(4D*
M33M&,44^(F!4*"9%3CDF-5@H)E55.R)@4B@F14XY)C58/E,D0#Q7-4(H(T!`
M.C8Q23U"8%$H)B5$.2(A30I-/39173Y6554[(F!1*"<M53A"8%@H)D5$.C<X
M0"PR(4$Y)C%=.C8Y13LG+44B0$14*"9%3CDF-5@H)E55"DT[(F!/-U19.#4F
M750X-E$B/C<Q13Q2(44^)BU(*"<M5#M7*44H)R%//"(A13XF+4@H)R%//&!(
M*3E7+4$*33U&-$`[-B54/$9%6"@F14X]1C52/29503TG*4D^(B%#.U990S@W
M,$`L(EA5*"<M13TF/5(X-T1`+")@4`I-*",P0"Q"(5([5E%,*"<I13A7,48Z
M-E%,*"8]4CDW+50[5RE%(D!%6R(S8$`L,B$_,T5!(SHF)4X[1C5,"DT\4F!1
M*"<M53A'3"HB,$0I-U19.#0G*4\X5"52/$8E62@F-5@X5D!`.58U5"@F-5@Y
M-BPJ(C!$*3LF-4X*33E7,4@H)5TN-B4Q3STF)4PP1T54.3<L0#DW04,Z(B%3
M/38H0"M572XV)3%//28E3#!'150Y-RQ`.3=!0PI-.B(A4STF75(Y-U5&.U<H
M*B(P13\S14$T.U<Q03LD*5D])C53*"-@0#LF-5LY-T%)/2=523E`2"D_-E%/
M"DT[5V!`*U5=+C8E(5([5BTA/$<I03XR8%4H)B52/$8E62@F,44Y0$E=-U5=
M+C8F*40Y-C@J*U8M3SLF75(*33HV54$Y5C5;-U19.#$F72D[-B5'.31=4#\U
M73\S14%".28U1B)"74$[)R%(.#9%33@V/44^4R1`.#8Q1`I-*"5=+C8D,4\R
M-E5!.58U+SPG540Y-C@J*3(U)3M&,20[5BU5.S8U3CU@2"HY5RU!/48T*B@B
M73\W5%DX"DTX1B53.39503TG*4D^(B%-.#<Q4CHW0$`X5S52/$8U3CTF54$]
M)RE)/B(A1#DV."HY5RE%/%<Q3SQ&-"H*32DR-24[1C$P/$9=3#M6/"HI,C4B
M.38]23M%+44])S50(D)=3SU&)4PH)TPJ*")@0"@G,5(X-EE3.R8E5`I-.3(A
M4SA6)4PY,B%..3<]4#@W,4@H(V!.+3)@4"M#-$`L(EA5*"-@0"Q3.%`H)B52
M.%!)72@F,44Y0F!/"DT[)D5..3(A6R)"8$`H(B%-.U<Y13TF7$`\1E%).T8U
M5#M2(5,])RE/.E8T*C\R(40Y-CA`*U<M13TG-5`*32@G3"HH(F!`*"<M13TF
M44D[1C57.C8Q5#HB(5,Y-S%,.C9913A6)5`H)RU%/29123M&-4H[5D5.*"8]
M4PI-.#<Y12)'5$`Y)C5&*")=03Q'*4\]4B%;(D)@0"@B(4XY-SU0.#<Q2"@F
M54\]1C54.U(A1#TW8$`\1EU4"DTX-S%%*")442Q28%8H)RE,.C9913TF7$`M
M(F!-+4(A4CLF14XY-S%/*")45"@B5%8H)RE,.C9913TF7$`*33A644\\5C50
M.#<Q2"@F/5,X-SE%*"-@0#Q6-50[)D5..39)3SHV6$`\5S%2.U9-12@F/5(Y
M-RU4.U<I10I-*"8Y23LF4$`[1C5'*"<I3STF)50Y,$E=*"8Q13E`2$4I-#5.
M.24M13TG-5`B0V!`+")@5RXS*$`L,V!0"DTN(B%2.38M5#A644D\8$A1+C,L
M0"TC.%,H(RQ9*",H5RM#-$`\1C5#/28M3#HW8"HL,T13*",P5BQ28%,*32XR
M8%(M4EA5*"<I13A7,4,[)D50(D-@0"PB8%(H)RU%/2<U4")#+%DK0RA8+3,\
M4"U"8%(M4V!.+4,D50I-+%,T5B@G,5(X-EE3.R8E5#DP2%`K0SQ1+2,H6"U"
M8%`K0SA1+3,L6"TR(5,X5B5,.3!(4"@G+44])CU2"DTX-T0J+#(A4SDW,4$[
M)R%(.#!)1SQ6)58Y,$E..3<]4#@W,4@B1RU9/%<Q13LV,4DX5S`J.$8U1SHV
M6"H*32Q#*%4H(RQ2+2)@4BU#8$`L4RQ7*"<M13TF*4([5T`J+$,H52@C+%,M
M4B%-.U<Y13TF7"HL,F!0*"<I3`I-.C9913TF7"HL,F!0*"<I3#HV644])EPJ
M+#)@32PR(5([)D5..3<Q3R)#)$`L(B%2.R9%3CDW,4\B0V!`"DTK,R1`/$91
M23M&-50[4$A1*")442@G*4PZ-EE%/29<*BPR8$TL,B%2.R9%3CDW,4\B0R1`
M*S,D0#Q&44D*33M&-50[4$A0*")442@G*4PZ-EE%/29<*BPR8%`H)RE,.C99
M13TF7"HL(F!-+#(A4CLF14XY-S%/(D-@0`I-*S,D0#Q&44D[1C54.U!(42@C
M8$`\1E%).T8U5#M02%`H(E11*"<I3#HV644])EPJ+#)@4"@G*4PZ-EE%"DT]
M)EPJ+")@32PR(5([)D5..3<Q3R)#)$`L(B%2.R9%3CDW,4\B0V!`*S,D0#Q&
M44D[1C54.U!(42@C8$`*33Q&44D[1C54.U!(42@C8$`\1E%).T8U5#M02%`H
M(E11*"<I3#HV644])EPJ+#)@4"@G*4PZ-EE%/29<*@I-+#)@4"@G*4PZ-EE%
M/29<*BPR8%`H)RE,.C9913TF7"HL,F!0*"<I3#HV644])EPJ+#)@32PR(5([
M)D5."DTY-S%/(D,D0"PB(5([)D5..3<Q3R)#)$`L(B%2.R9%3CDW,4\B0R1`
M+"(A4CLF14XY-S%/(D,D0"PB(5(*33LF14XY-S%/(D,D0"PB(5([)D5..3<Q
M3R)#)$`L(B%2.R9%3CDW,4\B0V!`+#(A4CLF14XY-S%/(D,D0`I-+"(A4CLF
M14XY-S%/(D-@0"PR(5([)D5..3<Q3R)#)$`L(B%2.R9%3CDW,4\B0V!`+#(A
M4CLF14XY-S%/"DTB0V!`+#(A4CLF14XY-S%/(D,D0"PB(5([)D5..3<Q3R)#
M8$`L,B%2.R9%3CDW,4\B0R1`+#(A4CLF14X*33DW,4\B0V!`+#(A4CLF14XY
M-S%/(D,D0"PB(5([)D5..3<Q3R)#8$`L,B%2.R9%3CDW,4\B0R1`+#(A4@I-
M.R9%3CDW,4\B0R1`+#(A4CLF14XY-S%/(D,D0"PR(5([)D5..3<Q3R)#)$`L
M(B%2.R9%3CDW,4\B0V!`"DTL,B%2.R9%3CDW,4\B0R1`+"(A4CLF14XY-S%/
M(D,D0"PB(5([)D5..3<Q3R)&-4XY8$E3/2<I3SI6-"H*33E7*44\5S%//$8T
M*CE7*44\5S%//$8T*BPB8%`H(V!.+3(A4SDW,54\8$E'/%8E5CDP2%`K0RQ3
M+%,L4PI-+%(A4SDW,4<\1B59(D,D0#Q6-50X-E%0.B8D*BTR8%<H(RA0+4)@
M5"U30$`[5SE!.R(A1CHV44PB1CU2"DTY-RU4.U<I12)#8$`\5C54.5<I03XP
M2%$H)RU%/28E3#PF04$B0S1`+5)@4BPC.$`M(SQ8*"9=5C@V4$`*33LV)50\
M1D58*"8Q13E&)54[)S%-.#<Q4CHW0$`\5C54.S8E5#Q&15@H)RU4/$9=2SDP
M24<\1C53/29=4@I-.3!(4"@C8$`L(EA5*"<M13TG-5`B1CU3.#<Y12)#8$XL
M4RQ3+%,L4RQ2(5,Y-S%'/$8E62)#)$`\5C54"DTX-E%0.B8D*BTR8%<H(RA1
M+2)@5"U3/$`[5SE!.R(A1CHV44PB1CU2.3<M5#M7*44B0V!`/%8U5#E7*4$*
M33XP2%$H)RU%/28E3#PF04$B0S1`+5)@4BPS,$`M(SQ7*"9=5C@V4$`[-B54
M/$9%6"@F,44Y1B55.R<Q30I-.#<Q4CHW0$`\5C54.S8E5#Q&15@H)RU4/$9=
M2SDP24<\1C53/29=4CDP2%`H)RU%/28]4C@W1"HL(EA3"DTL4RQ3+%,L0#Q6
M-50Y5RE!/C!)1SQ6)58Y,$A0*"-@0"U31%(H(R10+"-`0#Q&-4,])BU,.C=@
M*C93)$`*22PB8%`H(E11*"-@0"PS8%`N)51`.%9=3CA6)50B1CU2.3<M5#M7
M*44B0C1%-2<I03HV444\0$@J"F`*?0JL?5QP87)D7'1X-3(P7'1X,3`V,%QT
M>#$V,#!<='@R,3(P7'1X,C8V,%QT>#,R,#!<='@S-S(P7'1X-#(V,%QT>#0X
M,#!<='@U,S(P7&8P7&(P7&DP7'5L;F]N95QF<S(T7&9C,%QC9C`@+B!7:'D@
M96UA:6P@=G,N(&$@<&]S=#\@22!F:6=U<F5D("AP97)H87!S(&EN8V]R<F5C
M=&QY*2!T:&%T('1H:7,@<W5B:F5C="!W87,L('=E;&PL(&9A:7)L>2!S=6)J
M96-T:79E(&%N9"!T96YD<R!T;R!B92!R96QI9V5O=7,@:6X@;F%T=7)E+B!4
M:&%T(&ES+"!P96]P;&4@=&5N9"!T;R!S=')O;F=L>2!H;VQD(&]P:6YI;VYS
M(&%B;W5T(&AO=R!T;R!L87EO=70@<V]F='=A<F4N(%1H:7,@:7,@97-P96-I
M86QL>2!T<G5E('=H96X@>6]U(&-O;&QE8W0@82!T86QL96YT960@9W)O=7`@
M;V8@<&5O<&QE('=H;R!A;&P@:&%V92!S=6-C965D960@:6X@<&%S="!V96YT
M=7)E<R!A;F0@=VES:"!T;R!I;G-T:6QL('1H96ER(&5X<&5R:65N8V4@:6YT
M;R!T:&4@9W)O=7`N($DG=F4@<V5E;B!P96]P;&4@*&UY<V5L9B!I;F-L=61E
M9"D@9V\@=&\@:7)R871I;VYA;"!L96YG=&AS('1O('-U<'!O<G0@=&AE:7(@
M<&]S:71I;VYS+B!3;RP@22!F96QT($DG9"!R97-P;VYD('1O('EO=7(@8VAA
M;&QE;F=E('=I=&AO=70@:6YS:6=H=&EN9R!A(&IA:&%D+EP*7`I;+BXN75P*
M"EQP87)D7'1X,3$R,%QT>#$V.#!<='@R,C0P7'1X,C@P,%QT>#,S-C!<='@S
M.3(P7'1X-#0X,%QT>#4P-#!<='@U-C`P7'1X-C$R,%QF,EQF<S(X7&QI,S8P
M7&9C,5QC9C$@270G;&P@<&]R="!E87-I;'D@=&\@979E<GD@3F585%-415`@
M<W5P<&]R=&5D('!L871F;W)MT&%N9"!T:&%T)W,@86QL($D@8V%R92!A8F]U
M="X@($]T:&5R('!R;V=R86UM97)S(&UA>2!N;W0@8F4@87,@;'5C:WDL('1H
M;W5G:"P@86YD(&UA>2!N;W0@:&%V92!T:&%T(&QU>'5R>2Y<"@I<<&%R9%QT
M>#4R,%QT>#$P-C!<='@Q-C`P7'1X,C$R,%QT>#(V-C!<='@S,C`P7'1X,S<R
M,%QT>#0R-C!<='@T.#`P7'1X-3,R,%QF,%QF<S(T7&9C,%QC9C`@7`I3:6=H
M+BXN($UO<W0@;V8@=7,@:6X@=&AE(")296%L(%=O<FQD(B`H=&TI(&1O;B=T
M(&AA=F4@=&AA="!L=7AU<GDN($EN(&9A8W0L(&UO<W0@8G5S:6YE<W,@8V%S
M97,@9F]R(&UA:VEN9R!M;VYE>2!C86YN;W0@8V]U;G0@;VX@3F585"`H5U`L
M($QO='5S+"!";W-S+"!!9&]B92P@971C*2P@;W(@=&AE(&)U<VEN97-S('!L
M86YS(&%R92!E>'1R96UE;'D@;W!T:6UI<W1I8R!W:71H;W5T(&UU8V@@:&%R
M9"!D871A("A!<'!3;V9T*2P@;W(@87)E(&1E<W1I;F5D('1O(')E;6%I;B!S
M;6%L;"!P;&%Y97)S("A-971R;W-O9G0L(%-T;VYE($1E<VEG;BDN($EF($YE
M6%0@8V%N(&=E="!T:&5I<B!A8W0@=&]G971H97(@9F]R('1H92!C<F]S<RUP
M;&%T9F]R;2!S=7!P;W)T(&UA;GD@;V8@=7,@=VEL;"!B92!R96%D>2!A;F0@
M=VEL;&EN9R!T;R!R:61E('1H92!B;W<M=V%V92X@4V\@9F%R+"!.95A4(&QA
M9W,@:6X@=&AA="!A<F5A("X@2&5N8V4L('=E(&QO;VL@870@;6%R:V5T<R!L
M:6ME(%=I;F1O>F4@*'1M*2Y<"EP*"EQF8S%<8V8Q(%LN+BY=7`H*7&9C,%QC
M9C`@7`H*7&(@22=M(&%G86EN<W0@2'5N9V%R:6%N(&YO=&%T:6]N+B`@22=M
M(&%L<V\@;F]T(&EN8VQI;F5D('1O(&UA:V4@86YY(')U;&5S(&=O=F5R;FEN
M9R!I;G-T86YC92!V87)I86)L92!N86UE<RP@8G5T(&-L87-S(&YA;65S(&%R
M92!C;W9E<F5D("AS964@8V]M;65N="!A8F]V92DN7`H*7&(P(%P*0E17.B!C
M;VUP;&5T92!(=6YG87)I86X@8V]V97)S('9A<FEA8FQE+"!F=6YC=&EO;BP@
M;65T:&]D+"!C;&%S<RP@86YD(&9I;&4@;F%M97,N($EN('-H;W)T+"!E=F5R
M>71H:6YG('1H870@>6]U)V0@;F5V97(@=V%N="!T;R!S964@2'5N9V%R:6%N
M(&]N(#HM*2Y<"EP*"EQF8S%<8V8Q(%LN+BY=7`H*7&)<9F,P7&-F,"!<"D%L
M<V\@;F]T:6-E('1H92!C;&%R:69I8V%T:6]N(&%T('1H92!E;F0@;V8@=&AE
M('!A<F%G<F%P:"!R96=A<F1I;F<@;&]C86QI>F5D($Y)0B=S("A)(&AA9"!O
M;F4@<&5R<V]N(&5M86EL(&UE(&EN(&1I<V%G<F5E;65N="P@87)G=6EN9R!T
M:&%T('1H97D@=V%N=&5D(&QO8V%L:7IE9"!.24(@;F%M97,@:6YS=&5A9"DN
M7`H@7`H*7&(P(%1H92!O;F4@=VEN9&]W+7!E<BUN:6(@:7,@8V]N<VED97)E
M9"!P<F]P97(@3F585"!)0B!E='1I<75E=&4N($ET(&%L<V\@=V%S(&]R:6=I
M;F%L;'D@<F5L871E9"!T;R!E87)L>2!P97)F;W)M86YC92!C;VYS:61E<F%T
M:6]N<R`H:2YE+B!W86YT:6YG('1O(&QA>GDM;&]A9"!A<R!M=6-H(&%S('!O
M<W-I8FQE*2X@06X@86YT:2UE>&%M<&QE(&]F('1H:7,@*$EF($D@<F5M96UB
M97(@8V]R<F5C=&QY*2!I<R!7;W)D4&5R9F5C="P@=VAI8V@@;&]A9',@<VQO
M=VQY(&)E8V%U<V4@;75L=&EP;&4@=VEN9&]W<R]P86YE;',@:6X@82!S:6YG
M;&4@;FEB("AI;B!W:&EC:"!T:&4@87)C:&EV960@;V)J96-T<R!W:6QL(&)E
M(&=E='1I;F<@82!R96%D.B!A;F0@87=A:V4@8V%L;"DN($D@;6EG:'0@861D
M('1H870@=&AE<F4@:&%S(&)E96X@9&ES8W5S<VEO;B!A8F]U="!N:6(@;&]A
M9&EN9R!A;F0@,RXP('=H:6-H(&UI9VAT('1E;F0@=&\@<F5V97)S92!.95A4
M)W,@;W)I9VEN86P@<&]S:71I;VX@*&UO<W0@;V8@=&AE(#,N,"!S;&]W+61O
M=VX@:7,@<F5L871E9"!T;R!N:6(O9&ES:R]M96UO<GD@<W1U9F8I+B!!;'1H
M;W5G:"!T:&4@<W1A;F-E(&AA<R!N;W0@8VAA;F=E9"P@:&]P969U;&QY('1H
M:7,@9&5M;VYS=')A=&5S('1H870@=&AE(&-O;G9E;G1I;VX@<F]S92!F<F]M
M(&%N('5N9&5R;'EI;F<@:6YT96YT.B!P97)F;W)F;W)M86YC92P@=VAI8V@@
M8V%N(&-H86YG92!H;W<@=&AI;F=S(&=E="!I;7!L96UE;G1E9"Y<"EP*22!T
M:&EN:R!T:&%T)W,@86QS;R!M>2!P;W-I=&EO;B!O;B!S=&%N9&%R9',Z(&$@
M<W1A;F1A<F0@9F]R('1H92!S86ME(&]F(&$@<W1A;F1A<F0@:7,@;F5A<FQY
M(&%K:6X@=&\@9&]G;6$N($$@<W1A;F1A<F0@:6X@86YD(&]F(&ET<V5L9B!I
M<R!T:&5R92!T;R!S97)V92!A('!U<G!O<V4@;W(@<V5T(&]F('!U<G!O<V5S
M+B!4:&5S92!P=7)P;W-E<R!W:6QL(&QI:V5L>2!V87)Y(&1E<&5N9&EN9R!O
M;B!T:&4@96YV:7)O;FUE;G0@;VYE(&9I;F1S('1H96US96QV97,@:6XL(&%N
M9"!S;R!T:&4@<W1A;F1A<F1S('=I;&P@8F4@;V8@:6YC<F5A<V5D('-E<G9I
M8V4@:68@=&AE>2!C86X@861A<'0@=&\@86EM<R!O9B!T:&4@<')E<V5N="!A
M<'!L:6-A=&EO;B`H8G)O860@;65A;FEN9RDN7`I<"DD@<&5R8V5I=F4@=&AA
M="!Y;W4G<F4@871T96UP=&EN9R!T;R!I;7!L96UE;G0@82!S970@;V8@<G5L
M97,@*'-T86YD87)D<RD@=&AA="!S97)V92!Y;W5R(&)E<W0@=71I;&ET>2X@
M24U(3RP@9FEN9"!O=70@=VAA="!G;V%L<R!Y;W4G<F4@=')Y:6YG('1O(&%C
M:&EE=F4L('!R:6]R:71I>F4@=&AE;2P@86YD('1H96X@<V5E(&AO=R!T:&5Y
M(&-O9&EF>2!I;G1O(&$@<G5L92US970N($UY(&5X<&5R:65N8V4@:7,@=&AA
M="!Y;W4G;&P@96YD('5P('=I=&@@82!D:69F97)E;G0@<V5T(&]F('-T86YD
M87)D<R`Z+2DN7`H*7&(@7`I)('!R97-U;64@>6]U(&UE86XZ(")S;VUE('!A
M;F5L<R]W:6YD;W=S(&EN('-O;64@3DE")W,@9&]N)W0@:&%V92!T:71L97,B
M+B`@37D@<75E<W1I;VX@=V]U;&0@=&AE;B!B93H@=VAY(&1O97-N)W0@=&AE
M('!A;F5L+W=I;F1O=R!H879E(&$@=&ET;&4_("!7:&%T('=O=6QD(&ET(&AU
M<G0@=&\@<'5T(&$@=&ET;&4@:6X_("!.;W1E('1H870@=&AE(')U;&4@22!G
M879E(&1O97,@9VEV92!Y;W4@<V]M92!D:7-C<F5T:6]N(&EN('1H92!C:&]I
M8V4@;V8@=&AE('1I=&QE.EP*7`H*7&(P($]F=&5N('1I;65S(&YI8G,@87)E
M('5S960@=&\@8V]L;&5C=&EO;B!I;6%G97,@*&%S(&EN('!A<G1S(&]F(%=-
M*2P@;W(@8V]N=')O;',@*&-O;6UO;B!F;W(@8W5S=&]M('=I;F1O=W,I+"!O
M<B!I;G-E=',@=&\@;W1H97(@<&%N96QS("AI+F4N(&-U<W1O;6EZ:6YG($YE
M6%0G<R!P<FEN="!P86YE;"P@3F585"=S('5S92!O9B!S=6)P86YE;',@:6X@
M=&AE($-O;&]R('!I8VME<BDN(%1H97-E('1I=&QE<R!N979E<B!G970@9&ES
M<&QA>65D(&%N9"!O9G1E;B!A<F4@;75L=&DM<'5R<&]S92Y<"@I<8B!<"@I<
M8C`@6RXN+EU<"G)E.B!N979E<B!T;W5C:&EN9R!A='1R:6)U=&5S+VEN<W1A
M;F-E('9A<G,N+BY<"EP*270@9&5P96YD<R!O;B!H;W<@(G!U<FES="(@;W(@
M=&AE;W)E=&EC86P@=G,N('!R86-T:6-A;"!Y;W4@=V%N="!T;R!G970N(%=I
M=&AI;B!T:&4@<V%M92!M;V1U;&4O8VQA<W,@:70@;6%Y(&)E(&%C8V5P=&%B
M;&4@=&\@<F5F97(@=&\@=&AE(&EN<W1A;F-E('9A<FEA8FQE('9S+B!T:&4@
M;65T:&]D+"!E<W!E8VEA;&QY('=H97)E('-P965D(&ES(&-O;F-E<FYE9"Y<
M"EP*"EQB($EF(&ET)W,@=VET:&EN('1H92!S86UE(&EN<W1A;F-E(&]F(&$@
M8VQA<W,@*&DN92XL('1H92!S86UE(")M;V1U;&4B/]!W:&%T(&1O('EO=2!M
M96%N(&)Y(&$@(FUO9'5L92(L(&%N>7=A>3\I+"!T:&4@:6YS=&%N8V4@=F%R
M:6%B;&5S(&]F(&$@9VEV96X@:6YS=&%N8V4@;V8@82!C;&%S<R!A<F4@86-C
M97-S:6)L92!T;R!A;&P@;65T:&]D<R!O9B!T:&%T(&EN<W1A;F-E(&%N>7=A
M>2P@<F5G87)D;&5S<R!O9B!T:&4@=F%R:6%B;&5S)R!C;&%S<VEF:6-A=&EO
M;B`H<'5B;&EC+"!P<F]T96-T960L(&]R('!R:79A=&4IT'-O(&EN('1H:7,@
M8V%S92!T:&5R92!W;W5L9"!B92!N;R!A9'9A;G1A9V4@=&\@9&5C;&%R:6YG
M(&%N>2!O9B!T:&5M('!U8FQI8RY<"EP*7`I"=70L(&EF('EO=2!A<F4@=&%L
M:VEN9R!A8F]U="!D:69F97)E;G0@:6YS=&%N8V5S(&]F('1H92!S86UE(&-L
M87-ST'=H870@<F5L979A;F-E(&1O97,@=&AE(&9A8W0@=&AA="!T:&5Y(&%R
M92!O9B!T:&4@<V%M92!C;&%S<R!H879E/R`@22!G=65S<R!I9B!I="!E>&5C
M=71E<R!F87-T97(L('1H96X@=V4@<VAO=6QD(&%L;"!J=7-T(&=O(&)A8VL@
M=&\@:&%V:6YG(&=L;V)A;"!V87)I86)L97,@9F]R(&5V97)Y=&AI;F<@*&%L
M82!7:6YD;WIE*3]<"EP*"EQB,"!!(&UO9'5L92!I;B!/8FI#(&ES(&%N>2`J
M+FT@9FEL92X@4W1R:6-T;'D@<W!E86MI;F<@22=L;"!M96%N('1O(&EN=&5R
M<')E="!T:&4@86)O=F4@87,@=7-I;F<@86X@:6YS=&%N8V4@=F%R:6%B;&4@
M=VET:&EN('1H92!C;VYF:6YE<R!O9B!T:&4@;W)I9VEN86P@8VQA<W,@8V%T
M96=O<GD@86YD('=I=&AI;B!A('-I;F=L92!F:6QE+B!3;RP@22=M(&YO="!A
M9'9O8V%T:6YG(&1I<F5C=&QY('5S:6YG(&%N(&EN<W1A;F-E('9A<FEA8FQE
M(&EN(&$@<W5B8VQA<W,@;W(@8V%T96=O<GDL(&]N;'D@=VET:&EN('1H92!B
M;W5N9',@;V8@:70G<R!C;&%S<R!I;7!L96UE;G1A=&EO;BP@86YD('1H96X@
M;VYL>2!F;W(@<F5A<V]N<R!O9B!S<&5E9"X@3W1H97)W:7-E('EO=2!R:7-K
M('-K:7)T:6YG('1H92!B96YE9FET<R!O9B!/3U`N7`I<"ELN+BY=7`H*7&(@
M7`I))W9E(&)E96X@9FEN9&EN9R!T:&%T('1H92!T:&ER9"!C:&5C:VEN9R!Y
M;W4@;65N=&EO;B`H:6YV87)I96YT<RD@:7,@97-P96-I86QL>2!I;7!O<G1A
M;G0@=VET:"!$:7-T<FEB=71E9"!/8FIE8W1S+B`@5&AE<V4@='EP97,@;V8@
M;V)J96-T<R!S965M('1O(&5I=&AE<B!N965D('-T871E+6UA8VAI;F4@;&]G
M:6,@:6YS:61E(&]F('1H96TL(&]R(&5L<V4@<')O=FED92!S;VUE('-O<G0@
M;V8@;75T97@M;&]C:VEN9R!M971H;V1S+B`@06YD(&EN(&%N>2!C87-E+"!T
M;R!I;7!L96UE;G0@<W5C:"!M96-H86YI<VUS+"!T:&4@;V)J96-T(&UU<W0@
M(G)E;65M8F5R(B!W:&\@<V5N="!E86-H(&UE<W-A9V70<V\@(G-T871E(B!I
M;F9O<FUA=&EO;B!I<R!Q=6ET92!C;VUM;VXN7`H*7&(P(%P*1&ES=')I8G5T
M960@3V)J96-T<R!I<R!P<F]B86)L>2!A(&=O;V0@<&QA8V4@=&\@87!P;'D@
M=&AE(&EN=F%R:65N="!C:&5C:VEN9RY<"@I<8B!<"@I<8C`@+BXN7`I<"@EP
M<F]T;V-O;',@87)E(&-O;VPL(&)U="!N;W0@<W5P<&]R=&5D(&]U='-I9&4@
M3F585"`Z+2A<"EP*7`H*7&(@(%-O/R`Z+2D@7`H*7&(P(%P*06-T=6%L;'DL
M('=E('5S92!C871E9V]R:65S+"!B=70@:70G<R!Y970@86YO=&AE<B!T:&EN
M9R!T:&%T(&UA:V5S(&QI9F4@:&5L;"!P;W)T:6YG('1H:6YG<R!T;R!O=&AE
M<B!P;&%T9F]R;7,@.BTH7`I<"EP*"EQF,2!<"@I<8B!4:&%N:RUY;W4@9F]R
M('EO=7(@<F5S<&]N<V4N("!3:&]U;&0@=V4@<W1A<G0@<VAA<FEN9R!O=7(@
M9&ES8W5S<VEO;B!W:71H('1H92!N970_7`I<"@I<9C!<8C!<9F,Q7&-F,2!)
M9B!Y;W4G9"!L:6ME+"!P97)H87!S('EO=2!C86X@<&]S="!A('-U;6UA<GDN
M7`I<"G)E9V%R9',L7`I<"DME=FEN"EQP87)D7'1X,3$U,EQT>#(S,#1<='@S
M-#4V7'1X-#8P.%QT>#4W-C!<='@V.3$R7'1X.#`V-%QT>#DR,39<='@Q,#,V
M.%QT>#$Q-3(P7&8Q7&9C,%QC9C`@7`I<"BTM7`I.979I;B!0<F%T="P@1&EG
M:71A;"!496-H;F]L;V=Y+"!);G0G;"`@("!/<F5M+"!5=%P*3F585&UA:6P@
M<')E9F5R<F5D+"!B=70@3TY,62!A="!M>2!214%,(&5M86EL(&%D9')E<W,Z
=(&YE=FEN0&1T:6YT+F1T:6YT+F-O;5P*7`H*?0I,
`
--
---
root root@dtint.dtint.com
Digital Technology Int. (801)226-2984
500 W. 1200 South, Orem UT, 84057 FAX (801) 226-8438
Technical Details
Message-ID:
<1992Nov18.211839.25767@dtint.uucp>Path:
arc1-ca.pugleaf.net!sparky!uunet!dtint!usenetShow Full Headers
Complete Article Headers
Newsgroups: comp.sys.next.programmer Path: arc1-ca.pugleaf.net!sparky!uunet!dtint!usenet From: nevin@dtint.dtint.com Subject: Re: Coding Rules/Suggestions (RTF) Message-ID: <1992Nov18.211839.25767@dtint.uucp> Sender: usenet@dtint.uucp Reply-To: nevin@dtint.dtint.com Organization: Digital Technology, International Date: Wed, 18 Nov 92 21:18:39 GMT Lines: 544