; TeX output 1997.03.06:1730so(DtGGcmr17The7tGGcmss17graphicspacqkage!", cmsy10XQ cmr12D.PV.Carlisle YS.PV.Q.Rahrtz37 1996/10/31:ōINff cmbx121aLIntros3ductionIK`y cmr10Thispackqageimplementsvqarious`graphics'functions.#Themainfeaturesarea) Iinclusion@of`graphics' les.b)Rotationofsectionsofthepage,c)ScalingofIsectionsUUofthepage.XTheUUdesignissplitintothree`levels'.X !", cmsy10bTheƍuserinterface.pThisisthecollectionofcommandsdesignedtoappGearbin|adoGcumenttext.};ActuallytwoseparateuserinterfacehavebGeenimple-bmented.d3The,`standard'interface,4describGedhere,andamorepGowerful,andbmoreUU`user-friendly'interfaceprovidedbythe'ExX.!ThedvidriverusedmustbGegivenadditionalinstructions.b(Usingthe\specialcommandofTU>'ExX.) _Unfortunately*,F?thecapabilitiesbofvqariousdriversdi er,FMandthesyntaxrequiredtopassinstructionstobthedriversisalsonotstandardised.~Sothe`corefunctions'neveraccessb\special)˲directly*,^butrathercallaseriesofcommandsthatmustbGede-b nedg_inaspGecial lecustomisedforeachdriver.Theaccompanying le,bdrivers.dtxUUhassuitable lesforarangeofpGopulardrivers.!čI2aLPackageffOptionsIMostoftheoptions,suchasdvips,texturesetc.,spGecifythedriverthatistobeIusedtoprintthedoGcument.SY*oumaywishtosetupacon guration lesothatIthisfoptionalwaysftakese ect,k3evenifnotspGeci edinthedocument.CT*odothis,IproGduceUUa legraphics.cfgcontainingtheline:I\ExecuteOptions{dvips}I(orUUwhicheverotherdriveryouwish.)XApartfromthedriveroptionsthereareafewotheroptionstocontroltheIbGehaviourUUofthepackqage.IX-ffr @ -:q% cmsy6L|{Ycmr8ThisX lehasvÎersionnumb'ExXdimensions.Iftheunitsareommitedtheydefaulttobp.So[1in,1in]Iand[72,72]areequivqalent.T/IfonlyoneoptionalargumentappGears,MthelowerleftIcorneroftheimageisassumedtobGeat[0,0].]\Otherwise[hllx,lly}i w]maybeusedItoUUspGecifythecordinatesofthispoint.\graphicspathI{hdir-listظi%U}IThisoptionaldeclarationmaybGeusedtospecifyalistofdirectoriesinwhichtoIsearchforgraphics les.DTheformatisasfortheL5ffٓRcmr7A͉TU>'ExX2 b> cmmi10"*βprimitive\input@path,Iaylistofdirectories,eachina{}group(evenifthereisonlyoneinthelist).SF*orIexample:3\graphicspath{{eps/}{tiff/}}ًwouldcausethesystemtoloGokintheIsubGdirectories4epsandtiffofthecurrentdirectory*.ycThedefaultsettingofthisIpathis\input@paththatis:vgraphics leswillbGefoundwhereverTU>'ExX lesareIfound.m.\DeclareGraphicsExtensionsI{hext-listظi%}IThismspGeci esthebehaviourofthesystemwhenargumentto\includegraphicsIdoGesnothaveanextensionspeci ed.7{hext-listظi%}shouldbeacommaseparatedIlistof leextensions./A lenameisproGducedbyappendingsep1Qandoneextension.IIf-a leisfound,#thesystemactsasifthatextensionhadbGeenspeci ed.PIfnot,ItheUUnextextensioninext-listH-istried.XEarlyversionsofthispackqagede nedadefaultargumentforthiscommand.IThisUUhasbGeenremoved.2 soƲ\DeclareGraphicsRuleI{hextظiI}{htyp}'e[i%}{hr}'ead- le[i*}{hc}'ommandi25} IAnygnumbGerofthesedeclarationscanbemade.Theydeterminehowthesys-ItemsbGehaveswhena lewithextensionextKisspGeci ed. + (TheextensionmayIbGee$speci edexplicitlyor,iftheargumentto\includegraphicsdoesnothaveIanuextension,?itmaybGeadefaultextensionfromtheext-listMspeci edwithI\DeclareGraphicsExtensions.)Xextistheextensiona3ofthe le.H8Any lewiththisextensionwillbGeprocessedIbythisgraphicsrule.GNormallya lewithanextensionforwhichnorulehasbGeenIdeclaredEYwillgenerateanerror,HhoweverEYyoumayuse*astheextensiontode neIadefault6rule.PF*orinstancethedvipsdriver ledeclaresall lestobGeoftypGeepsIunlessUUamorespGeci cruleisdeclared.XSincewV*ersionv0.6,extensionsshouldbGespeci edincludingthe.thatis,.epsInotUUeps.Xtyp}'e)isithe`typGe'of leinvolved.All lesofthesametypGewillbeinputwithIthesameinternalcommand(whichmustbGede nedina`driver le').?:F*orexampleI lesUUwithextensionsps,eps,ps.gzmayallbGeclassedastypGeeps.Xr}'ead- ledeterminesSHtheextensionofthe lethatshouldbGereadtodetermineIsizeinformation. ItmaybGethesameasext{butitmaybGedi erent,forexampleI.ps.gzܲ lesarenotreadableeasilybyTU>'ExX,(soyoumaywanttoputthebGoundingIbGox;informationinaseparate lewithextension.ps.bb.$Ifr}'ead- leis;empty*,I{},>thenthesystemwillnottrytoloGcateanexternal leforsizeinfo,andtheIsizemustbGespeci edintheargumentsof\includegraphics.9kAsaspecialcaseI*maybGeusedtodenotethesameextensionasthegraphic le.&vThisismainlyIofuseinconjuctionwithusing*astheextension,RasinthatcasetheparticularIgraphicUUextensionisnotknown.qF*orexampleM\DeclareGraphicsRule{*}{eps}{*}{}IThis7woulddecalareadefaultrule,pOsuchthatallunknownextensionswouldbGeItreated~>asEPS~4 les,yandthegraphic lewouldbGereadforaBoundingBoxcom-Iment.XIfthedriver lespGeci esaprocedureforreadingsize lesfortyp}'e, thatwillbeIused,^otherwiseztheproGcedureforreadingeps leswillbeused.ThusthesizeofIbitmapD lesmaybGespeci edina lewithaPostScriptstyle%%BoundingBoxline,IifUUnootherspGeci cformatisavqailable.Xc}'ommand }isusuallyempty*,butifnonemptyitisusedinplaceofthe lenameIinthe\special.Withinthisargument,\#1maybGeusedtodenotethe lename.IThusUUusingthedvipsdriver,onemayuseI\DeclareGrahicsRule{.ps.gz}{eps}{.ps.bb}{`zcat?#1}Ithe) nalargumentcausesdvipstousethezcatcommandtounzipthe lebGeforeIinsertingUUitintothePostScriptoutput.6I3.2gRotationuT\rotateboxI{hangle[i}{htextظi}IRotateItext'ExX2","|bGoxlengtharguments,k\height,I\width,K\totalheightHand\depthmaybGeusedtorefertotheoriginalsizeoftheIbGox.!čI4aLTheffKey=VfalueInterfaceIAsmentionedintheintroGduction,@apartfromtheabove`standardinterface',@thereIis?Nanalternativesyntaxtothe\includegraphicsand\rotateboxcommandsthatIsomeUUpGeoplemayprefer.qItisprovidedbytheaccompanyinggraphicxpackqage.I5aLTheffGraphicsKernelFfunctionsI5.1gGraphicsInclusionuT9\Ginclude@graphicsI{h le[iN}IInsertZthecontentsZofthe le leߵatthecurrentpGoint._\Ginclude@graphicsmayIuseothefourmacros\Gin@llx,u\Gin@lly,\Gin@urx,\Gin@uryotodeterminetheI`bGoundingbox'ofthegraphic.@`TheresultwillbeaTU>'ExXboxofwidthurx>vllxHandIheightÃurySlly .PIfÃ\Gin@clipishtrue[i!thenpartofthegraphicthatisoutsideIthisPbGoxshouldnotbedisplayed.d(NotPalldriverscansupportthis`clipping'.)INormallyUUalltheseparametersaresetbythe`userinterfacelevel'.\Gread@epsI{h le[iN}IF*oreachtyp}'eF=ofgraphics lesuppGorted,_thedriver lemustde ne\Ginclude@typ}'eIand,Xoptionally\Gread@typ}'e. FThereadcommandisrespGonsibleforobtainingIsizeinformationfromthe lespGeci edinthe\DeclareGraphicsRulecommand.IHoweverthekernelde nesafunction,\Gread@eps,whichcanreadPostScript lesItof ndthe%%BoundingBoxcomment.gThisfunctionwillbGeusedforanytypGeforIwhich˳aspGeci cfunctionhasnotbeendeclared.C\Gread@epsacceptsageneralisedIversionofthebGoundingboxcomment.TU>'ExXunitsmaybGeused(buttheremustIbGeUUnospacebeforetheunit).qIftheunitisomittedbpisassumed.SoI%%BoundingBox?002in3inIW*ouldUUbGeacceptedbythisfunction,toproducea2inwide,by3inhighgraphic.6I5.2gRotation$\Grot@boxIRotate thecontents of\box0through\Grot@angledegrees(anti-cloGckwise).Y TheIuser-interfaceisrespGonsibleforsettingthemacro\Grot@angle,šandputtingtheIappropriateUUtextin\Grot@box.4*soI5.3gScalinguTL\Gscale@boxI{hxsc}'ale[i!}[hysc}'ale[i!9]{htextظi} I(Thesecondargumentisnotoptional.)7ScaletextIJbytheappropriatescalefactors. 6\Gscale@box@ddI{hdimaci}{hdimbi]M}{htextظi}IScaleUUtextH-inbGothdirectionsbyafactordimac/dimb. \Gscale@box@ddddLUU{hdimaci}{hdimbi]M}{hdimciLk}{hdimdiG}{htextظi}IScaleQtextr)inhorizontallybyafactordimac/dimb,andverticallybyafactorofIdimc/dimd.L\Gscale@divI{hcmdi.}{hdimaci}{hdimbi]M}IDe neUUthemacrocmd]޲tobGetheratioofthelengthsdimac/dimb.!čI6aLInterfacefftotheDriverFilesI6.1gGraphicsInclusionIEach_driver lemustdeclarethatitsdrivercanincludegraphicsofcertaintyp}'es.IItUUdoGesthisbydeclaringforeachtypGeacommandoftheform:I\Ginclude@typ}'eIThe?Graphicskernelfunctionwillcallthisdriver-de nedfunctionwiththe lenameIasUUargument,andcertainadditionalinformationwillbGeprovidedasfollows.:GqǍdO\Gin@llx,UU\Gin@lly,O\Gin@urx,UU\Gin@uryrMacrosUUstoringthe`bGoundingbox'O\Gin@nat@widthO\Gin@nat@heightrRegistersUUstoringthenaturalsize.O\Gin@req@widthO\Gin@req@heightrRegistersstoringtherequiredsize,afterrscaling.O\Gin@scalex,UU\Gin@scaleyrmacros5withthescalefactors.\A%vqalueofr!@means:HScalebythesameamountasrtheUUotherdirection.$O\ifGin@clipr\newiftoken,trueifthegraphicshouldrbGeUU`clipped'totheboundingbox.XOptionallyUUthedrivermayde neacommandoftheform:I\Gread@typ}'eIThisoisrespGonsibleforreadinganexternal leto ndtheboundingboxinforma-Ition.l\IfEsuchacommandisnotdeclared,HTbutaread- leisspGeci edthecommandI\Gread@eps,UUwhichisde nedintheGraphicsKernelwillbGeused.6I6.2gLiteralPostscriptuTIDrivers8:thatareproGducingPostScriptoutputmaywanttode nethefollowingImacros. TheyreachtakeoneargumentwhichshouldbGepassedtoanappropriateIspGecial. TheyTarenotuseddirectlybythispackqagebutallowotherpackqagestoIuse-thestandardcon guration leandpackqageoptionstocustomisetovariousIdrivers:I\Gin@PS@raw,UULiteralPostScriptspGecial.I\Gin@PS@restored,Literal'ExXspacingisproGduced,1thesefunctionsIonlyUUneedinsertthe\special.I6.4gScalinguTI\Gscale@start,uE\Gscale@end,asforrotation,uEbutherescalethetextbyI\Gscale@xUUand\Gscale@y. 9I7aLImplementationLs1S& cmsy9h)ow cmss9pack9age#g i`̍I7.1gInitialisation\Gin@codesIFirstwesavethecatcoGdesofsomecharacters,*tandsetthemto xedvqalueswhilstIthisUU leisbGeingread. fLs2S\edef\Gin@codes{% Ls3XdD\catcode`\noexpand\^^A\the\catcode`\^^A\relaxLs4XdD\catcode`\noexpand\"\the\catcode`\"\relaxLs5XdD\catcode`\noexpand\*\the\catcode`\*\relaxLs6XdD\catcode`\noexpand\!\the\catcode`\!\relaxLs7XdD\catcode`\noexpand\:\the\catcode`\:\relax}`̍Ls8S\catcode`\^^A=\catcode`\%Ls9S\@makeother\"%I10S\catcode`\*=11I11S\@makeother\!%I12S\@makeother\:%2XW*e,willneedtohave,animplementationofthetrigonometricfunctionsforthe IrotationUUfeature.qMayaswellloaditnow.I13S\RequirePackage{trig} L\Grot@start $\Grot@endIInitialiseUUtherotationprimitives.I14S\providecommand\Grot@start{\@latex@error{Rotationnotsupported}\@ehc I15]\global\let\Grot@start\relax}I16S\providecommand\Grot@end{}2\Gscale@start L\Gscale@endIInitialiseUUthescalingprimitives.I17S\providecommand\Gscale@start{\@latex@error{Scalingnotsupported}\@ehcI18]\global\let\Gscale@start\relax}I19S\providecommand\Gscale@end{}2 L\Gread@BBoxI%%BoundingBoxasamacrofortestingwith\ifx.nThismaybGerede nedbythe IhiresbbUUoption.I20S\edef\Gread@BBox{\@percentchar\@percentcharBoundingBox}6E$soI7.2gOptionsuT$\ds@draft $\ds@finalI21S\DeclareOption{draft}{\Gin@drafttrue} I22S\DeclareOption{final}{\Gin@draftfalse}b\ifGin@draftIT*rueUUindraftmoGde.I23S\newif\ifGin@draft L\ds@hiresbbIIf=giventhisoptionthepackqagewillloGokforboundingboxcommentsoftheform I%%HiResBoundingBox+(whichtypicallyhaverealvqalues)insteadofthestandardI%%BoundingBoxUU(whichshouldhaveintegervqalues).I24S\DeclareOption{hiresbb}{% I25]\edef\Gread@BBox{\@percentchar\@percentcharHiResBoundingBox}} L\Gin@driverIDriverUUinuse.I26S\providecommand\Gin@driver{}$\ds@dvips y\ds@xdviIT*omasGRoGckiki'sPostScriptdriver(unix,MSDOS,VMS...).OTheGX11previewer IxdviUUsuppGortsbasicallythesamesetof\specials.I27S\DeclareOption{dvips}{\def\Gin@driver{dvips.def}} I28S\DeclareOption{xdvi}{\ExecuteOptions{dvips}}\ds@dvipdfISergeyUULesenko'sdvipGdfdriver.I29S\DeclareOption{dvipdf}{\def\Gin@driver{dvipdf.def}}b\ds@dvipsone b\ds@dviwindoITheUUdriversfortheY&YTU>'ExXsystem.I30S\DeclareOption{dvipsone}{\def\Gin@driver{dvipsone.def}} I31S\DeclareOption{dviwindo}{\ExecuteOptions{dvipsone}}$\ds@emtex \ds@dviwinITwoUUfreelyavqailablesetsofdriversforMSDOS,OS/2andWindows.I32S\DeclareOption{emtex}{\def\Gin@driver{emtex.def}} I33S\DeclareOption{dviwin}{\def\Gin@driver{dviwin.def}}$\ds@oztexIOZTU>'ExXUU(Macintosh).I34S\DeclareOption{oztex}{\def\Gin@driver{oztex.def}}b\ds@texturesIT*exturesUU(Macintosh).I35S\DeclareOption{textures}{\def\Gin@driver{textures.def}} L\ds@pctexps b\ds@pctexwin L\ds@pctexhp L\ds@pctex32IPCTU>'ExXUU(MSDOS/Windows).I36S\DeclareOption{pctexps}{\def\Gin@driver{pctexps.def}} I37S\DeclareOption{pctexwin}{\def\Gin@driver{pctexwin.def}}I38S\DeclareOption{pctexhp}{\def\Gin@driver{pctexhp.def}}I39S\DeclareOption{pctex32}{\def\Gin@driver{pctex32.def}} L\ds@truetex \ds@tcidviIKinchLnT*rueTeX,anditsversionwithextendedspGecialsupportasshippedbySci- Ienti cUUW*ord.I40S\DeclareOption{truetex}{\def\Gin@driver{truetex.def}}I41S\DeclareOption{tcidvi}{\def\Gin@driver{tcidvi.def}}7O*so\ds@dvi2ps \ds@dvialw b\ds@dvilaser L\ds@dvitops L\ds@psprint $\ds@pubps "\ds@lnIIffanyoneBisusinganyofthesedriveroptionswouldtheyletmeknow.Allthese IareUUessentiallyuntriedanduntestedasfarasIknow. >I42S%\DeclareOption{dvi2ps}{\def\Gin@driver{dvi2ps.def}} I43S%\DeclareOption{dvialw}{\def\Gin@driver{dvialw.def}}I44S%\DeclareOption{dvilaser}{\def\Gin@driver{dvilaser.def}}I45S%\DeclareOption{dvitops}{\def\Gin@driver{dvitops.def}}I46S%\DeclareOption{psprint}{\def\Gin@driver{psprint.def}}I47S%\DeclareOption{pubps}{\def\Gin@driver{pubps.def}}I48S%\DeclareOption{ln}{\def\Gin@driver{ln.def}}p\ds@debugshowIY*ouUUprobablydon'twantUUtousethis...I49S\DeclareOption{debugshow}{\catcode`\^^A=9\let\GDebug\typeout}XA,loGcal^con guration lemayde nemoreoptions.Itshouldalsomakeone Idriver;optionthedefault,sbycalling\ExecuteOptionswiththeappropriateoption.I50S\InputIfFileExists{graphics.cfg}{}{} 6\ds@hiderotateI51S\DeclareOption{hiderotate}{% I52]\def\Grot@start{\begingroup\setbox\z@\hbox\bgroup}I53]\def\Grot@end{\egroup\endgroup}}p\ds@hidescaleI54S\DeclareOption{hidescale}{%I55]\def\Gscale@start{\begingroup\setbox\z@\hbox\bgroup}I56]\def\Gscale@end{\egroup\endgroup}}pXAfterHtheoptionsareproGcessed,loadtheappropriatedriver le.EnIfasitewants IaEdefaultdriver(egtextures)itjustneedstoput\ExecuteOptions{textures}IinUUagraphics.cfg le.I57S\ProcessOptions>XCheckMthatadriverhasbGeenspeci ed(eitherasanoption,orasadefaultIoptionuzinthecon guration le).5Thenloadthe`def' leforthatoption,}ifithasInotUUalreadybGeenloadedbysomeotherpackqage(forinstancethe,m#R cmss10colorxpackqage).I58S\if!\Gin@driver! I59]\PackageError{graphics}I60f{Nodriverspecified}I61f{Youshouldmakeadefaultdriveroptioninafile\MessageBreakI62kJgraphics.cfg\MessageBreakI63kJeg:\protect\ExecuteOptions{textures}%I64kJ}I65S\elseI66]\PackageInfo{graphics}{Driverfile:\Gin@driver}I67]\@ifundefined{ver@\Gin@driver}{\input{\Gin@driver}}{}I68S\fiI7.3gGraphicsInclusionuTIThisGraphicspackqageusesalotofdimensionregisters.}TU>'ExXonlyhasalimited InumbGerRofregisters,Sjsoratherthanallocatenewones,Sjre-usesomeexistingL5ffA͉TU>'ExXIregisters.JnThisJissafeaslongasallusesoftheregistersarelo}'cal,andJthatyoucanIbGeUUsurethatyouneverhneedtohaveaccesstobGothuseswithinthesamescope.8 Zsoy\Gin@llx y\Gin@lly y\Gin@urx y\Gin@uryIInfactthesefourlengthsarenowstoredasmacrosnotasdimenregisters,mainly IsoUUthatintegerbplengthsmaybGepassedexactly*. I69S\def\Gin@llx{0} I70S\let\Gin@lly\Gin@llxI71S\let\Gin@urx\Gin@llxI72S\let\Gin@ury\Gin@llxEэ 6\Gin@nat@widthf\Gin@nat@heightITheUU`natural'sizeofthegraphic,bGeforeanyscaling. I73S\let\Gin@nat@width\leftmarginvI74S\let\Gin@nat@height\leftmarginviEэ L\ifGin@clipIThis;switchishtrue[i">ifanygraphicsoutsidethespGeci edboundingbox(reallyIviewpGort)UUshouldnotbeprinted. I75S\newif\ifGin@clipm.\DeclareGraphicsExtensionsIDeclareacommaseparatedlistofdefaultextensionstobGeusedifthe leisIspGeci edUUwithnoextension. I76S\newcommand\DeclareGraphicsExtensions[1]{% I77]\edef\Gin@extensions{\zap@space#1\@empty}}f\Gin@extensionsIInitialiseUUthelistofpGossibleextensions.I78S\providecommand\Gin@extensions{} \includegraphicsIT*opUUlevelcommandforthestandardinterface,justloGokfora*.I79S\def\includegraphics{% I80]\@ifstarI81f{\Gin@cliptrue\Gin@i}%I82f{\Gin@clipfalse\Gin@i}}Eэ"\Gin@iIIfuanoptionalargumentispresent,=call\Gin@iitoproGcessit,otherwisecall I\Ginclude@graphics.I83S\def\Gin@i{%I84]\@ifnextchar[%]I85f\Gin@iiI86f{\Gin@bboxfalse\Ginclude@graphics}}Eэ3P\Gin@iiILoGokUUforasecondoptionalargument.I87S\def\Gin@ii[#1]{%I88]\@ifnextchar[%]I89f{\Gin@iii[#1]}I90f{\Gin@iii[0,0][#1]}}Eэy\Gin@iiiISetEthecordinatesofthellowerEleftcorner,HandthecordinatesoftheuppGerright Icorner.qTheUUcordinatesmaybGeanyTU>'ExXdimension,defaultingtobp.I91S\def\Gin@iii[#1,#2][#3,#4]#5{%I92]\begingroupI93]\Gin@bboxtrueI94]\Gin@defaultbp\Gin@llx{#1}%I95]\Gin@defaultbp\Gin@lly{#2}%I96]\Gin@defaultbp\Gin@urx{#3}%I97]\Gin@defaultbp\Gin@ury{#4}%I98]\Ginclude@graphics{#5}%I99]\endgroup}9 gݠso 6\Gin@defaultbp L\Gin@def@bpIThismacrograbsalength,J#2,whichmayormaynothaveaunit,Jandifa Iunitissupplied,Qconvertsto`bp'andstoresthevqaluein#1.IfaunitisnotIsupplied`bp'isassumed,'and#2isdirectlystoredin#1.TNotethatsupplying`bp'Iis#notquitethesameassupplyingnounits,WasintheformercaseaconvertionIviaR`pt'andbackto`bp'takesplacewhichcanintroGduceroundingerror.gTheIerrorY$isinvisiblysmallbut lesconformingtoAdobGeDSCXshouldhaveinte}'gerIBounding@BoxCoGordinates,;andconceivqablysomedriversmightdemandintegerIvqalues.(AlthoughBmostseemtoacceptrealvalues(iftheyacceptbGoundingboxIcoGordinatesatall)inthe\special.feThisisthereasonwhythemechanismusesI\defUUandnotTU>'ExXlengths,asinearlierreleasesofthepackqage.E100S\def\Gin@defaultbp#1#2{% E101]\afterassignment\Gin@def@bp\dimen@#2bp\relax{#1}{#2}}E102S\def\Gin@def@bp#1\relax#2#3{%E103ap\if!#1!%E104kJ\def#2{#3}%E105f\elseE106p2\dimen@.99626\dimen@E107p2\edef#2{\strip@pt\dimen@}%E108f\fi}Ʋ\DeclareGraphicsRuleIDeclareUUwhatactionsshouldbGetakenforaparticular leextension. X#1UUextension,#2typGe,#3read- le,#4command,E109S\def\DeclareGraphicsRule#1#2#3#4{%E110]\edef\@tempa{\string*}\def\@tempb{#3}%E111]\expandafter\edef\csnameGin@rule@#1\endcsname##1%E112t{{#2}%E113yw^{\ifx\@tempa\@tempb\noexpand\Gin@ext\else#3\fi}%E114yw^{\ifx\indent#4\indent##1\else#4\fi}}}XAnUUexamplerulebase.extXtype s,readcommandM\DeclareGrahicsRule{.ps},{eps}{.ps}X{}M\DeclareGrahicsRule{.eps} s,{eps}{.eps},{}M\DeclareGrahicsRule{.ps.gz}{eps}{.ps.bb}{`zcat#1}M\DeclareGrahicsRule{.pcx} s,{bmp}{}Y{}\graphicspathIUserlevelcommandtosettheinputpathforgraphics les.Alistofdirectories, IeachUUina{}group.E115S\def\graphicspath#1{\def\Ginput@path{#1}}b\Ginput@pathITheUUdefaultgraphicpathis\input@path.E116S\ifx\Ginput@path\@undefined E117]\let\Ginput@path\input@pathE118S\fib\Gin@getbaseIGiven]apGossibleextension,#1,check]whetherthe leexists. 9IfitdoGesset I\Gin@base6and\Gin@exttothe lenamestrippGedoftheextension,nandtheex-Itension,UUrespGectively*.E119S\def\Gin@getbase#1{% E120]\edef\Gin@tempa{%E121f\def\noexpand\@tempa####1#1\space{%10 rsoE122p2\def\noexpand\Gin@base{####1}}}% E123]\IfFileExists{\filename@area\filename@base#1}%E124f{\Gin@tempaE125kJ\expandafter\@tempa\@filef@undE126kJ\edef\Gin@ext{#1}}{}}%ny\Gin@extIInitialiseUUthemacrotoholdtheextension. ύE127S\let\Gin@ext\relaxf\Gin@sepdefaultIThisUUmustmatchthetokenusedby\filename@parsetodelimittheextension.E128S\def\Gin@sepdefault{.}9\Ginclude@graphicsIThemaininternalfunctionimplementinggraphics leinclusion.I#1isthe le Iname.E129S\def\Ginclude@graphics#1{% E130]\begingroupE131]\let\input@path\Ginput@pathE132]\filename@parse{#1}%E133]\ifx\filename@ext\relaxE134f\@for\Gin@temp:=\Gin@extensions\do{%E135p2\ifx\Gin@ext\relaxE136yw^\Gin@getbase\Gin@tempE137p2\fi}%E138]\elseE139f\Gin@getbase{\Gin@sepdefault\filename@ext}%ύIIftheusersuppliedanexplicitextension,>justgiveawarningifthe ledoGesnot Iexist.q(ItUUmaybGecreatedlater.)E140f\ifx\Gin@ext\relaxE141t\@warning{File`#1'notfound}%E142t\def\Gin@base{\filename@area\filename@base}%瞍E143t\edef\Gin@ext{\Gin@sepdefault\filename@ext}%E144f\fiE145]\fi瞍IIfȤnoextensionissupplied,witisanerrorifthe ledoGesnotexist,asthereisno IwayUUforthesystemtoknowwhichextensiontosupply*.E146f\ifx\Gin@ext\relaxE147~0\@latex@error{File`#1'notfound}%E148~0{Icouldnotlocatethefilewithanyoftheseextensions:^^J%E149\Gin@extensions^^J\@ehc}%E150f\elseE151t\@ifundefined{Gin@rule@\Gin@ext}%ύIHandleUUdefaultrule.E152~0{\ifx\Gin@rule@*\@undefinedE153]\@latex@error{Unknowngraphicsextension:\Gin@ext}\@ehcE154\elseE155]\expandafter\Gin@setfile\Gin@rule@*{\Gin@base\Gin@ext}%E156 \fi}%E157~0{\expandafter\expandafter\expandafter\Gin@setfileE158L\csnameGin@rule@\Gin@ext\endcsname{\Gin@base\Gin@ext}}%E159f\fiE160]\endgroup}11 ~àso$\ifGread@IT*rueUUifa leshouldbGereadtoobtainthenaturalsize.E161S\newif\ifGread@\Gread@trueb\Gin@setfileISetUUa letothesizespGeci edinarguments,orina`read le'.E162S\def\Gin@setfile#1#2#3{% E163]\ifx\\#2\\\Gread@false\fiE164]\ifGin@bbox\elseE165f\ifGread@E166p2\csnameGread@%E167~0\expandafter\ifx\csnameGread@#1\endcsname\relaxE168 eps%E169~0\elseE170 #1%E171~0\fiE172p2\endcsname{\Gin@base#2}%E173f\elseIByfnowthenaturalsizeshouldbGeknowneitherfromargumentsorfromthe le. IIfUUnotgenerateanerror.q(Thegraphicxinterfacerelaxesthisconditionslightly*.)E174p2\Gin@nosize{#3}%E175f\fiE176]\fiIThefollowingcallwillmoGdifythe`naturalsize'iftheuserhassuppliedaviewport IorUUtrimspGeci cation.q(Notavqailableinthestandardinterface.)E177]\Gin@viewport@codeISavepUthenaturalsize,"andthencall\Gin@req@sizeswhic(inthekey-vqalinterface)IwillUUcalculatetherequiredsizefromthenaturalsize,andanyscalinginfo.E178]\Gin@nat@height\Gin@urybp% E179]\advance\Gin@nat@height-\Gin@llybp%E180]\Gin@nat@width\Gin@urxbp%E181]\advance\Gin@nat@width-\Gin@llxbp%E182]\Gin@req@sizesXCallQ\Ginclude@typ}'etoincludethe gureunlessthisisnotde ned,ordraft ImoGdeUUisbeingused.E183]\expandafter\ifx\csnameGinclude@#1\endcsname\relaxE184f\Gin@drafttrueE185f\expandafter\ifx\csnameGread@#1\endcsname\relaxE186p2\@latex@error{Cannotincludegraphicsoftype:#1}\@ehcE187p2\global\expandafter\let\csnameGread@#1\endcsname\@emptyE188f\fiE189]\fiE190]\leavevmodeE191]\ifGin@draftE192p2\hb@xt@\Gin@req@width{%E193yw^\vrule\hssE194yw^\vboxto\Gin@req@height{%E195 \hrule\@width\Gin@req@widthE196 \vssE197 \edef\@tempa{#3}%E198 \rlap{\ttfamily\expandafter\strip@prefix\meaning\@tempa}%E199 \vssE200 \hrule}%12 soE201yw^\hss\vrule}% E202]\elseISuppGortUU\listfilesandthensetthe nalboxtotherequiredsize. E203f\@addtofilelist{#3}%E204f\ProvidesFile{#3}[Graphicfile(type#1)]%E205f\setbox\z@\hbox{\csnameGinclude@#1\endcsname{#3}}%E206f\dp\z@\z@E207f\ht\z@\Gin@req@heightE208f\wd\z@\Gin@req@widthE209]\box\z@E210]\fi}򙍍 \Gin@exclamationICatcoGdeUU12!,incaseofF*rench,orotherlanguagestyles.E211S\def\Gin@exclamation{!} 6\Gin@req@sizes L\Gin@scalex L\Gin@scaley f\Gin@req@height 6\Gin@req@widthIInthestandardinterfacethereisnoscaling,sotherequiredsizeisthesameasthe Inaturalsize.YInotherinterfaces\Gin@req@sizeswillbGeresponsibleforsettingItheseUUparameters.qHerewecansetthemglobally*.E212S\let\Gin@req@sizes\relax E213S\def\Gin@scalex{1}%E214S\let\Gin@scaley\Gin@exclamationE215S\let\Gin@req@height\Gin@nat@heightE216S\let\Gin@req@width\Gin@nat@width򙍍9\Gin@viewport@codeIIn|thestandardinterfacethereisnopGossibilityofspGecifyingaviewport,#sothisis IaUUno-op.E217S\let\Gin@viewport@code\relax L\Gin@nosizeIThisNcommandiscalledinthecasethatthegraphicstypGespeci esno`read le'and Itheusersuppliednosizearguments.InthestandardinterfacecanonlygenerateIanUUerror.E218S\def\Gin@nosize#1{% E219]\@latex@errorE220p2{Cannotdeterminesizeofgraphicin#1(nosizespecifed)}%E221p2\@ehc}]I7.4gReadingtheBoundingBoxinEPS lesuT L\ifGin@bboxIThis\switchshouldbGesethtrue[ikonceasizehasbeenfound,(eitherinanargument, IorUUinanexternal le.E222S\newif\ifGin@bbox򙍍\Gread@epsIReadVZanEPS le(#1)andsearchforalinestartingwith%%BoundingBoxandre-Iturnsftheresultbysettingfourdimensionregisters\Gin@llx,\Gin@lly,\Gin@urxIandUU\Gin@ury.E223S\def\Gread@eps#1{% E224]\begingroupIMakezitreasonablysafetohavebinaryheadersintheEPSK lebGeforetheboundingIbGoxUUline.E225S\@tempcnta\z@ E226S\loop\ifnum\@tempcnta<\@xxxii13soE227ap\catcode\@tempcnta14% E228ap\advance\@tempcnta\@neE229S\repeatE230S\catcode127=14%E231]\let\do\@makeother\dospecials\catcode`\10%E232]\catcode\endlinechar5%ITheUU rstthingweneedtodoistoopGentheinformation le,ifpossible. E233]\immediate\openin\@inputcheck#1%E234]\ifeof\@inputcheckE235f\@latex@error{File`#1'notfound}\@ehcE236]\elseINowh|we'llscanlinesuntilwe ndonethatstartswith%%BoundingBox:W*eneed ItoUUresetthecatcoGdestoreadthe le,andsothisisdoneinagroup. E237kJ\Gread@trueE238kJ\let\@tempb\Gread@falseE239kJ\loopE240t\read\@inputcheckto\@tempaE241t\ifeof\@inputcheckE242~0\Gread@falseE243t\elseE244~0\expandafter\Gread@find@bb\@tempa:.\\%E245t\fiE246kJ\ifGread@E247kJ\repeatE248f\immediate\closein\@inputcheckE249]\finE250]\ifGin@bbox\elseE251f\@latex@errorE252p2{Cannotdeterminesizeofgraphicin#1(noBoundingBox)}%E253p2\@ehcE254f\gdef\@gtempa{007272}%E255]\fiE256]\endgroupE257]\expandafter\Gread@parse@bb\@gtempa\\}% 6\Gread@find@bbIIfͦalineintheEPS͇ lestartswitha%%BoundingBox:,wewillexamineitmoreIclosely*.!Noteusingthe`extra'argument#2#3causesanyspaceafterthe:tobGeIgobbled. E258S\long\def\Gread@find@bb#1:#2#3\\{%E259]\def\@tempa{#1}%E260]\ifx\@tempa\Gread@BBoxE261f\Gread@test@atend#2#3()\\%E262]\fi}%t\Gread@test@atendIDetermineӟifthestu followingthe%%BoundingBoxis`(atend)',whichwillinvolveIfurther+readingofthe le.cThisisaccomplishedbymaking\@tempbintoano-op,IsoUUthat ndinga%%BoundingBoxdoGesnotstoptheloop. E263S\def\Gread@test@atend#1(#2)#3\\{%E264]\def\@tempa{#2}%E265]\ifx\@tempa\Gread@atendE266f\Gread@trueE267f\let\@tempb\relax14֠soE268]\else E269f\gdef\@gtempa{#1}%E270f\@tempbE271f\Gin@bboxtrueE272]\fi}f\Gread@parse@bbIW*e,have%%BoundingBoxandwhatfollowsisnot`(atend)'sowewillparsethe Irest<ofthelineasaBB;withfourelements.%PostScript< lesshouldneverhaveIunitsspGeci edintheBoundingBoxcomment,butweallowarbitraryTU>'ExXunitsinIexternalUU les,orinotherinterfaces.E273S\def\Gread@parse@bb#1#2#3#4#5\\{% E274]\Gin@defaultbp\Gin@llx{#1}%E275]\Gin@defaultbp\Gin@lly{#2}%E276]\Gin@defaultbp\Gin@urx{#3}%E277]\Gin@defaultbp\Gin@ury{#4}}%b\Gread@atendIatendUUasamacrofortestingwith\ifx.E278S\def\Gread@atend{atend}6I7.5gRotationuTIAsUUabGove,wewillre-usesomeexistingloGcalregisters.b\Grot@height \Grot@left L\Grot@right L\Grot@depthIFinalUURotatedbGoxdimensionsE279S\let\Grot@height\@ovxx E280S\let\Grot@left\@ovyyE281S\let\Grot@right\@ovdxE282S\let\Grot@depth\@ovdy3P\Grot@h 3P\Grot@l 3P\Grot@r 3P\Grot@dIOriginalUUbGoxdimensionsE283S\let\Grot@l\@ovroE284S\let\Grot@r\@ovriE285S\let\Grot@h\@xdimE286S\let\Grot@d\@ydim3P\Grot@x 3P\Grot@yICoGordinatesUUofcentreofrotation.E287S\let\Grot@x\@linelenE288S\let\Grot@y\@dashdim\rotateboxITheangleisspGeci edby#1.3;Theboxtoberotatedis#2.3;Inthestandardinterface ItheUUcentreofrotationis(0;0).qThen nallycall\Grot@boxtorotatethebGox.E289S\def\rotatebox#1#2{%E290]\leavevmodeE291]\Grot@setangle{#1}%E292]\setbox\z@\hbox{{#2}}%E293]\Grot@x\z@E294]\Grot@y\z@E295]\Grot@box} 6\Grot@setangleISet theinternalmacrousedby\Grot@box.7ZInthestandardinterfacethisistrivial, IbutUUotherinterfacesmayhavemoreinterestingde nitions.qF*orexample:M\def\Grot@setangle#1{%15soW,\dimen@#1\p@ W,\dimen@-57.2968\dimen@W,\edef\Grot@angle{\strip@pt\dimen@}}?IThisDwouldcausetheargumentof\rotateboxtobGeinterpretedasananglespGec- Ii edUUinr}'adians,clockwise. mE296S\def\Grot@setangle#1{\edef\Grot@angle{#1}}+I7.6gDerivinga`b`oundingbox'forrotatedobjectuTIW*ePwanttoknowthesizeofa`bGoundingbox'enclosingtherotatedbox.2W*ede neItwomformulae(asTU>'ExXmacros)toworkoutthexandycoGordinatesofverticesofIthearotatedbGoxinrelationtoitsoriginalcoordinates(ieitswidth,heightandIdepth).7ThezbGoxwevisualizewithverticesBq,C,D"andzEoisillustratedbGelow.IThevertexSgisthereferencepGointonthebaseline.޵O$isthecentreofrotation,IwhichUUinthestandardinterfaceisalwaysS.v捍߀ff߀ffffffffffffffffffffffffffffffffffffffffff̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎̎Ȁl̎ǀfffABCDESO< lcirclew10r$XTheUUformulaeare,forapGointPandangle z:1 PnRP^c O!cmsy70 0ercmmi7x=PxAĸ8OxRP^c0፴y=Pyg8Oy ;RP^c00፴x G=(P^c0፴xAĸ8coso( z))8(P^c0፴ygsin( ))RP^c00፴y G=(P^c0፴xAĸ8sin( z))8+(P^c0፴ygcoso( ))RP^c000፴x R=P^c00፴x+8OxAIJ+Lx RP^c000፴y R=P^c00፴y+8OyIThe0`extra'horizontaltranslationLx9lattheendiscalculatedsothattheleftmostIpGointvoftheresultingboxhasx-coordinate0.IThisisdesirableasTU>'ExXboxesmustIhaveUUthereferencepGointattheleftedgeofthebox.Hߍy\Grot@PxIW*orkBoutnewxcoGordinateofpointafterrotation.SlTheparameters#2and#3areIthe\z@E316f\ifdim\Grot@cos\p@>\z@IFirstUUquadrant:qHeight=Bqy[ٲ,Right=Ex,Left=Cx,Depth=DGyE317p2\Grot@Py\Grot@height\Grot@r\Grot@h%BE318p2\Grot@Px\Grot@right s,\Grot@r\Grot@d%EE319p2\Grot@Px\Grot@left,\Grot@l\Grot@h%CE320p2\Grot@Py\Grot@depth s,\Grot@l\Grot@d%DE321f\elseISecondUUquadrant:qHeight=Ey[ٲ,Right=DGx,Left=Bqx,Depth=CyE322p2\Grot@Py\Grot@height\Grot@r\Grot@d%EE323p2\Grot@Px\Grot@right s,\Grot@l\Grot@d%DE324p2\Grot@Px\Grot@left,\Grot@r\Grot@h%BE325p2\Grot@Py\Grot@depth s,\Grot@l\Grot@h%CE326f\fiE327]\elseE328f\ifdim\Grot@cos\p@<\z@IThirdUUquadrant:qHeight=DGy[ٲ,Right=Cx,Left=Ex,Depth=BqyE329p2\Grot@Py\Grot@height\Grot@l\Grot@d%DE330p2\Grot@Px\Grot@right s,\Grot@l\Grot@h%CE331p2\Grot@Px\Grot@left,\Grot@r\Grot@d%EE332p2\Grot@Py\Grot@depth s,\Grot@r\Grot@h%BE333f\elseIF*ourthUUquadrant:qHeight=Cy[ٲ,Right=Bqx,Left=DGx,Depth=EyE334p2\Grot@Py\Grot@height\Grot@l\Grot@h%CE335p2\Grot@Px\Grot@right s,\Grot@r\Grot@h%BE336p2\Grot@Px\Grot@left,\Grot@l\Grot@d%DE337p2\Grot@Py\Grot@depth s,\Grot@r\Grot@d%EE338f\fiE339]\fi17PsoINowweshouldtranslatebackby(Ox;Oy·),butTU>'ExXcannotreallydealwith IbGoxes{?thatdonothavethereferencepGointattheleftedge.(EverythingwithIa¸vex-coGordinatewouldover-printearliertext). SowemoGdifythehorizontalItranslationsothatthereferencepGointasunderstoodbyTU>'ExXistattheleftedge.IThismeansthatthe`centreofrotation'isnot xedby\rotatebox,)buttypicallyImoveshorizontally*.UTWealsoneedto ndtheimageoftheoriginalreferencepGoint,IS,UUasthatiswheretherotationspGecialsmustbeinserted./E340]\advance\Grot@height\Grot@y E341]\advance\Grot@depth\Grot@yE342]\Grot@Px\dimen@ s,\Grot@x\Grot@yE343]\Grot@Py\dimen@ii\Grot@x\Grot@yE344]\dimen@-\dimen@\advance\dimen@-\Grot@leftE345]\dimen@ii-\dimen@ii\advance\dimen@ii\Grot@yE346S^^A,\GDebug{Rotate:(l,r,h,d)^^J%E347S^^AOriginal\the\Grot@l,\the\Grot@r,\the\Grot@h,\the\Grot@d,^^J%E348S^^ANew.....\the\Grot@left,\the\Grot@right,%E349S^^A/?\the\Grot@height,\the\Grot@depth}%E350]\setbox\z@\hbox{%E351f\kern\dimen@E352f\raise\dimen@ii\hbox{\Grot@start\box\z@\Grot@end}}%E353]\ht\z@\Grot@heightE354]\dp\z@-\Grot@depthE355]\advance\Grot@right-\Grot@left\wd\z@\Grot@rightE356]\leavevmode\box\z@E357]\endgroup}ЧI7.7gStretchingandScalinguT$\scaleboxIThetoplevel\scalebox.Iftheverticalscalefactorisomitteditdefaultstothe IhorizontalUUscalefactor,#1. E358S\def\scalebox#1{%E359]\@ifnextchar[{\Gscale@box{#1}}{\Gscale@box{#1}[#1]}}aG L\Gscale@boxIInternalUUversionof\scalebox.E360S\def\Gscale@box#1[#2]#3{%E361]\leavevmodeE362]\def\Gscale@x{#1}\def\Gscale@y{#2}%E363]\setbox\z@\hbox{{#3}}%E364]\setbox\tw@\hbox{\Gscale@start\rlap{\copy\z@}\Gscale@end}%E365]\ifdim#2\p@<\z@E366f\ht\tw@-#2\dp\z@E367f\dp\tw@-#2\ht\z@E368]\elseE369f\ht\tw@#2\ht\z@E370f\dp\tw@#2\dp\z@E371]\fiE372]\ifdim#1\p@<\z@E373f\hb@xt@-#1\wd\z@{\kern-#1\wd\z@\box\tw@\hss}%E374]\elseE375f\wd\tw@#1\wd\z@E376f\box\tw@E377]\fi}18̩so L\reflectboxIJustUUanabbreviationfortheappropriatescaletogetre ection.E378S\def\reflectbox{\Gscale@box-1[1]}\resizeboxILoGokfora*,whichspeci esthata nalverticalsizerefersto`height+depth' InotUUjust`height'.E379S\def\resizebox{% E380]\leavevmodeE381]\@ifstar{\Gscale@@box\totalheight}{\Gscale@@box\height}}b\Gscale@@boxILoGokUUforthe!inthearguments.E382S\def\Gscale@@box#1#2#3{%E383]\let\@tempa\Gin@exclamationE384]\expandafter\def\expandafter\@tempb\expandafter{\string#2}%E385]\expandafter\def\expandafter\@tempc\expandafter{\string#3}%E386]\ifx\@tempb\@tempaE387f\ifx\@tempc\@tempaE388p2\toks@{\mbox}%E389f\elseE390p2\toks@{\Gscale@box@dd{#3}#1}%E391f\fiE392]\elseE393f\ifx\@tempc\@tempaE394p2\toks@{\Gscale@box@dd{#2}\width}%E395f\elseE396p2\toks@{\Gscale@box@dddd{#2}\width{#3}#1}%E397f\fiE398]\fiE399]\the\toks@} 6\Gscale@box@ddIScaleUUthetext#3inbGothdirectionsbyafactor#1 O=#2 .E400S\def\Gscale@box@dd#1#2#3{%E401]\@begin@tempboxa\hbox{#3}%E402f\setlength\@tempdima{#1}%E403f\setlength\@tempdimb{#2}%E404f\Gscale@div\@tempa\@tempdima\@tempdimbE405f\Gscale@box\@tempa[\@tempa]{\box\@tempboxa}%E406]\@end@tempboxa} \Gscale@box@ddddIScaleN8thetext#5horizontallybyafactor#1 2=#2andN8verticallybyafactor#3 2=#4 .E407S\def\Gscale@box@dddd#1#2#3#4#5{%E408]\@begin@tempboxa\hbox{#5}%E409f\setlength\@tempdima{#1}%E410f\setlength\@tempdimb{#2}%E411f\Gscale@div\@tempa\@tempdima\@tempdimbE412f\setlength\@tempdima{#3}%E413f\setlength\@tempdimb{#4}%E414f\Gscale@div\@tempb\@tempdima\@tempdimbE415f\ifGin@isoE416p2\ifdim\@tempa\p@>\@tempb\p@E417yw^\let\@tempa\@tempbE418p2\elseE419yw^\let\@tempb\@tempaE420p2\fi19׸soE421f\fi E422f\Gscale@box\@tempa[\@tempb]{\box\@tempboxa}%E423]\@end@tempboxa}\ifGin@isoIIfՕthis agistrue,thenspGecifyingtwoՕlengthsto\resizeboxscalestheboxby ItheQsamefactorineitherdirection,suchthatneitherlengthexc}'eeds$theQstatedIamount.'Nouserinterfacetothis aginthestandardpackqage,butitisusedbyItheUUkeepaspectratiokeyto\includegraphicsinthegraphicxpackqage.E424S\newif\ifGin@iso L\Gscale@divITheUUmacro#1issettotheratioofthelengths#2and#3.E425S\def\Gscale@div#1#2#3{% E426]\setlength\dimen@{#3}%E427]\ifdim\dimen@=\z@E428f\PackageError{graphics}{Divisionby0}\@ehaE429f\dimen@#2%E430]\fiE431]\edef\@tempd{\the\dimen@}%E432]\setlength\dimen@{#2}%E433]\count@65536\relaxE434]\ifdim\dimen@<\z@E435f\dimen@-\dimen@E436f\count@-\count@E437]\fiE438]\ifdim\dimen@>\z@E439f\loopE440p2\ifdim\dimen@<8192\p@E441yw^\dimen@\tw@\dimen@E442yw^\divide\count@\tw@E443f\repeatE444f\dimen@ii\@tempd\relaxE445f\divide\dimen@ii\count@E446f\divide\dimen@\dimen@iiE447]\fiE448]\edef#1{\strip@pt\dimen@}}XRestoreUUCatcoGdesE449S\Gin@codesE450S\let\Gin@codes\relaxE451Sh%5" cmmi9=pack9age#g i20l; ,m#R cmss10)ow cmss9& cmsy9%5" cmmi9!': cmti10 ߤN cmtt9N cmbx12"V cmbx10 cmmi10 0ercmmi7K`y cmr10ٓRcmr7< lcirclew10r