%!PS-Adobe-3.0 %%Title: (sync-sr.fm) %%Creator: (FrameMaker+SGML 5.5 PowerPC: AdobePS 8.5.1) %%CreationDate: (10:11 PM Saturday, May 1, 1999) %%For: (Matt Bishop) %%Pages: 1 %%DocumentFonts: Times-Roman %%+ Times-Bold %%DocumentNeededResources: font Times-Roman Times-Bold %%DocumentSuppliedResources: %%DocumentData: Clean7Bit %%PageOrder: Ascend %%Orientation: Portrait %%DocumentMedia: Default 612 792 0 () () %ADO_ImageableArea: 30 33 582 761 %%BoundingBox: 0 0 612 792 %%DocumentProcessColors: Cyan Magenta Yellow Black %%DocumentCustomColors: (Red) %%+ (Green) %%+ (Blue) %%CMYKCustomColor: 0 1 1 0 (Red) %%+ 1 0 1 0 (Green) %%+ 1 1 0 0 (Blue) %%EndComments %%BeginDefaults %%ViewingOrientation: 1 0 0 1 %%EndDefaults userdict/dscInfo 5 dict dup begin /Title(sync-sr.fm)def /Creator(FrameMaker+SGML 5.5 PowerPC: AdobePS 8.5.1)def /CreationDate(10:11 PM Saturday, May 1, 1999)def /For(Matt Bishop)def /Pages 1 def end put /md 234 dict def md begin/currentpacking where {pop /sc_oldpacking currentpacking def true setpacking}if %%BeginFile: lw8_basic-2.2 %%Copyright: Copyright 1990-1997 Adobe Systems Incorporated and Apple Computer Incorporated. All Rights Reserved. /bd{bind def}bind def /xdf{exch def}bd /xs{exch store}bd /ld{load def}bd /Z{0 def}bd /T/true /F/false /:L/lineto /lw/setlinewidth /:M/moveto /rl/rlineto /rm/rmoveto /:C/curveto /:T/translate /:K/closepath /:mf/makefont /gS/gsave /gR/grestore /np/newpath 14{ld}repeat /framewidth -1 def /QDframwid -1 def /numframes Z /mTS matrix def /$m matrix def /av 84 def /por T def /normland F def /psb-nosave{}def /pse-nosave{}def /us Z /psb{/us save store}bd /pse{us restore}bd /level2 /languagelevel where { pop languagelevel 2 ge }{ F }ifelse def /level3 /languagelevel where { pop languagelevel 3 ge }{ F }ifelse def /odictstk Z /oopstk Z /fcl { count oopstk sub dup 0 gt { {pop}repeat }{ pop }ifelse countdictstack odictstk sub dup 0 gt { {end}repeat }{ pop }ifelse }bd /sfcl2 { /odictstk countdictstack store count/oopstk xs }bd /efcl2 { stopped{$error/newerror F put}if fcl }bd /noload Z /startnoload { {/noload save store}if }bd /endnoload { {noload restore}if }bd level2 startnoload /setjob { statusdict/jobname 3 -1 roll put }bd /setcopies { userdict/#copies 3 -1 roll put }bd /devg/DeviceGray def /devr/DeviceRGB def /devc/DeviceCMYK def /ststpgdev{}def /dopgdev{}def /stpgdev{}def /buf Z /didstop T def /sfcl { /didstop T store /odictstk countdictstack store count/oopstk xs currentfile cvx stopped { $error/newerror F put didstop { save/didstop xs /buf vmstatus exch sub exch pop dup 0 lt{pop 0}if dup 64000 gt{pop 64000}if string store { currentfile buf readline { (}efcl)eq{exit}if }{ /UnexpectedEOF errordict/rangecheck get exec }ifelse }loop didstop restore }if }if fcl }bd /efcl { /didstop F store exec stop }bd level2 endnoload level2 not startnoload /setjob { 1 dict begin/JobName xdf currentdict end setuserparams }bd /setcopies { 1 dict begin/NumCopies xdf currentdict end setpagedevice }bd /devg[/DeviceGray]def /devr[/DeviceRGB]def /devc[/DeviceCMYK]def /setpagedevice where{pop/realstpgdev/setpagedevice ld}if /SC_topddict Z /SC_spdict Z /dopgdev { md/setpagedevice undef SC_topddict realstpgdev }bd /stpgdev { SC_topddict dup 3 -1 roll { SC_spdict 2 index known { SC_spdict 2 index get dup 3 -1 roll { put dup }forall pop put dup }{ put dup }ifelse }forall pop pop }bd /ststpgdev { md/setpagedevice/stpgdev load put /SC_topddict 0 dict store /SC_spdict 3 dict begin /InputAttributes 0 dict def /Policies 0 dict def /OutputAttributes 0 dict def currentdict end store }def /sfcl/sfcl2 ld /efcl/efcl2 ld level2 not endnoload /pm Z /mT Z /sD Z /realshowpage Z /initializepage { mT $m currentmatrix mTS concatmatrix pop /pm save store mT concat }bd /endp { pm restore }bd /adjRect { dup 2 mul 6 2 roll 4 index sub exch 5 -1 roll sub exch 4 2 roll 4 index add exch 5 -1 roll add exch 4 2 roll }bd /frame1up { gS mTS setmatrix QDframwid lw /setstrokeadjust where{pop T setstrokeadjust}if clippath pathbbox 2 index sub exch 3 index sub exch currentlinewidth framewidth mul adjRect numframes dup 0 lt{pop 0}if { 4 copy rS currentlinewidth framewidth mul 4 mul adjRect }repeat pop pop pop pop gR }bd /$c devr def /rectclip where { pop/rC/rectclip ld }{ /rC { np 4 2 roll :M 1 index 0 rl 0 exch rl neg 0 rl :K clip np }bd }ifelse /rectfill where { pop/rF/rectfill ld }{ /rF { gS np 4 2 roll :M 1 index 0 rl 0 exch rl neg 0 rl fill gR }bd }ifelse /rectstroke where { pop/rS/rectstroke ld }{ /rS { gS np 4 2 roll :M 1 index 0 rl 0 exch rl neg 0 rl :K stroke gR }bd }ifelse %%EndFile level3 startnoload %%BeginFile: lw8_safeclipL12-1.0 /rectclip where { pop/rCa/rectclip ld }{ /rCa { np 0 1 index length 4 idiv { 2 copy 4 getinterval aload pop 4 2 roll :M 1 index 0 rl 0 exch rl neg 0 rl :K 4 add }repeat clip np pop pop }bd }ifelse /savedstack Z /subsavedstack Z /execstring Z /saferCa { /execstring xs /odictstk countdictstack store /oopstk 0 store count 0 ne { savedstack 0 eq{ 100 array/savedstack xs }if count savedstack 0 3 -1 roll getinterval astore/subsavedstack xs }{ /subsavedstack 0 store }ifelse execstring cvx stopped { $error/newerror F put newpath }if fcl subsavedstack 0 ne{ subsavedstack aload pop }if }bd %%EndFile level3 endnoload level3 not startnoload %%BeginFile: lw8_safeclipL3-1.0 /saferCa/pop ld %%EndFile level3 not endnoload %%BeginFile: lw8_level1_colorspace-2.0 /G/setgray ld /:F1/setgray ld /:F/setrgbcolor ld /:F4/setcmykcolor where { pop /setcmykcolor ld }{ { 3 { dup 3 -1 roll add dup 1 gt{pop 1}if 1 exch sub 4 1 roll }repeat pop setrgbcolor }bd }ifelse /:Fx { counttomark {0{G}0{:F}{:F4}} exch get exec pop }bd /$cs Z /:rg{devr :ss}bd /:sc{$cs :ss}bd /:dc { dup type/arraytype eq{0 get}if dup/DeviceCMYK eq { pop devc }{ /DeviceGray eq { devg }{ devr }ifelse }ifelse /$cs xdf }bd /:sgl{}def /:dr{}bd /:fCRD{pop}bd /:ckcs{}bd /:ss{/$c xdf}bd %%EndFile %%BeginFile: lw8_smooth-2.0 /junk Z /$z Z userdict/sc_smooth known not save systemdict/eexec known systemdict/cexec known and{ countdictstack mark F <1861AEDAE118A9F95F1629C0137F8FE656811DD93DFBEA65E947502E78BA12284B8A58EF0A3 2E272778DAA2ABEC72A84102D591E11D96BA61F57877B895A752D9BEAAC3DFD7D3220E2BDE7 C036467464E0E836748F1DE7AB6216866F130CE7CFCEC8CE050B870C11881EE3E9D70919> {eexec}stopped{ $error/newerror F put cleartomark countdictstack exch sub dup 0 gt{{end}repeat}{pop}ifelse F }{ {cleartomark pop T}{cleartomark pop F}ifelse }ifelse }{F}ifelse exch restore and level2 not and vmstatus exch sub exch pop 15000 gt and { currentfile eexec }{ /junk save store /$z 4795 string store currentfile $z readhexstring pop pop { currentfile $z readline not { stop }if (%ADOendeexec)eq { exit }if }bind loop junk restore }ifelse bc89dd93a62e673f17beaf79fc308801f2548cc0804b6e7e7211db7d71dcacee61d4db4b cc4c192da6ec1c558421396b4eb1944f656db0dda1626374294528747cd1ee8e10b15c5c 60b4182960a4687e44c92cff1b5d29a6b48ab8be9f8115c642241a4901d75a2b2ba55d27 0620b884f37689503d9c3a603e89a1f7de7447e2b23145af7219c13aad065fe60313c4f1 7d1959166b8493e26ee828d6e76ac472747b40432571d2d101dd3e8696849eb59b70c328 a0d1978eea220593cb3024a3cdecb89dcfa2d5ab3990b0bbc1a0c3351bfbd614917e7ede ef79cb8843325e4a81a80e809250ce8cf7297b5c684b53a56538b373cb085ec7436f82a2 e48b4789de5ac368defd97ca81e1e7a584b7e40bcf852c3d4f6cc387172784295be04ca2 0793987d64efc3cec658553cbe610fa9ebfe74341192cfcc6ecfd0a4843b740cbfd5ba5f 4c076050268792190676f76cacc26be628f8ae1c48419803c2a5108f6b1bec6664b06248 6a083d8092cb3c82b90bded3eed0387490fe971d6614c5d0259a846d43abb22e0dc06aa5 6911c9f53cf5524e138662db3fa2e6cdfe30873d916ed70e4962ed78b32491bee9a20a36 8be439dc6245d5751e6899e2214c07df7a87b66b1aba9a8196db2add3d3c4e3057dc9a9c dae1cc7884a6f29a5568b1ad64143fd479b8b4a8fbef4db889fe42edaadef0276f79d192 245b64299ad347b03ecf887db96b16fc319a1c7e59718ac7ff7bc7bafd4523bd88fd5ba8 1730817c2f529d3060cb591fe565d778fc989e7e14f7c2a7b85785c53af35fbe738da838 cdf80c9a048f4d7dbd58e2c9f527d2d3b2ad633da1005036298ec8533b94f84e9246289c f03336f4a7f657afbcbdd7b5e16187273c459f5626a5667db4fbf8b85ef2363ee6d89bd0 f402408cae3065fecf609fa290047e9656d853739f33b06d64a4a57f66f37f7da39fa89d 28962fddb76e8d05683c090664175dda6a1be57698894fd9f0f9d8da411b3f33b3b9c8d4 50a27c37e4a0e503418cd6c02cf60fa7fbb6f6f3e7509a45a54343ba3361168d895a27eb 6923ab65b019b188fe21c804629f2be2a20e6417841b4c8d5d68fb38db71ac7174e68d03 0611ea29f9ca740d0aef611a1f0003e1d136a539ed28d956a2a36bc7ae0ee290bd818175 3537e39be7777de1004964c769ec7e933b17c852cbd2da4cc100d9d3e141106eea9cc29a b1c910ead768527a02711ac035262c93a4548f67fb501a971e0a86d819547bac7c09f5fb aec454c9c7276f5e317cc8fd8876e7f90dc128f03052a756cf6db9876fe5a31c9d6a139b d46eb34272ff7992b86c88420ab07e801a39e91afb3c048b40913dc2d984e0c347b3daea 4e1ce5a15c8df7b65a0b89136f6a48a92b8f096d708a2bea4390f0454dcc3d9cd4f6b24d 8f06faa17694172213c481ceaa1f7fe33f1389142f017874560e1b0272385585fc5681de 4a909566cdcf9af80dfde23e9ad55083bb9422ae57b99bf3d5f081a4cbe0172f236abbb5 06fbbee46987543fc545e81ecd61477fadec55640ce9e41f8cbcd409f0e64c1b83193885 dffe0c4c383de781943a2a73ad1e0cbee0dccdbc3bbbc010f3adc8aa597210cae47003d2 952b8e874e1dee33ef1a78180a3ef6b22e1a66385147f550678510b15ed1a02fc85e736e 818f03b188d6a23f070e5720195a8e4c295d27129a5adedc1a95145d5e758649acebaec5 3d14cbc9feaf3abcecc976c03d00ea640c3b852baad7d8ab28c593cb74cbe2e98ea0b35c 8827eb3def1a79af837fb8468b2042acaf226b1f6d11abab2884f3fe49772325d273f893 82badc7b3b26e43c3f6170eec2c607cbe22225b9469de5509d31bafa1729c416089aeb1b 3b5477a985acdce47557bf29130d6232d2003a4314bf46c9c9383c437f1f2597f361405a b92f371458f13d8d400d78140df094a559bec9d240993f2d811f0d4eba7678773bb6c765 caf33bc77c0e2e156538b04423e513cb933d9ac8cec0444e0309bdb5c70f02a71f49cc99 7b8d98ecbaad1d53daa2811b07df94b2ec574326d760892fd1886703eed816bf2db96bbe f2ea914cef918d251a1203d93d549aa438a1309ce179c233111175d9e8bb6064dc2d52db 0976650b1d5d194eab20ed3e500db4410852390e69e56e4ab71e97a87680fa620d8d32d5 b93e40cdec16ed20af734e792ddb938b8a65ccb811f369cc1e9e8819e76d7908e310e5ea 018c05d2db74abc0e8e5da75431324a3ba298820009d6fcc9d5693ec900aab8745112928 ef24a8da713dc8ecebb84394f0058335dafb459971cf20e8c15d40f35643a0c56c95bd86 faefe8e251fb9f79a6db5e481032f812454181a73375ab1efe575d745fe7073adaf60865 e992c7f5e969f4e267b323bb022a7f8b1b480a97ca735212b4d47aff196f37fa177c765a f03487b323f2ce11314906d04dcb0c3c770ea581fcff70cc1553b4615a6d8dfd69001581 77a9fcc035cb44d630b99cdae09de33c09c9ab8bcc021e72fd88cccf3a9cd578a34a3f96 ae636047fc5f468d22cea0cf509e1588563c7e25d4f0d41b30373dfd1cb69a8e37a51a57 5d1cab7a3c9d04f3d388db04ed78d3e81e7b53dffa94507df197e467565d4169fc996e46 671f62236b00f4e9dc36bd3709400771ed4b335bcdb3c2974c0a00c03717ed980e98dc1b 2473f38bd1e1fe4da0fea5169aa1e06054315579a5898bbe3c9fabb829485562e9d25248 142575f3bfd311dde2297c7883b0b9ed0c3ffe3358880c8c77be01cd6408dc743634006f d888ffc1e4562ed1166bbdcbe971a269afae52a8a384eaf8880433a053bd072accc62214 04bb18e98b9cebb3c05e56216b56174bd432e41b8c82c82d7114adb16ad941fe87c0657e 03203fc26ed43096e7e262a8f86fc07506b3ffcb5888bcbd3482977716a337a54c0649c1 2579b4322afcb34486a5593fb9d58cb16a0368f593c3c52608bf31c6a3b48a04be605c60 b15ea2670c3e89d293ba065db7d5471d3f56d7ffe3ba48814d5a1f4a81d9865d1f2340cc 3e5ced23ce6827065312bb9ae13e0d3cc53e79aaa764a229be203d1b45963d17e983f72a f97bac50984a360768f459585745d94f7b77457bb8bc802332aef4e65ae7200d94750aea b4ede71ade6ee000cf122866f514747784f7e497a6e48b82467515f474d38ec690bac331 d8246eacf2b10d7f1b1b74b1020843b3d934115e23fc1845e5161f5d494badc22f5e68fa 4d1cb3933ac6467e3cc58099adcf4832c156ce1714ee44c6368dee76483e47260dda3af1 97f938530475ede86f1b7ccfeeaeab2518f1c05ba983ada09c069d0f5e7e34c7832ec4c1 9e68e78a51e25540cadf7b64d1eca1141816aba211cea9b8aa4ff9542f26cd6adabe28bc 03c20d2fded392cc160e5ca6f8216611e41b504567927a560537a57e09dd8db552fab25d 59318ad3f7e6b6e10ad49fbb4caf8d5205d494666f5c51a599df65d2c89fe65c92ec733d 78205e987659e02d244684cff18d2b6f1d0d33ccae32339b840246a50cccebc952c7e705 d30fcb5dc94da2eab7ba3c7f9fe536eba4971a8b8e0744a0a094d531ae611042c347fac7 3b770c445121464594a2c5eb9d923f0fe2f33500b403e4b5daf64acd4a4a89d8469be57f a393a844e082dec5af117b77e7be0eb6474eb47b00503bc68c809f0de147f7d0f1f68798 89b1781d09c0dc12c882dba17e23de1311321fa851a94c51a8801a4bf7c888e4805b1fc8 2fe638aaabb33b13ab0ae024b0b767108a068d562ebd11a91ad8706df9360a914927b752 ddb4d176f72661d12a6349a58a8d688b311ec8e1797b011dbb47760765b88a651b42cace e60730553040e64711fff10e3285171ed1dae0545b6cfe3503b24f9d135d04d467372b11 ef3c1b9aa7c4272e281df0b6e7cc7e7984b00cbda5bbd81c939213c32176b5e062660e54 8943afe1e39a38cb171d7591c01ac4eea3963572ce008d48727ec8efc0ead1cc4c86d9ce 3d9d5c21f58a41359f2599d4cb15762366c3d3c5b7abe7970a312ea2fb14f5e74f78284a 624fe71f362f4b4d892ac6a87cf8794982964aa0e6153477da1484d35787edb8a2aad90b 3cada91934c118098617e1254d834d86154e6585628663741ae0d7bf339b168d4acec9da 94c12bd5449ecf97a7483e27c47160f838ac076f79b82fc0bd8a3b0011bd0bbb2e6a38ff a7a63daf463cacb10f56c459bec699ecbcc52be2e5c57bd013c4682b01199cdd89ad2bd1 8584b05e6178c2d6fdc6e19a375ae4a91428d4c0aff2d07e5b6d159351475e57419f2ec8 a343d209e36ddb078027e03d4f179fbf675373c485be1a147ffda00821aba79187471ef9 55f197d6bf0f442244d5b4d1e8392ba11965b6bfa8db30c0e48984883a9b6ec840a9b6fc 93df40c82906dac253e0afd633c336cedac8dd7213e4766761ec3cf3a8aacb1fe1bf2d61 d64c5addaf1d836e199df0ef5e61029f1e6a28c17eba0d8bdf81f358058086ee365b4127 a1bb4b273b84a825fdcc4ebd3abdd7ca243788e1eb48aed96626bd2f2ef8a2e1a082acb6 64b5af60797d9ad021ac616e4d65c1ddbc4a74928b7ab089a10db9312a18d682cccce0b5 53e2f454af0ca21f59b96ee7d71a97db2607dba56daad1bef91c66c44f6fc53d2b4bfebb 876cd478243a9454e8864f65067787b96cb4b3f92a7c90f959ce3324c94590348a8d2709 f4feea7adaf4c56199da203d8f4b9866fe7362d86401b0cfe1913476eb9f7f4d4df0f2f3 8e7ee153c99dda1ccc6eec2cd1b76c52c553ceca04ad525fc17a4a7af197d158c02e6469 cd7e3be4b934ed0e1499153bb98b4363159a60c9ce892af085511cfc31cfa7fa1baf0e22 d138b6a54e93532486b633024d18afd6a610ede93b2a554abc44da890144ff060d1db1e3 e57df15229afe56c49e3c7f68e6ef0221942945f3c6675b498e94fd834bfcd869bba0a90 179d3eb859ea6b749871a62c0e8513ab69b63e35b5bf8060f25442a6670293cee9a86928 997a54929695b3eda64483ecdf8cfb2732729a652e08a3aa82ecb5ac45aad7227f7f7ee9 1d8c222933cfac18561f27939ca29fbf5eebd634555856519cd2f1573281514aff3c6091 5142196c57177ef2086958fbb3fae8f448118c435ae82b7b17a8445e0806b8442e1f9347 c7940af7342dc3d5638958f9a3952768f6c244920e281a163cc87fbdbec99080b8d7e24b 9e35e152aa600a6a4faebb140857e536bb819f4cd9992b9dfaa60ac33a8ff2ed14c791e7 0290e5f6d810488d672224bfeeca6907b41f46489091322b6830a8424fa2a0061151ee61 ef1cfb1a83c4538025605554ed3c734fd8e39bd6da4af6e5a57593da83fd9f511af49b84 5ef7cb34495b54070ea204daff2e266f5a1619928e73de256979f4afdeb42b889064461b f7263f82a2c233d113de9ba4bc415ed68241bc3862a34050479aa86eabb80cef561ad640 80be73a5da7fbb4905bee2fbbbc7c85a5512c6e747a5eb18942e47c17e5da1127910d8e6 ed7a37d3b846cfda6b0adc8dd594ffe14995b32babcb4d99869090abd57e8ab397e33406 2c7790b673d184738a9e9d578f54ccfcdcc46200d2bb07c5dea46261680dccb4f011428f 289c2049ff81040685aec9ae8c9016c491d02f14f2c4fd79e053147520d59d034c470569 e602c662af4aafc5d2fb0d3af218b26b769ac25fe9999ba3c2eaa8a9ffa93a6f4b743608 f5797772e53cfd2f3c6a45b1a843fcfc6aedc66bc35db923bea051301fa5a959a11eb0b6 f02f7c4e6b004ce548b77e032e36f93cce55f507d5892b32da81a7ce5016326aacd06dd5 0a1b3c615abf06ab6eb1bd643f3c3d7fbc9e18bc11ee29b2113d5c458f20713d3b811da8 883f8b95557ffb1eaf229b89fc98f7623ff9140bcebc6b8677ad7d99373e5757292a3d6a 83a5c053e61224b4dc14e42626637e714c514092e569101ce75f0533605802455f03bf0e 336c0f9788569f3b2b4b79c01628abc3b243decb3c55e1273ff7b83ae61d936bd413580f 3f279437da1fdad63d785ff7bedd815a6d6e4964231adf28640794c33a30686e5f60fe78 c5e87ffd27a84452dc111bbd7c2d0b4e7781c102547f5533ea676a33b8d58918f197a8cd a1e90be9620e43af9d5b07ee2ae5d702683c9a6973fdaafaec74d62cb29b18272b3f8840 a1a8372ddf4bfee1b7ea037ed41fdc2cb1cb4da3ccb3e121354db0d5bc83c4d4c323083d 75dd32c20607f81fcd221751c5af21775659e804b9941cf6fbe4c8846be20e546f88a588 7bbff8cab4489883fdd2be613313174c015d69eee40eee4242e173aaac87585597feff69 a64f4ef2dbf00dbfe9ad946892816711c7199d4068d8494ba1df614d9bbe1c7b63996e98 12b913966a42a41be0dc85feff232e625f4dd0b01cb7674b232e89d5da143f9d12a9d8a9 aa8b62038721ad9e4a6438cb842d1828458fc25e5b0b6ea795f7a14d2f55f1451c615f4c 211469611d1348952e655e1d93188c0dc6dd719630a42fe5baf8cde0c03b1e0aa76a2cd4 fec86a3042f8a2ea5af50a43af52c1217f6be45b152e47d165b89a54ede432f1eb3ed3ef 428c228dd53c44db15541704b99413b465ff65ca0e9d6be932a18eca713c71ba7dc89238 1e0c2c62cf8567df2f997e58ed2c1ffe17d2fc96db942ce3950e28d1287b85ff7d07adb9 059629dc89b9b0ed2213e45d8a20188cae18f3391887387bf8ba0a12fe21fa0aa521bfa3 718f7abe76388e 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %ADOendeexec %%EndFile %%BeginFile: lw8_bubn-2.1 /$t Z /$p Z /$s Z /$o 1. def /2state? F def /ps Z level2 startnoload /pushcolor/currentrgbcolor ld /popcolor/setrgbcolor ld /setcmykcolor where { pop/currentcmykcolor where { pop/pushcolor/currentcmykcolor ld /popcolor/setcmykcolor ld }if }if level2 endnoload level2 not startnoload /pushcolor { currentcolorspace $c eq { currentcolor currentcolorspace T }{ currentcmykcolor F }ifelse }bd /popcolor { { setcolorspace setcolor }{ setcmykcolor }ifelse }bd level2 not endnoload /pushstatic { 2state? $o $t $p $s $cs ps }bd /popstatic { /ps xs /$cs xs /$s xs /$p xs /$t xs /$o xs /2state? xs }bd /pushgstate { currentpoint pushcolor currentlinewidth currentlinecap currentlinejoin currentdash exch aload length np clippath pathbbox $m currentmatrix aload pop }bd /popgstate { $m astore setmatrix 2 index sub exch 3 index sub exch rC array astore exch setdash setlinejoin setlinecap lw popcolor np :M }bd /bu { errordict/nocurrentpoint{pop 0 0}put 2state? { pushgstate gR }if pushgstate gR pushgstate pushstatic pm restore mTS setmatrix }bd /bn { /pm save store popstatic popgstate gS popgstate 2state? { gS popgstate }if }bd /cpat{pop 64 div setgray 8{pop}repeat}bd %%EndFile %%BeginFile: lw8_basic_text-2.0 /S/show ld /A{ 0.0 exch ashow }bd /R{ 0.0 exch 32 exch widthshow }bd /W{ 0.0 3 1 roll widthshow }bd /J{ 0.0 32 4 2 roll 0.0 exch awidthshow }bd /V{ 0.0 4 1 roll 0.0 exch awidthshow }bd /fcflg T def /fc{ fcflg{ vmstatus exch sub 50000 lt{ (%%[ Warning: Running out of memory ]%%\r)print flush/fcflg F store }if pop }if }bd /$f[1 0 0 -1 0 0]def /:ff{$f :mf}bd /:dff{findfont}def /MacEncoding StandardEncoding 256 array copy def MacEncoding dup 9/space put 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/space/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 MacEncoding 128 128 getinterval astore pop level2 startnoload /copyfontdict { :dff dup length dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall }bd /$ckeyd md def /:skey { 1 index maxlength 2 index length sub ge { begin /$mkeys 20 dict def /$mkeys load end dup/$ckeyd xs }if 3 1 roll put }bd /fD1pass { 40 $ckeyd //md ne { pop 1 }if $ckeyd exch :skey }bd /:searchdict Z /:searchdict { exch 2 copy known { get }{ exch/$mkeys get :searchdict }ifelse }bd /lU { //md exch 2 copy known { get }{ exch /$mkeys get :searchdict }ifelse }bd level2 endnoload level2 not startnoload /copyfontdict { :dff dup length dict copy begin }bd /fD1pass/def ld /lU/load ld level2 not endnoload /fD Z /sf Z /scf Z /sf1pass { lU setfont }bd /scf1pass { exch lU exch scalefont fD }bd /scf2pass { scalefont fD }bd md/fontname known not{ /fontname/customfont def }if /Encoding Z /:mre { copyfontdict /Encoding MacEncoding def fontname currentdict end definefont :ff fD }bd /:bsr { copyfontdict /Encoding Encoding 256 array copy def Encoding dup }bd /pd{put dup}bd /:esr { pop pop fontname currentdict end definefont :ff fD }bd /ps Z /fz{/ps xs}bd /cF/currentfont ld /mbf { /makeblendedfont where { pop makeblendedfont /ABlend exch definefont }{ pop }ifelse fD }def %%EndFile %%BeginFile: lw8_bitmapfont-2.0 /$n F def /CharData Z /CharTable Z /Gnormsize Z /Gkernmax Z /Gdescent Z /rowbytes Z /bitwidth Z /bitheight Z /dx Z /XOffset Z /YOffset Z /width Z level2 startnoload /xSmt Z /ySmt Z /str Z /str1 Z /wb Z /:s { $n userdict/sc_smooth known and vmstatus pop exch pop bitwidth 3 mul sub 1000 gt and bitwidth 4 mul 7 add 8 idiv 4 mul 65535 le and bitwidth 0 ne and bitheight 0 ne and { /xSmt bitwidth 4 mul store /ySmt bitheight 4 mul store /str CharData dx get store /wb bitwidth 7 add 8 idiv store /str1 wb string store xSmt ySmt T bitwidth bitheight str1 wb 4 mul string bitwidth 4 mul 7 add 8 idiv 4 mul string T F sc_initsmooth [xSmt 0 0 ySmt neg 0 ySmt] { str 0 wb getinterval str1 copy sc_smooth { /str str wb str length wb sub getinterval store }if } dup exec pop dup exec pop }{ bitwidth bitheight T [ bitwidth 0 0 bitheight neg 0 bitheight ] { CharData dx get } }ifelse }bd level2 endnoload level2 not startnoload /Width Z /Height Z /bitfontdict 9 dict begin /ImageType 1 def /MultipleDataSource F def /Decode[1 0]def /DataSource{CharData dx get}bd /BitsPerComponent 1 def currentdict end def /:s { bitfontdict begin /Width bitwidth def /Height bitheight def /ImageMatrix[Width 0 0 Height neg 0 Height]def /Interpolate $n def currentdict end }bd level2 not endnoload /BMEncoding MacEncoding dup length array copy 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 BMEncoding 0 32 getinterval astore pop BMEncoding 202/blank put /:bbf { 13 dict begin /MFontType 0 def /CharTable xdf array/CharData xdf .96 exch div /Gnormsize xdf 2 index /Gkernmax xdf 1 index /Gdescent xdf 3 index div 4 1 roll 2 index div 1. 5 2 roll exch div 4 1 roll 4 array astore /FontBBox xdf /FontType 3 def /FontMatrix[1 0 0 1 0 0]def /Encoding BMEncoding def /BuildChar { exch begin sD begin /dx xdf save CharTable dx 6 mul 6 getinterval{}forall /bitheight xdf /bitwidth xdf .96 div /width xdf Gkernmax add /XOffset xdf Gdescent add /YOffset xdf /rowbytes xdf rowbytes 255 eq { 0 0 0 0 0 0 setcachedevice } { Gnormsize dup scale width 0 XOffset YOffset bitwidth XOffset add bitheight YOffset add setcachedevice rowbytes 0 ne bitheight 0 ne and { XOffset YOffset :T np 0 0 :M bitwidth bitheight scale :s imagemask }if }ifelse restore end end }def CharData dup }bd /:ebf { /FontName xdf pop pop FontName currentdict end definefont :ff md/rename known{dup/FontName get rename}if def }bd %%EndFile /currentpacking where {pop sc_oldpacking setpacking}if end %%EndProlog %%BeginSetup md begin /fD/def ld/sf/setfont ld /scf/scf2pass ld sfcl{ %%BeginFeature: *InputSlot OnlyOne %%EndFeature }efcl sfcl{ 792.008 612.006 1 0 0 %%BeginFeature: *CustomPageSize True 4 dict begin 3 1 roll 2 array astore /PageOffset exch def 2 mod 0 eq {exch} if 2 array astore /PageSize exch def /ImagingBBox null def currentdict end setpagedevice %%EndFeature }efcl sfcl{ %%BeginFeature: *Resolution 600dpi 1 dict dup /HWResolution [600 600] put setpagedevice %%EndFeature }efcl (Matt Bishop)setjob /mT[1 0 0 -1 30 761]def /sD 16 dict def 600 level2{1 dict dup/WaitTimeout 4 -1 roll put setuserparams}{statusdict/waittimeout 3 -1 roll put}ifelse /$n T def %%IncludeFont: Times-Roman %%IncludeResource: font Times-Roman /f42/Times-Roman :mre /f56 f42 10 scf %%IncludeFont: Times-Bold %%IncludeResource: font Times-Bold /f69/Times-Bold :mre /f83 f69 18 scf /f96 f69 12 scf /f109 f42 12 scf /Courier findfont[10 0 0 -10 0 0]:mf setfont % PostScript Prolog for use with Macintosh Frame Products 5.5 % Copyright (c) 1986-98 Adobe Systems Inc. All rights reserved. %%BeginProcSet: "FrameMacDict" 556 12 userdict/FrameMacDict 250 dict put FrameMacDict begin systemdict/setpacking known{/fMSP currentpacking def true setpacking}if[/fM1/fMi1/fMi2/fM2/fM3/fMcl /fMAB/fM5/fM6/fM0/fM8/fM9/fMBC/fMC/fMCD/fMCK/fMCR/fMCS/fMib/fMCN/fMCE/fMCO/fMef /fMet/fMeh/fMew/fMey/fMex/fMei/fMej/fMek/fMel/fMeb/fMGC/fMGL/fMGM/fMIT/fMIx /fMJB/fMJC/fMJG/fMJK/fMJM/fMJR/fMJY/fMK/fML1/fMM/fMCP/fMNC/fMNg/fMND/fMOx/fMPC /fMPG/fMPH/fMPt/fMRC/fMS/fMSJ/fMUC/fMUM/fMUY/fMY/fMdm/fMax/fMa2/fMi/fMk/fMSD /fMcu/fMsg/fms/fMTV/fmBS/fMdp/freq/sangle/sflipx/sflipy/pflipx/pflipy/xx/yy /xindex/yindex/fM1B/fM0B/fMdc/fMds]{0 def}forall/T true def/F false def/FmBD{ bind def}bind def/fmXD{exch def}FmBD/fmBx{dup length exch{dup/FrameMacDict eq{ pop FrameMacDict}{dup type dup/arraytype eq exch/packedarraytype eq or{dup xcheck{fmBi}if}if}ifelse exch}forall systemdict/setpacking known{packedarray}{ array astore}ifelse cvx}FmBD/fmBi{bind fmBx}FmBD/fmax{2 copy lt{exch}if pop} FmBD/fmin{2 copy gt{exch}if pop}FmBD/fML1/languagelevel where{pop languagelevel }{1}ifelse 2 lt def/fMCE fML1{/statusdict where{pop statusdict/processcolors known{statusdict/processcolors get exec 1 gt}{F}ifelse}{F}ifelse}{T}ifelse def /fMXN/statusdict where{pop statusdict/product known{statusdict/product get}{ (Unknown)}ifelse}{(Unknown)}ifelse def/fMHq fMXN(LaserWriter-Sim)eq def fML1{ userdict/FrMacBegin{FrameMacDict begin}fmBi put/FmE{end}FmBD}{/fMdc 6 array def userdict/FrMacBegin{FrameMacDict begin/fMds currentcolorspace store mark 0 0 0 0 0 currentcolor fMdc astore pop cleartomark}fmBi put/FmE{fMds setcolorspace mark fMdc aload pop setcolor cleartomark end}FmBD}ifelse/fMcu F def/fMsg F def /fMSD F def/fmSK{pop pop pop pop}FmBD/FmG/gsave load def/FmR/grestore load def /fm_l/grestoreall load def/fm_v/save load def/fm_g/setgray load def/fm_r /setrgbcolor load def/fm_h/sethsbcolor load def/fm_f/fill load def/fm_e/eofill load def/fm_t/stroke load def/fm_m/imagemask load def/fm_i/image load def/fm_s /show load def/fm_a/ashow load def/fm_w/widthshow load def/fm_y/awidthshow load def/RealKshow/kshow load def/fm_si systemdict/image get def/fm_sg systemdict /setgray get def/fm_sc systemdict/currentgray get def/fm_su systemdict /settransfer get def/fm_sx systemdict/currenttransfer get def fMCE{ /SysColorimage systemdict/colorimage get def}if/fMdm matrix def/fMax matrix def /fMa2 matrix def/fmSM{fMax currentmatrix pop}FmBD/fmRM{fMax setmatrix}FmBD/FmRF {currentpoint 2 copy translate 4 2 roll{-1 1 scale}if rotate neg exch neg exch translate}FmBD systemdict/pdfmark known systemdict/currentdistillerparams known and{/fMAB true def/FmPD/pdfmark load def/FmPT/fm_s load def currentdistillerparams/CoreDistVersion get 2000 ge{/FmPD2/pdfmark load def % % Procedure /FmPA defines named destinations. % In order to accommodate all possible scenarios, FrameMaker defines named destinations % for each paragraph, which allows links to arbitrary points in already generated % PDF documents. This feature may cause larger PDF files to be created. % The fmCG flag tells Distiller whether to create named destinations for each % paragraph. This prolog defines two versions of this flag. One of these versions must be % commented out, and the other must be uncommented. % % The following fmCG flag will cause Distiller to create a named destination for % each paragraph. % /fmCG{false}FmBD % % The following fmCG flag will cause Distiller to create a named destination only % for each paragraph known to be a destination. If you do not want Distiller to create % named destinations for each paragraph (thus creating smaller sized PDF documents), % uncomment the following statement and comment out the previous statement. % CAUTION: By making the following statement active, you may lose some links in the % resulting PDF documents. % %%/fmCG { dup 127 string cvs 0 get (G) 0 get eq } FmBD % /FmND{mark exch/Dest exch 5 3 roll/View[/XYZ 5 -2 roll FmDC null]/DEST FmPD} FmBD/FmPA{fmCG{pop pop pop}{FmND}ifelse}FmBD}{/FmPD2/cleartomark load def/FmPA{ pop pop pop}FmBD/FmND{pop pop pop}FmBD}ifelse}{/fMAB false def/FmPD/cleartomark load def/FmPD2/cleartomark load def/FmPT/pop load def/FmPA{pop pop pop}FmBD /FmND{pop pop pop}FmBD}ifelse/FmDC{transform fMdm defaultmatrix itransform cvi exch cvi exch}FmBD/FmBx{dup 3 index lt{3 1 roll exch}if 1 index 4 index lt{4 -1 roll 3 1 roll exch 4 1 roll}if}FmBD/fmkn{2 copy known{get T}{pop pop false} ifelse}FmBD/fmfp{exch currentfont dup/FontMatrix get exch/FontInfo fmkn{T}{ currentfont/df fmkn{dup/FontInfo fmkn{3 1 roll/FontMatrix get mtx concatmatrix exch T}{pop pop pop F}ifelse}{pop pop F}ifelse}ifelse{3 -1 roll fmkn{exch 0 3 1 roll dtransform neg exch pop exch pop}{pop exec}ifelse}{exec}ifelse}FmBD/FmTx{ /fM3 fmXD/fM2 fmXD/fM1 fmXD 0 32 fM1 fM3 stringwidth pop fM2 sub fM3 length div sub 0 fM3 fm_y}FmBD/fMOx matrix def fMOx currentmatrix pop/FmSO{/FmOs save def fmSM fMOx setmatrix}FmBD/FmIO{fmRM}FmBD/FmEO{FmOs restore}FmBD/fmSC{0 1 fMGL{ dup fMRC exch get exch dup fMNC exch get exch dup fMBC exch get exch 4 1 roll /fmRY fmGG exec fMeb fMC eq{pop pop pop}{fMeb fMM eq{pop pop exch pop}{fMeb fMY eq{pop 3 1 roll pop pop}{fMeb fMK eq{4 1 roll pop pop pop}{pop pop pop pop 0} ifelse}ifelse}ifelse}ifelse 1 exch sub 255 mul fMGC 3 1 roll put}for}FmBD/fmSW{ /fMOP fmGG{nulldevice}{fMNg{{10000000 div}}{{10000000 div 1 exch sub}}ifelse fm_su}ifelse}FmBD fML1{/Fmi{save userdict/fM7 3 -1 roll put/fM9 F def{{dup length dup 1 sub/fMGL fmXD array/fMGC fmXD/fMBC fmXD/fMNC fmXD/fMRC fmXD fMeb fMCP ne{fmSC{fMGL mul cvi fMGC exch get}currenttransfer fmcp fm_su}{fMCE{ currentcolortransfer/gryt fmXD/blut fmXD/grnt fmXD/redt fmXD 0 1 fMGL{/fMIx fmXD/fMUC 1 fMRC fMIx get sub def/fMUM 1 fMNC fMIx get sub def/fMUY 1 fMBC fMIx get sub def/fMk fMUC fMUM fmin fMUY fmin def/FmU fMk/currentundercolorremoval where{pop currentundercolorremoval exec}{pop 0}ifelse def fMRC fMIx 1 0 fMUC FmU sub fmax sub redt exec put fMNC fMIx 1 0 fMUM FmU sub fmax sub grnt exec put fMBC fMIx 1 0 fMUY FmU sub fmax sub blut exec put fMGC fMIx 1 fMk /currentblackgeneration where{pop currentblackgeneration exec}{}ifelse sub gryt exec put}for{fMGL mul cvi fMRC exch get}{fMGL mul cvi fMNC exch get}{fMGL mul cvi fMBC exch get}{fMGL mul cvi fMGC exch get}setcolortransfer /setundercolorremoval where{pop{pop 0}setundercolorremoval}if /setblackgeneration where{pop{}setblackgeneration}if/fM9 T def}{0 1 fMGL{fMGC exch dup dup fMRC exch get .3 mul exch dup fMNC exch get .59 mul exch fMBC exch get .11 mul add add put}for{fMGL mul cvi fMGC exch get}currenttransfer fmcp fm_su}ifelse}ifelse}{fMeb dup fMK eq exch fMCP eq or{dup length 1 sub/fMGL fmXD /fMGC fmXD{fMGL mul cvi fMGC exch get}currenttransfer fmcp fm_su}{pop fmSW} ifelse}ifelse}{fMeb dup fMK eq exch fMCP eq or{{{1 exch sub}currenttransfer fmcp fm_su}if}{pop fmSW}ifelse}ifelse/fMIT fmXD/fM5 fmXD/fM8 fmXD/fM6 fmXD/fMrw fmXD/fMcl fmXD translate rotate scale{-1 1 scale}if fMIT 1 ne{{1 exch sub fMIT mul 1 exch sub}currenttransfer exch fmcp fm_su}if/fMi1 fM8 string def fMcl fMrw fM6[fMcl 0 0 fMrw fMcl 2 div fMrw 2 div]{currentfile fMi1 fM5{readstring}{ readhexstring}ifelse pop}fM9{{fMi1}{fMi1}T 3 SysColorimage}{fm_si}ifelse fM7 restore}FmBD}{/Fmi{save userdict/fM7 3 -1 roll put/fM9 F def{{dup length dup 1 sub/fMGL fmXD array/fMGC fmXD/fMBC fmXD/fMNC fmXD/fMRC fmXD fMeb fMCP ne{fmSC[ /Indexed/DeviceGray fMGL{fMGC exch get}]setcolorspace}{[/Indexed/DeviceRGB fMGL {dup fMRC exch get exch dup fMNC exch get exch fMBC exch get}]setcolorspace} ifelse}{dup length 1 sub/fMGL fmXD/fMGC fmXD[/Indexed/DeviceGray fMGL{fMGC exch get}]setcolorspace fMeb dup fMK ne exch fMCP ne and{fmSW}if}ifelse}{1 5 index bitshift 1 sub/fMGL fmXD[/Indexed/DeviceGray fMGL 5 -1 roll{{fMGL div 1 exch sub}}{{fMGL div}}ifelse]setcolorspace fMeb dup fMK ne exch fMCP ne and{fmSW}if} ifelse/fMIT fmXD/fM5 fmXD/fM8 fmXD/fM6 fmXD/fMrw fmXD/fMcl fmXD translate rotate scale{-1 1 scale}if fMIT 1 ne{{1 exch sub fMIT mul 1 exch sub} currenttransfer exch fmcp fm_su}if/fMi1 fM8 string def 7 dict begin/ImageType 1 def/Width fMcl def/Height fMrw def/ImageMatrix[fMcl 0 0 fMrw fMcl 2 div fMrw 2 div]def/DataSource{currentfile fMi1 fM5{readstring}{readhexstring}ifelse pop} def/BitsPerComponent fM6 def/Decode[0 fMGL]def currentdict end fm_si fM7 restore}FmBD}ifelse/fmIv{[{1 exch sub}/exec load dup currenttransfer exch]cvx bind fm_su}FmBD/fm3b{dup fMCP eq{pop 0 1 4 index length 1 sub{3 index 1 index get .3 mul 3 index 2 index get .59 mul 3 index 3 index get .11 mul add add round cvi 4 index 3 1 roll put}for pop pop}{/fmRY fmGG 0 1 6 index length 1 sub {5 index 1 index get 255 div 5 index 2 index get 255 div 5 index 3 index get 255 div 4 index exec 6 index fMC eq{pop pop pop}{6 index fMM eq{pop pop exch pop}{6 index fMY eq{pop 3 1 roll pop pop}{6 index fMK eq{4 1 roll pop pop pop}{ pop pop pop pop 0}ifelse}ifelse}ifelse}ifelse 255 mul round cvi 6 index 3 1 roll put}for pop pop pop pop}ifelse}FmBD/Fmci{save userdict/fM7 3 -1 roll put /fMIT fmXD/fM5 fmXD/fM8 fmXD/fM6 fmXD/fMrw fmXD/fMcl fmXD/fMi1 fM8 string def /fM0 fM8 3 idiv def/fMs fMi1 0 fM0 getinterval def/fMs2 fMi1 fM0 dup getinterval def/fMs3 fMi1 fM0 dup 2 mul exch getinterval def translate rotate scale{-1 1 scale}if fMIT 1 ne{{1 exch sub fMIT mul 1 exch sub}currenttransfer exch fmcp fm_su}if fMcl fMrw fM6[fMcl 0 0 fMrw fMcl 2 div fMrw 2 div]fMeb fMCP eq fMCE and{{currentfile fMi1 fM5{readstring}{readhexstring}ifelse pop pop fMs} {fMs2}{fMs3}T 3 SysColorimage}{{fmIv currentfile fMi1 fM5{readstring}{ readhexstring}ifelse pop pop fMs fMs2 fMs3 fMeb fm3b}fm_si}ifelse fM7 restore} FmBD/fm4b{dup fMCP eq{pop 0 1 5 index length 1 sub{2 copy get dup 6 index 3 index get add 255 fmin .3 mul 1 index 6 index 4 index get add 255 fmin .59 mul 3 -1 roll 5 index 4 index get add 255 fmin .11 mul add add round cvi 5 index 3 1 roll put}for pop pop pop}{dup fMC eq{pop pop pop pop}{dup fMM eq{pop pop pop exch pop}{dup fMY eq{pop pop exch pop exch pop}{fMK eq{4 1 roll pop pop pop}{ pop pop pop 0 1 2 index length 1 sub{1 index exch 0 put}for}ifelse}ifelse} ifelse}ifelse}ifelse}FmBD/Fmc4{save userdict/fM7 3 -1 roll put/fMIT fmXD/fM5 fmXD/fM8 fmXD/fM6 fmXD/fMrw fmXD/fMcl fmXD/fMi1 fM8 string def/fM0 fM8 4 idiv def/fMs fMi1 0 fM0 getinterval def/fMs2 fMi1 fM0 dup getinterval def/fMs3 fMi1 fM0 dup 2 mul exch getinterval def/fMs4 fMi1 fM0 dup 3 mul exch getinterval def translate rotate scale{-1 1 scale}if fMIT 1 ne{{1 exch sub fMIT mul 1 exch sub} currenttransfer exch fmcp fm_su}if fMcl fMrw fM6[fMcl 0 0 fMrw fMcl 2 div fMrw 2 div]fMeb fMCP eq fMCE and{{currentfile fMi1 fM5{readstring}{readhexstring} ifelse pop pop fMs}{fMs2}{fMs3}{fMs4}T 4 SysColorimage}{fmIv{currentfile fMi1 fM5{readstring}{readhexstring}ifelse pop pop fMs fMs2 fMs3 fMs4 fMeb fm4b}fm_si }ifelse fM7 restore}FmBD fML1{/fmAn{transform round .5 sub exch round .5 sub exch itransform}FmBD/fmAc{transform round 1.5 sub exch round 1.5 sub exch itransform}FmBD/fmDn{dtransform round exch round exch idtransform}FmBD/fmLn{0 dtransform exch cvi 2 idiv 2 mul .1 add exch idtransform pop}FmBD/FmCv{fmDn 6 2 roll fmDn 6 2 roll fmDn 6 2 roll rcurveto}FmBD}{T setstrokeadjust/fmAn{}FmBD /fmAc{}FmBD/fmDn{}FmBD/fmLn{}FmBD/FmCv{rcurveto}FmBD}ifelse/FmM{fmAn moveto} FmBD/M{moveto}FmBD/N{0 rmoveto}FmBD/S{fm_s}FmBD/A{0 exch fm_a}FmBD/W{0 exch 32 exch fm_w}FmBD/X{0 exch 0 32 5 2 roll fm_y}FmBD/fmQP{fML1 fMGM or not{FmG dup 1 fm_g exec FmR}if exec}FmBD/FmB{newpath fmAn moveto}FmBD/FmL{rlineto}FmBD/FmAL{ fmAn lineto}FmBD/FmSo{fmLn setlinewidth setlinecap{fm_t}fmQP 0 0 moveto}FmBD /FmS{fmLn setlinewidth closepath{fm_t}fmQP 0 0 moveto}FmBD/FmDS{fmLn setlinewidth setlinecap{closepath}if setdash{fm_t}fmQP[]0 setdash 0 0 moveto} FmBD/FmFl{FmG{fm_e}fmQP FmR}FmBD/fmq{fmDn 4 2 roll fmAn newpath moveto 1 index 0 rlineto 0 exch rlineto neg 0 rlineto closepath}FmBD/FmqP{fmq fmLn setlinewidth{fm_t}fmQP 0 0 moveto}FmBD/FmqF{fmq FmG{fm_f}fmQP FmR}FmBD/FmKp{{ currentpoint}stopped{F 5 1 roll}{T 7 3 roll}ifelse fmDn 4 2 roll fmAn newpath moveto 1 index 0 rlineto 0 exch rlineto neg 0 rlineto closepath clip{moveto}{ newpath}ifelse}FmBD/FmKb{{currentpoint}stopped}FmBD/FmKe{clip{newpath}{moveto} ifelse}FmBD/FmAF{FmG newpath fmAn translate not{0.0 0.0 moveto}if rotate fmDn scale 0.0 0.0 1.0 5 3 roll arc closepath{fm_f}fmQP FmR}FmBD/FmAP{FmG{setdash}if fmLn setlinewidth setlinecap fmSM newpath 2 index 2 div add exch 3 index 2 div sub exch fmAn 2 index 2 div sub exch 3 index 2 div add exch translate rotate scale 0.0 0.0 1.0 5 3 roll exch arcn{closepath}if fmRM{fm_t}fmQP FmR}FmBD/FmST{ FmG fmAn translate .3 fmLn setlinewidth 0 setlinecap 0 setlinejoin newpath 1 fm_g 0 0 10 0 360 arc fm_f 0 fm_g 0 0 10 0 360 arc fm_t 36{1 0 moveto 0 0 10 -2.5 2.5 arc fm_f 10 rotate}repeat FmR}FmBD/FmSL{FmG fmAn translate .25 fmLn setlinewidth 0 setlinecap 0 setlinejoin newpath 1 fm_g 0 0 10 0 360 arc fm_f 0 fm_g 10 .5 fmLn neg .1{0 0 3 -1 roll 0 360 arc fm_t}for FmR}FmBD/fMCP 0 def/fMC 1 def/fMM 2 def/fMY 3 def/fMK 4 def/fMS 5 def/fMN 6 def/fMNg 0 currenttransfer exec .5 gt def/fMib fMCP def/fMJK 0 def/fMJY 0 def/fMJM 0 def/fMJC 0 def/fMJR 1 def/fMJG 1 def/fMJB 1 def/fMPG 0 def/fMTV 1 def/fMPt null def/fMCK[0 0 0 1 (Black)0 0 0]def/fmCH{fML1{14 dict dup begin fMCE{/HalftoneType 2 def currentcolorscreen[/GraySpotFunction/GrayAngle/GrayFrequency/BlueSpotFunction /BlueAngle/BlueFrequency/GreenSpotFunction/GreenAngle/GreenFrequency /RedSpotFunction/RedAngle/RedFrequency]{exch def}forall}{/HalftoneType 1 def currentscreen[/SpotFunction/Angle/Frequency]{exch def}forall}ifelse statusdict /checkscreen known{statusdict/accuratescreens get exec}{F}ifelse /AccurateScreens exch def end}{currenthalftone}ifelse}FmBD/fmSH{fML1 fMeb fMCP ne or{begin statusdict/checkscreen known{currentdict/AccurateScreens known{ AccurateScreens}{F}ifelse statusdict/setaccuratescreens get exec}if HalftoneType 1 eq{Frequency Angle/SpotFunction load setscreen}{HalftoneType 2 eq{fMeb fMCP eq fMCE and{RedFrequency RedAngle/RedSpotFunction load GreenFrequency GreenAngle/GreenSpotFunction load BlueFrequency BlueAngle /BlueSpotFunction load GrayFrequency GrayAngle/GraySpotFunction load setcolorscreen}{fMeb fMC eq{RedFrequency RedAngle/RedSpotFunction load}{fMeb fMM eq{GreenFrequency GreenAngle/GreenSpotFunction load}{fMeb fMY eq{ BlueFrequency BlueAngle/BlueSpotFunction load}{fMeb fMY eq currentdict /BlackFrequency known and{BlackFrequency BlackAngle/BlackSpotFunction load}{ GrayFrequency GrayAngle/GraySpotFunction load}ifelse}ifelse}ifelse}ifelse setscreen}ifelse}if}ifelse end}{sethalftone}ifelse}FmBD/FmCS{17 dict begin /HalftoneType 2 def/AccurateScreens exch def/GraySpotFunction exch def /GrayAngle exch def/GrayFrequency exch def/BlackSpotFunction exch def /BlackAngle exch def/BlackFrequency exch def/BlueSpotFunction exch def /BlueAngle exch def/BlueFrequency exch def/GreenSpotFunction exch def /GreenAngle exch def/GreenFrequency exch def/RedSpotFunction exch def/RedAngle exch def/RedFrequency exch def currentdict dup end/fMPH exch def fmSH}FmBD/FmSS {5 dict begin/HalftoneType 1 def/AccurateScreens exch def/SpotFunction exch def /Angle exch def/Frequency exch def currentdict dup end/fMPH exch def fmSH}FmBD /fMPH fmCH def/fmcp{cvlit exch cvlit exch 2 copy length exch length add array dup 0 4 index putinterval dup 3 index length 3 index putinterval 3 1 roll pop pop cvx}FmBD/fmEp{sub dup 0 lt{neg}if .001 le}FmBD/fmQC{2 copy 0 get exch 0 get fmEp{2 copy 1 get exch 1 get fmEp{2 copy 2 get exch 2 get fmEp{3 get exch 3 get fmEp}{pop pop F}ifelse}{pop pop F}ifelse}{pop pop F}ifelse}FmBD/fmQR{2 copy 5 get exch 0 get fmEp{2 copy 6 get exch 1 get fmEp{7 get exch 2 get fmEp}{pop pop F}ifelse}{pop pop F}ifelse}FmBD/FmSC{/fMib fMS def/fMJB fmXD/fMJG fmXD/fMJR fmXD/fMCN fmXD/fMJK fmXD/fMJY fmXD/fMJM fmXD/fMJC fmXD}FmBD/FmSP{/fMib fmXD fmGb fmCC}FmBD/fMSC 1 dict def/FrameSetSpotColors{dict FrameMacDict/fMSC 3 -1 roll put}fmBi def/FrameSpot{FrameMacDict/fMSC get exch dup 4 get exch put}fmBi def/fMGM T def/fm4q{4{4 index eq 8 1 roll}repeat pop pop pop pop and and and} FmBD/fmGb{/fMeb fMCP def/fMcu/setcustomcolor where{pop T}{F}ifelse def/fMsg /setseparationgray where{pop T}{F}ifelse def/setcmykcolor where{/fMSD T def /setcmykcolor get dup/fm_x fmXD/fmSK fmXD}{/fMSD F def/fmSK{4 1 roll 3{3 index add 0 fmax 1 fmin 1 exch sub 3 1 roll}repeat fm_r pop}FmBD}ifelse fMSD{fMcu{0 fm_sx exec 1 fm_sx exec eq{/fMeb fMN store}{/fm_x where{pop 1 0 0 0 fm_x fm_sc 0 1 0 0 fm_x fm_sc 0 0 1 0 fm_x fm_sc 0 0 0 1 fm_x fm_sc 4{4 copy}repeat 0 1 1 1 fm4q{/fMeb fMC store}if 1 0 1 1 fm4q{/fMeb fMM store}if 1 1 0 1 fm4q{/fMeb fMY store}if 1 1 1 0 fm4q{/fMeb fMK store}if 1 1 1 1 fm4q{/fMeb fMN store}if}if }ifelse}if}if}FmBD/fmCC{/fMND F def/fMCT fMTV 1 fMPG sub mul def fMib fMCP eq{ fMGM fML1 or not{fMeb fMCP eq{fMAB not{[/Pattern[/DeviceCMYK]]setcolorspace fMCK 0 4 getinterval aload pop fMCT 1 lt{4{fMCT mul 4 1 roll}repeat}if}{[ /Pattern[/DeviceRGB]]setcolorspace fMCK 5 3 getinterval aload pop fMCT 1 lt{3{1 exch sub fMCT mul 1 exch sub 3 1 roll}repeat}if}ifelse}{fMcu fMCS and{fMCK 0 5 getinterval aload pop findcmykcustomcolor fMCT setcustomcolor}{0 1 3{fMCK exch get fMCT mul}for fm_x}ifelse currentgray[/Pattern[/DeviceGray]]setcolorspace} ifelse fMPt setcolor}{fMsg fMCR and{1 fMCT sub setseparationgray}{fMcu fMCS and {fMCK 0 5 getinterval aload pop findcmykcustomcolor fMCT setcustomcolor}{fMAB not fMSD and{0 1 3{fMCK exch get fMCT mul}for fm_x}{5 1 7{fMCK exch get 1 exch sub fMCT mul 1 exch sub}for fm_r}ifelse}ifelse}ifelse}ifelse}{fMGM fML1 or not{ [/Pattern[/DeviceGray]]setcolorspace 1 fMCT sub fMPt setcolor}{1 fMCT sub fm_g} ifelse}ifelse}FmBD/K{fMCK astore pop/fMCS T def/fMCR F def/fMTV exch def fmCC} FmBD/H{0 0 0 1(Black)0 0 0 fMCK astore pop/fMCS F def/fMCR T def/fMTV exch def fmCC}FmBD/fMCS F def/fMCR F def/fmPK{fMCK astore pop/fMCS F def/fMCR F def/fMTV exch def fmCC}FmBD/FmCC{1 0 0 0(Cyan)0 1 1 fmPK}FmBD/FmCM{0 1 0 0(Magenta)1 0 1 fmPK}FmBD/FmCY{0 0 1 0(Yellow)1 1 0 fmPK}FmBD/FmCK{0 0 0 1(Black)0 0 0 fmPK} FmBD/G{FmCK}FmBD/B{1 G}FmBD/FmOP/setoverprint where{pop/setoverprint}{/pop} ifelse load def fML1{/patScreenDict 7 dict dup begin<0f1e3c78f0e1c387>[45{pop}{ exch pop}.5 2 sqrt]FmBD<0f87c3e1f0783c1e>[135{pop}{exch pop}.5 2 sqrt]FmBD[0{pop}dup .5 2]FmBD[90{pop}dup .5 2]FmBD<814224 1818244281>[45{2 copy lt{exch}if pop}dup .75 2 sqrt]FmBD<0102040810204080>[45{ pop}{exch pop}.875 2 sqrt]FmBD<8040201008040201>[135{pop}{exch pop}.875 2 sqrt] FmBD end def}{/fMPP 5 dict dup begin<0f87c3e1f0783c1e>{3 setlinewidth -1 -1 moveto 9 9 lineto fm_t 4 -4 moveto 12 4 lineto fm_t -4 4 moveto 4 12 lineto fm_t}FmBD<0f1e3c78f0e1c387>{3 setlinewidth -1 9 moveto 9 -1 lineto fm_t -4 4 moveto 4 -4 lineto fm_t 4 12 moveto 12 4 lineto fm_t}FmBD<8142241818244281>{1 setlinewidth -1 9 moveto 9 -1 lineto fm_t -1 -1 moveto 9 9 lineto fm_t}FmBD<80 40201008040201>{1 setlinewidth -1 -1 moveto 9 9 lineto fm_t 4 -4 moveto 12 4 lineto fm_t -4 4 moveto 4 12 lineto fm_t}FmBD<0102040810204080>{1 setlinewidth -1 9 moveto 9 -1 lineto fm_t -4 4 moveto 4 -4 lineto fm_t 4 12 moveto 12 4 lineto fm_t}FmBD end def/fMPD 15 dict dup begin/PatternType 1 def/PaintType 2 def/TilingType 3 def/BBox[0 0 8 8]def/XStep 8 def/YStep 8 def/PaintProc{begin fMPP fmBS known{fMPP fmBS get exec}{8 8 T[1 0 0 -1 0 8]fmBS fm_m}ifelse end} FmBD end def}ifelse/fMdp 72 0 fMdm defaultmatrix dtransform dup mul exch dup mul add sqrt def/freq fMdp dup 72 div round dup 0 eq{pop 1}if 8 mul div def /sangle 1 0 fMdm defaultmatrix dtransform exch atan def sangle fMa2 rotate fMdm defaultmatrix fMa2 concatmatrix dup 0 get/sflipx exch def 3 get/sflipy exch def fML1{/fmgF{fMa2 exch get mul 0 lt{-1}{1}ifelse}FmBD}if/fmPM fML1{{dup patScreenDict exch known{patScreenDict exch get aload pop freq mul 5 2 roll fMa2 currentmatrix 1 get 0 ne{3 -1 roll 90 add 3 1 roll sflipx 1 fmgF sflipy 2 fmgF mul}{sflipx 0 fmgF sflipy 3 fmgF neg mul}ifelse 0 lt{exch pop}{pop}ifelse fMNg{{neg}fmcp}if bind systemdict/setscreen get exec}{/fmBS fmXD/fM1B 0 def /fM0B 0 def freq 0 fMa2 currentmatrix 1 get 0 ne{90 add/pflipx sflipx 1 fmgF def/pflipy sflipy 2 fmgF def}{/pflipx sflipx 0 fmgF def/pflipy sflipy 3 fmgF neg def}ifelse{pflipy mul/yy fmXD pflipx mul/xx fmXD/xindex xx 1 add 2 div 8 mul cvi def/yindex yy 1 add 2 div 8 mul cvi def fmBS yindex xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne fMNg{not}if{/fM1B fM1B 1 add def 1}{ /fM0B fM0B 1 add def 0}ifelse}setscreen fM0B fM0B fM1B add div fMNg{1.0 exch sub}if}ifelse/fMPG exch def/fMGM F def fmCC}}{/fMPC 8 dict def{dup fMPC exch known{fMPC exch get}{dup fMPD/fmBS 3 -1 roll put fMPD matrix makepattern dup fMPC 4 -1 roll 3 -1 roll put}ifelse/fMPt exch def/fMPG 0 def/fMGM F def fmCC}} ifelse FmBD/fmgr{fMGM not{/fMGM T def fML1{fMPH fmSH}if}if/fMPG exch def fmCC} FmBD/FmP{FrameFillPatternsArray exch get dup type/stringtype eq{fmPM}{fmgr} ifelse}FmBD/fMEd 40 dict def/fmPE{fMEd 3 1 roll fmBi put}bind def/fmgS 32 array def/fMgt 0 def/fMtp 0 def/fmSG{fmgS fMgt get dup null eq{pop fmgS fMgt 10 dict dup 4 1 roll put}if 3 1 roll put}FmBD/fmGG{fMgt -1 -1{fmgS exch get dup null ne {2 copy exch known{2 copy exch get/_notdef ne{exch get dup exit}if}if}if pop} for pop}FmBD/gsave{FrameMacDict begin FmG/fMgt fMgt 1 add def fmgS fMgt get dup null eq{pop}{dup dup{pop/_notdef put dup}forall pop pop}ifelse end}fmPE /grestore{FrameMacDict begin fMgt fMtp gt{/fMgt fMgt 1 sub def}if FmR null fmCN end}fmPE/grestoreall{FrameMacDict begin/fMgt fMtp def fm_l null fmCN end}fmPE /save{FrameMacDict/fm_v get exec FrameMacDict begin/fMgt fMgt 1 add def fmgS fMgt get dup null eq{pop}{dup dup{pop/_notdef put dup}forall pop pop}ifelse /fMtp fMgt def end}fmPE/fMND F def/fMCC null fmSG/fMOP F fmSG/fMKO F fmSG/fmRY{ 1 exch sub 3 1 roll 1 exch sub 3 1 roll 1 exch sub 3 1 roll 3 copy 2 copy le{ pop}{exch pop}ifelse 2 copy le{pop}{exch pop}ifelse dup dup dup 6 1 roll 4 1 roll 7 1 roll sub 6 1 roll sub 5 1 roll sub 4 1 roll}fmSG userdict/fM7 known not{userdict/FrameSuccessfull F put userdict/FrameEndPictStopped F put userdict /fM7 0 put}if/fmLC{fMSC{exch pop exch dup 3 -1 roll fmQC{pop T exit}if}forall dup T ne{pop F}if}FmBD/fmLR{fMSC{exch pop exch dup 3 -1 roll fmQR{pop T exit}if }forall dup T ne{pop F}if}FmBD/fmLM{fMSC exch known}FmBD/fmCN{fMND F fMib fMCP ne{/fMOP fmGG{/fMKO fmGG{pop T}if}if}if dup/fMND exch def{pop pop}{exch dup null ne{exch pop dup type dup/integertype eq exch/realtype eq or{fm_g}{setcolor }ifelse}{pop{1 fm_g}if}ifelse}ifelse}FmBD/findcmykcustomcolor{0 0 0 8 array astore}fmPE/findrgbcustomcolor{FrameMacDict begin 4 1 roll 3 copy/fmRY fmGG exec 8 4 roll 8 array astore end}fmPE/findgraycustomcolor{0 0 0 exch 1 exch sub exch findcmykcustomcolor}fmPE/findhsbcustomcolor{FrameMacDict begin 4 1 roll gsave fm_h currentrgbcolor grestore 4 -1 roll findrgbcustomcolor end}fmPE /setcustomcolor{FrameMacDict begin dup type dup/integertype eq exch/realtype eq or not{1.0}if exch dup/fMCC exch fmSG dup 4 get dup fmLM{fMib fMS eq{fMCN eq{ pop}{pop pop 0}ifelse}{pop pop pop 0}ifelse}{pop fMib fMK eq{3 get mul}{fMib fMY eq{2 get mul}{fMib fMM eq{1 get mul}{fMib fMC eq{0 get mul}{pop pop 0} ifelse}ifelse}ifelse}ifelse}ifelse dup 0 le/fMKO exch fmSG 1 exch sub fmCN end} fmPE/setoverprint{FrameMacDict begin dup FmOP/fMOP exch fmSG null fmCN end}fmPE /currentoverprint{FrameMacDict begin/fMOP fmGG end}fmPE/setrgbtocmyk{ FrameMacDict begin/fmRY exch fmSG null fmCN end}fmPE/currentrgbtocmyk{ FrameMacDict begin/fmRY fmGG end}fmPE/fill{FrameMacDict begin fMND{newpath}{ fm_f}ifelse end}fmPE/eofill{FrameMacDict begin fMND{newpath}{fm_e}ifelse end} fmPE/stroke{FrameMacDict begin fMND{newpath}{fm_t}ifelse end}fmPE/fmNX{load fMND{FmG fMa2 currentmatrix end nulldevice setmatrix exec currentpoint FrameMacDict/FmR get exec moveto}{end exec}ifelse}fmBi def/show{FrameMacDict begin/fm_s fmNX}fmPE/ashow{FrameMacDict begin/fm_a fmNX}fmPE/widthshow{ FrameMacDict begin/fm_w fmNX}fmPE/awidthshow{FrameMacDict begin/fm_y fmNX}fmPE /kshow{FrameMacDict begin/RealKshow fmNX}fmPE/image{FrameMacDict begin dup type /dicttype ne{fMib fMK eq{/fm_i load end exec}{FmG fmSW/fm_i load end exec FrameMacDict begin FmR end}ifelse}{fML1{(image)errordict/typecheck get exec}{ dup begin ImageType 1 eq{currentcolorspace 0 get dup/DeviceGray eq{pop Decode 0 get 0 eq Decode 1 get 1 eq and{pop Width Height BitsPerComponent ImageMatrix /DataSource load fMEd/image get end end exec}{end/fm_i load end exec}ifelse}{ dup/DeviceRGB eq exch/DeviceCMYK eq or{T 0 2 Decode length 2 sub{Decode exch get 0 eq and}for 1 2 Decode length{Decode exch get 1 eq and}for{pop Width Height BitsPerComponent ImageMatrix/DataSource load currentdict /MultipleDataSources known{MultipleDataSources}{F}ifelse{aload pop T}{F}ifelse Decode length 2 idiv fMEd/colorimage get end end exec}{end/fm_i load end exec} ifelse}{end/fm_i load end exec}ifelse}ifelse}{end/fm_i load end exec}ifelse} ifelse}ifelse}fmPE/separationimage{fm_i}fmPE %% The definition of the /imagemask (up to version @@/main/28) used to simulate the definition %% of /image. The structure of the code was the same, and both executed `nulldevice' for non-black %% plates. (/image executed `nulldevice' via `fmSW' call). %% This appears to be incorrect, because of the difference between `image' and `imagemask' %% operators. While `image' operator always paints with black color, which is why the %% definition of /image dicriminated between black and other colors plates, `imagemask' %% operator paints with the current color. Therefore, the discrimination between black and %% other colors plates in /imagemask definition, with sending non-black plates to `nulldevice' %% seems to be wrong, and is eliminated in this version. %% %% itenenbo, cahaverl 07/02/98 %% /imagemask{FrameMacDict begin dup type/dicttype ne{/fm_m load end exec}{/fm_m load end exec}ifelse}fmPE/separationimagemask{fm_m}fmPE/colorimage{FrameMacDict begin FmG dup 4 eq{fmIv pop{/fMP4 exch def/fMP3 exch def/fMP2 exch def/fMP1 exch def{fMP1 fMP2 fMP3 fMP4 fMib fm4b}fm_si}{/fMP1 exch def 1 index 8 ne{ (colorimage)errordict/rangecheck get exec}if/fMs 4 index string def/fMs2 4 index string def/fMs3 4 index string def/fMs4 4 index string def{fMP1 0 1 fMs length 1 sub{2 copy 4 mul 4 getinterval forall fMs4 5 index 3 -1 roll put fMs3 4 index 3 -1 roll put fMs2 3 index 3 -1 roll put fMs 3 -1 roll put}for pop fMs fMs2 fMs3 fMs4 fMib fm4b}fm_si}ifelse}{dup 3 eq{fmIv pop{/fMP3 exch def/fMP2 exch def/fMP1 exch def{fMP1 fMP2 fMP3 fMib fm3b}fm_si}{/fMP1 exch def 1 index 8 ne{(colorimage)errordict/rangecheck get exec}if/fMs 4 index string def/fMs2 4 index string def/fMs3 4 index string def{fMP1 0 1 fMs length 1 sub{2 copy 3 mul 3 getinterval forall fMs4 4 index 3 -1 roll put fMs3 3 index 3 -1 roll put fMs 3 -1 roll put}for pop fMs fMs2 fMs3 fMib fm3b}fm_si}ifelse}{1 eq{pop image}{ (colorimage)errordict/rangecheck get exec}ifelse}ifelse}ifelse FmR end}fmPE /customcolorimage{FrameMacDict begin FmG setcustomcolor currentgray 0 gt{ currentgray 1 ge{/fMOP fmGG{nulldevice}{fMNg{{pop 0}}{{pop 1}}ifelse fm_su} ifelse}{[1 currentgray sub/mul cvx]cvx currentransfer fmcp fm_su}ifelse}if/fm_i get end exec FrameMacDict begin FmR end}fmPE/setgray{FrameMacDict begin fMib fMK eq{F}{fMib fMS eq fMJR 0 eq and fMJG 0 eq and fMJB 0 eq and{F}{pop 1 T} ifelse}ifelse/fMKO exch fmSG fmCN end}fmPE/setseparationgray{FrameMacDict begin /fMKO F fmSG null fmCN fm_sg end}fmPE/setrgbcolor{FrameMacDict begin 3 copy[4 1 roll]fmLR{fMib fMS eq{fMJB eq exch fMJG eq and exch fMJR eq and{0 F}{1 T}ifelse }{pop pop pop 1 T}ifelse}{/fmRY fmGG exec fMib fMK eq{1.0 exch sub 4 1 roll pop pop pop F}{fMib fMY eq{pop 1.0 exch sub 3 1 roll pop pop F}{fMib fMM eq{pop pop 1.0 exch sub exch pop F}{fMib fMC eq{pop pop pop 1.0 exch sub F}{pop pop pop pop 1 T}ifelse}ifelse}ifelse}ifelse}ifelse/fMKO exch fmSG fmCN end}fmPE /sethsbcolor{FrameMacDict begin fm_h currentrgbcolor setrgbcolor end}fmPE /currentcmykcolor where{pop}{/currentcmykcolor{FrameMacDict begin currentrgbcolor/fmRY fmGG exec end}fmPE}ifelse/setcmykcolor{FrameMacDict begin fMib fMK eq{1.0 exch sub 4 1 roll pop pop pop dup 1.0 ge}{fMib fMY eq{pop 1.0 exch sub 3 1 roll pop pop dup 1.0 ge}{fMib fMM eq{pop pop 1.0 exch sub exch pop dup 1.0 ge}{fMib fMC eq{pop pop pop 1.0 exch sub dup 1.0 ge}{pop pop pop pop 1 T}ifelse}ifelse}ifelse}ifelse/fMKO exch fmSG fmCN end}fmPE/setcmykoverprint{ FrameMacDict begin 4 copy[5 1 roll]fmLC{fMib fMS eq{0 fmax fMJK eq exch 0 fmax fMJY eq and exch 0 fmax fMJM eq and exch 0 fmax fMJC eq and{0 F}{1 T}ifelse}{ pop pop pop pop 1 T}ifelse}{fMib fMK eq{1.0 exch sub 4 1 roll pop pop pop dup 1 fmin exch 1 gt}{fMib fMY eq{pop 1.0 exch sub 3 1 roll pop pop dup 1 fmin exch 1 gt}{fMib fMM eq{pop pop 1.0 exch sub exch pop dup 1 fmin exch 1 gt}{fMib fMC eq {pop pop pop 1.0 exch sub dup 1 fmin exch 1 gt}{pop pop pop pop 1 T}ifelse} ifelse}ifelse}ifelse}ifelse/fMKO exch fmSG fmCN end}fmPE/setcmykcoloroverprint{ setcmykoverprint}fmPE/setcmybcolor{setcmykcolor}fmPE/FrameEr where{pop}{ userdict/FrameEr(\000)put}ifelse/fMSJ 100 string def/fmXC{FmE countdictstack userdict begin/showpage{}def/FrameDictStackDepth exch def count/FrameStackDepth exch def userdict/EndFrame5NestedPS dup FrameMacDict exch get put userdict /FrameSuccessfull false put FrameMacDict/fMHq get/$brkpage where dup{exch pop} if or{userdict/FrameEndPictStopped false put}{userdict/FrameEndPictStopped true put currentfile cvx stopped pop FrameSuccessfull not{systemdict/clear get exec userdict/FrameEr get 0 1 put FrameMacDict begin FmG systemdict/initmatrix get exec 0 systemdict/setgray get exec clippath{pathbbox}stopped{100 100 512 692}if exch pop add 2. div newpath moveto(Courier-BoldOblique)findfont 18 scalefont setfont FrameEr1 fm_s( \()fm_s $error begin errorname 20 string cvs fm_s(, ) fm_s/command load 128 string cvs fm_s end(\))fm_s FrameEr2 print flush FrameMacDict/fMSJ get{dup currentfile exch{readline}stopped{pop exch pop T}if not{exit}if(EndFrame5NestedPS)eq{exit}if}loop grestore end}if userdict /FrameSuccessfull false put userdict/FrameEndPictStopped false put FrameMacDict /fmIR get exec}ifelse}fmBi def/FmEp{save userdict/fM7 3 -1 roll put exch fMeb fMCP eq fMib fMCP ne and and{fMEd{userdict 3 1 roll put}forall}if FmOP[/fMef /fMet/fMeh/fMew/fMey/fMex/fMei/fMej/fMek/fMel]{fmXD}forall fMex fMey translate fMet rotate fMew fMeh scale fMef{-1 1 scale}if 1 fMej fMel sub div 1 fMek fMei sub div scale fMej fMel add 2 div neg fMei fMek add 2 div neg translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit[]0 setdash newpath fML1 not{F setstrokeadjust}if fmXC}FmBD/FmPI{0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit[]0 setdash newpath newpath 0 0 moveto}FmBD/FmPc{save userdict/fM7 3 -1 roll put newpath 3 index neg 3 index neg translate 1 -1 scale 0.0 0.0 moveto fmXC}FmBD/fmIR{end countdictstack FrameDictStackDepth sub dup 0 gt{{end}repeat}{pop}ifelse count FrameStackDepth sub dup 0 gt{{pop}repeat}{pop}ifelse fM7 restore FrameMacDict begin}fmBi def /EndFrame5NestedPS{userdict/FrameEndPictStopped get{userdict/FrameSuccessfull true put stop}{FrameMacDict/fmIR get exec}ifelse}fmBi def/alphaimage where{pop} {userdict/alphaimage{1 ne{limitcheck}if not{limitcheck}if pop image}put}ifelse /fmDE{systemdict/initgraphics get exec clippath{pathbbox}stopped{100 100 512 692}if exch pop add 2. div newpath moveto(Courier-BoldOblique)findfont 18 scalefont setfont currentpoint 2 copy FrameEr3 fm_s 20 sub 2 copy moveto FrameEr4 fm_s 20 sub 2 copy moveto(\()fm_s statusdict/jobname get fm_s(\))fm_s 20 sub moveto FrameEr5 fm_s showpage}FmBD/cd where{dup/cd get/fmRC fmXD/cd{ FrameMacDict begin FrameEr 0 get 0 ne{fmDE}if/fmRC load end exec}fmBi put}{ /endp where{dup/endp get/fMRE fmXD/endp{FrameMacDict/fMRE get exec FrameEr 0 get 0 ne{FrameMacDict begin currentfile fMSJ{readline}stopped{pop exch pop true }if pop dup(%%Trailer)eq{pop fmDE}{cvx exec}ifelse end}if}fmBi put}if}ifelse systemdict/setpacking known{fMSP setpacking}if end %%EndProcSet /md where{pop countdictstack array dictstack true exch{md eq{pop false exit}if} forall{md begin}if}if %FRMSetup FrameMacDict begin /FrameEr1(PostScript error)def /FrameEr2(A PostScript error occurred. FrameMaker+SGML is attempting recovery.)def /FrameEr3(FrameMaker+SGML has detected one or more)def /FrameEr4(PostScript errors in this document.)def /FrameEr5(Please check your output.)def /FrameFillPatternsArray [ 0 0.1 0.3 0.5 0.7 0.9 0.97 1 <0F1E3C78F0E1C387> <0F87C3E1F0783C1E> <8142241818244281> <0102040810204080> <8040201008040201> ] def end %%EndSetup %%Page: 1 1 %%PageProcessColors: Black %%PageCustomColors: %%BeginPageSetup initializepage (Matt Bishop; page: 1 of 1)setjob %%EndPageSetup gS 0 0 552 728 rC 0 0 :M FrMacBegin 0 FmP F FmOP 0 FmSP FmE 42 14 468 14 rC 0 0 :M FrMacBegin 42 15 468 12 FmKp B 0 FmP F FmOP 42 16 FmB 468 0 FmL 2 1 FmSo 42 19 FmB 468 0 FmL 2 1 FmSo FmE gR f56 sf gS 0 0 552 728 rC 0 0 :M ( )S 2 0 :M FrMacBegin B 0 FmP F FmOP 42 11.667 M (May 1, 1999)S 135.671 N (ECS 150 \320 Spring 1999)S 159.563 N (Page )S (1)S 166.99 725 M (Last modified at )S (11:16 pm on Monday, April 19, 1999)S FmE f83 sf 3 0 :M 1.498 .15( )J 8 0 :M FrMacBegin B 0 FmP F FmOP 190.641 53 M (send/r)S -0.325 N (ecei)S -0.18 N (v)S -0.18 N (e Chart)S FmE f96 sf 8 0 :M .999 .1( )J 11 0 :M FrMacBegin B 0 FmP F FmOP 42 85 M (Intr)S -0.217 N (oduction)S FmE f56 sf 12 0 :M ( )S 14 0 :M FrMacBegin B 0 FmP F FmOP 42 102.667 M (These charts summarize the actions of the send and recei)S -0.251 N (v)S -0.151 N (e primiti)S -0.251 N (v)S -0.151 N (es using both blocking and non-blocking mode )S 42 114.667 M (and e)S -0.151 N (xplicit and implicit naming.)S FmE f96 sf 15 0 :M .999 .1( )J 18 0 :M FrMacBegin B 0 FmP F FmOP 42 140 M (Charts)S FmE f56 sf 19 0 :M ( )S 21 0 :M FrMacBegin B 0 FmP F FmOP 42 157.667 M (This chart summarizes ho)S -0.251 N (w naming and blocking af)S -0.251 N (fects the send primiti)S -0.251 N (v)S -0.151 N (e.)S 42 287.667 M (This chart summarizes ho)S -0.251 N (w naming and blocking af)S -0.251 N (fects the recei)S -0.251 N (v)S -0.151 N (e primiti)S -0.251 N (v)S -0.151 N (e.)S FmE f96 sf 21 0 :M .999 .1( )J 24 0 :M FrMacBegin B 0 FmP F FmOP 64.334 187 M (send)S 64.334 188.2 FmB 27.331 0 FmL 0 0.6 FmSo 187 187 M (blocking)S 132.335 N (non-blocking)S 55.345 209 M (explicit )S 55.668 223 M (naming)S FmE f109 sf 25 0 :M ( )S 28 0 :M FrMacBegin B 0 FmP F FmOP 120 209 M (send message to recei)S -0.302 N (v)S -0.182 N (er; w)S -0.12 N (ait until )S 120 223 M (message accepted)S 318 209 M (send message to recei)S -0.302 N (v)S -0.182 N (er)S FmE f96 sf 28 0 :M .999 .1( )J 31 0 :M FrMacBegin B 0 FmP F FmOP 54.344 245 M (implicit )S 55.668 259 M (naming)S FmE f109 sf 32 0 :M ( )S 35 0 :M FrMacBegin B 0 FmP F FmOP 120 245 M (broadcast message; w)S -0.12 N (ait until all pro-)S 120 259 M (cesses accept message)S 318 245 M (broadcast message)S FmE f96 sf 35 0 :M .999 .1( )J 38 0 :M FrMacBegin B 0 FmP F FmOP 56.75 317 M (r)S 56.75 318.2 FmB 6.108 0 FmL 0 0.6 FmSo 62.858 317 M (ecei)S 62.858 318.2 FmB 23.188 0 FmL 0 0.6 FmSo 86.046 317 M (v)S 86.046 318.2 FmB 6.879 0 FmL 0 0.6 FmSo 92.925 317 M (e)S 92.925 318.2 FmB 6.325 0 FmL 0 0.6 FmSo 187 317 M (blocking)S 132.335 N (non-blocking)S 55.345 339 M (explicit )S 55.668 353 M (naming)S FmE f109 sf 39 0 :M ( )S 42 0 :M FrMacBegin B 0 FmP F FmOP 120 339 M (w)S -0.12 N (ait for message from named sender)S 21.211 N (if there is a message from the named )S 318 353 M (sender)S -0.48 N (, get it; otherwise, proceed)S FmE f96 sf 42 0 :M .999 .1( )J 45 0 :M FrMacBegin B 0 FmP F FmOP 54.344 375 M (implicit )S 55.668 389 M (naming)S FmE f109 sf 46 0 :M ( )S 49 0 :M FrMacBegin B 0 FmP F FmOP 120 375 M (w)S -0.12 N (ait for message from an)S -0.182 N (y sender)S 36.053 N (if there is a message from an)S -0.182 N (y sender)S -0.48 N (, )S 318 389 M (get it; otherwise, proceed)S 42 173.25 FmB 0 93.5 FmL 0 0.5 FmSo 114 172.75 FmB 0 94.5 FmL 0 0.5 FmSo 312 172.75 FmB 0 94.5 FmL 0 0.5 FmSo 510 173.25 FmB 0 93.5 FmL 0 0.5 FmSo 41.75 173 FmB 468.5 0 FmL 0 0.5 FmSo 41.75 195 FmB 468.5 0 FmL 0 0.5 FmSo 41.75 231 FmB 468.5 0 FmL 0 0.5 FmSo 41.75 267 FmB 468.5 0 FmL 0 0.5 FmSo 42 303.25 FmB 0 93.5 FmL 0 0.5 FmSo 114 302.75 FmB 0 94.5 FmL 0 0.5 FmSo 312 302.75 FmB 0 94.5 FmL 0 0.5 FmSo 510 303.25 FmB 0 93.5 FmL 0 0.5 FmSo 41.75 303 FmB 468.5 0 FmL 0 0.5 FmSo 41.75 325 FmB 468.5 0 FmL 0 0.5 FmSo 41.75 361 FmB 468.5 0 FmL 0 0.5 FmSo 41.75 397 FmB 468.5 0 FmL 0 0.5 FmSo FmE endp showpage %%PageTrailer %%Trailer end %%EOF