Hi,
let me put another item in the discussion on reset. The item comes
from Peter Jensen (see CC).
SystemVerilog samples the values to be asserted before new values
are computed. This delays the assertion evaluation of signals by
one cycle (assuming a single clock design and single clock assertions).
A disable works immediately, i.e. it prevents checking of the last regularly
computed signals before the reset. In this way, an assertion failure
may be masked by a reset signal.
One solution would be to sample signals with reset, perform a check and
cancel then all evaluation threads. However, this conflicts with a general
idea of sampling.
Please not, that PSL (in postponed evaluation mode) would behave similarly,
because it would do the check signals after they stabelized, i.e. before
the reset cancels all evaluation threads. How PSL perfomes in cycle based
mode is unknown to me.
Regards,
Wolfgang
P.S. Concerning the Systax Definition I propose to allow
... disable iff ...
... async_disable iff ...
... sync_disbale iff ...
to make things syntactically clear. "disable" and "async_disable" should
have the same semantic.
-----Ursprüngliche Nachricht-----
Von: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] Im Auftrag von Bassam Tabbara
Gesendet: Donnerstag, 28. Oktober 2004 09:31
An: john.havlicek@freescale.com
Cc: sv-ac@eda.org
Betreff: RE: [sv-ac] Errata 269: Asynchronicity of disable iff in relation to the sampling clock
Thanks John for the detailed input and the discussion. Some comments.
About (1): Yes indeed, that would be the case, but it does not seem like a major "clumsiness" factor, since it comes with any "multi-clock" scenario. It does however bias the "common case" towards a "synchronous disable" as you point out. I do not recall now what the user input with regards to which one is more common ...
About (2): My immediate input is both the PSL LRM (which informally can be interpreted in both forms I believe), and some implementations which do make this looser interpretation of abort I believe. It seemed worthwhile, with some cleanup, to allow a looser notion for the SVA disable without having to use a complex expression and infer the intent.
About (3): Yeah my direct concern was to kill the "conflict" line from re-write section that most obviously "flowed the clock thru" without affecting the disable :-), did not add a replacement, sorry. Indeed the rule you have there captures the semantics to add, thx ! (I think Adam also pointed this out earlier, thx guys). As far as the rewrite, I think it's not so much in conflict.
@(c) disable iff (b) P |---> disable iff (b && c) @(c) P
Take (c) to be "async" (i.e. nothing, it disappears), and allow P to have a different clock you get back the same rule of old. All this does is make "c"
*explicit* whereas it was implicitly understood to be the "smallest granularity... Again the issue now goes back to (1), bias towards applying a clock vs. "unclocked" (aka async).
* My Summary: In a nutshell, I think both approaches are 2 faces of the same coin, one biased towards so-called "sync" (i.e. describes a "clock" which can embody the async (smallest granularity)), the other "ignores" the presence of this clock so describes things in a context devoid of it. In my opinion, async is a form of clocking, and disable iff is made better if the sampling and the function are *separated* ... This is how one can "reconcile" the async with "clock sampling" of the scheduling LRM language ... granted I went off into "expanding the role of disable" but it really seems like nothing fancy just a corollary of the "re-gearing" ...
* Where we are: I think you should buy into the "async == some form of clock" at least so we can all agree there is no need to add a "special case" to the scheduling semantics ... Beyond that, we can switch the ticket to enhancement and think more on this to iron out the conflict, if any, with PSL and/or decide to expand the clocking of disable, or keep the bias as is, with elaborate expression (as suggested by Adam/Surrendra).
Thx.
-Bassam.
---
Bassam:
I have some concerns about your proposal.
1. The clock rewrite rules given in Annex H apply to properties and
sequences in the abstract syntax, which are mapped to by actual SVA
properties and sequences according to their context and accounting
for inferred clocks. For example, the "@(c)" in
@(c) disable iff (b) P
might come from the "@(c)" in
always @(c)
assert property(disable iff (b) P)
Or it might come from the clock of a clocking block in which the
property is defined. Or it might come from a default clock.
I worry that by using the relative position of the clocking
event and "disable iff" it will become inconvenient or difficult
to define asynchronous reset conditions. For example, it seems that
the reset condition of any "disable iff" within the scope of a
clocking block will be sychronized with that clock under your proposal.
2. I think that from early in the PSL effort, and then in the SVA
effort, it has been a requirement to support "asynchronous resets".
I disagree that the proposed change achieves better alignment with PSL.
The reset condition of the PSL "abort" is asynchronous in semantically
the same way as the reset condition of the SVA "disable iff". The
difference between the PSL "abort" and the SVA "disable iff" is
that "disable iff" is a top-level property operator and cannot be
nested. In PSL, "abort" is a general property operator and can be
nested.
The provision against nesting of "disable iff" was introduced in
SVA 3.1 along with a number of other unnecessary restrictions.
However, Annex H of the 3.1a LRM defines semantics for "disable iff"
as a general, nestable property operator, in alignment with PSL.
3. Removing the clock rewrite rule for "disable iff" in H.3.1 does not
accomplish definition of the semantics you desire. The semantics
you desire will be achieved by changing the rewrite rule to
@(c) disable iff (b) P |---> disable iff (b && c) @(c) P
This rewrite rule definitely takes us out of alignment with PSL
because the PSL rewrite rule for "abort" is exactly analogous with
the rewrite rule currently written in H.3.1 for "disable iff".
In short, I think we should be very careful about changing the existing semantics of "disable iff". I think that some of the paradigms that have been suggested for specifying synchronous reset by using explicit forms in the reset condition of "disable iff" are better alternatives.
Best regards,
John H.
>
> Hi all,
>
> ** I had said I'd look into how to accommodate "async disable" in the
> other places in LRM, but I now think that's not warranted, it is
> better to fix disable itself and give us:
> - async ability same as before, with clearer meaning (to solve this
> errata item)
> - sync ability, which was seemingly prevented before because of a
> single word ....
> - better alignment with PSL's abort [in my opinion]
>
> The simplest (textual and may be even semantic ...) proposed change I
> could think of to address this is to separate the "disable" from its
> clocking. The idea is to "undo" thinking of disable as a special case
> that does not abide by the "clocking" [described early in chapter 17
> (Assertions) and also in chapter 14 (Scheduling Semantics)] but rather
> seemingly operates outside those boundaries while there is no real
> need for this distinction. As a side-effect of the reining in of
> disable, with this change, we would have both sync and async
> capabilities, and useful folding in of disable behavior.
>
> In a nutshell, I propose that: @(c) disable iff ( b ) P != disable
> iff ( b ) @(c) P
>
> In LHS, disable iff would be clocked by c, while in RHS disable iff
> would be "asynchronous" i.e. operates according to some other
> granularity clock that can catch all the b's i.e. a smart
> implementation would use a "b value change" clock ...In effect this
> fixes any aberration here with the scheduling semantics chapter since
> now disable does operate based on a "clock" regardless of what that
"clock" is ..
>
> Rather
>
> @(c) disable iff ( b ) P == @(c) disable iff ( b ) @(c) P
>
> I do not think there are serious side-effects, everything else e.g.
> clock flow should not be affected at all... but I did add a small fix
> in the proposal as well. I have added a proposal to make the changes
> [that I am aware of] apparent. Primarily deleting the confusing
"asynchronous"
> wording to say that disable is always "clocked" ...
>
> ** Finally as far as 195, this change rather emphasizes that disable
> iff can have a different clock (It is permitted to have disable with
> one clock, property_expr another) .... so may be it is best to use
> triggered (instead of matched/ended), you see how now that disable
> folds under the regular "clocking" we can apply the multi-clock rules
> and iron things out ... (e.g. ended disallowed in general if mix of
clocks).
>
> May I suggest this be added a discussion item (this meeting or next)
> depending on the agenda ? Arif please also assign this to me. I will
> shortly post a link to this message and the attached proposal on the
> ticket...
>
> ** Question: Does anyone know how we can mark something for *indexing*
> ? (Example In this case one extra use of disable iff in the clock flow
> section, and add the new term "pre-emptive" in the index).
>
> Thx.
> -Bassam.
>
> --
> Dr. Bassam Tabbara
> Architect, R&D
> Novas Software, Inc.
> (408) 467-7893
>
>
> ------=_NextPart_001_0020_01C4BAB6.DF557370
> Content-Type: text/html;
> charset="us-ascii"
> Content-Transfer-Encoding: quoted-printable
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
> <HTML><HEAD>
>
> <META content=3D"MSHTML 6.00.2900.2523" name=3DGENERATOR></HEAD>
> <BODY> <DIV><FONT face=3DArial size=3D2> <P><SPAN
> class=3D740120200-26102004>Hi all,<BR></SPAN><BR>** I had said = I'd
> look=20 into how to accommodate "async disable" in the other places in
> LRM, but = I now=20 think that's not warranted, it is better to fix
> disable itself and give = us:<BR>-=20 async ability <SPAN
> class=3D740120200-26102004>same </SPAN>as = before<SPAN=20
> class=3D740120200-26102004>, with clearer meaning (to solve this
> errata =
>
> item)</SPAN><BR>- sync ability<SPAN class=3D740120200-26102004>, which
> = was=20 seemingly prevented before because of a single word
> ....</SPAN><BR>- = better=20 alignment with PSL's abort [in my
> opinion]</P> <P>The simplest (textual and may be even semantic ...)
> proposed change = I could=20 think of to address this is to separate
> the "disable" from its = clocking. The=20 idea is to "undo" thinking
> of disable as a special case that does not = abide by=20 the
> "clocking" [described early in chapter 17 (Assertions) and also in =
> chapter=20
> 14 (Scheduling Semantics)] but rather <I>seemingly </I>operates
> outside = those=20 boundaries<SPAN class=3D740120200-26102004> while
> there is no real need = for this=20 distinction</SPAN>. As a
> side-effect of th<SPAN=20 class=3D740120200-26102004>e</SPAN> reining
> in of disable, with this = change, we=20 would have both sync and
> async capabilities, and useful folding in of = disable=20
> behavior.<BR><BR>In a nutshell, I propose that:<SPAN =
> class=3D740120200-26102004>=20 </SPAN><FONT
> size=3D1>@(<I>c</I></FONT><FONT size=3D1>) <B>disable iff = </B>(
> <I>b=20 </I></FONT><FONT face=3DCourier size=3D1>) </FONT><FONT
> face=3D"Times = New Roman"><FONT=20 size=3D2><EM><FONT
> size=3D1>P </FONT></EM><FONT size=3D3><SPAN=20
> class=3D740120200-26102004><EM>
> </EM></SPAN></FONT></FONT><STRONG><FONT =
>
> face=3D"Times New Roman"><FONT size=3D2>!=3D</FONT><SPAN =
> class=3D740120200-26102004>=20 </SPAN></FONT></STRONG></FONT><FONT
> face=3D"Times New Roman"><FONT=20 size=3D1> </FONT><B><FONT
> size=3D1>disable iff = </B></FONT></FONT><FONT=20 face=3DCourier
> size=3D1>( </FONT><I><FONT face=3D"Times New Roman" = size=3D1>b=20
> </I></FONT><FONT face=3DCourier size=3D1>) @(</FONT><I><FONT =
> face=3D"Times New Roman"=20 size=3D1>c</I></FONT><FONT face=3DCourier
> size=3D1>) </FONT><I><FONT=20 face=3D"Times New Roman"
> size=3D1>P<BR></I></FONT><BR>In LHS, disable = iff would be=20 clocked
> by c, while in RHS disable iff would be "asynchronous" i.e. =
> operates=20 according to some other granularity clock that can catch
> all the b's = i.e. a=20 smart implementation would use a "b value
> change" clock ...In effect = this fixes=20 any aberration here with
> the scheduling semantics chapter since now = disable does=20 operate
> based on a "clock"<SPAN class=3D740120200-26102004> regardless = of
> what=20 that "clock" is ..</SPAN><BR><BR><I><FONT face=3D"Times New
> Roman" = size=3D1><FONT=20
> size=3D2>Rather</FONT><BR><BR></I></FONT><FONT face=3DCourier=20
> size=3D1>@(</FONT><I><FONT face=3D"Times New Roman" =
> size=3D1>c</I></FONT><FONT=20 face=3DCourier size=3D1>)
> </FONT><B><FONT face=3DCourier-Bold = size=3D1>disable iff=20
> </B></FONT><FONT face=3DCourier size=3D1>( </FONT><I><FONT =
> face=3D"Times New Roman"=20 size=3D1>b </I></FONT><FONT face=3DCourier
> size=3D1>) </FONT><I><FONT=20 face=3D"Times New Roman" size=3D1>P
> </I></FONT><FONT face=3D"Times New = Roman"=20 color=3D#ff0000
> size=3D3>=3D=3D</FONT><FONT face=3D"Times New Roman" = size=3D1>
> @(c)=20 </FONT><B><FONT face=3DCourier-Bold size=3D1>disable iff =
> </B></FONT><FONT=20 face=3DCourier size=3D1>( </FONT><I><FONT
> face=3D"Times New Roman" = size=3D1>b=20 </I></FONT><FONT
> face=3DCourier size=3D1>) @(</FONT><I><FONT = face=3D"Times New
> Roman"=20 size=3D1>c</I></FONT><FONT face=3DCourier size=3D1>)
> </FONT><I><FONT=20 face=3D"Times New Roman"
> size=3D1>P</I></FONT><BR><BR>I do not think = there are=20 serious
> side-effects, everything else e.g. clock flow should not be = affected
> at=20 all... b<EM>ut I did add a small fix in the proposal as
> well</EM>. I = have added=20 a proposal to make the changes [that I am
> aware of] apparent. Primarily = deleting=20 the confusing
> "asynchronous" wording to say that disable is always = "clocked"=20
> ...<BR><BR>** Finally <STRONG>as far as 195</STRONG>, this change =
> rather=20 emphasizes that disable iff can have a different clock (It
> is permitted = to have=20 disable with one clock, property_expr
> another) .... so may be it is = best to use=20 triggered (instead of
> matched/ended), you see how now that disable = folds under=20 the
> regular "clocking" we can apply the multi-clock rules and iron =
> things out=20 ... (e.g. ended disallowed in general if mix of =
> clocks).<BR><BR><EM>May I=20 suggest this be added a discussion item
> (this meeting or next) = depending on the=20 agenda ?</EM><SPAN
> class=3D740120200-26102004><EM> Arif please also = assign this to=20
> me. I will shortly post a link to this message and the
> <STRONG>attached =
>
> proposal</STRONG> on the ticket...</EM><BR><BR><STRONG>** =
> <U>Question</U>: Does=20
> anyone know how we can mark something for *indexing* ? (Example In
> this = case one=20 extra use of disable iff in the clock flow section,
> and add the new = term=20 "pre-emptive" in the=20
> index).</STRONG></SPAN><BR><BR>Thx.<BR>-Bassam.</FONT></P></DIV>
> <DIV align=3Dleft><FONT face=3DArial size=3D2>--<BR>Dr. Bassam =
> Tabbara<BR>Architect,=20 R&D<BR>Novas Software, Inc.<BR>(408)
> 467-7893</FONT></DIV> <DIV><FONT face=3DArial
> size=3D2></FONT> </DIV></BODY></HTML>
>
> ------=_NextPart_001_0020_01C4BAB6.DF557370--
>
> ------=_NextPart_000_001F_01C4BAB6.DF526630
> Content-Type: application/pdf;
> name="SV_LRM_269.pdf"
> Content-Transfer-Encoding: quoted-printable
> Content-Disposition: attachment;
> filename="SV_LRM_269.pdf"
>
> %PDF-1.2 =0D%=E2=E3=CF=D3
> =0D18 0 obj=0D<<=0D/Length 19 0 R=0D/Filter /FlateDecode =
> =0D>>=0Dstream
> H=89=EDW=DBn=DCF=12=FD=82=F9=87~T=00=0F=DD=F7n>:=8E=8C=18=08v=8Dd=80=B
> C=04=
> 0(N=8F=C4,E=CE=92=1Cy=F5=F7[=CD=BE=90=CD=19J=B6=A2=00y0=04=08=9AQWuu=D
> 5=A9=
> S=A7~=DCm=B4=C8=04RXdJ =
> =B4=FBi=83=91=FD=E9n=D1=E6=ED=07=8C=08=CF=A8=FD=FE=B0=C1=19=96=1A=FE*=
> D1= =16gT=E5=F6=DB/=E8=EA7S=0EU=DB=A0=1F=D0=EE=CF=8D =
> =D6=0B=B6~=D0=DB=0F$=B1=A6$g=A39v=86De=84=8CVLNV8=DE@=88=BF=C1=B9=DEj=
> 0Dq=
> n=C1j=F4=08'=E1=08=CF=C3qN%w=C7=7F2e]tUs=8B>u=ED=D1tCe=FA=D1=03=E1=CC=
> DA=
> >w=8F?=B6=A5=DCg=04=D9<=E4=EE=C3a=03&Xiw/=CE=98=D4=FE=DAc=86(=A3=A3=0B
> >=AA=
> =92K=E0=0E=9D=A7w=C0=89-%=C1=FF=E8=92%=C9=F9=F5=FA=D3/=EF=DE_=8F=A7=B9
> X=A6=
> =E7=82GwhK=A8=8F=98N=11Cr$=16=DE=90`=EA=EC=DE9=C3|^0=86=F2=F0F"=E6=E1=
> EC=
> =AB=BE=B8=A9=0D=AA=0E=07g&Y4Jn=A2L=8BYI=9C5=D4=E3=D4=1BT=16=0D=BA1=A8=
> 18=
> =86=A2=BC3{4=B4=A8p=DE=08=C1Se=DE~=E0=89G=ECa=03=1EY>"=D0f=DB=95=F6=F1
> =B3=
> =F9=DF=B1=F3!=E1=F9S=92=A8=08=E6<=D6;'=B9=F3=01=F7?V=A6=DE=87(X=FEL=04xq=
> w=7F4=A5=83=BD=85=E6=02WD=AB=B4B=8C=93=11W=84=86=BA=FB=FF0 =
> _=92=00=EB=17VAx=A3=AB?=AElJL=DFCS~n=BB=CF`4=FC=F1=03J=12=E6=92=AE.E=B
> D=C4=
> =A9=CA=92=90=93=C4^x%=8E=10=84=FFq=EE=C2'YN|=DDvw=06M=F1=A1=F6=80=06=F
> 8=C6=
> =C5=83q=F6=14=14IF=A8XK=84=CA=D6JOr=E5=CD=85T>=8A=AA=070=D6=B5=C5 =
> =DC=0E=C1=98a=16U=86v1&=81_=3D"=CAp=02=A7=B2v=06=B3&=87=D4=C9=105=91=C
> 2G=
> =3D6=11=84=DD~=E9=03=A4r=BA=80=94E+=F7=AD=9E=0B=ED=A3+=FA=C7=A6=BC=EB=
> DA=
> =A6=3D=F5=EE=B9=BD=ED>hF=0B=E1=EAP=99}=86>=B4=1D=82=0E5=0FE}*=86eu=A8L
> =A8=
> =FD=E5=0D=B2=AC=0F=D7!^N8q=0E=DE=D8{;=C8f=FFDD[F=B1=7F}=C8=1A=15,=F8b=
> CA=
>
=F3=DC=A9=D9=9B=AE~=B4=F3=C0=B1=A9=CC=D6=9E!e~=F1=19=B1e=9Ex=06=D5$2=8C=14=
> =9E=F82=F4=F1=00=9DWAf!=DD6=F2=B2=BD?=D6fzK1=CC=9Fw =
> =8DP%02P=B0=EEd=C6=C44aP=E1=E4=F1L=C5=C7S=E1=1Fo=1D=B6=0F=A6=03=D4=A4i
> t=DC=
> =9FG=C0Q5=E3m=E9=C3=9F=F5=A6z)?[=08<=CF=CFDN>0=9B=BA=D4=BE9C=FF=B6h=F8
> R=F5=
> =EE=F9kx =
> =E29=FE=FE+=11N=03=84=B1@=926@=B8=BD/=EE#$s9=1F=C3=16=0B=9E~=EC=10=1A=
> D1=
> 9=B6=A3=AB=FC<z=A1=D6=DB=EB=AF=E0=92=B3i=F2E=AD=E2=18=EE=0Ci=F6=3D=A6=
> 1F=
> =80=16+h=9A=A3=81_=CDP?=A2=03=E0w=0F=CC=06-=D9$x=85Qn=EE=8F@&=ED!`=92=
> C8= =B4'/=02=EB=9Bp=F5=12R!8=084=85=89=0A=
> =8F=FE=17<=CE=F2@=88V=B0=F9=ED=17=C6n=A6V=E9]^=BA=D9=0A=
> =B9=C0=EE$c=9C=EA@=F1=96=BB=FB76=D9uu=AE=192=A2=18=F1V=98Q=DF=BC=95=CD
> =BD=
> =A5=0E`=EE=D3=ED]=1C=E1P=9D~(=9A=A1=1A=8B=00^=A1nM;=84=91=0D=AFZ=8C=04
> ,D=
> =A2#=C6=19=02=94=EF=D4=07;=D3=00=8B=99=CEb9=CF=86|=D46r=AEg=97z=99=13=
> 91=
> =94=F2=F7=8F=BB=9F=DDP=E1=CF=0A=
> e=FE]=D3~=D7=B4=DF5mZz=C9=A97=D7=B9fq=18=ADjZ=0FH:g=1C=07=99=91=E4x=D0
> +=89=
> =F6e=EAo=08=1D=E7:=10=1Du3u=EA=A5T=DAj=91V=89 =
> +=C5=BB[=04^=18=E72!=B4=99=BE=1D=CD=AFw=9B=D1=9E=E5=18=F9=C9j=7F=81=A4
> +<l=
> ~=DCm`*Zh2m=D1=02=CE7xr=BE=86u1u=B3=3DK=C6=D3c:0M;=C9=B8t=D3=A9um=8B=06E=
> =7F=B5=F5=A4=1A*=81 =
> u=0E=AE=EC,=AD=1E=9C9#=D9=FC=BA=F0r"G=D4=95=88fL`?=D9^*=E9=C9k=90=C3=1
> 2=9B=
> L=06|(=16=F6=8FT=CF=87=02=ABT*AQ=02"9=D1=1E=91=E7=A1/=F5<!=FAo=11=F4D=E8=
> 0=94D=EE=E7=CB=AB=E8y/=94=94=9A=AB$2u4=0F=1D=3D =
> =7F=B7=B8=88=C5=86=18=1AI=84=99=19=F7=83U=D9?c&=C9_A=D2=AFL=CC=A8=E7=8
> 9=95=
> =F3<=12=D4=B7=C8y=E0i6=9B=FD=AF=1B =
> %^o=E1,=CF=A3=DE=9A=C9=F9K=12}N=A0=AF=894=196=84\=E8=80=B3o=D6=E7>g=8C
> =CF=
> ;=8A=F2 =91=B4=D6=81=AB=9F=D1=F1=B3}=0A=
> =BF>=3DP=ADih+=C5Yx=AEU=E6=0BE=98a=CD&=81=1704S=EFT=3D)=DD=D9=BAv=E7=A
> B=D3=
> Ii=16(Hs:=9FNQ=BC/U=B9g3'T'=CD=0D=DB=A8=8E=10=E5=8A=A5=A9Z=93=F0=892=0
> 7=D5=
> <=EB=F8=B5=B9=B4=F5=C7.ht=99Mz=9Cp'=C6=C6g=CA=18=1AU=81<~3=E5=10=E9I=9
> 0=B9=
> =EE$=0B=EBd=F6=C2=0A=
> =07=EFf=8E=A2=F4=85=80)Y=080'=8A=B6n=F7=F3=D9=C2=82=C6l=B9=86=80=F3=EF
> =EB=
> =B6=FC=0F:@JFCE=9Fu=0DG`eX=DBC=A0=BCa=C20=A9=3D=A4=8E=19=A2=9C=A5=88Z_
> G=D4=
> |=CF=19]=B2=A4=17~=BD=FE=F4=CB=BB=F7=D7=E7=84=BD=E6=D1=1DZ=D9q0e=A1[=0
> |4=CB=
>
=3D=86>6=C3=A9=B2:=A1~|=83=CA=98"=AB=86=1F=AA=BD=F1=C4UAW=A3=FBS=3DT=C7=FA=
> =D1=C1 =00y.G|=DCKQB4=8F=05=C1=8A=A8=D0=0A=
> p=1B=D0Oo=FE{2Mil=1FDH=8F=DCY=C2=07=DB=A1=85=8B=CC=F6=ABy=B0l=E3=F3=87
> I|=
> =AB=C52&=E1}R2=7F=C9aT=81=B59=0CK=19=FA=15q3=16=C4=D4=D0=8E=FF=D2=D3=9
> 4{=
> Z=85I=E9=D6=A9=AB=AE=BA=BDsW=13=9DL\=C2bJ`zz=F8=A0=A2=EC=DA=1E=E2=AD=1
> AS=
> t=C8=E6=A2=18=DA=AEG=B0=B3d=B7=D9=1B`=F1#=E8=03=DBZP=AD=B6)=8B=C14=85=
> FB=
> =D8=98[=FFWuo=A9e=FC=00{M=D1=EC=91]q=BA=EA=E6=04=84=1F=B0=ED=BA&=92=BB
> P=DC=
> =CFX=A91Aa=FD=1Bg=BF=8D=A2=D9=8F|~=03=7F=95w#q=9E=C5=06=F1=FCyjJ=17=03=DC=
> 8}=A8=9A=C1t=BD=F1=9F\=AE=C4=93=84=EB =
> =FA=E0=F7=9E=CB=14;=F1=17$:=CB=1C=CF=C99=D7=9C{=BE2uo=BC`]=F1=89=B1=08
> zC=
> 8&=81P =
> =91'`=D8=1AU=83=A5W=CF=D3=B9X,=AC=A3=F0=14=91|=98=CF$=94=AD.J=C0=FA=CD
> #=80=
> =B91_=16=80=F6=14=CD=9E=E7=E7<_r=F3=96=C99=8D,i=8A=13=91p=CA=EF=1Fw?/=
> 86=
> =E3*?=F1U*Q:=A1=ED=C8"=AE=B6=F3I=03=E9=0C4)=04=F3=17|+=D9=CC=E5=E5w=BE
> =B9=
> =C079=8D=12=16=D3=DC=AB=B3=91{^=9DRB=033=1C=F13[`1V2=82W=E59Z=AA&g=9C=
> CF=
> l=A7m4=80=0A=
> =B6X=9D=C7=BE=B3=04=E6=C7=1B=C5=E9=96G)=8D=CD=C6I=BC+r=DD=1A=839Tq6=A5
> =D7=
> =EA[=3D=AD=01$=88=E7=D7=E0:=CA=E4|;=FA=A7=D1=1D=AC=8B=D3$=92d=C1w>=F3=
> A0=
> =AF=D4=92=E9=A8=9E=E5=CBw=B6=A3=C7=AF=E4;=10=86_=A3HIv&H-=E7=A5=DF\=EF
> 6=FF=
> =07D/=8D=11=0Dendstream=0Dendobj=0D19 0 obj=0D2073=0Dendobj=0D4 0 =
> obj=0D<<=0D/Type /Page=0D/Parent 5 0 R=0D/Resources <<=0D/Font 20 0 =
> R=0D/ProcSet 2 0 R=0D>>=0D/Contents 18 0 R=0D>>=0Dendobj=0D20 0 =
> obj=0D<<=0D/F0 6 0 R=0D/F1 8 0 R=0D/F2 10 0 R=0D/F3 12 0 R=0D/F4 14 0
> =
> R=0D/F5 16 0 R=0D>>=0Dendobj=0D22 0 obj=0D<<=0D/Length 23 0
> R=0D/Filter = /FlateDecode =0D>>=0Dstream
> H=89=EDWMO=DC0=10=FD=05=F9=0F>=F4=10*=AD=F1g=9C=F4P=15Z#*=F5=80=D0J=3D
> t{=
> (=DB=DD=8A=16A=B5P=D1=9F=DF=D8=13=C7q=12'=A6=1F=02*=84=84=B2=BBo=9E=C7
> o=DE=
> 8=E3=C3eVJ,=91"=12+=89=D0=F2MF=90=F9=DB}A=D9=FE=11ET`f=BE=DFf=04=13=A6
> X=FD=
> =B8F=0B=82=19/U=FD|=8B=F2=83=CB=CB=CDOt=BC=87=96_3=A9=0C=0B1<=F6?@)=95
> =00=
> E=16=B4=00=D4=82*=A0=AE=A1=98RU8<g=15=05=FC1=E6=98=A2=D3=CD=ED=EE=FCf=
> 83=
> v?.6=D7h{=B5C=EB=8B=AB=F5=B7kK=C6=08=9D]=CF`=16L4=1BD=FBG=04U=F0a=9B=D5x=
> =A2=CA=CA=C6=D6K=17=A5=80=D0=EF=18I=AE` =
> =15=ACP/PV=BD=05T=CDO=1D=BF=A5=E4=1C=C0=80;=D5'=EF=0E^k=8B=16=B2=AF=D1
> =08=
> #=80=16=945=19=B3 =
> cA=ADp6=925=81+=F3=04E0=B2=92&P=A2=CAEQ=D9M=E9=D5*=B7hJ=B0G=0B=8Ff=02=
> 0A=
> =92=AF-=8C=FB=A4=C7H=F3=D5=1E=9A=A1s=1A=C3=93=11=05"=14N=C8=F6=C3s=FA=
> E2= =D9G=08=E0=85=CF%_=F4=B7=9C=BF=1C=13=C1=0A=
> Y{=D8=D5=B9+vR=02=AB=1C9=C5=18}=F8z=AD=F6=BA=8A =
> =D6F=84F=A2=A5j=F2=C1=B05=AFZ=DBN=0D=C6{=93=AA=CA=C0=9C9=1F=91=1Fy=83=
> CB=
> ?=9F_=7F:=BB=D8=A0=F3=ED=16`=05=1F=90=99=92=C73=02y=F2=B3&=FC=EE=D9=A4
> 8=D7=
> =D7 =A8@ =E8=B4gN=86=9E=E1=B1=0A=
> $=8A=F2'I6+=A5=ABv=DF=3D7=A2_=A4=83=9A=AD=DD=A1=8FX=E1=FA=A8=F3=E6xt=A
> Dt=
> yu=83&K=04=9A=E6'=C3=0Dt=94=8C=AA=C4=92v=FC=97z)=DA=1Ac=9Bl[=E2=9E=DE=
> A4=
> 3=8A=FE=EE=E9^Q=1Cx=D2}=CF=8B=EE=8C=D3=9F=A1=04=95=C1=C0=F3=FE=ED=12&B
> &f=
> =87'=F14=E7=F4=E6=1C=C8=84=E2t=EF=FE=9B=8Ex=9A=82=A6=A6 =
> =D5=FA=96=B6W=A6Y=D3=EA=E6=C2%EiV=01=B1M.=BB=0D=DAf=87=CB=AC=B2=9F=A4(=DC=
> },=C1=DB=DA=87YV=90=B3=CBJ =B5=CBui=E3e=D3=9D=00K=08u=0C =
> g=93l=AB=AB=1D<=96=1C=05E:l=F1IM{=BC=A53CJ@=A6=CA>=D9`=A2=D3=1E=16K=A9
> =BE= =12=8E=8A=15=CE}=DA!!=95=A1J=95L=A8f =
>
=94=8B=88$=C6H=D1+d=D3=EA=BA=F3[=C4Z=8C=D2P=9A=E6L=D0=FE=A7hd=D1=DBG=E4=F0=
> =D0=1Dl=8C=8B=B1 =
> =1F=C6&0=ED=02-=AB=1A=C8=C2=AA=98=85=E6=E7\=ED=E3G-=C5*=96b)=07=8BT=8E
> =13=
> =9Eh)@F,=C5I=95h=A9=CE=E9=D0=06YRst=07=94|x=E6L=1E=0Em@=E4p=E0\=C4=04=
> 1B=
> w=BD=0B=88I'=A6=B2=9B=B0=0C=04=8E[=86=CBAUSF{=ED#A=CC=81=C1=B9=14=D1f=
> 99=
> =BF=03=90=F4w=C9=C3=19=80=9En=03=FF=E9m=802=15^=07=82=C1=7F8=CD=D7=B7=84=
> =C9=D5o{=F7 =BFq=CF=19=96=84=D40=D3n =
> =8B=93=EE=0D=C5=9F=CB=BF=00/y=B2=AE=0Dendstream=0Dendobj=0D23 0 =
> obj=0D852=0Dendobj=0D21 0 obj=0D<<=0D/Type /Page=0D/Parent 5 0 =
> R=0D/Resources <<=0D/Font 24 0 R=0D/ProcSet 2 0 R=0D>>=0D/Contents 22
> 0 =
> R=0D>>=0Dendobj=0D24 0 obj=0D<<=0D/F0 6 0 R=0D/F1 8 0 R=0D/F2 10 0 =
> R=0D/F3 12 0 R=0D/F4 14 0 R=0D/F5 16 0 R=0D>>=0Dendobj=0D6 0 =
> obj=0D<<=0D/Type /Font=0D/Subtype /TrueType=0D/Name /F0=0D/BaseFont =
> /Arial=0D/FirstChar 32=0D/LastChar 255=0D/Widths [ 278 278 355 556 556
> =
> 889 667 191 333 333 389 584 278 333 278 278 =0D556 556 556 556 556 556
> =
> 556 556 556 556 278 278 584 584 584 556 =0D1015 667 667 722 722 667
> 611 =
> 778 722 278 500 667 556 833 722 778 =0D667 778 722 667 611 722 667 944
> =
> 667 667 611 278 278 278 469 556 =0D333 556 556 500 556 556 278 556 556
> =
> 222 222 500 222 833 556 556 =0D556 556 333 500 278 556 500 722 500 500
> = 500 334 260 334 584 750 =0D556 750 222 556 333 1000 556 556 333 1000
> =
> 667 333 1000 750 611 750 =0D750 222 222 333 333 350 556 1000 333 1000
> = 500 333 944 750 500 667 =0D278 333 556 556 556 556 260 556 333 737
> 370 =
> 556 584 333 737 552 =0D400 549 333 333 333 576 537 278 333 333 365 556
> =
> 834 834 834 611 =0D667 667 667 667 667 667 1000 722 667 667 667 667
> 278 =
> 278 278 278 =0D722 722 778 778 778 778 778 584 778 722 722 722 722 667
> =
> 667 611 =0D556 556 556 556 556 556 889 500 556 556 556 556 278 278 278
> =
> 278 =0D556 556 556 556 556 556 556 549 611 556 556 556 556 500 556 500
> = =0D]=0D/Encoding /WinAnsiEncoding=0D/FontDescriptor 7 0 =
> R=0D>>=0Dendobj=0D7 0 obj=0D<<=0D/Type /FontDescriptor=0D/FontName =
> /Arial=0D/Flags 32=0D/FontBBox [ -250 -212 1204 1000 ]=0D/MissingWidth
> = 275=0D/StemV 80=0D/StemH 80=0D/ItalicAngle 0=0D/CapHeight =
> 905=0D/XHeight 453=0D/Ascent 905=0D/Descent -212=0D/Leading =
> 150=0D/MaxWidth 1003=0D/AvgWidth 441=0D>>=0Dendobj=0D8 0 =
> obj=0D<<=0D/Type /Font=0D/Subtype /TrueType=0D/Name /F1=0D/BaseFont =
> /Arial,Bold=0D/FirstChar 32=0D/LastChar 255=0D/Widths [ 278 333 474
> 556 =
> 556 889 722 238 333 333 389 584 278 333 278 278 =0D556 556 556 556 556
> =
> 556 556 556 556 556 333 333 584 584 584 611 =0D975 722 722 722 722 667
> =
> 611 778 722 278 556 722 611 833 722 778 =0D667 778 722 667 611 722 667
> =
> 944 667 667 611 333 278 333 584 556 =0D333 556 611 556 611 556 333 611
> =
> 611 278 278 556 278 889 611 611 =0D611 611 389 556 333 611 556 778 556
> =
> 556 500 389 280 389 584 750 =0D556 750 278 556 500 1000 556 556 333 =
> 1000 667 333 1000 750 611 750 =0D750 278 278 500 500 350 556 1000 333
> = 1000 556 333 944 750 500 667 =0D278 333 556 556 556 556 280 556 333
> 737 = 370 556 584 333 737 552 =0D400 549 333 333 333 576 556 278 333
> 333 365 =
> 556 834 834 834 611 =0D722 722 722 722 722 722 1000 722 667 667 667
> 667 =
> 278 278 278 278 =0D722 722 778 778 778 778 778 584 778 722 722 722 722
> =
> 667 667 611 =0D556 556 556 556 556 556 889 556 556 556 556 556 278 278
> =
> 278 278 =0D611 611 611 611 611 611 611 549 611 611 611 611 611 556 611
> =
> 556 =0D]=0D/Encoding /WinAnsiEncoding=0D/FontDescriptor 9 0 =
> R=0D>>=0Dendobj=0D9 0 obj=0D<<=0D/Type /FontDescriptor=0D/FontName =
> /Arial,Bold=0D/Flags 16416=0D/FontBBox [ -250 -212 1160 1000 =
> ]=0D/MissingWidth 322=0D/StemV 153=0D/StemH 153=0D/ItalicAngle =
> 0=0D/CapHeight 905=0D/XHeight 453=0D/Ascent 905=0D/Descent =
> -212=0D/Leading 150=0D/MaxWidth 967=0D/AvgWidth 479=0D>>=0Dendobj=0D10
> = 0 obj=0D<<=0D/Type /Font=0D/Subtype /TrueType=0D/Name
> /F2=0D/BaseFont = /TimesNewRoman=0D/FirstChar 32=0D/LastChar
> 255=0D/Widths [ 250 333 408 = 500 500 833 778 180 333 333 500 564 250
> 333 250 278 =0D500 500 500 500 = 500 500 500 500 500 500 278 278 564
> 564 564 444 =0D921 722 667 667 722 =
> 611 556 722 722 333 389 722 611 889 722 722 =0D556 722 667 556 611 722
> =
> 722 944 722 722 611 333 278 333 469 500 =0D333 444 500 444 500 444 333
> = 500 500 278 278 500 278 778 500 500 =0D500 500 333 389 278 500 500
> 722 = 500 500 444 480 200 480 541 778 =0D500 778 333 500 444 1000 500
> 500 333 = 1000 556 333 889 778 611 778 =0D778 333 333 444 444 350 500
> 1000 333 = 980 389 333 722 778 444 722 =0D250 333 500 500 500 500 200
> 500 333 760 =
> 276 500 564 333 760 500 =0D400 549 300 300 333 576 453 250 333 300 310
> = 500 750 750 750 444 =0D722 722 722 722 722 722 889 667 611 611 611
> 611 =
> 333 333 333 333 =0D722 722 722 722 722 722 722 564 722 722 722 722 722
> =
> 722 556 500 =0D444 444 444 444 444 444 667 444 444 444 444 444 278 278
> =
> 278 278 =0D500 500 500 500 500 500 500 549 500 500 500 500 500 500 500
> = 500 =0D]=0D/Encoding /WinAnsiEncoding=0D/FontDescriptor 11 0 =
> R=0D>>=0Dendobj=0D11 0 obj=0D<<=0D/Type /FontDescriptor=0D/FontName =
> /TimesNewRoman=0D/Flags 34=0D/FontBBox [ -250 -216 1158 1000 =
> ]=0D/MissingWidth 321=0D/StemV 73=0D/StemH 73=0D/ItalicAngle =
> 0=0D/CapHeight 891=0D/XHeight 446=0D/Ascent 891=0D/Descent =
> -216=0D/Leading 149=0D/MaxWidth 965=0D/AvgWidth 401=0D>>=0Dendobj=0D12
> = 0 obj=0D<<=0D/Type /Font=0D/Subtype /TrueType=0D/Name
> /F3=0D/BaseFont = /CourierNew,Bold=0D/FirstChar 32=0D/LastChar
> 255=0D/Widths [ 600 600 = 600 600 600 600 600 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 = 600 600 600 600 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 = 600 600 600 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 = 600 600 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 = 600 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 = 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 = 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 = 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 = 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 = 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 = 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 600 =
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 600 600
> = 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 600 600
> 600 = 600 =0D]=0D/Encoding /WinAnsiEncoding=0D/FontDescriptor 13 0 =
> R=0D>>=0Dendobj=0D13 0 obj=0D<<=0D/Type /FontDescriptor=0D/FontName =
> /CourierNew,Bold=0D/Flags 16418=0D/FontBBox [ -250 -300 713 1000 =
> ]=0D/MissingWidth 594=0D/StemV 191=0D/StemH 191=0D/ItalicAngle =
> 0=0D/CapHeight 833=0D/XHeight 417=0D/Ascent 833=0D/Descent =
> -300=0D/Leading 133=0D/MaxWidth 594=0D/AvgWidth 600=0D>>=0Dendobj=0D14
> = 0 obj=0D<<=0D/Type /Font=0D/Subtype /TrueType=0D/Name
> /F4=0D/BaseFont = /TimesNewRoman,Italic=0D/FirstChar 32=0D/LastChar
> 255=0D/Widths [ 250 =
> 333 420 500 500 833 778 214 333 333 500 675 250 333 250 278 =0D500 500
> = 500 500 500 500 500 500 500 500 333 333 675 675 675 500 =0D920 611
> 611 =
> 667 722 611 611 722 722 333 444 667 556 833 667 722 =0D611 722 611 500
> =
> 556 722 611 833 611 556 556 389 278 389 422 500 =0D333 500 500 444 500
> =
> 444 278 500 500 278 278 444 278 722 500 500 =0D500 500 389 389 278 500
> =
> 444 667 444 444 389 400 275 400 541 778 =0D500 778 333 500 556 889 500
> = 500 333 1000 500 333 944 778 556 778 =0D778 333 333 556 556 350 500
> 889 =
> 333 980 389 333 667 778 389 556 =0D250 389 500 500 500 500 275 500 333
> = 760 276 500 675 333 760 500 =0D400 549 300 300 333 576 523 250 333
> 300 = 310 500 750 750 750 500 =0D611 611 611 611 611 611 889 667 611
> 611 611 =
> 611 333 333 333 333 =0D722 667 722 722 722 722 722 675 722 722 722 722
> =
> 722 556 611 500 =0D500 500 500 500 500 500 667 444 444 444 444 444 278
> =
> 278 278 278 =0D500 500 500 500 500 500 500 549 500 500 500 500 500 444
> = 500 444 =0D]=0D/Encoding /WinAnsiEncoding=0D/FontDescriptor 15 0 =
> R=0D>>=0Dendobj=0D15 0 obj=0D<<=0D/Type /FontDescriptor=0D/FontName =
> /TimesNewRoman,Italic=0D/Flags 98=0D/FontBBox [ -250 -216 1158 1000 =
> ]=0D/MissingWidth 376=0D/StemV 73=0D/StemH 73=0D/ItalicAngle =
> -11=0D/CapHeight 891=0D/XHeight 446=0D/Ascent 891=0D/Descent =
> -216=0D/Leading 149=0D/MaxWidth 965=0D/AvgWidth 402=0D>>=0Dendobj=0D16
> = 0 obj=0D<<=0D/Type /Font=0D/Subtype /TrueType=0D/Name
> /F5=0D/BaseFont = /CourierNew=0D/FirstChar 32=0D/LastChar
> 255=0D/Widths [ 600 600 600 600 = 600 600 600 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 = 600 600 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 = 600 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 = 600 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 = 600 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 = 600 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 = 600 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 = 600 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 = 600
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 600 =
> 600 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 600 600
> = 600 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 600 600
> 600 = 600 =0D600 600 600 600 600 600 600 600 600 600 600 600 600 600
> 600 600 = =0D600 600 600 600 600 600 600 600 600 600 600 600 600 600
> 600 600 = =0D]=0D/Encoding /WinAnsiEncoding=0D/FontDescriptor 17 0 =
> R=0D>>=0Dendobj=0D17 0 obj=0D<<=0D/Type /FontDescriptor=0D/FontName =
> /CourierNew=0D/Flags 34=0D/FontBBox [ -250 -300 768 1000 =
> ]=0D/MissingWidth 640=0D/StemV 109=0D/StemH 109=0D/ItalicAngle =
> 0=0D/CapHeight 833=0D/XHeight 417=0D/Ascent 833=0D/Descent =
> -300=0D/Leading 133=0D/MaxWidth 640=0D/AvgWidth 600=0D>>=0Dendobj=0D2
> 0 = obj=0D[ /PDF /Text ]=0Dendobj=0D5 0 obj=0D<<=0D/Kids [4 0 R 21 0
> R = ]=0D/Count 2=0D/Type /Pages=0D/MediaBox [ 0 0 612 792 =
> ]=0D>>=0Dendobj=0D1 0 obj=0D<<=0D/Creator =
> <FEFF00530056005F004C0052004D005F003200360039002E0064006F00630020002D0
> 02=
> 0004D006900630072006F0073006F0066007400200057006F00720064>=0D/Creation
> 0004D006900630072006F0073006F0066007400200057006F00720064>Da=
> te (D:20041025171012)=0D/Title =
> <FEFF00530056005F004C0052004D005F003200360039002E0064006F0063>=0D/Auth
> or= <FEFF00420061007300730061006D>=0D/Producer (Acrobat PDFWriter 5.0
> for = Windows NT)=0D>>=0Dendobj=0D3 0 obj=0D<<=0D/Pages 5 0 R=0D/Type
> = /Catalog=0D>>=0Dendobj=0Dxref=0D0 25=0D0000000000 65535 f
> =0D0000011762 = 00000 n =0D0000011640 00000 n =0D0000012114 00000 n
> =0D0000002191 00000 = n =0D0000011671 00000 n =0D0000003532 00000 n
> =0D0000004617 00000 n = =0D0000004870 00000 n =0D0000005959 00000 n
> =0D0000006221 00000 n =
> =0D0000007312 00000 n =0D0000007573 00000 n =0D0000008663 00000 n =
> =0D0000008930 00000 n =0D0000010026 00000 n =0D0000010296 00000 n =
> =0D0000011381 00000 n =0D0000000019 00000 n =0D0000002170 00000 n =
> =0D0000002300 00000 n =0D0000003336 00000 n =0D0000002386 00000 n =
> =0D0000003316 00000 n =0D0000003446 00000 n =0Dtrailer=0D<<=0D/Size =
> 25=0D/Root 3 0 R=0D/Info 1 0 R=0D/ID =
> [<cc11f80ec097aeb78d88a239075ecef4><cc11f80ec097aeb78d88a239075ecef4>]
> =0D>=
> >=0Dstartxref=0D12163=0D%%EOF
> ------=_NextPart_000_001F_01C4BAB6.DF526630--
Received on Thu Oct 28 04:47:35 2004
This archive was generated by hypermail 2.1.8 : Thu Oct 28 2004 - 04:47:53 PDT