From 09f57c8dffd9a8ba0983cce13381aef716f43801 Mon Sep 17 00:00:00 2001 From: chatty Date: Tue, 28 Nov 2000 14:19:34 +0000 Subject: *** empty log message *** --- utils/Automaton.cc | 181 +++ utils/Automaton.h | 137 +++ utils/FIGURES/CcuDList.epsf | 2636 +++++++++++++++++++++++++++++++++++++++++++ utils/FIGURES/CcuList.epsf | 2006 ++++++++++++++++++++++++++++++++ utils/FIGURES/hash.tex | 41 + utils/testchain.cc | 65 ++ utils/testdirpath.cc | 19 + utils/testdlist.cc | 77 ++ utils/testhash.cc | 197 ++++ utils/testid.cc | 61 + utils/testlist.cc | 76 ++ utils/testregexp.cc | 17 + utils/testsignal.cc | 74 ++ utils/testtimer.cc | 43 + 14 files changed, 5630 insertions(+) create mode 100644 utils/Automaton.cc create mode 100644 utils/Automaton.h create mode 100644 utils/FIGURES/CcuDList.epsf create mode 100644 utils/FIGURES/CcuList.epsf create mode 100644 utils/FIGURES/hash.tex create mode 100644 utils/testchain.cc create mode 100644 utils/testdirpath.cc create mode 100644 utils/testdlist.cc create mode 100644 utils/testhash.cc create mode 100644 utils/testid.cc create mode 100644 utils/testlist.cc create mode 100644 utils/testregexp.cc create mode 100644 utils/testsignal.cc create mode 100644 utils/testtimer.cc (limited to 'utils') diff --git a/utils/Automaton.cc b/utils/Automaton.cc new file mode 100644 index 0000000..9643bdb --- /dev/null +++ b/utils/Automaton.cc @@ -0,0 +1,181 @@ +/* + * CENA C++ Utilities + * + * by Stephane Chatty + * + * Copyright 1993-1995 + * Centre d'Etudes de la Navigation Aerienne (CENA) + * + * Automata. + * + * $Id$ + * $CurLog$ + */ + +#include "Automaton.h" + +CcuBaseLink :: CcuBaseLink (CcuBaseState* s) +: To (s) +{ +} + +CcuBaseLink :: ~CcuBaseLink () +{ +} + +CcuBaseState :: CcuBaseState (const char* name, CcuBaseAutomaton& a) +: Name (name), + Links (a.Size, a.Hash, a.Copy, a.Delete, a.Compare), + TheAutomaton (&a) +{ +} + +CcuBaseState :: ~CcuBaseState () +{ + CcuHashIterOf l = Links; + while (++l) + delete *l; +} + +#if 0 +void +CcuBaseState :: CreateLink (CcuBaseState* to, CcuKey* k) +{ + CcuHashCellOf * c = Links.Add (k); + c->SetInfo (new CcuBaseLink (to)); +} +#endif + +#if 0 +void +CcuBaseState :: Add (CcuKey* key, CcuBaseLink* l) +{ + CcuHashCellOf * c = Links.Add (key); + c->SetInfo (l); +} +#endif + +CcuBaseState* +CcuBaseState :: Next (CcuToken* tk, bool peek) +{ + CcuKey* k = TheAutomaton->GetKey ? (TheAutomaton->GetKey) (tk) : tk; + CcuHashCellOf * c = Links.Get (k); + if (!c) + return 0; + CcuBaseLink* l = c->GetInfo (); + CcuBaseState* to = l->GetDestination (); + + if (!peek) { + Out (); + l->Fire (this, to, tk); + to->In (); + } + return to; +} + +CcuBaseAutomaton :: CcuBaseAutomaton (AKEY_F gk, HASH_F hash, HCP_F cp, HDEL_F del, HCMP_F cmp, int sz) +: Size (sz), + Hash (hash), + Copy (cp), + Delete (del), + Compare (cmp), + GetKey (gk), + Initial (0), + AllStates () +{ +} + +CcuBaseAutomaton :: ~CcuBaseAutomaton () +{ + CcuListIterOf s = AllStates; + while (++s) + delete *s; +} + +#if 0 +CcuBaseState* +CcuBaseAutomaton :: CreateState (const char* n); +{ + CcuBaseState* s = new CcuBaseState (n, *this); + AllStates.Append (s); + return s; +} +#endif + + +CcuLink :: CcuLink (CcuState* s, CcuLinkFun fn) +: CcuBaseLink (s), + Fun (fn) +{ +} + +CcuLink :: ~CcuLink () +{ +} + +void +CcuLink :: Fire (CcuBaseState* from, CcuBaseState* to, CcuToken* data) +{ + if (Fun) + (*Fun) ((CcuState*) from, (CcuState*) to, data); +} + +CcuState :: CcuState (const char* name, CcuAutomaton& a, CcuStateFun* in, CcuStateFun* out) +: CcuBaseState (name, a), + InFun (in), + OutFun (out) +{ +} + +CcuState :: ~CcuState () +{ +} + +void +CcuState :: In () +{ + if (InFun) (*InFun) (this); +} + +void +CcuState :: Out () +{ + if (OutFun) (*OutFun) (this); +} + +void +CcuState :: CreateLink (CcuState* to, CcuKey* k, CcuLinkFun fn) +{ + CcuHashCellOf * c = Links.Add (k); + c->SetInfo (new CcuLink (to, fn)); +} + +CcuState* +CcuAutomaton :: CreateState (const char* n, CcuStateFun in, CcuStateFun out) +{ + CcuState* s = new CcuState (n, *this, in, out); + AllStates.Append (s); + return s; +} + +CcuAutomIter :: CcuAutomIter (CcuBaseAutomaton& a) +: TheAutomaton (&a), + CurState (a.GetInitial ()) +{ +} + +CcuAutomIter :: ~CcuAutomIter () +{ +} + +bool +CcuAutomIter :: Step (CcuToken* tk) +{ + if (!CurState && !(CurState = TheAutomaton->GetInitial ())) + return false; + CcuBaseState* n = CurState->Next (tk); + if (!n) + return false; + CurState = n; + return true; +} diff --git a/utils/Automaton.h b/utils/Automaton.h new file mode 100644 index 0000000..a85d911 --- /dev/null +++ b/utils/Automaton.h @@ -0,0 +1,137 @@ +/* + * CENA C++ Utilities + * + * by Stephane Chatty + * + * Copyright 1992-1995 + * Centre d'Etudes de la Navigation Aerienne (CENA) + * + * Automata. + * + * $Id$ + * $CurLog$ + */ + +#ifndef CcuAutomaton_H_ +#define CcuAutomaton_H_ + +#include "cplus_bugs.h" +#include "List.h" +#include "HashTable.h" +#include "String.h" +#include "bool.h" + +typedef void CcuToken; +typedef void CcuKey; +class CcuBaseState; +class CcuBaseAutomaton; + +class CcuBaseLink { +protected: + CcuBaseState* To; +public: + CcuBaseLink (CcuBaseState*); +virtual ~CcuBaseLink (); +virtual void Fire (CcuBaseState*, CcuBaseState*, CcuToken*) = 0; +inline CcuBaseState* GetDestination () const { return To;} +}; + +class CcuBaseState { +protected: + CcuString Name; + CcuHashTableOf Links; + CcuBaseAutomaton* TheAutomaton; + +virtual void In () = 0; +virtual void Out () = 0; + +public: + CcuBaseState (const char*, CcuBaseAutomaton&); +virtual ~CcuBaseState (); + void Add (CcuBaseLink*); + void CreateLink (CcuBaseState*, CcuKey*); + void RemoveLink (CcuBaseLink*); + CcuBaseState* Next (CcuToken*, bool = false); +}; + + +#if 0 +typedef unsigned int (*HASH_F) (const CcuKey*, int); +typedef int (*HCMP_F) (const CcuKey*, const CcuKey*); +typedef CcuKey* (*HCP_F) (const CcuKey*); +typedef void (*HDEL_F) (const CcuKey*); +#endif +typedef CcuKey* (*AKEY_F) (CcuToken*); + + +class CcuBaseAutomaton { +friend class CcuBaseState; +friend class CcuAutomIter; +protected: + int Size; + HASH_F Hash; + HCP_F Copy; + HDEL_F Delete; + HCMP_F Compare; + AKEY_F GetKey; + CcuBaseState* Initial; + CcuListOf AllStates; +public: + CcuBaseAutomaton (AKEY_F = 0, HASH_F = 0, HCP_F = 0, HDEL_F = 0, HCMP_F = 0, int sz = 4); + ~CcuBaseAutomaton (); +inline CcuBaseState* GetInitial () { return Initial; } +inline void SetInitial (CcuBaseState* s) { Initial = s; } + CcuBaseState* CreateState (const char* = 0); +}; + + +class CcuState; +typedef void (CcuLinkFun) (CcuState*, CcuState*, CcuToken*); + +class CcuLink : public CcuBaseLink { +protected: + CcuLinkFun* Fun; +public: + CcuLink (CcuState*, CcuLinkFun*); + ~CcuLink (); + void Fire (CcuBaseState*, CcuBaseState*, CcuToken*); +}; + +typedef void (CcuStateFun) (CcuState*); +class CcuAutomaton; + +class CcuState : public CcuBaseState { +protected: + CcuStateFun* InFun; + CcuStateFun* OutFun; + + void In (); + void Out (); + +public: + CcuState (const char*, CcuAutomaton&, CcuStateFun* = 0, CcuStateFun* = 0); + ~CcuState (); + void CreateLink (CcuState*, CcuKey*, CcuLinkFun); +}; + + +class CcuAutomaton : public CcuBaseAutomaton { +public: +inline CcuAutomaton () : CcuBaseAutomaton () {} +inline ~CcuAutomaton () {} + CcuState* CreateState (const char* = 0, CcuStateFun = 0, CcuStateFun = 0); +}; + +class CcuAutomIter { +protected: + CcuBaseAutomaton* TheAutomaton; + CcuBaseState* CurState; +public: + CcuAutomIter (CcuBaseAutomaton&); + ~CcuAutomIter (); + bool Step (CcuToken*); +}; + + + +#endif /* CcuAutomaton_H_ */ diff --git a/utils/FIGURES/CcuDList.epsf b/utils/FIGURES/CcuDList.epsf new file mode 100644 index 0000000..caa773a --- /dev/null +++ b/utils/FIGURES/CcuDList.epsf @@ -0,0 +1,2636 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Title: CcuDList.epsf +%%Creator: Canvas 3.0 +%%For: chatty +%%CreationDate: Jeu 3 D\216c 1992 18:15 +%%BoundingBox: 55 162 473 404 +%%DocumentProcSets: CanvasDict +%%DocumentSuppliedProcSets: CanvasDict +%%Copyright ©1988-91 Deneba Systems, Inc. - All Rights Reserved Worldwide +%%DocumentFonts: Helvetica +%%+ Helvetica-Oblique +%%+ Helvetica-Bold +%%DocumentNeededFonts: Helvetica +%%+ Helvetica-Oblique +%%+ Helvetica-Bold +%%EndComments +%%BeginProcSet:CanvasDict +/CanvasDict where not{/CanvasDict 250 dict def}{pop}ifelse +CanvasDict begin +systemdict/setpacking known{/origpack currentpacking def true setpacking}if +/bdf{bind def}bind def +/xdf{exch bind def}bdf +/min{2 copy gt{exch}if pop}bdf +/edf{exch def}bdf +/max{2 copy lt{exch}if pop}bdf +/cvmtx matrix def +/tpmx matrix def +/currot 0 def +/rotmtx matrix def +/origmtx matrix def +/cvangle{360 exch sub 90 add 360 mod}bdf +/setrot{/currot edf rotmtx currentmatrix pop 2 copy translate currot rotate neg exch neg exch translate}bdf +/endrot{rotmtx setmatrix}bdf +/i systemdict/image get def/T true def/F false def/dbg F def +/ncolors 0 def/st0 ()def/st1 ()def/proc0 {}def +/penh 1 def/penv 1 def/penv2 0 def/penh2 0 def/samplesize 0 def/width 0 def/height 0 def +/setcmykcolor where not{/setcmykcolor{/b edf 3{b add 1.0 exch sub 0.0 max 1.0 min 3 1 roll}repeat systemdict begin setrgbcolor end}bdf}{pop}ifelse +/doeoclip{closepath{eoclip}stopped{currentflat dup 2 mul setflat eoclip setflat}if}bdf +/SpaceExtra 0 def/LetterSpace 0 def/StringLength 0 def/NumSpaces 0 def/JustOffset 0 def +/f0/fill load def +/s0{1 setlinewidth cvmtx currentmatrix pop penh penv scale stroke cvmtx setmatrix}bdf +/f1{_bp _fp impat}def +/s1{cvmtx currentmatrix pop 1 setlinewidth penh penv scale +{strokepath}stopped{currentflat dup 2 mul setflat strokepath setflat}if +_bp +cvmtx setmatrix _fp impat}def +/filltype 0 def +/stroketype 0 def +/f{filltype 0 eq{f0}{f1}ifelse}bdf +/s{stroketype 0 eq{s0}{s1}ifelse}bdf +/_fp{}def +/_bp{}def +/_fg 1 def +/_pg 0 def +/_bkg 1 def +/_frg 0 def +/_frgb 3 array def +/_frrgb [0 0 0] def +/_fcmyk 4 array def +/_frcmyk [0 0 0 1] def +/_prgb 3 array def +/_pcmyk 4 array def +/_bkrgb [1 1 1] def +/_bkcmyk [0 0 0 0] def +/fg{/_fg exch def /filltype 0 def/fills{_fg setgray}def}def +/frgb{_frgb astore pop /filltype 0 def/fills{_frgb aload pop setrgbcolor}def}def +/fcmyk{_fcmyk astore pop /filltype 0 def/fills{_fcmyk aload pop setcmykcolor}def}def +/pg{/_pg exch def /stroketype 0 def/pens{_pg setgray}def}def +/prgb{_prgb astore pop /stroketype 0 def/pens{_prgb aload pop setrgbcolor}def}def +/pcmyk{_pcmyk astore pop /stroketype 0 def/pens{_pcmyk aload pop setcmykcolor}def}def +/fpat{/fstr edf/filltype 1 def/fills{/patstr fstr def}bdf}bdf +/ppat{/sstr edf/stroketype 1 def/pens{/patstr sstr def}bdf}bdf +/bkg{ /_bkg exch def /_bp{gsave _bkg setgray fill grestore}def}def +/bkrgb{_bkrgb astore pop/_bp{gsave _bkrgb aload pop setrgbcolor fill grestore}def}def +/bkcmyk{_bkcmyk astore pop/_bp{gsave _bkcmyk aload pop setcmykcolor fill grestore}def}def +/frg{ /_frg exch def /_fp{_frg setgray}def}def +/frrgb{_frrgb astore pop/_fp{_frrgb aload pop setrgbcolor}def}def +/frcmyk{_frcmyk astore pop/_fp{_frcmyk aload pop setcmykcolor}def}def +/icomp{/ncolors edf +ncolors 1 gt{/proc0 edf +dup dup 0 get ncolors div cvi exch 0 3 -1 roll put +4 -1 roll ncolors div cvi 4 1 roll{proc0 dup/st0 edf +0 exch ncolors exch length +dup ncolors sub exch ncolors div cvi string/st1 edf +{dup 0 exch dup 1 exch +2 add{st0 exch get add}bind for +3 div ncolors 4 eq{exch dup 3 1 roll 3 add st0 exch get add 255 exch sub dup 0 lt{pop 0}if}if cvi +dup 255 gt{pop 255}if +exch ncolors div cvi exch +st1 3 1 roll put}bind for +st1}}if i}bdf +/ci +{/colorimage where +{pop false exch colorimage} +{icomp} +ifelse}bdf +/impat +{/cnt 0 def +/MySave save def +currot 0 ne{currot neg rotate}if +clip +flattenpath +pathbbox +3 -1 roll +8 div floor 8 mul dup/starty edf +sub abs 8 div ceiling 8 mul cvi/height edf +exch 8 div floor 8 mul dup/startx edf +sub abs 8 div ceiling 8 mul cvi/width edf +startx starty translate +width height scale +/height height 8 mul def +/st0 width string def +width height T [width 0 0 height neg 0 height] +{patstr +cnt 8 mod +get/st1 edf +0 1 +st0 length 1 sub dup 0 le{pop 1}if +{st0 exch +st1 +put}bind for/cnt cnt 1 add def +st0}bind +imagemask +MySave restore +newpath}bdf +/cm{/ncolors edf +translate +scale/height edf/colorimage where +{pop} +{ncolors mul}ifelse/width edf +/tbitstr width string def +width height 8 [width 0 0 height neg 0 height] +{currentfile tbitstr readhexstring pop}bind +ncolors +dup 3 eq {ci}{icomp}ifelse}bdf +/im{translate +scale +/height edf +/width edf +/tbitstr width 7 add 8 div cvi string def +width height 1 [width 0 0 height neg 0 height] +{currentfile tbitstr readhexstring pop}bind +i}bdf +/imk{/invFlag edf +translate +scale +/height edf +/width edf +/tbitstr width 7 add 8 div cvi string def +width height invFlag [width 0 0 height neg 0 height] +{currentfile tbitstr readhexstring pop}bind +imagemask}bdf +/BeginEPSF +{/MySave save def +/dict_count countdictstack def +/op_count count 1 sub def +userdict begin +/showpage {} def +0 setgray 0 setlinecap +1 setlinewidth 0 setlinejoin +10 setmiterlimit [] 0 setdash newpath +/languagelevel where +{pop languagelevel 1 ne{false setstrokeadjust false setoverprint}if}if +}bdf +/EndEPSF +{count op_count sub {pop}repeat +countdictstack dict_count sub {end}repeat +MySave restore}bdf +/rectpath {/cv_r edf/cv_b edf/cv_l edf/cv_t edf +cv_l cv_t moveto cv_r cv_t lineto cv_r cv_b lineto cv_l cv_b lineto cv_l cv_t lineto closepath}bdf +/setpen{/penh edf/penv edf/penv2 penv 2 div def/penh2 penh 2 div def}bdf +/dostroke{not pens 1.0 currentgray ne or {s}{newpath}ifelse}bdf +/dodashfill{not fills 1.0 currentgray ne or +{gsave f grestore gsave [] 0 setdash +stroketype/stroketype filltype def +s/stroketype edf grestore}{newpath}ifelse}bdf +/dofill{not fills 1.0 currentgray ne or {f}{newpath}ifelse}bdf +/dofillsave{not fills 1.0 currentgray ne or {gsave f grestore}if}bdf +/doline{not pens 1.0 currentgray ne or {filltype/filltype stroketype def f/filltype edf}{newpath}ifelse}bdf +/spx{SpaceExtra 0 32 4 -1 roll widthshow}bdf +/lsx{SpaceExtra 0 32 LetterSpace 0 6 -1 roll awidthshow}bdf +/Rjust{stringwidth pop JustOffset exch sub /JustOffset edf}bdf +/Cjust{stringwidth pop 2 div JustOffset exch sub /JustOffset edf}bdf +/adjfit{stringwidth pop LetterSpace StringLength 1 sub mul add SpaceExtra NumSpaces mul add dup /pw edf JustOffset exch +sub dup /wdif edf StringLength div dup abs 1.0 gt{pop 0}if LetterSpace add /LetterSpace edf}bdf +/ulb{currentpoint pop /underlinpt edf}bdf +/ule{gsave currentpoint newpath moveto currentfont dup /ft1 known{dup /ft1 get begin /FontMatrix get FontMatrix tpmx concatmatrix pop} +{begin FontMatrix tpmx copy pop}ifelse FontInfo begin UnderlinePosition UnderlineThickness end end dup tpmx +dtransform pop setlinewidth dup tpmx dtransform pop 0 exch rmoveto underlinpt currentpoint pop sub 0 rlineto stroke grestore}bdf +/fittext{ /SpaceExtra edf /LetterSpace edf /StringLength edf /NumSpaces edf /JustOffset edf not 1 currentgray ne or +{dup {ulb}if exch +dup adjfit +lsx {ule}if}{pop pop}ifelse}bdf +/cvRecFont{/encod edf FontDirectory 2 index known{cleartomark}{findfont dup length 1 add dict begin +{1 index/FID ne{def}{pop pop}ifelse}forall encod{/Encoding CVvec def}if +currentdict end definefont cleartomark}ifelse}bdf +/wrk1 ( ) def/wdict 16 dict def +/Work75 75 string def /Nmk{Work75 cvs dup}bdf /Npt{put cvn}bdf /dhOdh{Nmk 2 79 Npt}bdf /dhodh{Nmk 2 111 Npt}bdf /dhSdh{Nmk 2 83 Npt}bdf +/sfWidth{gsave 0 0 moveto 0 0 lineto 0 0 lineto 0 0 lineto closepath clip stringwidth grestore}bdf +/MakOF{dup dhodh FontDirectory 1 index known{exch pop}{exch findfont dup length 1 add dict begin +{1 index/FID ne 2 index /UniqueID ne and{def}{pop pop}ifelse}forall +/PaintType 2 def +/StrokeWidth .24 1000 mul ftSize div dup 12 lt{pop 12}if def +dup currentdict end definefont pop}ifelse}bdf +/fts{dup/ftSize edf}def +/mkFT{/tempFT 11 dict def tempFT begin +/FontMatrix [1 0 0 1 0 0] def/FontType 3 def +FontDirectory 3 index get /Encoding get/Encoding exch def +/proc2 edf/ft2 exch findfont def/ft1 exch findfont def/FontBBox [0 0 1 1] def +/BuildChar{wdict begin/chr edf/ftdt edf/chrst wrk1 dup 0 chr put def ftdt/proc2 get exec end}def +end tempFT definefont pop}bdf +/OLFt{dup dhOdh FontDirectory 1 index known{exch pop} +{dup 3 -1 roll dup MakOF {outproc} mkFT}ifelse}bdf +/mshw{moveto show}bdf +/outproc{ftdt/ft1 get setfont gsave chrst sfWidth grestore setcharwidth dblsh}bdf +/dblsh{currentgray 1 setgray chrst 0 0 mshw setgray ftdt/ft2 get setfont chrst 0 0 mshw}bdf +/ShadChar{ftdt/ft1 get setfont gsave chrst sfWidth 1 index 0 ne{exch .05 add exch}if grestore setcharwidth +chrst .06 0 mshw 0 .05 translate dblsh}bdf +/ShFt{dup dhSdh FontDirectory 1 index known{exch pop} +{dup 3 -1 roll dup MakOF {ShadChar} mkFT}ifelse}bdf +/LswUnits{72 75 div dup scale}bdf +/erasefill{_bp}def +/CVvec 256 array def +/NUL/SOH/STX/ETX/EOT/ENQ/ACK/BEL/BS/HT/LF/VT/FF/CR/SO/SI/DLE/DC1/DC2/DC3/DC4/NAK/SYN/ETB/CAN/EM/SUB/ESC/FS/GS/RS/US +CVvec 0 32 getinterval astore pop +CVvec 32/Times-Roman findfont/Encoding get +32 96 getinterval putinterval CVvec dup 39/quotesingle put 96/grave put +/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis/Udieresis/aacute +/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute/egrave +/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde/oacute +/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex/udieresis +/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls +/registered/copyright/trademark/acute/dieresis/notequal/AE/Oslash +/infinity/plusminus/lessequal/greaterequal/yen/mu/partialdiff/summation +/product/pi/integral/ordfeminine/ordmasculine/Omega/ae/oslash +/questiondown/exclamdown/logicalnot/radical/florin/approxequal/Delta/guillemotleft +/guillemotright/ellipsis/blank/Agrave/Atilde/Otilde/OE/oe +/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide/lozenge +/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright/fi/fl +/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand/Acircumflex/Ecircumflex/Aacute +/Edieresis/Egrave/Iacute/Icircumflex/Idieresis/Igrave/Oacute/Ocircumflex +/apple/Ograve/Uacute/Ucircumflex/Ugrave/dotlessi/circumflex/tilde +/macron/breve/dotaccent/ring/cedilla/hungarumlaut/ogonek/caron +CVvec 128 128 getinterval astore pop +end + +%%BeginSetup +CanvasDict begin +0 setlinecap +0 setlinejoin +4 setmiterlimit +/currot 0 def +origmtx currentmatrix pop +[] 0 setdash +1 1 setpen +1 fg +0 pg +0 frg +1 bkg +newpath +/dbg F def +%%EndSetup +% ---- Object #1:23 Obj Type: 4 +0 0 setpen +0.7500 fg +285.2500 113.7500 232.7500 149.2500 rectpath +F dofill +% ---- Object #2:9 Obj Type: 4 +0 fg +241.2500 67.7500 219.7500 137.2500 rectpath +F dofill +% ---- Object #3:24 Obj Type: 99 +% ---- Object #4:25 Obj Type: 4 +1 0.7500 setpen +0 setlinecap +1 fg +270 112 253 146.5005 rectpath +F dofillsave +F dostroke +% ---- Object #5:71 Obj Type: 4 +0 setlinecap +253 112 236 146.5005 rectpath +F dofillsave +F dostroke +% ---- Object #6:72 Obj Type: 4 +0 setlinecap +287 112 270 146.5005 rectpath +F dofillsave +F dostroke +% ---- Object #7:15 Obj Type: 99 +% ---- Object #8:16 Obj Type: 4 +0 0 setpen +0.7500 fg +285.2500 301.7500 232.7500 337.2500 rectpath +F dofill +% ---- Object #9:17 Obj Type: 99 +% ---- Object #10:78 Obj Type: 4 +1 0.7500 setpen +0 setlinecap +1 fg +270 300 253 334.5005 rectpath +F dofillsave +F dostroke +% ---- Object #11:79 Obj Type: 4 +0 setlinecap +253 300 236 334.5005 rectpath +F dofillsave +F dostroke +% ---- Object #12:80 Obj Type: 4 +0 setlinecap +287 300 270 334.5005 rectpath +F dofillsave +F dostroke +% ---- Object #13:11 Obj Type: 99 +% ---- Object #14:12 Obj Type: 4 +0 0 setpen +0.7500 fg +285.2500 395.7500 232.7500 431.2500 rectpath +F dofill +% ---- Object #15:13 Obj Type: 99 +% ---- Object #16:14 Obj Type: 4 +1 0.7500 setpen +0 setlinecap +1 fg +270 394 253 428.5005 rectpath +F dofillsave +F dostroke +% ---- Object #17:81 Obj Type: 4 +0 setlinecap +253 394 236 428.5005 rectpath +F dofillsave +F dostroke +% ---- Object #18:82 Obj Type: 4 +0 setlinecap +287 394 270 428.5005 rectpath +F dofillsave +F dostroke +% ---- Object #19:6 Obj Type: 4 +0 0 setpen +0.7500 fg +397.2500 120.7500 365.7500 168.2500 rectpath +F dofill +% ---- Object #20:7 Obj Type: 4 +0 fg +372.2500 82.7500 352.7500 137.2500 rectpath +F dofill +% ---- Object #21:20 Obj Type: 99 +% ---- Object #22:19 Obj Type: 4 +0.7500 fg +285.2500 212.7500 232.7500 248.2500 rectpath +F dofill +% ---- Object #23:5 Obj Type: 99 +% ---- Object #24:21 Obj Type: 4 +1 0.7500 setpen +0 setlinecap +1 fg +270 211 253 245.5005 rectpath +F dofillsave +F dostroke +% ---- Object #25:22 Obj Type: 4 +0 setlinecap +253 211 236 245.5005 rectpath +F dofillsave +F dostroke +% ---- Object #26:18 Obj Type: 4 +0 setlinecap +287 211 270 245.5005 rectpath +F dofillsave +F dostroke +% ---- Object #27:26 Obj Type: 4 +0.5000 0.5000 setpen +0 setlinecap +399 119 383 166 rectpath +F dofillsave +F dostroke +% ---- Object #28:27 Obj Type: 4 +0 setlinecap +384 119 368 166 rectpath +F dofillsave +F dostroke +% ---- Object #29:8 Obj Type: 99 +% ---- Object #30:28 Obj Type: 3 +2 setlinecap +gsave +newpath +205.3619 275.9478 moveto +205.3269 276.0465 lineto +205.2622 276.2456 lineto +205.2045 276.4469 lineto +205.1538 276.6501 lineto +205.1102 276.8551 lineto +205.0739 277.0613 lineto +205.0447 277.2687 lineto +205.0228 277.4769 lineto +205.0082 277.6858 lineto +205.0009 277.8950 lineto +205.0009 278.1047 lineto +205.0082 278.3140 lineto +205.0228 278.5228 lineto +205.0447 278.7310 lineto +205.0738 278.9384 lineto +205.1102 279.1446 lineto +205.1538 279.3496 lineto +205.2044 279.5528 lineto +205.2621 279.7541 lineto +205.3268 279.9532 lineto +205.3618 280.0519 lineto +211 278 lineto +205.3619 275.9478 lineto +closepath +F doline +grestore +gsave +newpath +133 278 moveto +205.2500 278 lineto +F dostroke +grestore +% ---- Object #31:48 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +0 fg +132.6000 278.0993 moveto +132.6000 276.5082 131.3359 275.1986 129.8000 275.1986 curveto +128.2641 275.1986 127 276.5082 127 278.0993 curveto +127 279.6904 128.2641 281 129.8000 281 curveto +131.3359 281 132.6000 279.6904 132.6000 278.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #32:29 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +152 281 moveto +(Next) +F F 20.5566 0 4 0 0 fittext +restore +% ---- Object #33:30 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +387.9516 275.9478 moveto +387.9167 276.0465 lineto +387.8520 276.2456 lineto +387.7942 276.4469 lineto +387.7436 276.6501 lineto +387.7000 276.8551 lineto +387.6636 277.0613 lineto +387.6345 277.2687 lineto +387.6126 277.4769 lineto +387.5980 277.6858 lineto +387.5906 277.8950 lineto +387.5906 278.1047 lineto +387.5980 278.3140 lineto +387.6126 278.5228 lineto +387.6344 278.7310 lineto +387.6636 278.9384 lineto +387.6999 279.1446 lineto +387.7435 279.3496 lineto +387.7942 279.5528 lineto +387.8518 279.7541 lineto +387.9165 279.9532 lineto +387.9515 280.0519 lineto +393.5897 278 lineto +387.9516 275.9478 lineto +closepath +F doline +grestore +gsave +newpath +387.8397 278 moveto +317.2821 278 lineto +F dostroke +grestore +% ---- Object #34:39 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +320.0948 278.0993 moveto +320.0948 276.5082 318.8308 275.1986 317.2949 275.1986 curveto +315.7590 275.1986 314.4949 276.5082 314.4949 278.0993 curveto +314.4949 279.6904 315.7590 281 317.2949 281 curveto +318.8308 281 320.0948 279.6904 320.0948 278.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #35:31 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +293.9784 275.9478 moveto +293.9435 276.0465 lineto +293.8788 276.2456 lineto +293.8211 276.4469 lineto +293.7704 276.6501 lineto +293.7268 276.8551 lineto +293.6905 277.0613 lineto +293.6613 277.2687 lineto +293.6394 277.4769 lineto +293.6248 277.6858 lineto +293.6175 277.8950 lineto +293.6175 278.1047 lineto +293.6248 278.3140 lineto +293.6394 278.5228 lineto +293.6613 278.7310 lineto +293.6904 278.9384 lineto +293.7268 279.1446 lineto +293.7703 279.3496 lineto +293.8210 279.5528 lineto +293.8787 279.7541 lineto +293.9434 279.9532 lineto +293.9783 280.0519 lineto +299.6166 278 lineto +293.9784 275.9478 lineto +closepath +F doline +grestore +gsave +newpath +293.8666 278 moveto +230.6010 278 lineto +F dostroke +grestore +% ---- Object #36:43 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +231.5948 278.0993 moveto +231.5948 276.5082 230.3308 275.1986 228.7949 275.1986 curveto +227.2590 275.1986 225.9949 276.5082 225.9949 278.0993 curveto +225.9949 279.6904 227.2590 281 228.7949 281 curveto +230.3308 281 231.5948 279.6904 231.5948 278.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #37:77 Obj Type: 99 +% ---- Object #38:32 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +159.9678 199.2676 moveto +160.0258 199.3552 lineto +160.1459 199.5267 lineto +160.2719 199.6939 lineto +160.4036 199.8566 lineto +160.5410 200.0146 lineto +160.6838 200.1678 lineto +160.8320 200.3160 lineto +160.9852 200.4588 lineto +161.1432 200.5962 lineto +161.3059 200.7279 lineto +161.4731 200.8540 lineto +161.6446 200.9741 lineto +161.8204 201.0883 lineto +161.9999 201.1961 lineto +162.1830 201.2976 lineto +162.3695 201.3927 lineto +162.5594 201.4812 lineto +162.7524 201.5631 lineto +162.9478 201.6381 lineto +163.1458 201.7063 lineto +163.2456 201.7378 lineto +165 196 lineto +159.9678 199.2676 lineto +closepath +F doline +grestore +gsave +newpath +129 244 moveto +161.5500 200.6000 lineto +F dostroke +grestore +% ---- Object #39:49 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +132.6000 243.0993 moveto +132.6000 241.5082 131.3359 240.1986 129.8000 240.1986 curveto +128.2641 240.1986 127 241.5082 127 243.0993 curveto +127 244.6904 128.2641 246 129.8000 246 curveto +131.3359 246 132.6000 244.6904 132.6000 243.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #40:33 Obj Type: 99 +% ---- Object #41:34 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +440.9678 199.2676 moveto +441.0258 199.3552 lineto +441.1459 199.5267 lineto +441.2719 199.6939 lineto +441.4036 199.8566 lineto +441.5410 200.0146 lineto +441.6838 200.1678 lineto +441.8320 200.3160 lineto +441.9852 200.4588 lineto +442.1432 200.5962 lineto +442.3059 200.7279 lineto +442.4731 200.8540 lineto +442.6446 200.9741 lineto +442.8204 201.0883 lineto +442.9999 201.1961 lineto +443.1830 201.2976 lineto +443.3695 201.3927 lineto +443.5594 201.4812 lineto +443.7524 201.5631 lineto +443.9478 201.6381 lineto +444.1458 201.7063 lineto +444.2456 201.7378 lineto +446 196 lineto +440.9678 199.2676 lineto +closepath +F doline +grestore +gsave +newpath +410 244 moveto +442.5500 200.6000 lineto +F dostroke +grestore +% ---- Object #42:35 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +413.6000 243.0993 moveto +413.6000 241.5082 412.3359 240.1986 410.8000 240.1986 curveto +409.2641 240.1986 408 241.5082 408 243.0993 curveto +408 244.6904 409.2641 246 410.8000 246 curveto +412.3359 246 413.6000 244.6904 413.6000 243.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #43:37 Obj Type: 99 +% ---- Object #44:36 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +347.9678 198.2676 moveto +348.0258 198.3552 lineto +348.1459 198.5267 lineto +348.2719 198.6939 lineto +348.4036 198.8566 lineto +348.5410 199.0146 lineto +348.6838 199.1678 lineto +348.8320 199.3160 lineto +348.9852 199.4588 lineto +349.1432 199.5962 lineto +349.3059 199.7279 lineto +349.4731 199.8540 lineto +349.6446 199.9741 lineto +349.8204 200.0883 lineto +349.9999 200.1961 lineto +350.1830 200.2976 lineto +350.3695 200.3927 lineto +350.5594 200.4812 lineto +350.7524 200.5631 lineto +350.9478 200.6381 lineto +351.1458 200.7063 lineto +351.2456 200.7378 lineto +353 195 lineto +347.9678 198.2676 lineto +closepath +F doline +grestore +gsave +newpath +317 243 moveto +349.5500 199.6000 lineto +F dostroke +grestore +% ---- Object #45:38 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +319.6000 243.0993 moveto +319.6000 241.5082 318.3359 240.1986 316.8000 240.1986 curveto +315.2641 240.1986 314 241.5082 314 243.0993 curveto +314 244.6904 315.2641 246 316.8000 246 curveto +318.3359 246 319.6000 244.6904 319.6000 243.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #46:41 Obj Type: 99 +% ---- Object #47:40 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +258.9678 199.2676 moveto +259.0258 199.3552 lineto +259.1459 199.5267 lineto +259.2719 199.6939 lineto +259.4036 199.8566 lineto +259.5410 200.0146 lineto +259.6838 200.1678 lineto +259.8320 200.3160 lineto +259.9852 200.4588 lineto +260.1432 200.5962 lineto +260.3059 200.7279 lineto +260.4731 200.8540 lineto +260.6446 200.9741 lineto +260.8204 201.0883 lineto +260.9999 201.1961 lineto +261.1830 201.2976 lineto +261.3695 201.3927 lineto +261.5594 201.4812 lineto +261.7524 201.5631 lineto +261.9478 201.6381 lineto +262.1458 201.7063 lineto +262.2456 201.7378 lineto +264 196 lineto +258.9678 199.2676 lineto +closepath +F doline +grestore +gsave +newpath +228 244 moveto +260.5500 200.6000 lineto +F dostroke +grestore +% ---- Object #48:42 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +231.6000 243.0993 moveto +231.6000 241.5082 230.3359 240.1986 228.8000 240.1986 curveto +227.2641 240.1986 226 241.5082 226 243.0993 curveto +226 244.6904 227.2641 246 228.8000 246 curveto +230.3359 246 231.6000 244.6904 231.6000 243.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #49:44 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +155 229 moveto +(Info) +F F 16.6748 0 4 0 0 fittext +restore +% ---- Object #50:45 Obj Type: 2 +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +129 373 moveto +(Status) +F F 28.3447 0 6 0 0 fittext +restore +% ---- Object #51:46 Obj Type: 10 +0.5000 0.5000 setpen +0 setlinecap +143 392 moveto +178.6094 391.3281 207.4844 389.6875 231 387 curveto +254.5156 384.3125 268.7891 379.2266 274.5000 371.5000 curveto +280.2109 363.7734 284.9687 354.7500 289 344 curveto +293.0312 333.2500 301.5625 322.0937 315 310 curveto +328.4375 297.9062 354.3594 289.0469 394 283 curveto +F dostroke +gsave +newpath +388.0912 281.9580 moveto +388.0739 282.0613 lineto +388.0447 282.2687 lineto +388.0228 282.4769 lineto +388.0082 282.6858 lineto +388.0009 282.8950 lineto +388.0009 283.1047 lineto +388.0082 283.3140 lineto +388.0228 283.5228 lineto +388.0447 283.7310 lineto +388.0738 283.9384 lineto +388.1102 284.1446 lineto +388.1538 284.3496 lineto +388.2044 284.5528 lineto +388.2621 284.7541 lineto +388.3268 284.9532 lineto +388.3984 285.1500 lineto +388.4770 285.3444 lineto +388.5621 285.5357 lineto +388.6539 285.7239 lineto +388.7522 285.9087 lineto +388.8038 285.9999 lineto +394 283 lineto +388.0912 281.9580 lineto +closepath +F doline +grestore +% ---- Object #52:47 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +173 394 moveto +(Last) +F F 18.8965 0 4 0 0 fittext +restore +% ---- Object #53:50 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +146.6000 391.0993 moveto +146.6000 389.5082 145.3359 388.1986 143.8000 388.1986 curveto +142.2641 388.1986 141 389.5082 141 391.0993 curveto +141 392.6904 142.2641 394 143.8000 394 curveto +145.3359 394 146.6000 392.6904 146.6000 391.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #54:51 Obj Type: 6 +0 setlinecap +413.6000 278.0993 moveto +413.6000 276.5082 412.3359 275.1986 410.8000 275.1986 curveto +409.2641 275.1986 408 276.5082 408 278.0993 curveto +408 279.6904 409.2641 281 410.8000 281 curveto +412.3359 281 413.6000 279.6904 413.6000 278.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #55:73 Obj Type: 99 +% ---- Object #56:52 Obj Type: 52 +0.5000 0.5000 setpen +0 setlinecap +1 fg +%%PicComment: 100 +%%PicComment: 140 +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +131 191 moveto +172.5000 190.7500 lineto +172.7500 168.5000 lineto +131 168.2500 lineto +131.2500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +145.2500 185.7500 moveto +186.7500 185.5000 lineto +187 163.2500 lineto +145.2500 163 lineto +145.5000 185.7500 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +131 191 moveto +145.2500 185.7500 lineto +145.5000 163.2500 lineto +131 168.5000 lineto +131.2500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +172.5000 191 moveto +186.7500 185.7500 lineto +187 163.2500 lineto +172.5000 168.5000 lineto +172.7500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +131 191 moveto +172.5000 190.7500 lineto +186.7500 185.7500 lineto +145.2500 185.5000 lineto +131 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +131 168.5000 moveto +172.5000 168.2500 lineto +186.7500 163.2500 lineto +145.2500 163 lineto +131 168.5000 lineto +closepath +F dofill +%%QD line +%%SetPenFromPort +%%mode: 8 +131.2500 190.7500 moveto +172.7500 190.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +172.7500 190.5000 moveto +187 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +145.5000 163 moveto +131.2500 168.2500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +131.2500 168.2500 moveto +131.2500 190.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +145.5000 185.5000 moveto +187 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +187 185.2500 moveto +187 163 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +187.2500 163 moveto +145.5000 163 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +145.5000 162.7500 moveto +145.5000 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +145.5000 185.5000 moveto +131.2500 190.7500 lineto +F dostroke +%%PicComment: 141 +%%PicComment: 100 +% ---- Object #57:67 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica-Oblique /Helvetica-Oblique T cvRecFont +10 fts /|___Helvetica-Oblique findfont exch scalefont setfont +0 setgray +154 171 moveto +(data) +F F 19.4556 0 4 0 0 fittext +restore +% ---- Object #58:76 Obj Type: 99 +% ---- Object #59:53 Obj Type: 52 +0.5000 0.5000 setpen +0 setlinecap +%%PicComment: 100 +%%PicComment: 140 +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +416 191 moveto +457.5000 190.7500 lineto +457.7500 168.5000 lineto +416 168.2500 lineto +416.2500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +430.2500 185.7500 moveto +471.7500 185.5000 lineto +472 163.2500 lineto +430.2500 163 lineto +430.5000 185.7500 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +416 191 moveto +430.2500 185.7500 lineto +430.5000 163.2500 lineto +416 168.5000 lineto +416.2500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +457.5000 191 moveto +471.7500 185.7500 lineto +472 163.2500 lineto +457.5000 168.5000 lineto +457.7500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +416 191 moveto +457.5000 190.7500 lineto +471.7500 185.7500 lineto +430.2500 185.5000 lineto +416 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +416 168.5000 moveto +457.5000 168.2500 lineto +471.7500 163.2500 lineto +430.2500 163 lineto +416 168.5000 lineto +closepath +F dofill +%%QD line +%%SetPenFromPort +%%mode: 8 +416.2500 190.7500 moveto +457.7500 190.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +457.7500 190.5000 moveto +472 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +430.5000 163 moveto +416.2500 168.2500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +416.2500 168.2500 moveto +416.2500 190.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +430.5000 185.5000 moveto +472 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +472 185.2500 moveto +472 163 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +472.2500 163 moveto +430.5000 163 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +430.5000 162.7500 moveto +430.5000 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +430.5000 185.5000 moveto +416.2500 190.7500 lineto +F dostroke +%%PicComment: 141 +%%PicComment: 100 +% ---- Object #60:70 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica-Oblique /Helvetica-Oblique T cvRecFont +10 fts /|___Helvetica-Oblique findfont exch scalefont setfont +0 setgray +439 171 moveto +(data) +F F 19.4556 0 4 0 0 fittext +restore +% ---- Object #61:75 Obj Type: 99 +% ---- Object #62:54 Obj Type: 52 +0.5000 0.5000 setpen +0 setlinecap +%%PicComment: 100 +%%PicComment: 140 +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +323 191 moveto +364.5000 190.7500 lineto +364.7500 168.5000 lineto +323 168.2500 lineto +323.2500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +337.2500 185.7500 moveto +378.7500 185.5000 lineto +379 163.2500 lineto +337.2500 163 lineto +337.5000 185.7500 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +323 191 moveto +337.2500 185.7500 lineto +337.5000 163.2500 lineto +323 168.5000 lineto +323.2500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +364.5000 191 moveto +378.7500 185.7500 lineto +379 163.2500 lineto +364.5000 168.5000 lineto +364.7500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +323 191 moveto +364.5000 190.7500 lineto +378.7500 185.7500 lineto +337.2500 185.5000 lineto +323 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +323 168.5000 moveto +364.5000 168.2500 lineto +378.7500 163.2500 lineto +337.2500 163 lineto +323 168.5000 lineto +closepath +F dofill +%%QD line +%%SetPenFromPort +%%mode: 8 +323.2500 190.7500 moveto +364.7500 190.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +364.7500 190.5000 moveto +379 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +337.5000 163 moveto +323.2500 168.2500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +323.2500 168.2500 moveto +323.2500 190.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +337.5000 185.5000 moveto +379 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +379 185.2500 moveto +379 163 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +379.2500 163 moveto +337.5000 163 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +337.5000 162.7500 moveto +337.5000 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +337.5000 185.5000 moveto +323.2500 190.7500 lineto +F dostroke +%%PicComment: 141 +%%PicComment: 100 +% ---- Object #63:69 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica-Oblique /Helvetica-Oblique T cvRecFont +10 fts /|___Helvetica-Oblique findfont exch scalefont setfont +0 setgray +346 172 moveto +(data) +F F 19.4556 0 4 0 0 fittext +restore +% ---- Object #64:74 Obj Type: 99 +% ---- Object #65:55 Obj Type: 52 +0.5000 0.5000 setpen +0 setlinecap +%%PicComment: 100 +%%PicComment: 140 +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +232 191 moveto +273.5000 190.7500 lineto +273.7500 168.5000 lineto +232 168.2500 lineto +232.2500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +246.2500 185.7500 moveto +287.7500 185.5000 lineto +288 163.2500 lineto +246.2500 163 lineto +246.5000 185.7500 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +232 191 moveto +246.2500 185.7500 lineto +246.5000 163.2500 lineto +232 168.5000 lineto +232.2500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +273.5000 191 moveto +287.7500 185.7500 lineto +288 163.2500 lineto +273.5000 168.5000 lineto +273.7500 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +232 191 moveto +273.5000 190.7500 lineto +287.7500 185.7500 lineto +246.2500 185.5000 lineto +232 191 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +232 168.5000 moveto +273.5000 168.2500 lineto +287.7500 163.2500 lineto +246.2500 163 lineto +232 168.5000 lineto +closepath +F dofill +%%QD line +%%SetPenFromPort +%%mode: 8 +232.2500 190.7500 moveto +273.7500 190.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +273.7500 190.5000 moveto +288 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +246.5000 163 moveto +232.2500 168.2500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +232.2500 168.2500 moveto +232.2500 190.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +246.5000 185.5000 moveto +288 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +288 185.2500 moveto +288 163 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +288.2500 163 moveto +246.5000 163 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +246.5000 162.7500 moveto +246.5000 185.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +246.5000 185.5000 moveto +232.2500 190.7500 lineto +F dostroke +%%PicComment: 141 +%%PicComment: 100 +% ---- Object #66:68 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica-Oblique /Helvetica-Oblique T cvRecFont +10 fts /|___Helvetica-Oblique findfont exch scalefont setfont +0 setgray +254 171 moveto +(data) +F F 19.4556 0 4 0 0 fittext +restore +% ---- Object #67:56 Obj Type: 99 +% ---- Object #68:57 Obj Type: 99 +% ---- Object #69:58 Obj Type: 7 +0.5000 0.5000 setpen +0 setlinecap +gsave +newpath +418.4564 328.3539 moveto +418.4879 328.2541 lineto +418.5456 328.0528 lineto +418.5962 327.8496 lineto +418.6398 327.6446 lineto +418.6762 327.4384 lineto +418.7053 327.2310 lineto +418.7272 327.0228 lineto +418.7418 326.8140 lineto +418.7491 326.6047 lineto +418.7491 326.3953 lineto +418.7418 326.1860 lineto +418.7272 325.9772 lineto +418.7053 325.7689 lineto +418.6762 325.5616 lineto +418.6398 325.3554 lineto +418.5962 325.1504 lineto +418.5456 324.9472 lineto +418.4879 324.7459 lineto +418.4232 324.5468 lineto +418.3515 324.3500 lineto +418.3132 324.2526 lineto +412.7500 326.5000 lineto +418.4564 328.3539 lineto +closepath +F doline +grestore +417.2599 326.3173 moveto +417.8996 326.2615 lineto +419.1754 326.1277 lineto +420.4445 325.9644 lineto +421.7025 325.7720 lineto +422.9496 325.5507 lineto +424.1843 325.3007 lineto +425.4051 325.0224 lineto +426.6104 324.7160 lineto +427.8005 324.3815 lineto +428.9711 324.0200 lineto +430.1215 323.6318 lineto +431.2507 323.2174 lineto +432.3574 322.7770 lineto +433.4416 322.3108 lineto +434.4992 321.8204 lineto +435.5303 321.3058 lineto +436.5337 320.7678 lineto +437.5081 320.2069 lineto +438.4523 319.6238 lineto +439.3668 319.0183 lineto +440.2473 318.3930 lineto +441.0943 317.7478 lineto +441.9068 317.0834 lineto +442.6838 316.4006 lineto +443.4243 315.7003 lineto +444.1284 314.9823 lineto +444.7934 314.2495 lineto +445.4196 313.5014 lineto +446.0057 312.7397 lineto +446.5513 311.9648 lineto +447.0564 311.1768 lineto +447.5191 310.3787 lineto +447.9394 309.5703 lineto +448.3168 308.7527 lineto +448.6510 307.9269 lineto +448.9414 307.0939 lineto +449.1882 306.2532 lineto +449.3901 305.4088 lineto +449.5474 304.5602 lineto +449.6599 303.7086 lineto +449.7275 302.8548 lineto +449.7500 302 lineto +F dostroke +% ---- Object #70:59 Obj Type: 7 +0 setlinecap +gsave +newpath +450.7920 296.0912 moveto +450.6887 296.0739 lineto +450.4813 296.0447 lineto +450.2731 296.0228 lineto +450.0642 296.0082 lineto +449.8550 296.0009 lineto +449.6453 296.0009 lineto +449.4360 296.0082 lineto +449.2272 296.0228 lineto +449.0189 296.0447 lineto +448.8116 296.0738 lineto +448.6054 296.1102 lineto +448.4004 296.1538 lineto +448.1972 296.2044 lineto +447.9959 296.2621 lineto +447.7968 296.3268 lineto +447.6000 296.3984 lineto +447.4056 296.4770 lineto +447.2143 296.5621 lineto +447.0261 296.6539 lineto +446.8413 296.7522 lineto +446.7501 296.8038 lineto +449.7500 302 lineto +450.7920 296.0912 lineto +closepath +F doline +grestore +448.9414 296.9061 moveto +448.8018 296.4889 lineto +448.4894 295.6594 lineto +448.1336 294.8376 lineto +447.7347 294.0245 lineto +447.2929 293.2207 lineto +446.8086 292.4270 lineto +446.2835 291.6460 lineto +445.7175 290.8776 lineto +445.1114 290.1227 lineto +444.4659 289.3823 lineto +443.7817 288.6573 lineto +443.0588 287.9476 lineto +442.2996 287.2556 lineto +441.5047 286.5819 lineto +440.6748 285.9270 lineto +439.8109 285.2917 lineto +438.9130 284.6759 lineto +437.9842 284.0820 lineto +437.0248 283.5100 lineto +436.0357 282.9604 lineto +435.0184 282.4340 lineto +433.9739 281.9315 lineto +432.9016 281.4526 lineto +431.8067 280.9995 lineto +430.6886 280.5720 lineto +429.5486 280.1707 lineto +428.3882 279.7958 lineto +427.2087 279.4481 lineto +426.0100 279.1274 lineto +424.7968 278.8350 lineto +423.5689 278.5708 lineto +422.3272 278.3350 lineto +421.0745 278.1281 lineto +419.8099 277.9501 lineto +418.5384 277.8017 lineto +417.2599 277.6827 lineto +415.9758 277.5933 lineto +414.6878 277.5336 lineto +413.3975 277.5037 lineto +412.7500 277.5000 lineto +F dostroke +% ---- Object #71:60 Obj Type: 99 +% ---- Object #72:61 Obj Type: 7 +0 setlinecap +gsave +newpath +79.0022 307.6188 moveto +79.1051 307.6398 lineto +79.3113 307.6761 lineto +79.5187 307.7053 lineto +79.7269 307.7272 lineto +79.9358 307.7418 lineto +80.1450 307.7491 lineto +80.3550 307.7491 lineto +80.5642 307.7418 lineto +80.7731 307.7272 lineto +80.9813 307.7053 lineto +81.1887 307.6761 lineto +81.3948 307.6398 lineto +81.5999 307.5962 lineto +81.8031 307.5455 lineto +82.0044 307.4878 lineto +82.2035 307.4231 lineto +82.4003 307.3515 lineto +82.5946 307.2729 lineto +82.7859 307.1877 lineto +82.9741 307.0960 lineto +83.0670 307.0476 lineto +80.2500 301.7500 lineto +79.0022 307.6188 lineto +closepath +F doline +grestore +80.9329 306.8959 moveto +81.0509 307.3173 lineto +81.3146 308.1553 lineto +81.6152 308.9855 lineto +81.9521 309.8069 lineto +82.3252 310.6188 lineto +82.7342 311.4207 lineto +83.1778 312.2097 lineto +83.6558 312.9859 lineto +84.1677 313.7485 lineto +84.7129 314.4964 lineto +85.2908 315.2289 lineto +85.9013 315.9458 lineto +86.5426 316.6448 lineto +87.2139 317.3254 lineto +87.9148 317.9870 lineto +88.6445 318.6288 lineto +89.4028 319.2509 lineto +90.1873 319.8508 lineto +90.9977 320.4287 lineto +91.8330 320.9839 lineto +92.6923 321.5156 lineto +93.5744 322.0233 lineto +94.4800 322.5071 lineto +95.4048 322.9648 lineto +96.3492 323.3966 lineto +97.3120 323.8021 lineto +98.2921 324.1807 lineto +99.2882 324.5320 lineto +100.3006 324.8560 lineto +101.3253 325.1514 lineto +102.3624 325.4183 lineto +103.4111 325.6565 lineto +104.4692 325.8655 lineto +105.5372 326.0453 lineto +106.6111 326.1952 lineto +107.6910 326.3155 lineto +108.7755 326.4058 lineto +109.8633 326.4660 lineto +110.9531 326.4962 lineto +111.5000 326.5000 lineto +F dostroke +% ---- Object #73:62 Obj Type: 7 +0 setlinecap +gsave +newpath +105.7045 275.6969 moveto +105.6783 275.7982 lineto +105.6312 276.0022 lineto +105.5912 276.2080 lineto +105.5584 276.4149 lineto +105.5329 276.6227 lineto +105.5146 276.8313 lineto +105.5037 277.0404 lineto +105.5000 277.2500 lineto +105.5036 277.4593 lineto +105.5146 277.6684 lineto +105.5328 277.8770 lineto +105.5584 278.0848 lineto +105.5911 278.2916 lineto +105.6311 278.4975 lineto +105.6782 278.7015 lineto +105.7324 278.9037 lineto +105.7936 279.1039 lineto +105.8618 279.3019 lineto +105.9368 279.4974 lineto +106.0187 279.6904 lineto +106.0621 279.7857 lineto +111.5000 277.2500 lineto +105.7045 275.6969 lineto +closepath +F doline +grestore +106.6126 277.5515 moveto +106.0750 277.6220 lineto +105.0027 277.7854 lineto +103.9402 277.9777 lineto +102.8868 278.1990 lineto +101.8440 278.4489 lineto +100.8129 278.7272 lineto +99.7949 279.0336 lineto +98.7897 279.3680 lineto +97.8014 279.7293 lineto +96.8298 280.1174 lineto +95.8756 280.5321 lineto +94.9409 280.9724 lineto +94.0252 281.4386 lineto +93.1319 281.9290 lineto +92.2610 282.4435 lineto +91.4135 282.9815 lineto +90.5905 283.5424 lineto +89.7930 284.1254 lineto +89.0206 284.7309 lineto +88.2769 285.3561 lineto +87.5615 286.0014 lineto +86.8752 286.6658 lineto +86.2189 287.3485 lineto +85.5934 288.0488 lineto +84.9987 288.7667 lineto +84.4370 289.4995 lineto +83.9084 290.2472 lineto +83.4132 291.0090 lineto +82.9522 291.7841 lineto +82.5255 292.5721 lineto +82.1347 293.3703 lineto +81.7797 294.1786 lineto +81.4608 294.9962 lineto +81.1785 295.8220 lineto +80.9332 296.6550 lineto +80.7248 297.4953 lineto +80.5541 298.3401 lineto +80.4212 299.1887 lineto +80.3262 300.0403 lineto +80.2691 300.8941 lineto +80.2500 301.7500 lineto +F dostroke +% ---- Object #74:63 Obj Type: 3 +2 setlinecap +gsave +newpath +117.6382 328.9635 moveto +117.6732 328.8647 lineto +117.7379 328.6656 lineto +117.7956 328.4643 lineto +117.8462 328.2612 lineto +117.8898 328.0561 lineto +117.9262 327.8499 lineto +117.9553 327.6426 lineto +117.9772 327.4344 lineto +117.9918 327.2255 lineto +117.9991 327.0163 lineto +117.9991 326.8068 lineto +117.9918 326.5976 lineto +117.9772 326.3887 lineto +117.9553 326.1805 lineto +117.9262 325.9732 lineto +117.8898 325.7670 lineto +117.8462 325.5619 lineto +117.7956 325.3587 lineto +117.7379 325.1575 lineto +117.6732 324.9584 lineto +117.6382 324.8596 lineto +112 326.9115 lineto +117.6382 328.9635 lineto +closepath +F doline +grestore +gsave +newpath +117.7500 326.9170 moveto +205 327 lineto +F dostroke +grestore +% ---- Object #75:64 Obj Type: 3 +2 setlinecap +gsave +newpath +375.6382 328.9635 moveto +375.6732 328.8647 lineto +375.7379 328.6656 lineto +375.7956 328.4643 lineto +375.8462 328.2612 lineto +375.8898 328.0561 lineto +375.9262 327.8499 lineto +375.9553 327.6426 lineto +375.9772 327.4344 lineto +375.9918 327.2255 lineto +375.9991 327.0163 lineto +375.9991 326.8068 lineto +375.9918 326.5976 lineto +375.9772 326.3887 lineto +375.9553 326.1805 lineto +375.9262 325.9732 lineto +375.8898 325.7670 lineto +375.8462 325.5619 lineto +375.7956 325.3587 lineto +375.7379 325.1575 lineto +375.6732 324.9584 lineto +375.6382 324.8596 lineto +370 326.9115 lineto +375.6382 328.9635 lineto +closepath +F doline +grestore +gsave +newpath +375.7500 326.9226 moveto +416 327 lineto +F dostroke +grestore +% ---- Object #76:65 Obj Type: 3 +2 setlinecap +gsave +newpath +297.6382 328.9635 moveto +297.6732 328.8647 lineto +297.7379 328.6656 lineto +297.7956 328.4643 lineto +297.8462 328.2612 lineto +297.8898 328.0561 lineto +297.9262 327.8499 lineto +297.9553 327.6426 lineto +297.9772 327.4344 lineto +297.9918 327.2255 lineto +297.9991 327.0163 lineto +297.9991 326.8068 lineto +297.9918 326.5976 lineto +297.9772 326.3887 lineto +297.9553 326.1805 lineto +297.9262 325.9732 lineto +297.8898 325.7670 lineto +297.8462 325.5619 lineto +297.7956 325.3587 lineto +297.7379 325.1575 lineto +297.6732 324.9584 lineto +297.6382 324.8596 lineto +292 326.9115 lineto +297.6382 328.9635 lineto +closepath +F doline +grestore +gsave +newpath +297.7500 326.9170 moveto +385 327 lineto +F dostroke +grestore +% ---- Object #77:66 Obj Type: 3 +2 setlinecap +gsave +newpath +206.6382 328.9635 moveto +206.6732 328.8647 lineto +206.7379 328.6656 lineto +206.7956 328.4643 lineto +206.8462 328.2612 lineto +206.8898 328.0561 lineto +206.9262 327.8499 lineto +206.9553 327.6426 lineto +206.9772 327.4344 lineto +206.9918 327.2255 lineto +206.9991 327.0163 lineto +206.9991 326.8068 lineto +206.9918 326.5976 lineto +206.9772 326.3887 lineto +206.9553 326.1805 lineto +206.9262 325.9732 lineto +206.8898 325.7670 lineto +206.8462 325.5619 lineto +206.7956 325.3587 lineto +206.7379 325.1575 lineto +206.6732 324.9584 lineto +206.6382 324.8596 lineto +201 326.9115 lineto +206.6382 328.9635 lineto +closepath +F doline +grestore +gsave +newpath +206.7500 326.9170 moveto +294 327 lineto +F dostroke +grestore +% ---- Object #78:86 Obj Type: 3 +2 setlinecap +gsave +newpath +341.6382 263.0519 moveto +341.6732 262.9532 lineto +341.7379 262.7541 lineto +341.7956 262.5528 lineto +341.8462 262.3496 lineto +341.8898 262.1446 lineto +341.9262 261.9384 lineto +341.9553 261.7310 lineto +341.9772 261.5228 lineto +341.9918 261.3140 lineto +341.9991 261.1047 lineto +341.9991 260.8953 lineto +341.9918 260.6860 lineto +341.9772 260.4772 lineto +341.9553 260.2689 lineto +341.9262 260.0616 lineto +341.8898 259.8554 lineto +341.8462 259.6504 lineto +341.7956 259.4472 lineto +341.7379 259.2459 lineto +341.6732 259.0468 lineto +341.6382 258.9481 lineto +336 261 lineto +341.6382 263.0519 lineto +closepath +F doline +grestore +gsave +newpath +341.7500 261 moveto +412.3077 261 lineto +F dostroke +grestore +% ---- Object #79:87 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +0 fg +413.6000 261.0993 moveto +413.6000 259.5082 412.3359 258.1986 410.8000 258.1986 curveto +409.2641 258.1986 408 259.5082 408 261.0993 curveto +408 262.6904 409.2641 264 410.8000 264 curveto +412.3359 264 413.6000 262.6904 413.6000 261.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #80:89 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +251.6016 263.1500 moveto +251.6382 263.0519 lineto +251.7064 262.8539 lineto +251.7676 262.6537 lineto +251.8218 262.4515 lineto +251.8689 262.2475 lineto +251.9089 262.0416 lineto +251.9416 261.8348 lineto +251.9672 261.6270 lineto +251.9854 261.4184 lineto +251.9964 261.2093 lineto +252 261 lineto +251.9964 260.7907 lineto +251.9854 260.5816 lineto +251.9672 260.3730 lineto +251.9416 260.1652 lineto +251.9089 259.9584 lineto +251.8689 259.7525 lineto +251.8218 259.5485 lineto +251.7676 259.3463 lineto +251.7064 259.1461 lineto +251.6732 259.0468 lineto +246 261 lineto +251.6016 263.1500 lineto +closepath +F doline +grestore +gsave +newpath +251.7494 261.0810 moveto +317 262 lineto +F dostroke +grestore +% ---- Object #81:90 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +320.0948 261.0993 moveto +320.0948 259.5082 318.8308 258.1986 317.2949 258.1986 curveto +315.7590 258.1986 314.4949 259.5082 314.4949 261.0993 curveto +314.4949 262.6904 315.7590 264 317.2949 264 curveto +318.8308 264 320.0948 262.6904 320.0948 261.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #82:92 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +155.6382 263.0519 moveto +155.6732 262.9532 lineto +155.7379 262.7541 lineto +155.7956 262.5528 lineto +155.8462 262.3496 lineto +155.8898 262.1446 lineto +155.9262 261.9384 lineto +155.9553 261.7310 lineto +155.9772 261.5228 lineto +155.9918 261.3140 lineto +155.9991 261.1047 lineto +155.9991 260.8953 lineto +155.9918 260.6860 lineto +155.9772 260.4772 lineto +155.9553 260.2689 lineto +155.9262 260.0616 lineto +155.8898 259.8554 lineto +155.8462 259.6504 lineto +155.7956 259.4472 lineto +155.7379 259.2459 lineto +155.6732 259.0468 lineto +155.6382 258.9481 lineto +150 261 lineto +155.6382 263.0519 lineto +closepath +F doline +grestore +gsave +newpath +155.7500 261 moveto +226.3077 261 lineto +F dostroke +grestore +% ---- Object #83:93 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +231.5948 261.0993 moveto +231.5948 259.5082 230.3308 258.1986 228.7949 258.1986 curveto +227.2590 258.1986 225.9949 259.5082 225.9949 261.0993 curveto +225.9949 262.6904 227.2590 264 228.7949 264 curveto +230.3308 264 231.5948 262.6904 231.5948 261.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #84:83 Obj Type: 2 +0 0 setpen +save +1 setgray +mark /|___Helvetica-Bold /Helvetica-Bold T cvRecFont +10 fts /|___Helvetica-Bold findfont exch scalefont setfont +1 setgray +84 357 moveto +(CcuDList) +F F 43.8794 0 8 0 0 fittext +restore +% ---- Object #85:84 Obj Type: 2 +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +58 259 moveto +(Previous) +F F 38.8940 0 8 0 0 fittext +restore +% ---- Object #86:88 Obj Type: 2 +save +1 setgray +mark /|___Helvetica-Bold /Helvetica-Bold T cvRecFont +10 fts /|___Helvetica-Bold findfont exch scalefont setfont +1 setgray +70 223 moveto +(CcuDListCell) +F F 62.2144 0 12 0 0 fittext +restore +% ---- Object #87:85 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +132.5948 261.0993 moveto +132.5948 259.5082 131.3308 258.1986 129.7949 258.1986 curveto +128.2590 258.1986 126.9949 259.5082 126.9949 261.0993 curveto +126.9949 262.6904 128.2590 264 129.7949 264 curveto +131.3308 264 132.5948 262.6904 132.5948 261.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #88:95 Obj Type: 7 +0.5000 0.5000 setpen +0 setlinecap +gsave +newpath +464.5024 309.3131 moveto +464.5997 309.3515 lineto +464.7965 309.4231 lineto +464.9956 309.4878 lineto +465.1969 309.5455 lineto +465.4001 309.5962 lineto +465.6051 309.6398 lineto +465.8113 309.6761 lineto +466.0187 309.7053 lineto +466.2269 309.7272 lineto +466.4358 309.7418 lineto +466.6450 309.7491 lineto +466.8550 309.7491 lineto +467.0642 309.7418 lineto +467.2731 309.7272 lineto +467.4813 309.7053 lineto +467.6887 309.6761 lineto +467.8948 309.6398 lineto +468.0999 309.5962 lineto +468.3031 309.5455 lineto +468.5044 309.4878 lineto +468.6042 309.4563 lineto +466.7500 303.7500 lineto +464.5024 309.3131 lineto +closepath +F doline +grestore +429.7500 345.7500 moveto +430.3975 345.7436 lineto +431.6878 345.6923 lineto +432.9758 345.5901 lineto +434.2599 345.4368 lineto +435.5384 345.2328 lineto +436.8099 344.9783 lineto +438.0745 344.6732 lineto +439.3272 344.3186 lineto +440.5689 343.9144 lineto +441.7968 343.4615 lineto +443.0100 342.9602 lineto +444.2087 342.4104 lineto +445.3882 341.8142 lineto +446.5486 341.1717 lineto +447.6886 340.4836 lineto +448.8067 339.7508 lineto +449.9016 338.9742 lineto +450.9739 338.1531 lineto +452.0184 337.2917 lineto +453.0357 336.3893 lineto +454.0248 335.4472 lineto +454.9842 334.4665 lineto +455.9130 333.4484 lineto +456.8109 332.3929 lineto +457.6748 331.3037 lineto +458.5047 330.1810 lineto +459.2996 329.0261 lineto +460.0588 327.8399 lineto +460.7817 326.6232 lineto +461.4659 325.3803 lineto +462.1114 324.1110 lineto +462.7175 322.8170 lineto +463.2835 321.4997 lineto +463.8086 320.1608 lineto +464.2929 318.8001 lineto +464.7347 317.4223 lineto +465.1336 316.0284 lineto +465.4894 314.6196 lineto +465.8018 313.1975 lineto +466.0705 311.7621 lineto +466.2947 310.3187 lineto +466.4743 308.8674 lineto +466.5474 308.1390 lineto +F dostroke +% ---- Object #89:96 Obj Type: 7 +0 setlinecap +gsave +newpath +435.1879 264.5357 moveto +435.2313 264.4404 lineto +435.3132 264.2474 lineto +435.3882 264.0519 lineto +435.4564 263.8539 lineto +435.5176 263.6537 lineto +435.5718 263.4515 lineto +435.6189 263.2475 lineto +435.6589 263.0416 lineto +435.6916 262.8348 lineto +435.7171 262.6270 lineto +435.7354 262.4184 lineto +435.7463 262.2093 lineto +435.7500 262 lineto +435.7463 261.7907 lineto +435.7354 261.5816 lineto +435.7171 261.3730 lineto +435.6916 261.1652 lineto +435.6589 260.9584 lineto +435.6189 260.7525 lineto +435.5718 260.5485 lineto +435.5456 260.4472 lineto +429.7500 262 lineto +435.1879 264.5357 lineto +closepath +F doline +grestore +466.7500 303.7500 moveto +466.7444 303.0213 lineto +466.6993 301.5653 lineto +466.6092 300.1119 lineto +466.4743 298.6631 lineto +466.2947 297.2204 lineto +466.0705 295.7856 lineto +465.8018 294.3587 lineto +465.4894 292.9451 lineto +465.1336 291.5447 lineto +464.7347 290.1591 lineto +464.2929 288.7894 lineto +463.8086 287.4369 lineto +463.2835 286.1059 lineto +462.7175 284.7965 lineto +462.1114 283.5101 lineto +461.4659 282.2484 lineto +460.7817 281.0129 lineto +460.0588 279.8035 lineto +459.2996 278.6244 lineto +458.5047 277.4764 lineto +457.6748 276.3603 lineto +456.8109 275.2776 lineto +455.9130 274.2284 lineto +454.9842 273.2163 lineto +454.0248 272.2415 lineto +453.0357 271.3050 lineto +452.0184 270.4080 lineto +450.9739 269.5516 lineto +449.9016 268.7355 lineto +448.8067 267.9635 lineto +447.6886 267.2350 lineto +446.5486 266.5510 lineto +445.3882 265.9123 lineto +444.2087 265.3197 lineto +443.0100 264.7732 lineto +441.7968 264.2749 lineto +440.5689 263.8247 lineto +439.3272 263.4229 lineto +438.0745 263.0704 lineto +436.8099 262.7671 lineto +435.5384 262.5141 lineto +434.2599 262.3113 lineto +F dostroke +% ---- Object #90:98 Obj Type: 7 +0 setlinecap +gsave +newpath +122.4771 343.1553 moveto +122.4369 343.2524 lineto +122.3619 343.4478 lineto +122.2937 343.6458 lineto +122.2325 343.8460 lineto +122.1783 344.0482 lineto +122.1312 344.2522 lineto +122.0912 344.4580 lineto +122.0584 344.6649 lineto +122.0329 344.8727 lineto +122.0146 345.0813 lineto +122.0037 345.2904 lineto +122 345.5000 lineto +122.0036 345.7093 lineto +122.0146 345.9184 lineto +122.0328 346.1270 lineto +122.0584 346.3348 lineto +122.0911 346.5416 lineto +122.1311 346.7475 lineto +122.1782 346.9515 lineto +122.2324 347.1537 lineto +122.2621 347.2541 lineto +128 345.5000 lineto +122.4771 343.1553 lineto +closepath +F doline +grestore +65.5000 303.7500 moveto +65.5095 304.4787 lineto +65.5856 305.9347 lineto +65.7377 307.3880 lineto +65.9657 308.8369 lineto +66.2691 310.2796 lineto +66.6477 311.7144 lineto +67.1017 313.1413 lineto +67.6293 314.5549 lineto +68.2304 315.9553 lineto +68.9043 317.3409 lineto +69.6505 318.7106 lineto +70.4685 320.0631 lineto +71.3556 321.3941 lineto +72.3116 322.7035 lineto +73.3355 323.9898 lineto +74.4259 325.2516 lineto +75.5815 326.4871 lineto +76.8026 327.6965 lineto +78.0851 328.8756 lineto +79.4278 330.0236 lineto +80.8297 331.1397 lineto +82.2890 332.2224 lineto +83.8057 333.2716 lineto +85.3746 334.2837 lineto +86.9953 335.2585 lineto +88.6660 336.1950 lineto +90.3845 337.0920 lineto +92.1489 337.9484 lineto +93.9601 338.7645 lineto +95.8096 339.5365 lineto +97.6983 340.2650 lineto +99.6240 340.9490 lineto +101.5841 341.5877 lineto +103.5765 342.1803 lineto +105.6013 342.7268 lineto +107.6507 343.2251 lineto +109.7249 343.6753 lineto +111.8222 344.0771 lineto +113.9384 344.4296 lineto +116.0745 344.7329 lineto +118.2223 344.9859 lineto +120.3820 345.1887 lineto +122.5510 345.3410 lineto +123.6386 345.3982 lineto +F dostroke +% ---- Object #91:99 Obj Type: 7 +0 setlinecap +gsave +newpath +68.0359 298.3123 moveto +67.9406 298.2688 lineto +67.7476 298.1869 lineto +67.5522 298.1119 lineto +67.3542 298.0437 lineto +67.1540 297.9825 lineto +66.9517 297.9283 lineto +66.7478 297.8812 lineto +66.5420 297.8412 lineto +66.3351 297.8084 lineto +66.1273 297.7829 lineto +65.9187 297.7646 lineto +65.7096 297.7537 lineto +65.5000 297.7500 lineto +65.2907 297.7536 lineto +65.0816 297.7646 lineto +64.8730 297.7828 lineto +64.6652 297.8084 lineto +64.4584 297.8411 lineto +64.2525 297.8811 lineto +64.0485 297.9282 lineto +63.9472 297.9544 lineto +65.5000 303.7500 lineto +68.0359 298.3123 lineto +closepath +F doline +grestore +128 261.7500 moveto +126.9091 261.7564 lineto +124.7294 261.8075 lineto +122.5538 261.9098 lineto +120.3848 262.0629 lineto +118.2251 262.2668 lineto +116.0773 262.5213 lineto +113.9412 262.8264 lineto +111.8250 263.1809 lineto +109.7285 263.5848 lineto +107.6543 264.0377 lineto +105.6040 264.5391 lineto +103.5791 265.0888 lineto +101.5867 265.6849 lineto +99.6265 266.3274 lineto +97.7008 267.0154 lineto +95.8120 267.7482 lineto +93.9625 268.5248 lineto +92.1520 269.3454 lineto +90.3868 270.2072 lineto +88.6682 271.1095 lineto +86.9975 272.0515 lineto +85.3767 273.0322 lineto +83.8059 274.0514 lineto +82.2909 275.1057 lineto +80.8315 276.1949 lineto +79.4296 277.3175 lineto +78.0868 278.4724 lineto +76.8048 279.6580 lineto +75.5831 280.8752 lineto +74.4273 282.1180 lineto +73.3368 283.3873 lineto +72.3129 284.6813 lineto +71.3568 285.9985 lineto +70.4696 287.3374 lineto +69.6515 288.6981 lineto +68.9055 290.0753 lineto +68.2315 291.4691 lineto +67.6300 292.8786 lineto +67.1024 294.3006 lineto +66.6483 295.7360 lineto +66.2696 297.1794 lineto +65.9660 298.6307 lineto +65.8425 299.3591 lineto +F dostroke +% ---- Object #92:100 Obj Type: 3 +2 setlinecap +gsave +newpath +216.3619 344.5930 moveto +216.3269 344.6916 lineto +216.2622 344.8907 lineto +216.2045 345.0921 lineto +216.1538 345.2952 lineto +216.1102 345.5003 lineto +216.0739 345.7065 lineto +216.0447 345.9138 lineto +216.0228 346.1220 lineto +216.0082 346.3309 lineto +216.0009 346.5401 lineto +216.0009 346.7499 lineto +216.0082 346.9591 lineto +216.0228 347.1680 lineto +216.0447 347.3762 lineto +216.0738 347.5835 lineto +216.1102 347.7897 lineto +216.1538 347.9948 lineto +216.2044 348.1979 lineto +216.2621 348.3992 lineto +216.3268 348.5983 lineto +216.3618 348.6970 lineto +222 346.6451 lineto +216.3619 344.5930 lineto +closepath +F doline +grestore +gsave +newpath +129 346.4940 moveto +216.2500 346.6358 lineto +F dostroke +grestore +% ---- Object #93:102 Obj Type: 3 +2 setlinecap +gsave +newpath +426.3619 344.9478 moveto +426.3269 345.0465 lineto +426.2622 345.2456 lineto +426.2045 345.4469 lineto +426.1538 345.6501 lineto +426.1102 345.8551 lineto +426.0739 346.0613 lineto +426.0447 346.2687 lineto +426.0228 346.4769 lineto +426.0082 346.6858 lineto +426.0009 346.8950 lineto +426.0009 347.1047 lineto +426.0082 347.3140 lineto +426.0228 347.5228 lineto +426.0447 347.7310 lineto +426.0738 347.9384 lineto +426.1102 348.1446 lineto +426.1538 348.3496 lineto +426.2044 348.5528 lineto +426.2621 348.7541 lineto +426.3268 348.9532 lineto +426.3618 349.0519 lineto +432 347 lineto +426.3619 344.9478 lineto +closepath +F doline +grestore +gsave +newpath +308 346.4940 moveto +426.2500 346.9765 lineto +F dostroke +grestore +% ---- Object #94:103 Obj Type: 3 +2 setlinecap +gsave +newpath +305.3619 344.5930 moveto +305.3269 344.6916 lineto +305.2622 344.8907 lineto +305.2045 345.0921 lineto +305.1538 345.2952 lineto +305.1102 345.5003 lineto +305.0739 345.7065 lineto +305.0447 345.9138 lineto +305.0228 346.1220 lineto +305.0082 346.3309 lineto +305.0009 346.5401 lineto +305.0009 346.7499 lineto +305.0082 346.9591 lineto +305.0228 347.1680 lineto +305.0447 347.3762 lineto +305.0738 347.5835 lineto +305.1102 347.7897 lineto +305.1538 347.9948 lineto +305.2044 348.1979 lineto +305.2621 348.3992 lineto +305.3268 348.5983 lineto +305.3618 348.6970 lineto +311 346.6451 lineto +305.3619 344.5930 lineto +closepath +F doline +grestore +gsave +newpath +218 346.4940 moveto +305.2500 346.6358 lineto +F dostroke +grestore +origmtx setmatrix +systemdict /setpacking known {origpack setpacking} if end +showpage +%%EndDocument: diff --git a/utils/FIGURES/CcuList.epsf b/utils/FIGURES/CcuList.epsf new file mode 100644 index 0000000..f894c48 --- /dev/null +++ b/utils/FIGURES/CcuList.epsf @@ -0,0 +1,2006 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Title: CcuList.epsf +%%Creator: Canvas 3.0 +%%For: chatty +%%CreationDate: Jeu 3 D\216c 1992 18:16 +%%BoundingBox: 46 11 455 236 +%%DocumentProcSets: CanvasDict +%%DocumentSuppliedProcSets: CanvasDict +%%Copyright ©1988-91 Deneba Systems, Inc. - All Rights Reserved Worldwide +%%DocumentFonts: Helvetica +%%+ Helvetica-Oblique +%%+ Helvetica-Bold +%%DocumentNeededFonts: Helvetica +%%+ Helvetica-Oblique +%%+ Helvetica-Bold +%%EndComments +%%BeginProcSet:CanvasDict +/CanvasDict where not{/CanvasDict 250 dict def}{pop}ifelse +CanvasDict begin +systemdict/setpacking known{/origpack currentpacking def true setpacking}if +/bdf{bind def}bind def +/xdf{exch bind def}bdf +/min{2 copy gt{exch}if pop}bdf +/edf{exch def}bdf +/max{2 copy lt{exch}if pop}bdf +/cvmtx matrix def +/tpmx matrix def +/currot 0 def +/rotmtx matrix def +/origmtx matrix def +/cvangle{360 exch sub 90 add 360 mod}bdf +/setrot{/currot edf rotmtx currentmatrix pop 2 copy translate currot rotate neg exch neg exch translate}bdf +/endrot{rotmtx setmatrix}bdf +/i systemdict/image get def/T true def/F false def/dbg F def +/ncolors 0 def/st0 ()def/st1 ()def/proc0 {}def +/penh 1 def/penv 1 def/penv2 0 def/penh2 0 def/samplesize 0 def/width 0 def/height 0 def +/setcmykcolor where not{/setcmykcolor{/b edf 3{b add 1.0 exch sub 0.0 max 1.0 min 3 1 roll}repeat systemdict begin setrgbcolor end}bdf}{pop}ifelse +/doeoclip{closepath{eoclip}stopped{currentflat dup 2 mul setflat eoclip setflat}if}bdf +/SpaceExtra 0 def/LetterSpace 0 def/StringLength 0 def/NumSpaces 0 def/JustOffset 0 def +/f0/fill load def +/s0{1 setlinewidth cvmtx currentmatrix pop penh penv scale stroke cvmtx setmatrix}bdf +/f1{_bp _fp impat}def +/s1{cvmtx currentmatrix pop 1 setlinewidth penh penv scale +{strokepath}stopped{currentflat dup 2 mul setflat strokepath setflat}if +_bp +cvmtx setmatrix _fp impat}def +/filltype 0 def +/stroketype 0 def +/f{filltype 0 eq{f0}{f1}ifelse}bdf +/s{stroketype 0 eq{s0}{s1}ifelse}bdf +/_fp{}def +/_bp{}def +/_fg 1 def +/_pg 0 def +/_bkg 1 def +/_frg 0 def +/_frgb 3 array def +/_frrgb [0 0 0] def +/_fcmyk 4 array def +/_frcmyk [0 0 0 1] def +/_prgb 3 array def +/_pcmyk 4 array def +/_bkrgb [1 1 1] def +/_bkcmyk [0 0 0 0] def +/fg{/_fg exch def /filltype 0 def/fills{_fg setgray}def}def +/frgb{_frgb astore pop /filltype 0 def/fills{_frgb aload pop setrgbcolor}def}def +/fcmyk{_fcmyk astore pop /filltype 0 def/fills{_fcmyk aload pop setcmykcolor}def}def +/pg{/_pg exch def /stroketype 0 def/pens{_pg setgray}def}def +/prgb{_prgb astore pop /stroketype 0 def/pens{_prgb aload pop setrgbcolor}def}def +/pcmyk{_pcmyk astore pop /stroketype 0 def/pens{_pcmyk aload pop setcmykcolor}def}def +/fpat{/fstr edf/filltype 1 def/fills{/patstr fstr def}bdf}bdf +/ppat{/sstr edf/stroketype 1 def/pens{/patstr sstr def}bdf}bdf +/bkg{ /_bkg exch def /_bp{gsave _bkg setgray fill grestore}def}def +/bkrgb{_bkrgb astore pop/_bp{gsave _bkrgb aload pop setrgbcolor fill grestore}def}def +/bkcmyk{_bkcmyk astore pop/_bp{gsave _bkcmyk aload pop setcmykcolor fill grestore}def}def +/frg{ /_frg exch def /_fp{_frg setgray}def}def +/frrgb{_frrgb astore pop/_fp{_frrgb aload pop setrgbcolor}def}def +/frcmyk{_frcmyk astore pop/_fp{_frcmyk aload pop setcmykcolor}def}def +/icomp{/ncolors edf +ncolors 1 gt{/proc0 edf +dup dup 0 get ncolors div cvi exch 0 3 -1 roll put +4 -1 roll ncolors div cvi 4 1 roll{proc0 dup/st0 edf +0 exch ncolors exch length +dup ncolors sub exch ncolors div cvi string/st1 edf +{dup 0 exch dup 1 exch +2 add{st0 exch get add}bind for +3 div ncolors 4 eq{exch dup 3 1 roll 3 add st0 exch get add 255 exch sub dup 0 lt{pop 0}if}if cvi +dup 255 gt{pop 255}if +exch ncolors div cvi exch +st1 3 1 roll put}bind for +st1}}if i}bdf +/ci +{/colorimage where +{pop false exch colorimage} +{icomp} +ifelse}bdf +/impat +{/cnt 0 def +/MySave save def +currot 0 ne{currot neg rotate}if +clip +flattenpath +pathbbox +3 -1 roll +8 div floor 8 mul dup/starty edf +sub abs 8 div ceiling 8 mul cvi/height edf +exch 8 div floor 8 mul dup/startx edf +sub abs 8 div ceiling 8 mul cvi/width edf +startx starty translate +width height scale +/height height 8 mul def +/st0 width string def +width height T [width 0 0 height neg 0 height] +{patstr +cnt 8 mod +get/st1 edf +0 1 +st0 length 1 sub dup 0 le{pop 1}if +{st0 exch +st1 +put}bind for/cnt cnt 1 add def +st0}bind +imagemask +MySave restore +newpath}bdf +/cm{/ncolors edf +translate +scale/height edf/colorimage where +{pop} +{ncolors mul}ifelse/width edf +/tbitstr width string def +width height 8 [width 0 0 height neg 0 height] +{currentfile tbitstr readhexstring pop}bind +ncolors +dup 3 eq {ci}{icomp}ifelse}bdf +/im{translate +scale +/height edf +/width edf +/tbitstr width 7 add 8 div cvi string def +width height 1 [width 0 0 height neg 0 height] +{currentfile tbitstr readhexstring pop}bind +i}bdf +/imk{/invFlag edf +translate +scale +/height edf +/width edf +/tbitstr width 7 add 8 div cvi string def +width height invFlag [width 0 0 height neg 0 height] +{currentfile tbitstr readhexstring pop}bind +imagemask}bdf +/BeginEPSF +{/MySave save def +/dict_count countdictstack def +/op_count count 1 sub def +userdict begin +/showpage {} def +0 setgray 0 setlinecap +1 setlinewidth 0 setlinejoin +10 setmiterlimit [] 0 setdash newpath +/languagelevel where +{pop languagelevel 1 ne{false setstrokeadjust false setoverprint}if}if +}bdf +/EndEPSF +{count op_count sub {pop}repeat +countdictstack dict_count sub {end}repeat +MySave restore}bdf +/rectpath {/cv_r edf/cv_b edf/cv_l edf/cv_t edf +cv_l cv_t moveto cv_r cv_t lineto cv_r cv_b lineto cv_l cv_b lineto cv_l cv_t lineto closepath}bdf +/setpen{/penh edf/penv edf/penv2 penv 2 div def/penh2 penh 2 div def}bdf +/dostroke{not pens 1.0 currentgray ne or {s}{newpath}ifelse}bdf +/dodashfill{not fills 1.0 currentgray ne or +{gsave f grestore gsave [] 0 setdash +stroketype/stroketype filltype def +s/stroketype edf grestore}{newpath}ifelse}bdf +/dofill{not fills 1.0 currentgray ne or {f}{newpath}ifelse}bdf +/dofillsave{not fills 1.0 currentgray ne or {gsave f grestore}if}bdf +/doline{not pens 1.0 currentgray ne or {filltype/filltype stroketype def f/filltype edf}{newpath}ifelse}bdf +/spx{SpaceExtra 0 32 4 -1 roll widthshow}bdf +/lsx{SpaceExtra 0 32 LetterSpace 0 6 -1 roll awidthshow}bdf +/Rjust{stringwidth pop JustOffset exch sub /JustOffset edf}bdf +/Cjust{stringwidth pop 2 div JustOffset exch sub /JustOffset edf}bdf +/adjfit{stringwidth pop LetterSpace StringLength 1 sub mul add SpaceExtra NumSpaces mul add dup /pw edf JustOffset exch +sub dup /wdif edf StringLength div dup abs 1.0 gt{pop 0}if LetterSpace add /LetterSpace edf}bdf +/ulb{currentpoint pop /underlinpt edf}bdf +/ule{gsave currentpoint newpath moveto currentfont dup /ft1 known{dup /ft1 get begin /FontMatrix get FontMatrix tpmx concatmatrix pop} +{begin FontMatrix tpmx copy pop}ifelse FontInfo begin UnderlinePosition UnderlineThickness end end dup tpmx +dtransform pop setlinewidth dup tpmx dtransform pop 0 exch rmoveto underlinpt currentpoint pop sub 0 rlineto stroke grestore}bdf +/fittext{ /SpaceExtra edf /LetterSpace edf /StringLength edf /NumSpaces edf /JustOffset edf not 1 currentgray ne or +{dup {ulb}if exch +dup adjfit +lsx {ule}if}{pop pop}ifelse}bdf +/cvRecFont{/encod edf FontDirectory 2 index known{cleartomark}{findfont dup length 1 add dict begin +{1 index/FID ne{def}{pop pop}ifelse}forall encod{/Encoding CVvec def}if +currentdict end definefont cleartomark}ifelse}bdf +/wrk1 ( ) def/wdict 16 dict def +/Work75 75 string def /Nmk{Work75 cvs dup}bdf /Npt{put cvn}bdf /dhOdh{Nmk 2 79 Npt}bdf /dhodh{Nmk 2 111 Npt}bdf /dhSdh{Nmk 2 83 Npt}bdf +/sfWidth{gsave 0 0 moveto 0 0 lineto 0 0 lineto 0 0 lineto closepath clip stringwidth grestore}bdf +/MakOF{dup dhodh FontDirectory 1 index known{exch pop}{exch findfont dup length 1 add dict begin +{1 index/FID ne 2 index /UniqueID ne and{def}{pop pop}ifelse}forall +/PaintType 2 def +/StrokeWidth .24 1000 mul ftSize div dup 12 lt{pop 12}if def +dup currentdict end definefont pop}ifelse}bdf +/fts{dup/ftSize edf}def +/mkFT{/tempFT 11 dict def tempFT begin +/FontMatrix [1 0 0 1 0 0] def/FontType 3 def +FontDirectory 3 index get /Encoding get/Encoding exch def +/proc2 edf/ft2 exch findfont def/ft1 exch findfont def/FontBBox [0 0 1 1] def +/BuildChar{wdict begin/chr edf/ftdt edf/chrst wrk1 dup 0 chr put def ftdt/proc2 get exec end}def +end tempFT definefont pop}bdf +/OLFt{dup dhOdh FontDirectory 1 index known{exch pop} +{dup 3 -1 roll dup MakOF {outproc} mkFT}ifelse}bdf +/mshw{moveto show}bdf +/outproc{ftdt/ft1 get setfont gsave chrst sfWidth grestore setcharwidth dblsh}bdf +/dblsh{currentgray 1 setgray chrst 0 0 mshw setgray ftdt/ft2 get setfont chrst 0 0 mshw}bdf +/ShadChar{ftdt/ft1 get setfont gsave chrst sfWidth 1 index 0 ne{exch .05 add exch}if grestore setcharwidth +chrst .06 0 mshw 0 .05 translate dblsh}bdf +/ShFt{dup dhSdh FontDirectory 1 index known{exch pop} +{dup 3 -1 roll dup MakOF {ShadChar} mkFT}ifelse}bdf +/LswUnits{72 75 div dup scale}bdf +/erasefill{_bp}def +/CVvec 256 array def +/NUL/SOH/STX/ETX/EOT/ENQ/ACK/BEL/BS/HT/LF/VT/FF/CR/SO/SI/DLE/DC1/DC2/DC3/DC4/NAK/SYN/ETB/CAN/EM/SUB/ESC/FS/GS/RS/US +CVvec 0 32 getinterval astore pop +CVvec 32/Times-Roman findfont/Encoding get +32 96 getinterval putinterval CVvec dup 39/quotesingle put 96/grave put +/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis/Udieresis/aacute +/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute/egrave +/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde/oacute +/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex/udieresis +/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls +/registered/copyright/trademark/acute/dieresis/notequal/AE/Oslash +/infinity/plusminus/lessequal/greaterequal/yen/mu/partialdiff/summation +/product/pi/integral/ordfeminine/ordmasculine/Omega/ae/oslash +/questiondown/exclamdown/logicalnot/radical/florin/approxequal/Delta/guillemotleft +/guillemotright/ellipsis/blank/Agrave/Atilde/Otilde/OE/oe +/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide/lozenge +/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright/fi/fl +/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand/Acircumflex/Ecircumflex/Aacute +/Edieresis/Egrave/Iacute/Icircumflex/Idieresis/Igrave/Oacute/Ocircumflex +/apple/Ograve/Uacute/Ucircumflex/Ugrave/dotlessi/circumflex/tilde +/macron/breve/dotaccent/ring/cedilla/hungarumlaut/ogonek/caron +CVvec 128 128 getinterval astore pop +end + +%%BeginSetup +CanvasDict begin +0 setlinecap +0 setlinejoin +4 setmiterlimit +/currot 0 def +origmtx currentmatrix pop +[] 0 setdash +1 1 setpen +1 fg +0 pg +0 frg +1 bkg +newpath +/dbg F def +%%EndSetup +% ---- Object #1:32 Obj Type: 4 +0 0 setpen +0.7500 fg +229.2500 102.7500 197.7500 150.2500 rectpath +F dofill +% ---- Object #2:19 Obj Type: 4 +0 fg +204.2500 64.7500 184.7500 119.2500 rectpath +F dofill +% ---- Object #3:38 Obj Type: 4 +0.7500 fg +117.2500 95.7500 81.7500 131.2500 rectpath +F dofill +% ---- Object #4:17 Obj Type: 4 +0 fg +89.2500 47.7500 67.7500 117.2500 rectpath +F dofill +% ---- Object #5:37 Obj Type: 4 +0.7500 fg +117.2500 377.7500 81.7500 413.2500 rectpath +F dofill +% ---- Object #6:39 Obj Type: 99 +% ---- Object #7:40 Obj Type: 4 +1 0.7500 setpen +0 setlinecap +1 fg +119 376 102 410.5005 rectpath +F dofillsave +F dostroke +% ---- Object #8:41 Obj Type: 4 +0 setlinecap +102 376 85 410.5005 rectpath +F dofillsave +F dostroke +% ---- Object #9:43 Obj Type: 4 +0 0 setpen +0.7500 fg +117.2500 283.7500 81.7500 319.2500 rectpath +F dofill +% ---- Object #10:44 Obj Type: 99 +% ---- Object #11:45 Obj Type: 4 +1 0.7500 setpen +0 setlinecap +1 fg +119 282 102 316.5005 rectpath +F dofillsave +F dostroke +% ---- Object #12:46 Obj Type: 4 +0 setlinecap +102 282 85 316.5005 rectpath +F dofillsave +F dostroke +% ---- Object #13:69 Obj Type: 99 +% ---- Object #14:48 Obj Type: 4 +0 0 setpen +0.7500 fg +117.2500 194.7500 81.7500 230.2500 rectpath +F dofill +% ---- Object #15:49 Obj Type: 99 +% ---- Object #16:50 Obj Type: 4 +1 0.7500 setpen +0 setlinecap +1 fg +119 193 102 227.5005 rectpath +F dofillsave +F dostroke +% ---- Object #17:51 Obj Type: 4 +0 setlinecap +102 193 85 227.5005 rectpath +F dofillsave +F dostroke +% ---- Object #18:11 Obj Type: 99 +% ---- Object #19:13 Obj Type: 4 +0 setlinecap +119 94 102 128.5005 rectpath +F dofillsave +F dostroke +% ---- Object #20:14 Obj Type: 4 +0 setlinecap +102 94 85 128.5005 rectpath +F dofillsave +F dostroke +% ---- Object #21:27 Obj Type: 4 +0.5000 0.5000 setpen +0 setlinecap +231 101 215 148 rectpath +F dofillsave +F dostroke +% ---- Object #22:28 Obj Type: 4 +0 setlinecap +216 101 200 148 rectpath +F dofillsave +F dostroke +% ---- Object #23:30 Obj Type: 3 +2 setlinecap +gsave +newpath +187.3619 107.9478 moveto +187.3269 108.0465 lineto +187.2622 108.2456 lineto +187.2045 108.4469 lineto +187.1538 108.6501 lineto +187.1102 108.8551 lineto +187.0739 109.0613 lineto +187.0447 109.2687 lineto +187.0228 109.4769 lineto +187.0082 109.6858 lineto +187.0009 109.8950 lineto +187.0009 110.1047 lineto +187.0082 110.3140 lineto +187.0228 110.5228 lineto +187.0447 110.7310 lineto +187.0738 110.9384 lineto +187.1102 111.1446 lineto +187.1538 111.3496 lineto +187.2044 111.5528 lineto +187.2621 111.7541 lineto +187.3268 111.9532 lineto +187.3618 112.0519 lineto +193 110 lineto +187.3619 107.9478 lineto +closepath +F doline +grestore +gsave +newpath +115 110 moveto +187.2500 110 lineto +F dostroke +grestore +% ---- Object #24:7 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +134 113 moveto +(Next) +F F 20.5566 0 4 0 0 fittext +restore +% ---- Object #25:9 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +369.9516 107.9478 moveto +369.9167 108.0465 lineto +369.8520 108.2456 lineto +369.7942 108.4469 lineto +369.7436 108.6501 lineto +369.7000 108.8551 lineto +369.6636 109.0613 lineto +369.6345 109.2687 lineto +369.6126 109.4769 lineto +369.5980 109.6858 lineto +369.5906 109.8950 lineto +369.5906 110.1047 lineto +369.5980 110.3140 lineto +369.6126 110.5228 lineto +369.6344 110.7310 lineto +369.6636 110.9384 lineto +369.6999 111.1446 lineto +369.7435 111.3496 lineto +369.7942 111.5528 lineto +369.8518 111.7541 lineto +369.9165 111.9532 lineto +369.9515 112.0519 lineto +375.5897 110 lineto +369.9516 107.9478 lineto +closepath +F doline +grestore +gsave +newpath +369.8397 110 moveto +299.2821 110 lineto +F dostroke +grestore +% ---- Object #26:10 Obj Type: 3 +2 setlinecap +gsave +newpath +275.9784 107.9478 moveto +275.9435 108.0465 lineto +275.8788 108.2456 lineto +275.8211 108.4469 lineto +275.7704 108.6501 lineto +275.7268 108.8551 lineto +275.6905 109.0613 lineto +275.6613 109.2687 lineto +275.6394 109.4769 lineto +275.6248 109.6858 lineto +275.6175 109.8950 lineto +275.6175 110.1047 lineto +275.6248 110.3140 lineto +275.6394 110.5228 lineto +275.6613 110.7310 lineto +275.6904 110.9384 lineto +275.7268 111.1446 lineto +275.7703 111.3496 lineto +275.8210 111.5528 lineto +275.8787 111.7541 lineto +275.9434 111.9532 lineto +275.9783 112.0519 lineto +281.6166 110 lineto +275.9784 107.9478 lineto +closepath +F doline +grestore +gsave +newpath +275.8666 110 moveto +212.6010 110 lineto +F dostroke +grestore +% ---- Object #27:21 Obj Type: 3 +2 setlinecap +gsave +newpath +141.9678 48.2676 moveto +142.0258 48.3552 lineto +142.1459 48.5267 lineto +142.2719 48.6939 lineto +142.4036 48.8566 lineto +142.5410 49.0146 lineto +142.6838 49.1678 lineto +142.8320 49.3160 lineto +142.9852 49.4588 lineto +143.1432 49.5962 lineto +143.3059 49.7279 lineto +143.4731 49.8540 lineto +143.6446 49.9741 lineto +143.8204 50.0883 lineto +143.9999 50.1961 lineto +144.1830 50.2976 lineto +144.3695 50.3927 lineto +144.5594 50.4812 lineto +144.7524 50.5631 lineto +144.9478 50.6381 lineto +145.1458 50.7063 lineto +145.2456 50.7378 lineto +147 45 lineto +141.9678 48.2676 lineto +closepath +F doline +grestore +gsave +newpath +111 93 moveto +143.5500 49.6000 lineto +F dostroke +grestore +% ---- Object #28:58 Obj Type: 99 +% ---- Object #29:23 Obj Type: 3 +2 setlinecap +gsave +newpath +422.9678 48.2676 moveto +423.0258 48.3552 lineto +423.1459 48.5267 lineto +423.2719 48.6939 lineto +423.4036 48.8566 lineto +423.5410 49.0146 lineto +423.6838 49.1678 lineto +423.8320 49.3160 lineto +423.9852 49.4588 lineto +424.1432 49.5962 lineto +424.3059 49.7279 lineto +424.4731 49.8540 lineto +424.6446 49.9741 lineto +424.8204 50.0883 lineto +424.9999 50.1961 lineto +425.1830 50.2976 lineto +425.3695 50.3927 lineto +425.5594 50.4812 lineto +425.7524 50.5631 lineto +425.9478 50.6381 lineto +426.1458 50.7063 lineto +426.2456 50.7378 lineto +428 45 lineto +422.9678 48.2676 lineto +closepath +F doline +grestore +gsave +newpath +392 93 moveto +424.5500 49.6000 lineto +F dostroke +grestore +% ---- Object #30:60 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +0 fg +395.6000 92.0993 moveto +395.6000 90.5082 394.3359 89.1986 392.8000 89.1986 curveto +391.2641 89.1986 390 90.5082 390 92.0993 curveto +390 93.6904 391.2641 95 392.8000 95 curveto +394.3359 95 395.6000 93.6904 395.6000 92.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #31:24 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +329.9678 47.2676 moveto +330.0258 47.3552 lineto +330.1459 47.5267 lineto +330.2719 47.6939 lineto +330.4036 47.8566 lineto +330.5410 48.0146 lineto +330.6838 48.1678 lineto +330.8320 48.3160 lineto +330.9852 48.4588 lineto +331.1432 48.5962 lineto +331.3059 48.7279 lineto +331.4731 48.8540 lineto +331.6446 48.9741 lineto +331.8204 49.0883 lineto +331.9999 49.1961 lineto +332.1830 49.2976 lineto +332.3695 49.3927 lineto +332.5594 49.4812 lineto +332.7524 49.5631 lineto +332.9478 49.6381 lineto +333.1458 49.7063 lineto +333.2456 49.7378 lineto +335 44 lineto +329.9678 47.2676 lineto +closepath +F doline +grestore +gsave +newpath +299 92 moveto +331.5500 48.6000 lineto +F dostroke +grestore +% ---- Object #32:61 Obj Type: 99 +% ---- Object #33:63 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +301.6000 92.0993 moveto +301.6000 90.5082 300.3359 89.1986 298.8000 89.1986 curveto +297.2641 89.1986 296 90.5082 296 92.0993 curveto +296 93.6904 297.2641 95 298.8000 95 curveto +300.3359 95 301.6000 93.6904 301.6000 92.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #34:56 Obj Type: 6 +0 setlinecap +301.6000 110.0993 moveto +301.6000 108.5082 300.3359 107.1986 298.8000 107.1986 curveto +297.2641 107.1986 296 108.5082 296 110.0993 curveto +296 111.6904 297.2641 113 298.8000 113 curveto +300.3359 113 301.6000 111.6904 301.6000 110.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #35:25 Obj Type: 3 +0.5000 0.5000 setpen +2 setlinecap +gsave +newpath +240.9678 48.2676 moveto +241.0258 48.3552 lineto +241.1459 48.5267 lineto +241.2719 48.6939 lineto +241.4036 48.8566 lineto +241.5410 49.0146 lineto +241.6838 49.1678 lineto +241.8320 49.3160 lineto +241.9852 49.4588 lineto +242.1432 49.5962 lineto +242.3059 49.7279 lineto +242.4731 49.8540 lineto +242.6446 49.9741 lineto +242.8204 50.0883 lineto +242.9999 50.1961 lineto +243.1830 50.2976 lineto +243.3695 50.3927 lineto +243.5594 50.4812 lineto +243.7524 50.5631 lineto +243.9478 50.6381 lineto +244.1458 50.7063 lineto +244.2456 50.7378 lineto +246 45 lineto +240.9678 48.2676 lineto +closepath +F doline +grestore +gsave +newpath +210 93 moveto +242.5500 49.6000 lineto +F dostroke +grestore +% ---- Object #36:15 Obj Type: 99 +% ---- Object #37:57 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +213.6000 92.0993 moveto +213.6000 90.5082 212.3359 89.1986 210.8000 89.1986 curveto +209.2641 89.1986 208 90.5082 208 92.0993 curveto +208 93.6904 209.2641 95 210.8000 95 curveto +212.3359 95 213.6000 93.6904 213.6000 92.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #38:75 Obj Type: 6 +0 setlinecap +213.6000 110.0993 moveto +213.6000 108.5082 212.3359 107.1986 210.8000 107.1986 curveto +209.2641 107.1986 208 108.5082 208 110.0993 curveto +208 111.6904 209.2641 113 210.8000 113 curveto +212.3359 113 213.6000 111.6904 213.6000 110.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #39:26 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +131 73 moveto +(Info) +F F 16.6748 0 4 0 0 fittext +restore +% ---- Object #40:29 Obj Type: 2 +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +111 205 moveto +(Status) +F F 28.3447 0 6 0 0 fittext +restore +% ---- Object #41:8 Obj Type: 10 +0.5000 0.5000 setpen +0 setlinecap +125 224 moveto +160.6094 223.3281 189.4844 221.6875 213 219 curveto +236.5156 216.3125 250.7891 211.2266 256.5000 203.5000 curveto +262.2109 195.7734 266.9687 186.7500 271 176 curveto +275.0312 165.2500 283.5625 154.0937 297 142 curveto +310.4375 129.9062 336.3594 121.0469 376 115 curveto +F dostroke +gsave +newpath +370.0912 113.9580 moveto +370.0739 114.0613 lineto +370.0447 114.2687 lineto +370.0228 114.4769 lineto +370.0082 114.6858 lineto +370.0009 114.8950 lineto +370.0009 115.1047 lineto +370.0082 115.3140 lineto +370.0228 115.5228 lineto +370.0447 115.7310 lineto +370.0738 115.9384 lineto +370.1102 116.1446 lineto +370.1538 116.3496 lineto +370.2044 116.5528 lineto +370.2621 116.7541 lineto +370.3268 116.9532 lineto +370.3984 117.1500 lineto +370.4770 117.3444 lineto +370.5621 117.5357 lineto +370.6539 117.7239 lineto +370.7522 117.9087 lineto +370.8038 117.9999 lineto +376 115 lineto +370.0912 113.9580 lineto +closepath +F doline +grestore +% ---- Object #42:33 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica /Helvetica T cvRecFont +10 fts /|___Helvetica findfont exch scalefont setfont +0 setgray +155 226 moveto +(Last) +F F 18.8965 0 4 0 0 fittext +restore +% ---- Object #43:12 Obj Type: 6 +0.0937 0.0937 setpen +0 setlinecap +114.6000 110.0993 moveto +114.6000 108.5082 113.3359 107.1986 111.8000 107.1986 curveto +110.2641 107.1986 109 108.5082 109 110.0993 curveto +109 111.6904 110.2641 113 111.8000 113 curveto +113.3359 113 114.6000 111.6904 114.6000 110.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #44:53 Obj Type: 6 +0 setlinecap +114.6000 92.0993 moveto +114.6000 90.5082 113.3359 89.1986 111.8000 89.1986 curveto +110.2641 89.1986 109 90.5082 109 92.0993 curveto +109 93.6904 110.2641 95 111.8000 95 curveto +113.3359 95 114.6000 93.6904 114.6000 92.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #45:52 Obj Type: 6 +0 setlinecap +128.6000 223.0993 moveto +128.6000 221.5082 127.3359 220.1986 125.8000 220.1986 curveto +124.2641 220.1986 123 221.5082 123 223.0993 curveto +123 224.6904 124.2641 226 125.8000 226 curveto +127.3359 226 128.6000 224.6904 128.6000 223.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #46:59 Obj Type: 6 +0 setlinecap +395.6000 110.0993 moveto +395.6000 108.5082 394.3359 107.1986 392.8000 107.1986 curveto +391.2641 107.1986 390 108.5082 390 110.0993 curveto +390 111.6904 391.2641 113 392.8000 113 curveto +394.3359 113 395.6000 111.6904 395.6000 110.0993 curveto +closepath +F dofillsave +F dostroke +% ---- Object #47:6 Obj Type: 52 +0.5000 0.5000 setpen +0 setlinecap +1 fg +%%PicComment: 100 +%%PicComment: 140 +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +113 40 moveto +154.5000 39.7500 lineto +154.7500 17.5000 lineto +113 17.2500 lineto +113.2500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +127.2500 34.7500 moveto +168.7500 34.5000 lineto +169 12.2500 lineto +127.2500 12 lineto +127.5000 34.7500 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +113 40 moveto +127.2500 34.7500 lineto +127.5000 12.2500 lineto +113 17.5000 lineto +113.2500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +154.5000 40 moveto +168.7500 34.7500 lineto +169 12.2500 lineto +154.5000 17.5000 lineto +154.7500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +113 40 moveto +154.5000 39.7500 lineto +168.7500 34.7500 lineto +127.2500 34.5000 lineto +113 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +113 17.5000 moveto +154.5000 17.2500 lineto +168.7500 12.2500 lineto +127.2500 12 lineto +113 17.5000 lineto +closepath +F dofill +%%QD line +%%SetPenFromPort +%%mode: 8 +113.2500 39.7500 moveto +154.7500 39.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +154.7500 39.5000 moveto +169 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +127.5000 12 moveto +113.2500 17.2500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +113.2500 17.2500 moveto +113.2500 39.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +127.5000 34.5000 moveto +169 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +169 34.2500 moveto +169 12 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +169.2500 12 moveto +127.5000 12 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +127.5000 11.7500 moveto +127.5000 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +127.5000 34.5000 moveto +113.2500 39.7500 lineto +F dostroke +%%PicComment: 141 +%%PicComment: 100 +% ---- Object #48:20 Obj Type: 52 +0 setlinecap +%%PicComment: 100 +%%PicComment: 140 +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +398 40 moveto +439.5000 39.7500 lineto +439.7500 17.5000 lineto +398 17.2500 lineto +398.2500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +412.2500 34.7500 moveto +453.7500 34.5000 lineto +454 12.2500 lineto +412.2500 12 lineto +412.5000 34.7500 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +398 40 moveto +412.2500 34.7500 lineto +412.5000 12.2500 lineto +398 17.5000 lineto +398.2500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +439.5000 40 moveto +453.7500 34.7500 lineto +454 12.2500 lineto +439.5000 17.5000 lineto +439.7500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +398 40 moveto +439.5000 39.7500 lineto +453.7500 34.7500 lineto +412.2500 34.5000 lineto +398 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +398 17.5000 moveto +439.5000 17.2500 lineto +453.7500 12.2500 lineto +412.2500 12 lineto +398 17.5000 lineto +closepath +F dofill +%%QD line +%%SetPenFromPort +%%mode: 8 +398.2500 39.7500 moveto +439.7500 39.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +439.7500 39.5000 moveto +454 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +412.5000 12 moveto +398.2500 17.2500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +398.2500 17.2500 moveto +398.2500 39.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +412.5000 34.5000 moveto +454 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +454 34.2500 moveto +454 12 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +454.2500 12 moveto +412.5000 12 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +412.5000 11.7500 moveto +412.5000 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +412.5000 34.5000 moveto +398.2500 39.7500 lineto +F dostroke +%%PicComment: 141 +%%PicComment: 100 +% ---- Object #49:31 Obj Type: 52 +0 setlinecap +%%PicComment: 100 +%%PicComment: 140 +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +305 40 moveto +346.5000 39.7500 lineto +346.7500 17.5000 lineto +305 17.2500 lineto +305.2500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +319.2500 34.7500 moveto +360.7500 34.5000 lineto +361 12.2500 lineto +319.2500 12 lineto +319.5000 34.7500 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +305 40 moveto +319.2500 34.7500 lineto +319.5000 12.2500 lineto +305 17.5000 lineto +305.2500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +346.5000 40 moveto +360.7500 34.7500 lineto +361 12.2500 lineto +346.5000 17.5000 lineto +346.7500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +305 40 moveto +346.5000 39.7500 lineto +360.7500 34.7500 lineto +319.2500 34.5000 lineto +305 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +305 17.5000 moveto +346.5000 17.2500 lineto +360.7500 12.2500 lineto +319.2500 12 lineto +305 17.5000 lineto +closepath +F dofill +%%QD line +%%SetPenFromPort +%%mode: 8 +305.2500 39.7500 moveto +346.7500 39.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +346.7500 39.5000 moveto +361 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +319.5000 12 moveto +305.2500 17.2500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +305.2500 17.2500 moveto +305.2500 39.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +319.5000 34.5000 moveto +361 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +361 34.2500 moveto +361 12 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +361.2500 12 moveto +319.5000 12 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +319.5000 11.7500 moveto +319.5000 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +319.5000 34.5000 moveto +305.2500 39.7500 lineto +F dostroke +%%PicComment: 141 +%%PicComment: 100 +% ---- Object #50:34 Obj Type: 52 +0 setlinecap +%%PicComment: 100 +%%PicComment: 140 +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +214 40 moveto +255.5000 39.7500 lineto +255.7500 17.5000 lineto +214 17.2500 lineto +214.2500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +228.2500 34.7500 moveto +269.7500 34.5000 lineto +270 12.2500 lineto +228.2500 12 lineto +228.5000 34.7500 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +214 40 moveto +228.2500 34.7500 lineto +228.5000 12.2500 lineto +214 17.5000 lineto +214.2500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +255.5000 40 moveto +269.7500 34.7500 lineto +270 12.2500 lineto +255.5000 17.5000 lineto +255.7500 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +214 40 moveto +255.5000 39.7500 lineto +269.7500 34.7500 lineto +228.2500 34.5000 lineto +214 40 lineto +closepath +F dofill +%%QD line +%%QD line +%%QD line +%%QD line +%%QD polygon +%%SetFillFromPort verb: 1 +%%ColorPort +%%PixPat patType = 0 +%%RGB Fore Color: 0 0 0 +%%RGB Back Color: 1 1 1 +%%thePattern: 0000000000000000 +%%mode: 8 +214 17.5000 moveto +255.5000 17.2500 lineto +269.7500 12.2500 lineto +228.2500 12 lineto +214 17.5000 lineto +closepath +F dofill +%%QD line +%%SetPenFromPort +%%mode: 8 +214.2500 39.7500 moveto +255.7500 39.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +255.7500 39.5000 moveto +270 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +228.5000 12 moveto +214.2500 17.2500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +214.2500 17.2500 moveto +214.2500 39.7500 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +228.5000 34.5000 moveto +270 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +270 34.2500 moveto +270 12 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +270.2500 12 moveto +228.5000 12 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +228.5000 11.7500 moveto +228.5000 34.5000 lineto +F dostroke +%%QD line +%%SetPenFromPort +%%mode: 8 +228.5000 34.5000 moveto +214.2500 39.7500 lineto +F dostroke +%%PicComment: 141 +%%PicComment: 100 +% ---- Object #51:22 Obj Type: 99 +% ---- Object #52:18 Obj Type: 99 +% ---- Object #53:35 Obj Type: 7 +0 setlinecap +gsave +newpath +400.4564 160.3539 moveto +400.4879 160.2541 lineto +400.5456 160.0528 lineto +400.5962 159.8496 lineto +400.6398 159.6446 lineto +400.6762 159.4384 lineto +400.7053 159.2310 lineto +400.7272 159.0228 lineto +400.7418 158.8140 lineto +400.7491 158.6047 lineto +400.7491 158.3953 lineto +400.7418 158.1860 lineto +400.7272 157.9772 lineto +400.7053 157.7689 lineto +400.6762 157.5616 lineto +400.6398 157.3554 lineto +400.5962 157.1504 lineto +400.5456 156.9472 lineto +400.4879 156.7459 lineto +400.4232 156.5468 lineto +400.3515 156.3500 lineto +400.3132 156.2526 lineto +394.7500 158.5000 lineto +400.4564 160.3539 lineto +closepath +F doline +grestore +399.2599 158.3173 moveto +399.8996 158.2615 lineto +401.1754 158.1277 lineto +402.4445 157.9644 lineto +403.7025 157.7720 lineto +404.9496 157.5507 lineto +406.1843 157.3007 lineto +407.4051 157.0224 lineto +408.6104 156.7160 lineto +409.8005 156.3815 lineto +410.9711 156.0200 lineto +412.1215 155.6318 lineto +413.2507 155.2174 lineto +414.3574 154.7770 lineto +415.4416 154.3108 lineto +416.4992 153.8204 lineto +417.5303 153.3058 lineto +418.5337 152.7678 lineto +419.5081 152.2069 lineto +420.4523 151.6238 lineto +421.3668 151.0183 lineto +422.2473 150.3930 lineto +423.0943 149.7478 lineto +423.9068 149.0834 lineto +424.6838 148.4006 lineto +425.4243 147.7003 lineto +426.1284 146.9823 lineto +426.7934 146.2495 lineto +427.4196 145.5014 lineto +428.0057 144.7397 lineto +428.5513 143.9648 lineto +429.0564 143.1768 lineto +429.5191 142.3787 lineto +429.9394 141.5703 lineto +430.3168 140.7527 lineto +430.6510 139.9269 lineto +430.9414 139.0939 lineto +431.1882 138.2532 lineto +431.3901 137.4088 lineto +431.5474 136.5602 lineto +431.6599 135.7086 lineto +431.7275 134.8548 lineto +431.7500 134 lineto +F dostroke +% ---- Object #54:42 Obj Type: 7 +0 setlinecap +gsave +newpath +432.7920 128.0912 moveto +432.6887 128.0739 lineto +432.4813 128.0447 lineto +432.2731 128.0228 lineto +432.0642 128.0082 lineto +431.8550 128.0009 lineto +431.6453 128.0009 lineto +431.4360 128.0082 lineto +431.2272 128.0228 lineto +431.0189 128.0447 lineto +430.8116 128.0738 lineto +430.6054 128.1102 lineto +430.4004 128.1538 lineto +430.1972 128.2044 lineto +429.9959 128.2621 lineto +429.7968 128.3268 lineto +429.6000 128.3984 lineto +429.4056 128.4770 lineto +429.2143 128.5621 lineto +429.0261 128.6539 lineto +428.8413 128.7522 lineto +428.7501 128.8038 lineto +431.7500 134 lineto +432.7920 128.0912 lineto +closepath +F doline +grestore +430.9414 128.9061 moveto +430.8018 128.4889 lineto +430.4894 127.6594 lineto +430.1336 126.8376 lineto +429.7347 126.0245 lineto +429.2929 125.2207 lineto +428.8086 124.4270 lineto +428.2835 123.6460 lineto +427.7175 122.8776 lineto +427.1114 122.1227 lineto +426.4659 121.3823 lineto +425.7817 120.6573 lineto +425.0588 119.9476 lineto +424.2996 119.2556 lineto +423.5047 118.5819 lineto +422.6748 117.9270 lineto +421.8109 117.2917 lineto +420.9130 116.6759 lineto +419.9842 116.0820 lineto +419.0248 115.5100 lineto +418.0357 114.9604 lineto +417.0184 114.4340 lineto +415.9739 113.9315 lineto +414.9016 113.4526 lineto +413.8067 112.9995 lineto +412.6886 112.5720 lineto +411.5486 112.1707 lineto +410.3882 111.7958 lineto +409.2087 111.4481 lineto +408.0100 111.1274 lineto +406.7968 110.8350 lineto +405.5689 110.5708 lineto +404.3272 110.3350 lineto +403.0745 110.1281 lineto +401.8099 109.9501 lineto +400.5384 109.8017 lineto +399.2599 109.6827 lineto +397.9758 109.5933 lineto +396.6878 109.5336 lineto +395.3975 109.5037 lineto +394.7500 109.5000 lineto +F dostroke +% ---- Object #55:65 Obj Type: 99 +% ---- Object #56:54 Obj Type: 7 +0 setlinecap +gsave +newpath +61.0022 139.6188 moveto +61.1051 139.6398 lineto +61.3113 139.6761 lineto +61.5187 139.7053 lineto +61.7269 139.7272 lineto +61.9358 139.7418 lineto +62.1450 139.7491 lineto +62.3550 139.7491 lineto +62.5642 139.7418 lineto +62.7731 139.7272 lineto +62.9813 139.7053 lineto +63.1887 139.6761 lineto +63.3948 139.6398 lineto +63.5999 139.5962 lineto +63.8031 139.5455 lineto +64.0044 139.4878 lineto +64.2035 139.4231 lineto +64.4003 139.3515 lineto +64.5946 139.2729 lineto +64.7859 139.1877 lineto +64.9741 139.0960 lineto +65.0670 139.0476 lineto +62.2500 133.7500 lineto +61.0022 139.6188 lineto +closepath +F doline +grestore +62.9329 138.8959 moveto +63.0509 139.3173 lineto +63.3146 140.1553 lineto +63.6152 140.9855 lineto +63.9521 141.8069 lineto +64.3252 142.6188 lineto +64.7342 143.4207 lineto +65.1778 144.2097 lineto +65.6558 144.9859 lineto +66.1677 145.7485 lineto +66.7129 146.4964 lineto +67.2908 147.2289 lineto +67.9013 147.9458 lineto +68.5426 148.6448 lineto +69.2139 149.3254 lineto +69.9148 149.9870 lineto +70.6445 150.6288 lineto +71.4028 151.2509 lineto +72.1873 151.8508 lineto +72.9977 152.4287 lineto +73.8330 152.9839 lineto +74.6923 153.5156 lineto +75.5744 154.0233 lineto +76.4800 154.5071 lineto +77.4048 154.9648 lineto +78.3492 155.3966 lineto +79.3120 155.8021 lineto +80.2921 156.1807 lineto +81.2882 156.5320 lineto +82.3006 156.8560 lineto +83.3253 157.1514 lineto +84.3624 157.4183 lineto +85.4111 157.6565 lineto +86.4692 157.8655 lineto +87.5372 158.0453 lineto +88.6111 158.1952 lineto +89.6910 158.3155 lineto +90.7755 158.4058 lineto +91.8633 158.4660 lineto +92.9531 158.4962 lineto +93.5000 158.5000 lineto +F dostroke +% ---- Object #57:64 Obj Type: 7 +0 setlinecap +gsave +newpath +87.7045 107.6969 moveto +87.6783 107.7982 lineto +87.6312 108.0022 lineto +87.5912 108.2080 lineto +87.5584 108.4149 lineto +87.5329 108.6227 lineto +87.5146 108.8313 lineto +87.5037 109.0404 lineto +87.5000 109.2500 lineto +87.5036 109.4593 lineto +87.5146 109.6684 lineto +87.5328 109.8770 lineto +87.5584 110.0848 lineto +87.5911 110.2916 lineto +87.6311 110.4975 lineto +87.6782 110.7015 lineto +87.7324 110.9037 lineto +87.7936 111.1039 lineto +87.8618 111.3019 lineto +87.9368 111.4974 lineto +88.0187 111.6904 lineto +88.0621 111.7857 lineto +93.5000 109.2500 lineto +87.7045 107.6969 lineto +closepath +F doline +grestore +88.6126 109.5515 moveto +88.0750 109.6220 lineto +87.0027 109.7854 lineto +85.9402 109.9777 lineto +84.8868 110.1990 lineto +83.8440 110.4489 lineto +82.8129 110.7272 lineto +81.7949 111.0336 lineto +80.7897 111.3680 lineto +79.8014 111.7293 lineto +78.8298 112.1174 lineto +77.8756 112.5321 lineto +76.9409 112.9724 lineto +76.0252 113.4386 lineto +75.1319 113.9290 lineto +74.2610 114.4435 lineto +73.4135 114.9815 lineto +72.5905 115.5424 lineto +71.7930 116.1254 lineto +71.0206 116.7309 lineto +70.2769 117.3561 lineto +69.5615 118.0014 lineto +68.8752 118.6658 lineto +68.2189 119.3485 lineto +67.5934 120.0488 lineto +66.9987 120.7667 lineto +66.4370 121.4995 lineto +65.9084 122.2472 lineto +65.4132 123.0090 lineto +64.9522 123.7841 lineto +64.5255 124.5721 lineto +64.1347 125.3703 lineto +63.7797 126.1786 lineto +63.4608 126.9962 lineto +63.1785 127.8220 lineto +62.9332 128.6550 lineto +62.7248 129.4953 lineto +62.5541 130.3401 lineto +62.4212 131.1887 lineto +62.3262 132.0403 lineto +62.2691 132.8941 lineto +62.2500 133.7500 lineto +F dostroke +% ---- Object #58:67 Obj Type: 3 +2 setlinecap +gsave +newpath +99.6382 160.9635 moveto +99.6732 160.8647 lineto +99.7379 160.6656 lineto +99.7956 160.4643 lineto +99.8462 160.2612 lineto +99.8898 160.0561 lineto +99.9262 159.8499 lineto +99.9553 159.6426 lineto +99.9772 159.4344 lineto +99.9918 159.2255 lineto +99.9991 159.0163 lineto +99.9991 158.8068 lineto +99.9918 158.5976 lineto +99.9772 158.3887 lineto +99.9553 158.1805 lineto +99.9262 157.9732 lineto +99.8898 157.7670 lineto +99.8462 157.5619 lineto +99.7956 157.3587 lineto +99.7379 157.1575 lineto +99.6732 156.9584 lineto +99.6382 156.8596 lineto +94 158.9115 lineto +99.6382 160.9635 lineto +closepath +F doline +grestore +gsave +newpath +99.7500 158.9170 moveto +187 159 lineto +F dostroke +grestore +% ---- Object #59:36 Obj Type: 3 +2 setlinecap +gsave +newpath +357.6382 160.9635 moveto +357.6732 160.8647 lineto +357.7379 160.6656 lineto +357.7956 160.4643 lineto +357.8462 160.2612 lineto +357.8898 160.0561 lineto +357.9262 159.8499 lineto +357.9553 159.6426 lineto +357.9772 159.4344 lineto +357.9918 159.2255 lineto +357.9991 159.0163 lineto +357.9991 158.8068 lineto +357.9918 158.5976 lineto +357.9772 158.3887 lineto +357.9553 158.1805 lineto +357.9262 157.9732 lineto +357.8898 157.7670 lineto +357.8462 157.5619 lineto +357.7956 157.3587 lineto +357.7379 157.1575 lineto +357.6732 156.9584 lineto +357.6382 156.8596 lineto +352 158.9115 lineto +357.6382 160.9635 lineto +closepath +F doline +grestore +gsave +newpath +357.7500 158.9226 moveto +398 159 lineto +F dostroke +grestore +% ---- Object #60:47 Obj Type: 3 +2 setlinecap +gsave +newpath +279.6382 160.9635 moveto +279.6732 160.8647 lineto +279.7379 160.6656 lineto +279.7956 160.4643 lineto +279.8462 160.2612 lineto +279.8898 160.0561 lineto +279.9262 159.8499 lineto +279.9553 159.6426 lineto +279.9772 159.4344 lineto +279.9918 159.2255 lineto +279.9991 159.0163 lineto +279.9991 158.8068 lineto +279.9918 158.5976 lineto +279.9772 158.3887 lineto +279.9553 158.1805 lineto +279.9262 157.9732 lineto +279.8898 157.7670 lineto +279.8462 157.5619 lineto +279.7956 157.3587 lineto +279.7379 157.1575 lineto +279.6732 156.9584 lineto +279.6382 156.8596 lineto +274 158.9115 lineto +279.6382 160.9635 lineto +closepath +F doline +grestore +gsave +newpath +279.7500 158.9170 moveto +367 159 lineto +F dostroke +grestore +% ---- Object #61:66 Obj Type: 3 +2 setlinecap +gsave +newpath +188.6382 160.9635 moveto +188.6732 160.8647 lineto +188.7379 160.6656 lineto +188.7956 160.4643 lineto +188.8462 160.2612 lineto +188.8898 160.0561 lineto +188.9262 159.8499 lineto +188.9553 159.6426 lineto +188.9772 159.4344 lineto +188.9918 159.2255 lineto +188.9991 159.0163 lineto +188.9991 158.8068 lineto +188.9918 158.5976 lineto +188.9772 158.3887 lineto +188.9553 158.1805 lineto +188.9262 157.9732 lineto +188.8898 157.7670 lineto +188.8462 157.5619 lineto +188.7956 157.3587 lineto +188.7379 157.1575 lineto +188.6732 156.9584 lineto +188.6382 156.8596 lineto +183 158.9115 lineto +188.6382 160.9635 lineto +closepath +F doline +grestore +gsave +newpath +188.7500 158.9170 moveto +276 159 lineto +F dostroke +grestore +% ---- Object #62:73 Obj Type: 2 +0 0 setpen +save +0 setgray +mark /|___Helvetica-Oblique /Helvetica-Oblique T cvRecFont +10 fts /|___Helvetica-Oblique findfont exch scalefont setfont +0 setgray +136 20 moveto +(data) +F F 19.4556 0 4 0 0 fittext +restore +% ---- Object #63:68 Obj Type: 2 +save +0 setgray +mark /|___Helvetica-Oblique /Helvetica-Oblique T cvRecFont +10 fts /|___Helvetica-Oblique findfont exch scalefont setfont +0 setgray +236 20 moveto +(data) +F F 19.4556 0 4 0 0 fittext +restore +% ---- Object #64:72 Obj Type: 2 +save +0 setgray +mark /|___Helvetica-Oblique /Helvetica-Oblique T cvRecFont +10 fts /|___Helvetica-Oblique findfont exch scalefont setfont +0 setgray +328 21 moveto +(data) +F F 19.4556 0 4 0 0 fittext +restore +% ---- Object #65:74 Obj Type: 2 +save +0 setgray +mark /|___Helvetica-Oblique /Helvetica-Oblique T cvRecFont +10 fts /|___Helvetica-Oblique findfont exch scalefont setfont +0 setgray +421 20 moveto +(data) +F F 19.4556 0 4 0 0 fittext +restore +% ---- Object #66:5 Obj Type: 2 +save +1 setgray +mark /|___Helvetica-Bold /Helvetica-Bold T cvRecFont +10 fts /|___Helvetica-Bold findfont exch scalefont setfont +1 setgray +52 72 moveto +(CcuListCell) +F F 54.9951 0 11 0 0 fittext +restore +% ---- Object #67:55 Obj Type: 2 +save +1 setgray +mark /|___Helvetica-Bold /Helvetica-Bold T cvRecFont +10 fts /|___Helvetica-Bold findfont exch scalefont setfont +1 setgray +68 189 moveto +(CcuList) +F F 36.6602 0 7 0 0 fittext +restore +origmtx setmatrix +systemdict /setpacking known {origpack setpacking} if end +showpage +%%EndDocument: diff --git a/utils/FIGURES/hash.tex b/utils/FIGURES/hash.tex new file mode 100644 index 0000000..bdd151b --- /dev/null +++ b/utils/FIGURES/hash.tex @@ -0,0 +1,41 @@ +\setlength{\unitlength}{0.11mm} +\begin{picture}(1400,728)(-580,100) +\put(-498,392){\small\bf abc} +\put(-420,400){\thicklines\vector(1,0){180}} +\put(-120,400){\thicklines\vector(2,1){160}} +\put(-170,430){\circle{20}} +\put(-190,370){\circle{20}} +\put(-170,390){\circle{20}} +\put(-200,410){\oval(40,20)} +\put(-500,500){\small\sf key} +\put(-280,500){\small\sf hash function} +\put(-180,400){\circle{120}} +\put(20,700){\small\sf HTABLE} +\put(280,700){\small\sf CELL} +\put(220,600){\vector(1,0){100}} +\put(360,240){\vector(1,0){100}} +\put(220,240){\vector(1,0){100}} +\put(80,240){\vector(1,0){100}} +\put(80,480){\vector(1,0){100}} +\put(80,600){\vector(1,0){100}} +\put(320,580){\framebox(60,60){}} +\put(320,580){\line(1,1){60}} +\put(460,220){\framebox(60,60){}} +\put(460,220){\line(1,1){60}} +\put(320,220){\line(1,1){60}} +\put(320,220){\framebox(60,60){}} +\put(180,220){\framebox(60,60){}} +\put(180,220){\line(1,1){60}} +\put(180,460){\line(1,1){60}} +\put(180,460){\framebox(60,60){}} +\put(180,580){\line(1,1){60}} +\put(180,580){\framebox(60,60){}} +\put(40,220){\line(1,0){60}} +\put(40,280){\line(1,0){60}} +\put(40,340){\line(1,0){60}} +\put(40,400){\line(1,0){60}} +\put(40,460){\line(1,0){60}} +\put(40,520){\line(1,0){60}} +\put(40,580){\line(1,0){60}} +\put(40,160){\framebox(60,480){}} +\end{picture} diff --git a/utils/testchain.cc b/utils/testchain.cc new file mode 100644 index 0000000..ae5fef8 --- /dev/null +++ b/utils/testchain.cc @@ -0,0 +1,65 @@ +#include +#include "String.h" +#include "Chain.h" + +class C { +public: + C* Next; + char* CcuString; +inline C (const char* c) : Next (0), CcuString (NewString (c)) {} +inline C* GetNext () const { /*printf ("GetNext (%x) = %x)\n", this, Next); */ return Next; } +inline void SetNext (C* c) { /*printf ("SetNext (%x, %x)\n", this, c); */ Next = c; } +}; + +main () +{ + CcuChainOf l; + char c; + char s[80]; + while ((c = getchar ()) != EOF) { + switch (c) { + case 'a': + scanf (" %s", s); + l.Append (new C (s)); + break; + case 'p': + scanf (" %s", s); + l.Prepend (new C (s)); + break; + case '+': + l.RemoveFirst (); + break; + case '-': + l.RemoveLast (); + break; + case '\n': + continue; + case 'i': + { + int i; + scanf (" %d %s", &i, s); + CcuChainIterOf lj (l); + while ((i-- > 0) && ++lj) + ; + l.InsertBefore (lj, new C (s)); + break; + } + case 'j': + { + int i; + scanf (" %d %s", &i, s); + CcuChainIterOf lj (l); + while ((i-- > 0) && ++lj) + ; + l.InsertAfter (lj, new C (s)); + break; + } + } + CcuChainIterOf li (l); + while (++li) { + C* pt = *li; + printf ("%s ", pt->CcuString); + } + printf ("\n"); + } +} diff --git a/utils/testdirpath.cc b/utils/testdirpath.cc new file mode 100644 index 0000000..c709560 --- /dev/null +++ b/utils/testdirpath.cc @@ -0,0 +1,19 @@ +#include +#include +#include "DirPath.h" + +main () +{ + char line [256]; + const char *s; + const char *found; + CcuDirPath p; + const char* path = getenv ("PATH"); + p.AppendEnvPath (path); + + + while (s = gets (line)) { + found = p.FindFile (s); + printf ("%s %s\n", found ? "found" : s, found ? found : "not found"); + } +} diff --git a/utils/testdlist.cc b/utils/testdlist.cc new file mode 100644 index 0000000..9656883 --- /dev/null +++ b/utils/testdlist.cc @@ -0,0 +1,77 @@ +#include +#include "String.h" +#include "DList.h" + +main () +{ +#ifdef CPLUS_BUG19 + CcuDList l; +#else + CcuDListOf l; +#endif + char c; + char s[80]; + while ((c = getchar ()) != EOF) { + switch (c) { + case 'a': + scanf (" %s", s); + l.Append (NewString (s)); + break; + case 'p': + scanf (" %s", s); + l.Prepend (NewString (s)); + break; + case '+': + l.RemoveFirst (); + break; + case '-': + l.RemoveLast (); + break; + case '\n': + continue; + case 'r': + { + CcuDListIterOf li (l); + li.GotoEnd (); + while (--li) { + char* pt = *li; + printf ("%s ", pt); + } + printf ("\n"); + continue; + } + case 'i': + { + int i; + scanf (" %d %s", &i, s); + CcuDListIterOf lj (l); + while ((i-- > 0) && ++lj) + ; + l.InsertBefore (lj, NewString (s)); + break; + } + case 'j': + { + int i; + scanf (" %d %s", &i, s); + CcuDListIterOf lj (l); + while ((i-- > 0) && ++lj) + ; + l.InsertAfter (lj, NewString (s)); + break; + } + } +#ifdef CPLUS_BUG19 + CcuDListIter li (l); + while (++li) + printf ("%s ", (char*) *li); +#else + CcuDListIterOf li (l); + while (++li) { + char* pt = *li; + printf ("%s ", pt); + } +#endif + printf ("\n"); + } +} diff --git a/utils/testhash.cc b/utils/testhash.cc new file mode 100644 index 0000000..ccc5bab --- /dev/null +++ b/utils/testhash.cc @@ -0,0 +1,197 @@ +#include "HashTable.h" +#include +#include + + +CcuDictionnary dict (16); + +main () +{ + char line [256]; + char *s; + int i = 0; + + printf ("? to get help\n"); + + for (;;) { + s = gets (line); + if (! s) + break; + if (strcmp (s, ".") == 0) + break; + + /* help */ + if (strcmp (s, "?") == 0) { + printf ("name add name\n"); + printf ("-name delete name\n"); + printf ("# dump table\n"); +#ifdef TUNE + printf ("%% statistics\n"); +#endif + printf ("> rehash into smaller\n"); + printf ("< rehash into larger\n"); + printf (". quit\n"); + + continue; + } + +#ifdef TUNE + /* stats */ + if (strcmp (s, "%") == 0) { + dict.CollStats (); + continue; + } +#endif + if (strcmp (s, "#") == 0) { + CcuDictionnary dictbis (dict); + CcuHashCellIter hi (dictbis); + while (++hi) + printf ("%s\n", (*hi)->GetKey()); + continue; + } + + /* resizing */ + if (strcmp (s, ">") == 0) { + int s; + + s = dict.GetSize() / 2; + if (s < 1) { + printf ("too small\n"); + continue; + } + printf ("rehashing into smaller table : size %d\n", s); + dict.Resize (s); + continue; + } + + if (strcmp (s, "<") == 0) { + int s; + + s = dict.GetSize() * 2; + printf ("rehashing into larger table : size %d\n", s); + dict.Resize (s); + continue; + } + + /* delete */ + if (*s == '-') { + int found; + void* p = dict.Remove (++s, &found); + if (! found) + printf ("%s not found\n", s); + else + printf ("%s had info %d\n", s, (int) p); + continue; + } + + /* add */ +// BasicHashCell* h = dict.Add (s, &found); +// int found; +// if (found) +// printf ("%s duplicate\n", s); +// else +// h->SetInfo ((void*) i++); + dict[s] = (void*) i++; + } + +} + +#if 0 + +static char strout[200]; +static char *ptout; + +static h_strlen (char *str) +{ + int i = 0; + char *pt = str; + + while (*pt++) ; + + return (pt - str); +} + +static decimal(int i) +{ + int tmp = 0; + char buff[15]; + char *pbuff = buff; + + do { + tmp = i % 10; + *pbuff ++ = tmp + '0'; + i /= 10; + } while (i) ; + while (pbuff - buff) + *ptout++ = *--pbuff; +} + +static hexa(int i) +{ + + int tmp = 0; + char buff[15]; + char *pbuff = buff; + + do { + tmp = i % 16; + *pbuff ++ = "0123456789abcdef"[tmp]; + i /= 16; + } while (i) ; + while (pbuff - buff) + *ptout++ = *--pbuff; + +} + +static h_write(int fd, char *buff, int n) +{ + write(fd, buff, n); + +} + +print(char *fmt, int a1, int a2, int a3, int a4, int a5, int a6) +{ + char *pt = fmt; + char c; + int arg[6]; + int i = 0; + + ptout = strout; + arg[0] = a1; + arg[1] = a2; + arg[2] = a3; + arg[3] = a4; + arg[4] = a5; + arg[5] = a6; + + + for (c = *pt; c = *pt; pt++) { + if(c != '%'){ + *ptout++ = c; + continue; + } + switch (c = *++pt) { + default: + *ptout++ = c; + break; + case 'd': + decimal((int)arg[i++]); + break; + case 'x': + hexa((int)arg[i++]); + break; + case 'c': + *ptout++ = arg[i++]; + break; + case 's':{ + char *p; + for (p = (char *)arg[i++]; *p; p++) + *ptout++ = *p; + } + } + } + *ptout = 0; + h_write(1, strout, h_strlen(strout)); +} + +#endif diff --git a/utils/testid.cc b/utils/testid.cc new file mode 100644 index 0000000..bb79ced --- /dev/null +++ b/utils/testid.cc @@ -0,0 +1,61 @@ +#include "IdTable.h" +#include "String.h" +#include +#include +#include + +CcuIdTableOf table (2); + +main () +{ + char line [256]; + char *s; + int i = 0; + + printf ("? to get help\n"); + + for (;;) { + s = gets (line); + if (! s) + break; + if (strcmp (s, ".") == 0) + break; + + /* help */ + if (strcmp (s, "?") == 0) { + printf ("name\tadd name\n"); + printf ("-id\tdelete name associated to id\n"); + printf ("#\tdump table\n"); + printf (".\tquit\n"); + + continue; + } + + if (strcmp (s, "#") == 0) { + CcuIdIter hi = table; + while (++hi) + printf ("%d: %s\n", hi.CurId (), *hi); + continue; + } + + /* delete */ + if (*s == '-') { + bool found; + CcuID id = (CcuID) (atoi (++s)); + printf ("searching id %d\n", id); + char* info = table.Remove (id, &found); + if (! found) + printf ("%s not found\n", s); + else { + printf ("%s had info %s\n", s, info); + FreeString (info); + } + continue; + } + + /* add */ + CcuID id = table.Store (NewString (s)); + printf ("-> %d\n", id); + } + +} diff --git a/utils/testlist.cc b/utils/testlist.cc new file mode 100644 index 0000000..076d88e --- /dev/null +++ b/utils/testlist.cc @@ -0,0 +1,76 @@ +#include +#include "String.h" +#include "List.h" + +main () +{ +#ifdef CPLUS_BUG19 + CcuList l; +#else + CcuListOf l; +#endif + char c; + char s[80]; + while ((c = getchar ()) != EOF) { + switch (c) { + case 'a': + scanf (" %s", s); + l.Append (NewString (s)); + break; + case 'p': + scanf (" %s", s); + l.Prepend (NewString (s)); + break; + case '+': + l.RemoveFirst (); + break; + case '-': + l.RemoveLast (); + break; + case '\n': + continue; + case 'i': + { + int i; + scanf (" %d %s", &i, s); +#ifdef CPLUS_BUG19 + CcuListIter lj (l); +#else + CcuListIterOf lj (l); +#endif + while ((i-- > 0) && ++lj) + ; + l.InsertBefore (lj, NewString (s)); + break; + } + case 'j': + { + int i; + scanf (" %d %s", &i, s); +#ifdef CPLUS_BUG19 + CcuListIter lj (l); +#else + CcuListIterOf lj (l); +#endif + while ((i-- > 0) && ++lj) + ; + l.InsertAfter (lj, NewString (s)); + break; + } + } +#ifdef CPLUS_BUG19 + CcuListIter li (l); + while (++li) { + char* pt = (char*) *li; + printf ("%s ", pt); + } +#else + CcuListIterOf li (l); + while (++li) { + char* pt = *li; + printf ("%s ", pt); + } +#endif + printf ("\n"); + } +} diff --git a/utils/testregexp.cc b/utils/testregexp.cc new file mode 100644 index 0000000..5949ec8 --- /dev/null +++ b/utils/testregexp.cc @@ -0,0 +1,17 @@ +#include +#include +#include "RegExp.h" + + +main (int argc, char** argv) +{ + char* s = "toto"; + char* s1 = "tota toto"; + if (argc > 1) + s1 = argv[1]; + CcuRegExp re = s; + if (re.Compile ()) { + if (re.Match (s1)) + printf ("%s\n",s1); + } +} diff --git a/utils/testsignal.cc b/utils/testsignal.cc new file mode 100644 index 0000000..4971b51 --- /dev/null +++ b/utils/testsignal.cc @@ -0,0 +1,74 @@ +#include +#include +#include "Signal.h" + +extern "C" { + int write (int, const void*, unsigned int); + int strlen (const char*); +} + +const char* signal_strings [32] = { + "SIGHUP\n", + "SIGINT\n", + "SIGQUIT\n", + "SIGILL\n", + "SIGTRAP\n", + "SIGABRT\n", + "SIGEMT\n", + "SIGFPE\n", + "SIGKILL\n", + "SIGBUS\n", + "SIGSEGV\n", + "SIGSYS\n", + "SIGPIPE\n", + "SIGALRM\n", + "SIGTERM\n", + "SIGUSR1\n", + "SIGUSR2\n", + "SIGCHLD\n", + "SIGPWR\n", + "SIGVTALRM\n", + "SIGPROF\n", + "SIGIO\n", + "SIGWINDOW\n", + "SIGSTOP\n", + "SIGTSTP\n", + "SIGCONT\n", + "SIGTTIN\n", + "SIGTTOU\n", + "SIGURG\n", + "SIGLOST\n", + "SIGRESERVE\n", + "SIGDIL\n" +}; + +void +outputsig (int sig) +{ + write (1, signal_strings [sig-1], strlen (signal_strings [sig-1])); +} + +void +ignoresig (int) +{ +} + +main () +{ + { + printf ("block signal 2\n"); + CcuSignalBlocker b (2); + getchar (); + } + printf ("print signals 1 and 2\n"); + CcuSignalHandler s1 (1, outputsig); + CcuSignalHandler s3 (2, outputsig); + getchar (); + { + printf ("ignore signal 1\n"); + CcuSignalHandler s2 (1, ignoresig); + getchar (); + } + printf ("print again signal 1\n"); + while (1); +} diff --git a/utils/testtimer.cc b/utils/testtimer.cc new file mode 100644 index 0000000..3dc4b0c --- /dev/null +++ b/utils/testtimer.cc @@ -0,0 +1,43 @@ +#include "Timer.h" +#include +#include + +int foo_counter = 0; + +void +foo (Millisecond) +{ + CcuTimeStamp t; + fprintf (stderr, "tic %d\n", (unsigned long) (t)); + foo_counter++; +} + +void +baz (Millisecond) +{ + CcuTimeStamp t; + fprintf (stderr, "tac %d\n", (unsigned long) (t)); +} + +void +bar (Millisecond) +{ + printf ("%d\n", foo_counter); +// exit (0); +} + +CcuList l; + +main () +{ +#if 1 + CcuTimer t (1000, foo, 5); + CcuTimer s (1000, baz); + CcuTimer tt (10000, bar); +#else + CcuTimer t (20, foo); + CcuTimer tt (10000, bar); +#endif + for (;;) + ; +} -- cgit v1.1