%!PS-Adobe-3.0 %%Title: (notes-1130.fm) %%Creator: (FrameMaker+SGML 6.0: AdobePS 8.5.1) %%CreationDate: (3:16 PM Thursday, November 30, 2000) %%For: (Matt Bishop) %%Routing: (mailto:\000bishop@cs.ucdavis.edu) %%Pages: 2 %%DocumentFonts: Times-Roman %%+ Times-Bold %%+ Times-Italic %%+ Symbol %%DocumentNeededResources: font Times-Roman Times-Bold Times-Italic Symbol %%DocumentSuppliedResources: %%DocumentData: Clean7Bit %%PageOrder: Ascend %%Orientation: Portrait %%DocumentMedia: (Default) 612 792 0 () () %RBINumCopies: 1 %RBINupNess: 1 1 %ADO_ImageableArea: 12 12 600 780 %RBIDocumentSuppliedFonts: %%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(notes-1130.fm)def /Creator(FrameMaker+SGML 6.0: AdobePS 8.5.1)def /CreationDate(3:16 PM Thursday, November 30, 2000)def /For(Matt Bishop)def /Pages 2 def end put %%BeginProlog /md 209 dict def md begin/currentpacking where {pop /sc_oldpacking currentpacking def true setpacking}if %%BeginFile: lw8_feature-1.01 %%Copyright: Copyright 1990-1999 Adobe Systems Incorporated and Apple Computer Incorporated. All Rights Reserved. /bd{bind def}bind def /ld{load def}bd /xs{exch store}bd /Z{0 def}bd /T true def /F false def /level2 /languagelevel where { pop languagelevel 2 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 /setcopies{ level2 { 1 dict begin/NumCopies exch def currentdict end setpagedevice }{ userdict/#copies 3 -1 roll put }ifelse }def level2 startnoload /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 /setpagedevice where{pop/realstpgdev/setpagedevice ld}if /SC_topddict Z /SC_spdict Z /$spusrdict F def /dopgdev { userdict/setpagedevice undef $spusrdict { userdict/setpagedevice/realstpgdev load put /$spusrdict F store }if 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 { /setpagedevice where { userdict eq { /$spusrdict T store }if }if userdict/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 %%EndFile %%BeginFile: lw8_basic-4.0 /xdf{exch def}bd /:L/lineto /lw/setlinewidth /:M/moveto /rl/rlineto /rm/rmoveto /:C/curveto /:T/translate /:K/closepath /:mf/makefont /gS/gsave /gR/grestore /np/newpath 12{ld}repeat /framewidth -1 def /QDframwid -1 def /numframes Z /mTS matrix def /$m matrix def /av 87 def /por T def /normland F def /psb-nosave{}def /pse-nosave{}def /us Z /psb{/us save store}bd /pse{us restore}bd /level3 /languagelevel where { pop languagelevel 3 ge }{ F }ifelse def level2 startnoload /setjob { statusdict/jobname 3 -1 roll put }bd /devg/DeviceGray def /devr/DeviceRGB def /devc/DeviceCMYK def level2 endnoload level2 not startnoload /setjob { 1 dict begin/JobName xdf currentdict end setuserparams }bd /devg[/DeviceGray]def /devr[/DeviceRGB]def /devc[/DeviceCMYK]def level2 not endnoload /pm Z /mT Z /sD Z /mTSsetup{ mT $m currentmatrix mTS concatmatrix pop }bd /pmSVsetup{ /pm save store }bd /initializepage { 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{ count 100 gt{count}{100}ifelse array/savedstack xs }{ count savedstack length gt { count array/savedstack xs }if }ifelse 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_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-3.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 /$o 1. def /gl{$o G}bd /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/Euro/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 { findfont 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 /:xs{ exch 0 1 2 index length 1 sub{ 3 copy gS 1 getinterval show gR exch get 0.0 rm }for pop pop }bd /:ys{ exch 0 1 2 index length 1 sub{ 3 copy gS 1 getinterval show gR exch get 0.0 exch rm }for pop pop }bd /:xys{ exch 0 1 2 index length 1 sub{ 3 copy gS 1 getinterval show gR exch 2 mul 2 copy 1 add get 3 -2 roll get exch rm }for pop pop }bd level2 endnoload level2 not startnoload /copyfontdict { findfont dup length dict copy begin }bd /fD1pass/def ld /lU/load ld level2{ /:xs/xshow ld /:ys/yshow ld /:xys/xyshow ld }if level2 not endnoload /:xbl{ currentpoint 2 index exec :M .03 ps mul currentpoint 2 index 0.0 rm 3 index exec :M currentpoint 2 index dup rm 3 index exec :M 0.0 1 index rm exch exec neg 0.0 exch rm }bd /:xot{ currentpoint -2.0 0.0 rm 2 index exec :M currentpoint 0.0 -2.0 rm 2 index exec :M currentpoint 0.0 2.0 rm 2 index exec :M currentpoint 2.0 0.0 rm 2 index exec :M gS gl exec currentpoint gR :M }bd /:xsh{ 2 ps 0.05 mul add 2 copy currentpoint 5 2 roll 0.0 rm exec currentpoint 6 2 roll sub moveto :xot moveto }bd /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 /currentpacking where {pop sc_oldpacking setpacking}if end %%EndProlog %%BeginSetup md begin /fD/def ld/sf/setfont ld /scf/scf2pass ld %RBIIncludeNonPPDFeature: NumCopies 1 %RBIBeginNonPPDFeature: WaitTimeout 600 600/languagelevel where{pop languagelevel 2 ge}{false}ifelse{1 dict dup/WaitTimeout 4 -1 roll put setuserparams}{statusdict/waittimeout 3 -1 roll put}ifelse %RBIEndNonPPDFeature sfcl{ %%BeginFeature: *InputSlot Upper %%EndFeature }efcl sfcl{ %%BeginFeature: *ManualFeed False level2 {1 dict dup /ManualFeed false put setpagedevice}{statusdict begin /manualfeed false store end} ifelse %%EndFeature }efcl sfcl{ %%BeginFeature: *PageRegion Letter level2 { 2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice }{ /letter where {pop letter}{letterR} ifelse } ifelse %%EndFeature }efcl (Matt Bishop)setjob /mT[1 0 0 -1 12 780]def %RBIIncludeStartNup /sD 16 dict def %%IncludeResource: font Times-Roman /f133/Times-Roman :mre /f148 f133 10 scf /f161 f133 8 scf %%IncludeResource: font Times-Bold /f174/Times-Bold :mre /f188 f174 18 scf %%IncludeResource: font Times-Italic /f201/Times-Italic :mre /f216 f201 10 scf /f229 f201 8 scf %%IncludeResource: font Symbol /f251/Symbol :bsr 240/apple pd :esr /f263 f251 10 scf {/Courier findfont[10 0 0 -10 0 0]:mf setfont}stopped{$error/newerror F put}if % PostScript Prolog for use with Macintosh Frame Products 6.0 % Copyright (c) 1986-2000 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/FmU4 true def 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 currentdistillerparams/CoreDistVersion get 4050 ge{/FmPD4 /pdfmark load def}{/FmPD4{FmU4{ (%%[Acrobat Distiller 4.05 and up is required to generate Logical PDF Structure]%%) =(%%[Logical PDF Structure is not generated.]%%)= flush}if/FmU4 false def cleartomark}FmBD}ifelse/fmCG true def/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}{/FmPD4/cleartomark load def/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/FmPD4/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 dup dup/FmU4 get exch/fMRE get exec/FmU4 exch put 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 %RBIIncludePageSlotInvocation mTSsetup pmSVsetup initializepage (Matt Bishop; page: 1 of 2)setjob %%EndPageSetup gS 0 0 588 768 rC 0 0 :M FrMacBegin 0 FmP F FmOP 0 FmSP FmE 60 33 468 14 rC 0 0 :M FrMacBegin 60 34 468 12 FmKp B 0 FmP F FmOP 60 35 FmB 468 0 FmL 2 1 FmSo 60 38 FmB 468 0 FmL 2 1 FmSo FmE gR gS 0 0 588 768 rC 0 0 :M f148 sf ( )S 2 0 :M FrMacBegin B 0 FmP F FmOP 60 30.667 M 2(N)A FmE 3 0 :M f161 sf ( )S 5 0 :M FrMacBegin B 0 FmP F FmOP 69.219 30.667 M 2(OTES)A FmE 5 0 :M f148 sf ( )S 7 0 :M FrMacBegin B 0 FmP F FmOP 97.219 30.667 M 2( )A FmE 7 0 :M f161 sf ( )S 9 0 :M FrMacBegin B 0 FmP F FmOP 101.719 30.667 M 2(FOR)A FmE 9 0 :M f148 sf ( )S 11 0 :M FrMacBegin B 0 FmP F FmOP 123.281 30.667 M 2( N)A FmE 12 0 :M f161 sf ( )S 14 0 :M FrMacBegin B 0 FmP F FmOP 137.001 30.667 M 2(OVEMBER)A FmE 14 0 :M f148 sf ( )S 16 0 :M FrMacBegin B 0 FmP F FmOP 190.114 30.667 M 2( 30, 2000)A 149.94 N 2(ECS 153 \321 F)A FmE 16 0 :M f161 sf ( )S 18 0 :M FrMacBegin B 0 FmP F FmOP 473.949 30.667 M 2(ALL)A FmE 18 0 :M f148 sf ( )S 20 0 :M FrMacBegin B 0 FmP F FmOP 495.5 30.667 M 2( 2000)A 60 744 M (Version of )S (November 30, 2000 3:16 pm)S 262.497 N (Page )S (1)S ( of )S (2)S FmE 21 0 :M f188 sf ( )S 25 0 :M FrMacBegin B 0 FmP F FmOP 183.185 72 M (Notes f)S -0.453 N (or No)S -0.18 N (v)S -0.18 N (ember 30, 2000)S FmE 25 0 :M f148 sf ( )S 27 0 :M FrMacBegin B 0 FmP F FmOP 60 102.667 M (1.)S 10.5 N (Greetings and Felicitations!)S 78 117.667 M (a.)S 11.062 N (Discuss project)S 60 132.667 M (2.)S 10.5 N (Puzzle of the day)S 60 147.667 M (3.)S 10.5 N (Capabilities)S 78 162.667 M (a.)S 11.062 N (Capability-based addressing: sho)S -0.251 N (w picture of accessing object)S 78 177.667 M (b)S -0.4 N (.)S 10.9 N (Sho)S -0.251 N (w process limiting access by not inheriting all parent\325)S -0.552 N (s capabilities)S 78 192.667 M (c.)S 11.062 N (Re)S -0.251 N (v)S -0.2 N (ocation: use of a global descriptor table)S 60 207.667 M (4.)S 10.5 N (MUL)S -0.92 N (TICS ring mechanism)S 78 222.667 M (a.)S 11.062 N (MUL)S -0.92 N (TICS rings: used for both data and procedures; rights are REW)S -1.201 N (A)S 78 237.667 M (b)S -0.4 N (.)S 10.9 N ( \()S FmE 28 0 :M f216 sf ( )S 30 0 :M FrMacBegin B 0 FmP F FmOP 101.828 237.667 M (b)S FmE 30 0 :M f161 sf ( )S 32 0 :M FrMacBegin B 0 FmP F FmOP 106.828 240.167 M (1)S FmE 32 0 :M f148 sf ( )S 34 0 :M FrMacBegin B 0 FmP F FmOP 110.828 237.667 M (, )S FmE 35 0 :M f216 sf ( )S 37 0 :M FrMacBegin B 0 FmP F FmOP 115.828 237.667 M (b)S FmE 37 0 :M f161 sf ( )S 39 0 :M FrMacBegin B 0 FmP F FmOP 120.828 240.167 M (2)S FmE 39 0 :M f148 sf ( )S 41 0 :M FrMacBegin B 0 FmP F FmOP 124.828 237.667 M (\) access brack)S -0.1 N (et - can access freely; \()S FmE 42 0 :M f216 sf ( )S 44 0 :M FrMacBegin B 0 FmP F FmOP 272.662 237.667 M (b)S FmE 44 0 :M f161 sf ( )S 46 0 :M FrMacBegin B 0 FmP F FmOP 277.662 240.167 M (3)S FmE 46 0 :M f148 sf ( )S 48 0 :M FrMacBegin B 0 FmP F FmOP 281.662 237.667 M (, )S FmE 49 0 :M f216 sf ( )S 51 0 :M FrMacBegin B 0 FmP F FmOP 286.662 237.667 M (b)S FmE 51 0 :M f161 sf ( )S 53 0 :M FrMacBegin B 0 FmP F FmOP 291.662 240.167 M (4)S FmE 53 0 :M f148 sf ( )S 55 0 :M FrMacBegin B 0 FmP F FmOP 295.662 237.667 M (\) call brack)S -0.1 N (et - can call se)S -0.151 N (gment through g)S -0.051 N (ate; so if )S FmE 56 0 :M f216 sf ( )S 58 0 :M FrMacBegin B 0 FmP F FmOP 500.538 237.667 M (a)S FmE 58 0 :M f148 sf ( )S 60 0 :M FrMacBegin B 0 FmP F FmOP 505.538 237.667 M (\325)S -0.552 N (s )S 96 251.5 M (access brack)S -0.1 N (et is \(32,35\) and its call brack)S -0.1 N (et is \(36,39\), then )S FmE 61 0 :M f216 sf ( )S 63 0 :M FrMacBegin B 0 FmP F FmOP 337.355 251.5 M (assuming permission mode \(REW)S -0.601 N (A\) allows )S 96 263.5 M (access)S FmE 63 0 :M f148 sf ( )S 65 0 :M FrMacBegin B 0 FmP F FmOP 122.094 263.5 M (, a procedure in:)S 96 275.5 M (rings 0-31: can access )S FmE 66 0 :M f216 sf ( )S 68 0 :M FrMacBegin B 0 FmP F FmOP 186.51 275.5 M (a)S FmE 68 0 :M f148 sf ( )S 70 0 :M FrMacBegin B 0 FmP F FmOP 191.51 275.5 M (, b)S -0.2 N (ut ring-crossing f)S -0.1 N (ault occurs)S 96 287.5 M (rings 32-35: can access )S FmE 71 0 :M f216 sf ( )S 73 0 :M FrMacBegin B 0 FmP F FmOP 191.51 287.5 M (a)S FmE 73 0 :M f148 sf ( )S 75 0 :M FrMacBegin B 0 FmP F FmOP 196.51 287.5 M (, no ring-crossing f)S -0.1 N (ault)S 96 299.5 M (rings 36-39: can access )S FmE 76 0 :M f216 sf ( )S 78 0 :M FrMacBegin B 0 FmP F FmOP 191.51 299.5 M (a)S FmE 78 0 :M f148 sf ( )S 80 0 :M FrMacBegin B 0 FmP F FmOP 196.51 299.5 M (, pro)S -0.151 N (vided a v)S -0.251 N (alid g)S -0.051 N (ate is used as an entry point)S 96 311.5 M (rings 40-63: cannot access )S FmE 81 0 :M f216 sf ( )S 83 0 :M FrMacBegin B 0 FmP F FmOP 204.289 311.5 M (a)S FmE 83 0 :M f148 sf ( )S 85 0 :M FrMacBegin B 0 FmP F FmOP 78 326.5 M (c.)S 11.062 N (If the procedure is accessing a data se)S -0.151 N (gment )S FmE 86 0 :M f216 sf ( )S 88 0 :M FrMacBegin B 0 FmP F FmOP 274.086 326.5 M (d)S FmE 88 0 :M f148 sf ( )S 90 0 :M FrMacBegin B 0 FmP F FmOP 279.086 326.5 M (, no call brack)S -0.1 N (et allo)S -0.251 N (wed; gi)S -0.251 N (v)S -0.151 N (en the abo)S -0.151 N (v)S -0.151 N (e, )S FmE 91 0 :M f216 sf ( )S 93 0 :M FrMacBegin B 0 FmP F FmOP 449.625 326.5 M (assuming permis-)S 96 338.5 M (sion mode \(REW)S -0.601 N (A\) allows access)S FmE 93 0 :M f148 sf ( )S 95 0 :M FrMacBegin B 0 FmP F FmOP 229.242 338.5 M (, a procedure in:)S 96 350.5 M (rings 0-32: can access )S FmE 96 0 :M f216 sf ( )S 98 0 :M FrMacBegin B 0 FmP F FmOP 186.51 350.5 M (d)S FmE 98 0 :M f148 sf ( )S 100 0 :M FrMacBegin B 0 FmP F FmOP 96 362.5 M (rings 33-35: can access )S FmE 101 0 :M f216 sf ( )S 103 0 :M FrMacBegin B 0 FmP F FmOP 191.51 362.5 M (d)S FmE 103 0 :M f148 sf ( )S 105 0 :M FrMacBegin B 0 FmP F FmOP 196.51 362.5 M (, b)S -0.2 N (ut cannot write to it \(W or )S -0.552 N (A\))S 96 374.5 M (rings 36-63: cannot access )S FmE 106 0 :M f216 sf ( )S 108 0 :M FrMacBegin B 0 FmP F FmOP 204.289 374.5 M (d)S FmE 108 0 :M f148 sf ( )S 110 0 :M FrMacBegin B 0 FmP F FmOP 60 389.5 M (5.)S 10.5 N (Lock and K)S -0.251 N (e)S -0.151 N (y)S 78 404.5 M (a.)S 11.062 N (Associate with each object a lock; associate with each process that has access to object a k)S -0.1 N (e)S -0.151 N (y \(it\325)S -0.552 N (s a cross )S 96 416.5 M (between )S -0.552 N (A)S -0.4 N (CLs and C-Lists\))S 78 431.5 M (b)S -0.4 N (.)S 10.9 N (Example: use crypto \(Gif)S -0.251 N (ford\). )S FmE 111 0 :M f216 sf ( )S 113 0 :M FrMacBegin B 0 FmP F FmOP 222.077 431.5 M (X)S FmE 113 0 :M f148 sf ( )S 115 0 :M FrMacBegin B 0 FmP F FmOP 228.185 431.5 M ( object enciphered with k)S -0.1 N (e)S -0.151 N (y )S FmE 116 0 :M f216 sf ( )S 118 0 :M FrMacBegin B 0 FmP F FmOP 340.941 431.5 M (K)S FmE 118 0 :M f148 sf ( )S 120 0 :M FrMacBegin B 0 FmP F FmOP 347.611 431.5 M (. )S -0.552 N (Associate an opener )S FmE 121 0 :M f216 sf ( )S 123 0 :M FrMacBegin B 0 FmP F FmOP 435.072 431.5 M (R)S FmE 123 0 :M f148 sf ( )S 125 0 :M FrMacBegin B 0 FmP F FmOP 441.181 431.5 M ( with )S FmE 126 0 :M f216 sf ( )S 128 0 :M FrMacBegin B 0 FmP F FmOP 463.957 431.5 M (X)S FmE 128 0 :M f148 sf ( )S 130 0 :M FrMacBegin B 0 FmP F FmOP 470.065 431.5 M (. )S -0.181 N (Then:)S 96 443.5 M (OR-Access: )S FmE 131 0 :M f216 sf ( )S 133 0 :M FrMacBegin B 0 FmP F FmOP 146.808 443.5 M (K)S FmE 133 0 :M f148 sf ( )S 135 0 :M FrMacBegin B 0 FmP F FmOP 153.478 443.5 M ( can be reco)S -0.151 N (v)S -0.151 N (ered with an)S -0.151 N (y )S FmE 136 0 :M f216 sf ( )S 138 0 :M FrMacBegin B 0 FmP F FmOP 262.963 443.5 M (D)S FmE 138 0 :M f229 sf ( )S 140 0 :M FrMacBegin B 0 FmP F FmOP 270.182 446 M (i)S FmE 140 0 :M f148 sf ( )S 142 0 :M FrMacBegin B 0 FmP F FmOP 272.405 443.5 M ( in a list of )S FmE 143 0 :M f216 sf ( )S 145 0 :M FrMacBegin B 0 FmP F FmOP 317.673 443.5 M (n)S FmE 145 0 :M f148 sf ( )S 147 0 :M FrMacBegin B 0 FmP F FmOP 322.673 443.5 M ( deciphering transformations, so)S FmE 148 0 :M f216 sf ( )S 150 0 :M FrMacBegin B 0 FmP F FmOP 96 457.333 M ( R)S FmE 150 0 :M f148 sf ( )S 152 0 :M FrMacBegin B 0 FmP F FmOP 119.608 457.333 M ( = \()S FmE 153 0 :M f216 sf ( )S 155 0 :M FrMacBegin B 0 FmP F FmOP 133.576 457.333 M (E)S FmE 155 0 :M f161 sf ( )S 157 0 :M FrMacBegin B 0 FmP F FmOP 139.684 459.833 M (1)S FmE 157 0 :M f148 sf ( )S 159 0 :M FrMacBegin B 0 FmP F FmOP 143.684 457.333 M (\()S FmE 160 0 :M f216 sf ( )S 162 0 :M FrMacBegin B 0 FmP F FmOP 147.012 457.333 M (K)S FmE 162 0 :M f148 sf ( )S 164 0 :M FrMacBegin B 0 FmP F FmOP 153.682 457.333 M (\), )S FmE 165 0 :M f216 sf ( )S 167 0 :M FrMacBegin B 0 FmP F FmOP 162.009 457.333 M (E)S FmE 167 0 :M f161 sf ( )S 169 0 :M FrMacBegin B 0 FmP F FmOP 168.118 459.833 M (2)S FmE 169 0 :M f148 sf ( )S 171 0 :M FrMacBegin B 0 FmP F FmOP 172.118 457.333 M (\()S FmE 172 0 :M f216 sf ( )S 174 0 :M FrMacBegin B 0 FmP F FmOP 175.445 457.333 M (K)S FmE 174 0 :M f148 sf ( )S 176 0 :M FrMacBegin B 0 FmP F FmOP 182.115 457.333 M (\), ..., )S FmE 177 0 :M f216 sf ( )S 179 0 :M FrMacBegin B 0 FmP F FmOP 202.943 457.333 M (E)S FmE 179 0 :M f229 sf ( )S 181 0 :M FrMacBegin B 0 FmP F FmOP 209.051 459.833 M (n)S FmE 181 0 :M f148 sf ( )S 183 0 :M FrMacBegin B 0 FmP F FmOP 213.051 457.333 M (\()S FmE 184 0 :M f216 sf ( )S 186 0 :M FrMacBegin B 0 FmP F FmOP 216.379 457.333 M (K)S FmE 186 0 :M f148 sf ( )S 188 0 :M FrMacBegin B 0 FmP F FmOP 223.049 457.333 M (\)\) and an)S -0.151 N (y process with access to an)S -0.151 N (y of the )S FmE 189 0 :M f216 sf ( )S 191 0 :M FrMacBegin B 0 FmP F FmOP 399.331 457.333 M (D)S FmE 191 0 :M f229 sf ( )S 193 0 :M FrMacBegin B 0 FmP F FmOP 406.55 459.833 M (i)S FmE 193 0 :M f148 sf ( )S 195 0 :M FrMacBegin B 0 FmP F FmOP 408.772 457.333 M (\325)S -0.552 N (s can access the \336)S (le)S 96 471.166 M (AND-Access: need all )S FmE 196 0 :M f216 sf ( )S 198 0 :M FrMacBegin B 0 FmP F FmOP 188.449 471.166 M (n)S FmE 198 0 :M f148 sf ( )S 200 0 :M FrMacBegin B 0 FmP F FmOP 193.449 471.166 M ( deciphering functions to get )S FmE 201 0 :M f216 sf ( )S 203 0 :M FrMacBegin B 0 FmP F FmOP 310.355 471.166 M (K)S FmE 203 0 :M f148 sf ( )S 205 0 :M FrMacBegin B 0 FmP F FmOP 317.025 471.166 M (: )S FmE 206 0 :M f216 sf ( )S 208 0 :M FrMacBegin B 0 FmP F FmOP 322.304 471.166 M (R)S FmE 208 0 :M f148 sf ( )S 210 0 :M FrMacBegin B 0 FmP F FmOP 328.412 471.166 M ( = )S FmE 211 0 :M f216 sf ( )S 213 0 :M FrMacBegin B 0 FmP F FmOP 339.052 471.166 M (E)S FmE 213 0 :M f161 sf ( )S 215 0 :M FrMacBegin B 0 FmP F FmOP 345.16 473.666 M (1)S FmE 215 0 :M f148 sf ( )S 217 0 :M FrMacBegin B 0 FmP F FmOP 349.16 471.166 M (\()S FmE 218 0 :M f216 sf ( )S 220 0 :M FrMacBegin B 0 FmP F FmOP 352.488 471.166 M (E)S FmE 220 0 :M f161 sf ( )S 222 0 :M FrMacBegin B 0 FmP F FmOP 358.596 473.666 M (2)S FmE 222 0 :M f148 sf ( )S 224 0 :M FrMacBegin B 0 FmP F FmOP 362.596 471.166 M (\(...)S FmE 225 0 :M f216 sf ( )S 227 0 :M FrMacBegin B 0 FmP F FmOP 373.424 471.166 M (E)S FmE 227 0 :M f229 sf ( )S 229 0 :M FrMacBegin B 0 FmP F FmOP 379.532 473.666 M (n)S FmE 229 0 :M f148 sf ( )S 231 0 :M FrMacBegin B 0 FmP F FmOP 383.532 471.166 M (\()S FmE 232 0 :M f216 sf ( )S 234 0 :M FrMacBegin B 0 FmP F FmOP 386.86 471.166 M (K)S FmE 234 0 :M f148 sf ( )S 236 0 :M FrMacBegin B 0 FmP F FmOP 393.53 471.166 M (\)...\)\))S 60 487.999 M (6.)S 10.5 N (Mandatory vs. Discretionary;)S 78 502.999 M (a.)S 11.062 N (security le)S -0.251 N (v)S -0.151 N (els)S 78 517.999 M (b)S -0.4 N (.)S 10.9 N (cate)S -0.151 N (gories)S 60 532.999 M (7.)S 10.5 N (Bell-LaP)S -0.151 N (adula Model)S 78 547.999 M (a.)S 11.062 N (Simple Security Property: no reads up)S 78 562.999 M (b)S -0.4 N (.)S 10.9 N (Star Property: no writes do)S -0.251 N (wn)S 78 577.999 M (c.)S 11.062 N (Discretionary Security Property: if mandatory controls say it\325)S -0.552 N (s okay)S -0.652 N (, check discretionary controls.)S 78 592.999 M (d.)S 10.5 N -0.182(Basic Security )W -0.181 N -0.182(Theorem: )W -0.552 N -0.182(A system is secure if its initial state is secure and no action violates the abo)W -0.151 N (v)S -0.151 N -0.182(e rules.)W 60 607.999 M (8.)S 10.5 N (Lattice Model)S 78 622.999 M (a.)S 11.062 N (Set of classes )S FmE 237 0 :M f216 sf ( )S 239 0 :M FrMacBegin B 0 FmP F FmOP 152.365 622.999 M (SC)S FmE 239 0 :M f148 sf ( )S 241 0 :M FrMacBegin B 0 FmP F FmOP 164.035 622.999 M ( is a partially ordered set under relation )S FmE 242 0 :M f263 sf ( )S 244 0 :M FrMacBegin B 0 FmP F FmOP 323.402 622.999 M (\243)S FmE 244 0 :M f148 sf ( )S 246 0 :M FrMacBegin B 0 FmP F FmOP 328.891 622.999 M ( with GLB \()S FmE 247 0 :M f263 sf ( )S 249 0 :M FrMacBegin B 0 FmP F FmOP 377.492 622.999 M (\304)S FmE 249 0 :M f148 sf ( )S 251 0 :M FrMacBegin B 0 FmP F FmOP 385.172 622.999 M (\))S FmE 252 0 :M f263 sf ( )S 254 0 :M FrMacBegin B 0 FmP F FmOP 388.5 622.999 M (, )S FmE 254 0 :M f148 sf ( )S 256 0 :M FrMacBegin B 0 FmP F FmOP 393.5 622.999 M (LUB \()S FmE 257 0 :M f263 sf ( )S 259 0 :M FrMacBegin B 0 FmP F FmOP 419.325 622.999 M (\305)S FmE 259 0 :M f148 sf ( )S 261 0 :M FrMacBegin B 0 FmP F FmOP 427.006 622.999 M (\))S 78 637.999 M (b)S -0.4 N (.)S 10.9 N (Note: )S FmE 262 0 :M f263 sf ( )S 264 0 :M FrMacBegin B 0 FmP F FmOP 120.714 637.999 M (\243)S FmE 264 0 :M f148 sf ( )S 266 0 :M FrMacBegin B 0 FmP F FmOP 126.203 637.999 M ( is re\337)S (e)S -0.151 N (xi)S -0.251 N (v)S -0.151 N (e, transiti)S -0.251 N (v)S -0.151 N (e, antisymmetric)S 78 652.999 M (c.)S 11.062 N (Application to MLS: forms a lattice with elements being the Cartesian product of the linear lattice of le)S -0.251 N (v)S -0.151 N (els )S 96 664.999 M (and the subset lattics of cate)S -0.151 N (gories)S 78 679.999 M (d.)S 10.5 N 0.057(Examples: \(A, C\) )W FmE 267 0 :M f263 sf ( )S 269 0 :M FrMacBegin B 0 FmP F FmOP 168.925 679.999 M (\243)S FmE 269 0 :M f148 sf ( )S 271 0 :M FrMacBegin B 0 FmP F FmOP 174.413 679.999 M 0.057( \(A)W -1.111 N 0.057(\325, C\325\) if)W -0.251 N 0.057(f )W -0.552 N 0.057(A )W FmE 272 0 :M f263 sf ( )S 274 0 :M FrMacBegin B 0 FmP F FmOP 231.637 679.999 M (\243)S FmE 274 0 :M f148 sf ( )S 276 0 :M FrMacBegin B 0 FmP F FmOP 237.125 679.999 M 0.057( )W -0.552 N (A)S -1.111 N (\325)S -0.742 N 0.057( and C )W FmE 277 0 :M f263 sf ( )S 279 0 :M FrMacBegin B 0 FmP F FmOP 276.604 679.999 M (\315)S FmE 279 0 :M f148 sf ( )S 281 0 :M FrMacBegin B 0 FmP F FmOP 283.733 679.999 M 0.057( C\325;)W 96 691.999 M (\(A, C\) )S FmE 282 0 :M f263 sf ( )S 284 0 :M FrMacBegin B 0 FmP F FmOP 124.044 691.999 M (\305)S FmE 284 0 :M f148 sf ( )S 286 0 :M FrMacBegin B 0 FmP F FmOP 131.725 691.999 M ( \(A)S -1.111 N (\325, C\323\) = \(max\(A, )S -0.552 N (A)S -1.111 N (\325\), C )S FmE 287 0 :M f263 sf ( )S 289 0 :M FrMacBegin B 0 FmP F FmOP 239.538 691.999 M (\310)S FmE 289 0 :M f148 sf ( )S 291 0 :M FrMacBegin B 0 FmP F FmOP 247.218 691.999 M ( C\325\))S 96 703.999 M (\(A, C\) )S FmE 292 0 :M f263 sf ( )S 294 0 :M FrMacBegin B 0 FmP F FmOP 124.044 703.999 M (\304)S FmE 294 0 :M f148 sf ( )S 296 0 :M FrMacBegin B 0 FmP F FmOP 131.725 703.999 M ( \(A)S -1.111 N (\325, C\325\) = \(min\(A, )S -0.552 N (A)S -1.111 N (\325\), C )S FmE 297 0 :M f263 sf ( )S 299 0 :M FrMacBegin B 0 FmP F FmOP 236.767 703.999 M (\307)S FmE 299 0 :M f148 sf ( )S 301 0 :M FrMacBegin B 0 FmP F FmOP 244.447 703.999 M ( C\325\))S FmE endp showpage %%PageTrailer %%Page: 2 2 %%PageProcessColors: Black %%PageCustomColors: %%BeginPageSetup %RBIIncludePageSlotInvocation mTSsetup pmSVsetup initializepage (Matt Bishop; page: 2 of 2)setjob %%EndPageSetup gS 0 0 588 768 rC 302 0 :M FrMacBegin 0 FmP F FmOP 0 FmSP FmE 60 33 468 14 rC 302 0 :M FrMacBegin 60 34 468 12 FmKp B 0 FmP F FmOP 60 35 FmB 468 0 FmL 2 1 FmSo 60 38 FmB 468 0 FmL 2 1 FmSo FmE gR gS 0 0 588 768 rC 302 0 :M f148 sf ( )S 304 0 :M FrMacBegin B 0 FmP F FmOP 60 30.667 M 2(P)A FmE 305 0 :M f161 sf ( )S 307 0 :M FrMacBegin B 0 FmP F FmOP 67.559 30.667 M 2(UZZLE)A FmE 307 0 :M f148 sf ( )S 309 0 :M FrMacBegin B 0 FmP F FmOP 102.883 30.667 M 2( )A FmE 309 0 :M f161 sf ( )S 311 0 :M FrMacBegin B 0 FmP F FmOP 107.383 30.667 M 2(OF)A FmE 311 0 :M f148 sf ( )S 313 0 :M FrMacBegin B 0 FmP F FmOP 121.61 30.667 M 2( )A FmE 314 0 :M f161 sf ( )S 316 0 :M FrMacBegin B 0 FmP F FmOP 126.11 30.667 M 2(THE)A FmE 316 0 :M f148 sf ( )S 318 0 :M FrMacBegin B 0 FmP F FmOP 147.66 30.667 M 2( D)A FmE 318 0 :M f161 sf ( )S 320 0 :M FrMacBegin B 0 FmP F FmOP 161.379 30.667 M 2(AY)A FmE 320 0 :M f148 sf ( )S 322 0 :M FrMacBegin B 0 FmP F FmOP 395.553 30.667 M 2(ECS 153 \321 F)A FmE 323 0 :M f161 sf ( )S 325 0 :M FrMacBegin B 0 FmP F FmOP 473.949 30.667 M 2(ALL)A FmE 325 0 :M f148 sf ( )S 327 0 :M FrMacBegin B 0 FmP F FmOP 495.5 30.667 M 2( 2000)A 60 744 M (Version of )S (November 30, 2000 3:16 pm)S 262.497 N (Page )S (2)S ( of )S (2)S FmE 327 0 :M f188 sf ( )S 331 0 :M FrMacBegin B 0 FmP F FmOP 227.269 72 M (Puzzle of the Day)S FmE 332 0 :M f148 sf ( )S 334 0 :M FrMacBegin B 0 FmP F FmOP 60 102.667 M -0.264(Computer security e)W -0.151 N -0.264(xperts seem to lik)W -0.1 N -0.264(e puns. So if you w)W -0.1 N -0.264(ant to talk as a computer security e)W -0.151 N -0.264(xpert, you must be able to )W 60 114.667 M -0.074(inject bad puns into your con)W -0.4 N (v)S -0.151 N -0.074(ersation. )W -0.181 N (T)S -0.801 N -0.074(o get you started, here are some puns from what the )W FmE 334 0 :M f216 sf ( )S 336 0 :M FrMacBegin B 0 FmP F FmOP 430.686 114.667 M -0.074(Book of Lists 2 )W FmE 337 0 :M f148 sf ( )S 339 0 :M FrMacBegin B 0 FmP F FmOP 492.608 114.667 M -0.074(calls the )W 60 126.667 M (w)S -0.1 N (orld\325)S -0.552 N (s w)S -0.1 N (orst puns. Consider yourselv)S -0.151 N (es armed \(or fore)S -0.251 N (w)S -0.1 N (arned\)!)S 60 141.667 M (1.)S 10.5 N (The Eskimo stabbed himself with an icicle. He died of cold cuts.)S 60 156.667 M (2.)S 10.5 N (In his dessert list, a San )S -0.552 N (Antonio restaurateur suggests, \322Remember the alamode!\323)S 60 171.667 M (3.)S 10.5 N (There w)S -0.1 N (as an advice-to-the-lo)S -0.151 N (v)S -0.151 N (elorn editor who insisted, \322If at \336)S (rst you don\325)S -0.181 N (t succeed, try a little ardor)S -0.552 N (.)S -0.701 N (\323)S 60 186.667 M (4.)S 10.5 N (The commuter\325)S -0.552 N (s )S -0.5 N (V)S -1.292 N (olksw)S -0.1 N (agen brok)S -0.1 N (e do)S -0.251 N (wn once too often. So he consigned it to the Old )S -0.5 N (V)S -1.292 N (olks Home.)S 60 201.667 M (5.)S 10.5 N (The wise old cro)S -0.251 N (w perched himself on a telephone wire. He w)S -0.1 N (anted to mak)S -0.1 N (e a long-distance ca)S -0.151 N (w)S -0.652 N (.)S 60 216.667 M (6.)S 10.5 N (A talkati)S -0.251 N (v)S -0.151 N (e musician couldn\325)S -0.181 N (t hold a job)S -0.4 N (. Ev)S -0.151 N (ery time he opened his mouth, he put his \337)S (ute in it.)S 60 231.667 M (7.)S 10.5 N -0.273(A f)W -0.1 N -0.273(armer with relati)W -0.251 N (v)S -0.151 N -0.273(es in East German)W -0.151 N -0.273(y heard that a food package he had sent had ne)W -0.251 N (v)S -0.151 N -0.273(er arri)W -0.251 N (v)S -0.151 N -0.273(ed. Optimistically)W -0.652 N -0.273(, )W 78 243.667 M (he assured them, \322Cheer up! )S -0.181 N (The wurst is yet to come.)S -0.701 N (\323)S 60 258.666 M (8.)S 10.5 N -0.02(When the promoter of a big \337)W (o)S -0.251 N -0.02(wer sho)W -0.251 N -0.02(w w)W -0.1 N -0.02(as told that a postponement w)W -0.1 N -0.02(as necessary because the e)W -0.151 N -0.02(xhibits could )W 78 270.666 M (not be installed on time, he e)S -0.151 N (xplained to his back)S -0.1 N (ers, \322W)S -0.801 N (e were simply caught with our plants do)S -0.251 N (wn.)S -0.701 N (\323)S 60 285.666 M (9.)S 10.5 N -0.336(A critic declared that he al)W -0.1 N (w)S -0.1 N -0.336(ays praised the \336)W -0.336(rst sho)W -0.251 N -0.336(w of a ne)W -0.251 N -0.336(w theatrical season. \322Who am I,)W -0.701 N -0.336(\323 he ask)W -0.1 N -0.336(ed, \322to stone )W 78 297.666 M (the \336)S (rst cast?\323)S 60 312.666 M (10.)S 5.5 N (Egotist: a person who\'s al)S -0.1 N (w)S -0.1 N (ays me-deep in con)S -0.4 N (v)S -0.151 N (ersation.)S 60 327.666 M (11.)S 5.5 N (\322It\'s raining cats and dogs,)S -0.701 N (\323 one man remark)S -0.1 N (ed. \322I kno)S -0.251 N (w)S -0.652 N (,)S -0.701 N (\323 said another)S -0.552 N (. \322I just stepped into a poodle.)S -0.701 N (\323)S 60 342.666 M (12.)S 5.5 N -0.038(An eccentric bachelor passed a)W -0.151 N (w)S -0.1 N -0.038(ay and left a nephe)W -0.251 N -0.038(w nothing b)W -0.2 N -0.038(ut 392 clocks. )W -0.181 N -0.038(The nephe)W -0.251 N -0.038(w is no)W -0.251 N -0.038(w b)W -0.2 N -0.038(usy winding )W 78 354.666 M (up the estate.)S 60 369.666 M (13.)S 5.5 N (The baseball pitcher with a sore arm w)S -0.1 N (as in the thro)S -0.251 N (ws of agon)S -0.151 N (y)S -0.652 N (.)S FmE endp showpage %%PageTrailer %%Trailer end %%EOF