%%
%% This is file `lstlang1.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% lstdrvrs.dtx  (with options: `lang1')
%% 
%% (w)(c) 1996/1997/1998/1999/2000/2001/2002 Carsten Heinz and/or any
%% other author listed elsewhere in this file.
%%
%% This file is distributed under the terms of the LaTeX Project Public
%% License from CTAN archives in directory  macros/latex/base/lppl.txt.
%% Either version 1.0 or, at your option, any later version.
%%
%% This file is completely free and comes without any warranty.
%%
%% Send comments and ideas on the package, error reports and additional
%% programming languages to <cheinz@gmx.de>.
%%
\ProvidesFile{lstlang1}
    [2002/06/17 v1.0b listings language file]
%%
%% ACSL definition (c) 2000 by Andreas Matthias <amat@kabsi.at>
%%
\lst@definelanguage{ACSL}[90]{Fortran}%
   {morekeywords={algorithm,cinterval,constant,derivative,discrete,%
         dynamic,errtag,initial,interval,maxterval,minterval,%
         merror,xerror,nsteps,procedural,save,schedule,sort,%
         table,terminal,termt,variable},%
    sensitive=false,%
    morecomment=[l]!%
   }[keywords, comments]%
%%
%% Ada 95 definition (c) Torsten Neuer <tneuer@inwise.de>
%%
\lst@definelanguage[95]{Ada}[83]{Ada}%
  {morekeywords={abstract,aliased,protected,requeue,tagged,until}}%
\lst@definelanguage[83]{Ada}%
  {morekeywords={abort,abs,accept,access,all,and,array,at,begin,body,%
      case,constant,declare,delay,delta,digits,do,else,elsif,end,entry,%
      exception,exit,for,function,generic,goto,if,in,is,limited,loop,%
      mod,new,not,null,of,or,others,out,package,pragma,private,%
      procedure,raise,range,record,rem,renames,return,reverse,select,%
      separate,subtype,task,terminate,then,type,use,when,while,with,%
      xor},%
   sensitive=f,%
   morecomment=[l]--,%
   morestring=[m]",% percent not defined as stringizer so far
   morestring=[m]'%
  }[keywords,comments,strings]%
\lst@definelanguage[ANSI]{C++}[ISO]{C++}{}%
\lst@definelanguage[GNU]{C++}[ISO]{C++}%
  {morekeywords={__attribute__,__extension__,__restrict,__restrict__,%
      typeof,__typeof__},%
  }%
\lst@definelanguage[Visual]{C++}[ISO]{C++}%
  {morekeywords={__asm,__based,__cdecl,__declspec,dllexport,%
      dllimport,__except,__fastcall,__finally,__inline,__int8,__int16,%
      __int32,__int64,naked,__stdcall,thread,__try,__leave},%
  }%
\lst@definelanguage[ISO]{C++}[ANSI]{C}%
  {morekeywords={and,and_eq,asm,bad_cast,bad_typeid,bitand,bitor,bool,%
      catch,class,compl,const_cast,delete,dynamic_cast,explicit,export,%
      false,friend,inline,mutable,namespace,new,not,not_eq,operator,or,%
      or_eq,private,protected,public,reinterpret_cast,static_cast,%
      template,this,throw,true,try,typeid,type_info,typename,using,%
      virtual,wchar_t,xor,xor_eq},%
  }%
%%
%% Objective-C definition (c) 1997 Detlev Droege
%%                                 <droege@informatik.uni-koblenz.de>
%%
\lst@definelanguage[Objective]{C}[ANSI]{C}
  {morekeywords={bycopy,id,in,inout,oneway,out,self,super,%
      @class,@defs,@encode,@end,@implementation,@interface,@private,%
      @protected,@protocol,@public,@selector},%
   moredirectives={import}%
  }%
\lst@definelanguage[ANSI]{C}%
  {morekeywords={auto,break,case,char,const,continue,default,do,double,%
      else,enum,extern,float,for,goto,if,int,long,register,return,%
      short,signed,sizeof,static,struct,switch,typedef,union,unsigned,%
      void,volatile,while},%
   sensitive,%
   morecomment=[s]{/*}{*/},%
   morecomment=[l]//,% nonstandard
   morestring=[b]",%
   morestring=[b]',%
   moredirectives={define,elif,else,endif,error,if,ifdef,ifndef,line,%
      include,pragma,undef,warning}%
  }[keywords,comments,strings,directives]%
%%
%% C-Sharp definition (c) 2002 Martin Brodbeck <Martin.Brodbeck@gmx.de>
%%
\lst@definelanguage[Sharp]{C}%
  {morekeywords={abstract,base,bool,break,byte,case,catch,char,checked,%
      class,const,continue,decimal,default,delegate,do,double,else,%
      enum,event,explicit,extern,false,finally,fixed,float,for,foreach,%
      goto,if,implicit,in,int,interface,internal,is,lock,long,%
      namespace,new,null,object,operator,out,override,params,private,%
      protected,public,readonly,ref,return,sbyte,sealed,short,sizeof,%
      static,string,struct,switch,this,throw,true,try,typeof,uint,%
      ulong,unchecked,unsafe,ushort,using,virtual,void,while},%
   sensitive,%
   morecomment=[s]{/*}{*/},%
   morecomment=[l]//,%
   morestring=[b]"
  }[keywords,comments,strings]%
%%
%% csh definition (c) 1998 Kai Below <below@tu-harburg.de>
%%
\lst@definelanguage{csh}
  {morekeywords={alias,awk,cat,echo,else,end,endif,endsw,exec,exit,%
      foreach,glob,goto,history,if,logout,nice,nohup,onintr,repeat,sed,%
      set,setenv,shift,source,switch,then,time,while,umask,unalias,%
      unset,wait,while,@,env,argv,child,home,ignoreeof,noclobber,%
      noglob,nomatch,path,prompt,shell,status,verbose,print,printf,%
      sqrt,BEGIN,END},%
   morecomment=[l]\#,%
   morestring=[d]"%
  }[keywords,comments,strings]%
\lst@definelanguage[90]{Fortran}[95]{Fortran}{}
\lst@definelanguage[95]{Fortran}[77]{Fortran}%
  {deletekeywords=SAVE,%
   morekeywords={ACTION,ADVANCE,ALLOCATE,ALLOCATABLE,ASSIGNMENT,CASE,%
      CONTAINS,CYCLE,DEALLOCATE,DEFAULT,DELIM,EXIT,INCLUDE,IN,NONE,IN,%
      OUT,INTENT,INTERFACE,IOLENGTH,KIND,LEN,MODULE,NAME,NAMELIST,NMT,%
      NULLIFY,ONLY,OPERATOR,OPTIONAL,OUT,PAD,POINTER,POSITION,PRIVATE,%
      PUBLIC,READWRITE,RECURSIVE,RESULT,SELECT,SEQUENCE,SIZE,STAT,%
      TARGET,USE,WHERE,WHILE,BLOCKDATA,DOUBLEPRECISION,ELSEIF,%
      ENDBLOCKDATA,ENDDO,ENDFILE,ENDFUNCTION,ENDIF,ENDINTERFACE,%
      ENDMODULE,ENDPROGRAM,ENDSELECT,ENDSUBROUTINE,ENDTYPE,ENDWHERE,%
      GOTO,INOUT,SELECTCASE},%
   deletecomment=[f],% no fixed comment line: 1998 Magne Rudshaug
   morecomment=[l]!%
  }%
\lst@definelanguage[77]{Fortran}%
  {morekeywords={ACCESS,ASSIGN,BACKSPACE,BLANK,BLOCK,CALL,CHARACTER,%
      CLOSE,COMMON,COMPLEX,CONTINUE,DATA,DIMENSION,DIRECT,DO,DOUBLE,%
      ELSE,END,ENTRY,EOF,EQUIVALENCE,ERR,EXIST,EXTERNAL,FILE,FMT,FORM,%
      FORMAT,FORMATTED,FUNCTION,GO,TO,IF,IMPLICIT,INQUIRE,INTEGER,%
      INTRINSIC,IOSTAT,LOGICAL,NAMED,NEXTREC,NUMBER,OPEN,OPENED,%
      PARAMETER,PAUSE,PRECISION,PRINT,PROGRAM,READ,REAL,REC,RECL,%
      RETURN,REWIND,SEQUENTIAL,STATUS,STOP,SUBROUTINE,THEN,TYPE,%
      UNFORMATTED,UNIT,WRITE,SAVE},%
   sensitive=f,%% not Fortran standard %%
   morecomment=[f]*,%
   morecomment=[f]C,%
   morecomment=[f]c,%
   morestring=[d]"%
  }[keywords,comments,strings]%
\lst@definelanguage{HTML}%
  {morekeywords={A,ADDRESS,APPLET,B,BASE,BASEFONT,BIG,BLOCKQUOTE,BODY,%
      BR,CENTER,CITE,CODE,DFN,DIR,DIV,DOCTYPE,EM,FONT,FORM,HEAD,HR,%
      H1,H2,H3,H4,H5,H6,HTML,I,IMG,INPUT,ISINDEX,KBD,LI,LINK,LISTING,%
      MAP,META,MENU,P,PLAINTEXT,PRE,OL,SAMP,SCRIPT,SELECT,SMALL,STRIKE,%
      STRING,SUB,SUP,STYLE,TABLE,TEXTAREA,TITLE,TT,U,UL,VAR,XMP,%
      action,align,alink,alt,background,bgcolor,border,cellpadding,%
      cellspacing,checked,code,codebase,color,cols,colspan,entype,%
      height,href,hspace,ismap,link,maxlength,method,multiple,name,%
      noshade,nowrap,rel,rev,rows,rowspan,selected,shape,size,src,text,%
      title,type,usemap,valign,value,vlink,vspace,width},%
   keywordsinside=<>,
   sensitive=f,%
   morestring=[d]",% ??? doubled
   MoreSelectCharTable=%
      \lst@CArgX--\relax\lst@DefDelimB{}{}%
          {\ifnum\lst@mode=\lst@insidemode\else
               \expandafter\@gobblethree
           \fi}%
          \lst@BeginComment\lst@commentmode{{\lst@commentstyle}}%
      \lst@CArgX--\relax\lst@DefDelimE{}{}{}%
          \lst@EndComment\lst@commentmode
  }[keywords,comments,strings,html]%
\lst@definelanguage{Java}%
  {morekeywords={abstract,boolean,break,byte,case,catch,char,class,%
      const,continue,default,do,double,else,extends,final,finally,%
      float,for,goto,if,implements,import,instanceof,int,interface,%
      long,native,new,null,package,private,protected,public,return,%
      short,static,super,switch,synchronized,this,throw,throws,%
      transient,try,void,volatile,while,true,false},%
   sensitive,%
   morecomment=[l]//,%
   morecomment=[s]{/*}{*/},%
   morestring=[b]",%
   morestring=[b]',%
  }[keywords,comments,strings]%
\lst@definelanguage{Matlab}%
  {morekeywords={gt,lt,gt,lt,amp,abs,acos,acosh,acot,acoth,acsc,acsch,%
      all,angle,ans,any,asec,asech,asin,asinh,atan,atan2,atanh,auread,%
      auwrite,axes,axis,balance,bar,bessel,besselk,bessely,beta,%
      betainc,betaln,blanks,bone,break,brighten,capture,cart2pol,%
      cart2sph,caxis,cd,cdf2rdf,cedit,ceil,chol,cla,clabel,clc,clear,%
      clf,clock,close,colmmd,Colon,colorbar,colormap,ColorSpec,colperm,%
      comet,comet3,compan,compass,computer,cond,condest,conj,contour,%
      contour3,contourc,contrast,conv,conv2,cool,copper,corrcoef,cos,%
      cosh,cot,coth,cov,cplxpair,cputime,cross,csc,csch,csvread,%
      csvwrite,cumprod,cumsum,cylinder,date,dbclear,dbcont,dbdown,%
      dbquit,dbstack,dbstatus,dbstep,dbstop,dbtype,dbup,ddeadv,ddeexec,%
      ddeinit,ddepoke,ddereq,ddeterm,ddeunadv,deblank,dec2hex,deconv,%
      del2,delete,demo,det,diag,diary,diff,diffuse,dir,disp,dlmread,%
      dlmwrite,dmperm,dot,drawnow,echo,eig,ellipj,ellipke,else,elseif,%
      end,engClose,engEvalString,engGetFull,engGetMatrix,engOpen,%
      engOutputBuffer,engPutFull,engPutMatrix,engSetEvalCallback,%
      engSetEvalTimeout,engWinInit,eps,erf,erfc,erfcx,erfinv,error,%
      errorbar,etime,etree,eval,exist,exp,expint,expm,expo,eye,fclose,%
      feather,feof,ferror,feval,fft,fft2,fftshift,fgetl,fgets,figure,%
      fill,fill3,filter,filter2,find,findstr,finite,fix,flag,fliplr,%
      flipud,floor,flops,fmin,fmins,fopen,for,format,fplot,fprintf,%
      fread,frewind,fscanf,fseek,ftell,full,function,funm,fwrite,fzero,%
      gallery,gamma,gammainc,gammaln,gca,gcd,gcf,gco,get,getenv,%
      getframe,ginput,global,gplot,gradient,gray,graymon,grid,griddata,%
      gtext,hadamard,hankel,help,hess,hex2dec,hex2num,hidden,hilb,hist,%
      hold,home,hostid,hot,hsv,hsv2rgb,if,ifft,ifft2,imag,image,%
      imagesc,Inf,info,input,int2str,interp1,interp2,interpft,inv,%
      invhilb,isempty,isglobal,ishold,isieee,isinf,isletter,isnan,%
      isreal,isspace,issparse,isstr,jet,keyboard,kron,lasterr,lcm,%
      legend,legendre,length,lin2mu,line,linspace,load,log,log10,log2,%
      loglog,logm,logspace,lookfor,lower,ls,lscov,lu,magic,matClose,%
      matDeleteMatrix,matGetDir,matGetFp,matGetFull,matGetMatrix,%
      matGetNextMatrix,matGetString,matlabrc,matlabroot,matOpen,%
      matPutFull,matPutMatrix,matPutString,max,mean,median,menu,mesh,%
      meshc,meshgrid,meshz,mexAtExit,mexCallMATLAB,mexdebug,%
      mexErrMsgTxt,mexEvalString,mexFunction,mexGetFull,mexGetMatrix,%
      mexGetMatrixPtr,mexPrintf,mexPutFull,mexPutMatrix,mexSetTrapFlag,%
      min,more,movie,moviein,mu2lin,mxCalloc,mxCopyCharacterToPtr,%
      mxCopyComplex16ToPtr,mxCopyInteger4ToPtr,mxCopyPtrToCharacter,%
      mxCopyPtrToComplex16,mxCopyPtrToInteger4,mxCopyPtrToReal8,%
      mxCopyReal8ToPtr,mxCreateFull,mxCreateSparse,mxCreateString,%
      mxFree,mxFreeMatrix,mxGetIr,mxGetJc,mxGetM,mxGetN,mxGetName,%
      mxGetNzmax,mxGetPi,mxGetPr,mxGetScalar,mxGetString,mxIsComplex,%
      mxIsFull,mxIsNumeric,mxIsSparse,mxIsString,mxIsTypeDouble,%
      mxSetIr,mxSetJc,mxSetM,mxSetN,mxSetName,mxSetNzmax,mxSetPi,%
      mxSetPr,NaN,nargchk,nargin,nargout,newplot,nextpow2,nnls,nnz,%
      nonzeros,norm,normest,null,num2str,nzmax,ode23,ode45,orient,orth,%
      pack,pascal,patch,path,pause,pcolor,pi,pink,pinv,plot,plot3,%
      pol2cart,polar,poly,polyder,polyeig,polyfit,polyval,polyvalm,%
      pow2,print,printopt,prism,prod,pwd,qr,qrdelete,qrinsert,quad,%
      quad8,quit,quiver,qz,rand,randn,randperm,rank,rat,rats,rbbox,%
      rcond,real,realmax,realmin,refresh,rem,reset,reshape,residue,%
      return,rgb2hsv,rgbplot,rootobject,roots,rose,rosser,rot90,rotate,%
      round,rref,rrefmovie,rsf2csf,save,saxis,schur,sec,sech,semilogx,%
      semilogy,set,setstr,shading,sign,sin,sinh,size,slice,sort,sound,%
      spalloc,sparse,spaugment,spconvert,spdiags,specular,speye,spfun,%
      sph2cart,sphere,spinmap,spline,spones,spparms,sprandn,sprandsym,%
      sprank,sprintf,spy,sqrt,sqrtm,sscanf,stairs,startup,std,stem,%
      str2mat,str2num,strcmp,strings,strrep,strtok,subplot,subscribe,%
      subspace,sum,surf,surface,surfc,surfl,surfnorm,svd,symbfact,%
      symmmd,symrcm,tan,tanh,tempdir,tempname,terminal,text,tic,title,%
      toc,toeplitz,trace,trapz,tril,triu,type,uicontrol,uigetfile,%
      uimenu,uiputfile,unix,unwrap,upper,vander,ver,version,view,%
      viewmtx,waitforbuttonpress,waterfall,wavread,wavwrite,what,%
      whatsnew,which,while,white,whitebg,who,whos,wilkinson,wk1read,%
      wk1write,xlabel,xor,ylabel,zeros,zlabel,zoom},%
   sensitive,%
   morecomment=[l]\%,%
   morestring=[m]'%
  }[keywords,comments,strings]%
%%
%% Mathematica definitions (c) 1999 Michael Wiese <wiese@itwm.uni-kl.de>
%%
\lst@definelanguage[3.0]{Mathematica}[1.0]{Mathematica}%
  {morekeywords={Abort,AbortProtect,AbsoluteDashing,AbsolutePointSize,%
      AbsoluteThickness,AbsoluteTime,AccountingFormAiry,AiPrime,AiryBi,%
      AiryBiPrime,Alternatives,AnchoredSearch,AxesEdge,AxesOrigin,%
      AxesStyle,Background,BetaRegularized,BoxStyle,C,CheckAbort,%
      Circle,ClebschGordan,CMYKColor,ColorFunction,ColorOutput,Compile,%
      Compiled,CompiledFunction,ComplexExpand,ComposeList,Composition,%
      ConstrainedMax,ConstrainedMin,Contexts,ContextToFilename,%
      ContourLines,Contours,ContourShading,ContourSmoothing,%
      ContourStyle,CopyDirectory,CopyFile,CosIntegral,CreateDirectory,%
      Cuboid,Date,DeclarePackage,DefaultColor,DefaultFont,Delete,%
      DeleteCases,DeleteDirectory,DeleteFile,Dialog,DialogIndent,%
      DialogProlog,DialogSymbols,DigitQ,Directory,DirectoryStack,Disk,%
      Dispatch,DownValues,DSolve,Encode,Epilog,Erfc,Evaluate,%
      ExponentFunction,FaceGrids,FileByteCount,FileDate,FileNames,%
      FileType,Find,FindList,FixedPointList,FlattenAt,Fold,FoldList,%
      Frame,FrameLabel,FrameStyle,FrameTicks,FromCharacterCode,%
      FromDate,FullGraphics,FullOptions,GammaRegularized,%
      GaussianIntegers,GraphicsArray,GraphicsSpacing,GridLines,%
      GroebnerBasis,Heads,HeldPart,HomeDirectory,Hue,IgnoreCases,%
      InputStream,Install,InString,IntegerDigits,InterpolatingFunction,%
      InterpolatingPolynomial,Interpolation,Interrupt,InverseFunction,%
      InverseFunctions,JacobiZeta,LetterQ,LinearProgramming,ListPlay,%
      LogGamma,LowerCaseQ,MachineNumberQ,MantissaExponent,MapIndexed,%
      MapThread,MatchLocalNames,MatrixExp,MatrixPower,MeshRange,%
      MeshStyle,MessageList,Module,NDSolve,NSolve,NullRecords,%
      NullWords,NumberFormat,NumberPadding,NumberSigns,OutputStream,%
      PaddedForm,ParentDirectory,Pause,Play,PlayRange,PlotRegion,%
      PolygonIntersections,PolynomialGCD,PolynomialLCM,PolynomialMod,%
      PostScript,PowerExpand,PrecisionGoal,PrimePi,Prolog,%
      QRDecomposition,Raster,RasterArray,RealDigits,Record,RecordLists,%
      RecordSeparators,ReleaseHold,RenameDirectory,RenameFile,%
      ReplaceHeldPart,ReplacePart,ResetDirectory,Residue,%
      RiemannSiegelTheta,RiemannSiegelZ,RotateLabel,SameTest,%
      SampleDepth,SampledSoundFunction,SampledSoundList,SampleRate,%
      SchurDecomposition,SessionTime,SetAccuracy,SetDirectory,%
      SetFileDate,SetPrecision,SetStreamPosition,Shallow,SignPadding,%
      SinIntegral,SixJSymbol,Skip,Sound,SpellingCorrection,%
      SphericalRegion,Stack,StackBegin,StackComplete,StackInhibit,%
      StreamPosition,Streams,StringByteCount,StringConversion,%
      StringDrop,StringInsert,StringPosition,StringReplace,%
      StringReverse,StringTake,StringToStream,SurfaceColor,%
      SyntaxLength,SyntaxQ,TableAlignments,TableDepth,%
      TableDirections,TableHeadings,TableSpacing,ThreeJSymbol,TimeUsed,%
      TimeZone,ToCharacterCode,ToDate,ToHeldExpression,TokenWords,%
      ToLowerCase,ToUpperCase,Trace,TraceAbove,TraceBackward,%
      TraceDepth,TraceDialog,TraceForward,TraceOff,TraceOn,%
      TraceOriginal,TracePrint,TraceScan,Trig,Unevaluated,Uninstall,%
      UnsameQ,UpperCaseQ,UpValues,ViewCenter,ViewVertical,With,Word,%
      WordSearch,WordSeparators},%
    morendkeywords={Stub,Temporary,$Aborted,$BatchInput,$BatchOutput,%
      $CreationDate,$DefaultFont,$DumpDates,$DumpSupported,$Failed,%
      $Input,$Inspector,$IterationLimit,$Language,$Letters,$Linked,%
      $LinkSupported,$MachineEpsilon,$MachineID,$MachineName,%
      $MachinePrecision,$MachineType,$MaxMachineNumber,$MessageList,%
      $MessagePrePrint,$MinMachineNumber,$ModuleNumber,$NewMessage,%
      $NewSymbol,$Notebooks,$OperatingSystem,$Packages,$PipeSupported,%
      $PreRead,$ReleaseNumber,$SessionID,$SoundDisplayFunction,%
      $StringConversion,$StringOrder,$SyntaxHandler,$TimeUnit,%
      $VersionNumber}%
  }%
\lst@definelanguage[1.0]{Mathematica}%
  {morekeywords={Abs,Accuracy,AccurayGoal,AddTo,AiryAi,AlgebraicRules,%
      AmbientLight,And,Apart,Append,AppendTo,Apply,ArcCos,ArcCosh,%
      ArcCot,ArcCoth,ArcCsc,ArcCsch,ArcSec,ArcSech,ArcSin,ArcSinh,%
      ArcTan,ArcTanh,Arg,ArithmeticGeometricMean,Array,AspectRatio,%
      AtomQ,Attributes,Axes,AxesLabel,BaseForm,Begin,BeginPackage,%
      BernoulliB,BesselI,BesselJ,BesselK,BesselY,Beta,Binomial,Blank,%
      BlankNullSequence,BlankSequence,Block,Boxed,BoxRatios,Break,Byte,%
      ByteCount,Cancel,Cases,Catch,Ceiling,CForm,Character,Characters,%
      ChebyshevT,ChebyshevU,Check,Chop,Clear,ClearAll,ClearAttributes,%
      ClipFill,Close,Coefficient,CoefficientList,Collect,ColumnForm,%
      Complement,Complex,CompoundExpression,Condition,Conjugate,%
      Constants,Context,Continuation,Continue,ContourGraphics,%
      ContourPlot,Cos,Cosh,Cot,Coth,Count,Csc,Csch,Cubics,Cyclotomic,%
      D,Dashing,Decompose,Decrement,Default,Definition,Denominator,%
      DensityGraphics,DensityPlot,Depth,Derivative,Det,DiagonalMatrix,%
      DigitBlock,Dimensions,DirectedInfinity,Display,DisplayFunction,%
      Distribute,Divide,DivideBy,Divisors,DivisorSigma,Do,Dot,Drop,Dt,%
      Dump,EdgeForm,Eigensystem,Eigenvalues,Eigenvectors,Eliminate,%
      EllipticE,EllipticExp,EllipticF,EllipticK,EllipticLog,EllipticPi,%
      EllipticTheta,End,EndPackage,EngineeringForm,Environment,Equal,%
      Erf,EulerE,EulerPhi,EvenQ,Exit,Exp,Expand,ExpandAll,%
      ExpandDenominator,ExpandNumerator,ExpIntegralE,ExpIntegralEi,%
      Exponent,Expression,ExtendedGCD,FaceForm,Factor,FactorComplete,%
      Factorial,Factorial2,FactorInteger,FactorList,FactorSquareFree,%
      FactorSquareFreeList,FactorTerms,FactorTermsList,FindMinimum,%
      FindRoot,First,Fit,FixedPoint,Flatten,Floor,FontForm,For,Format,%
      FormatType,FortranForm,Fourier,FreeQ,FullDefinition,FullForm,%
      Function,Gamma,GCD,GegenbauerC,General,Get,Goto,Graphics,%
      Graphics3D,GrayLevel,Greater,GreaterEqual,Head,HermiteH,%
      HiddenSurface,Hold,HoldForm,Hypergeometric0F1, Hypergeometric1F1,%
      Hypergeometric2F1,HypergeometricU,Identity,IdentityMatrix,If,Im,%
      Implies,In,Increment,Indent,Infix,Information,Inner,Input,%
      InputForm,InputString,Insert,Integer,IntegerQ,Integrate,%
      Intersection,Inverse,InverseFourier,InverseJacobiSN,%
      InverseSeries,JacobiAmplitude,JacobiP,JacobiSN,JacobiSymbol,Join,%
      Label,LaguerreL,Last,LatticeReduce,LCM,LeafCount,LegendreP,%
      LegendreQ,LegendreType,Length,LerchPhi,Less,LessEqual,Level,%
      Lighting,LightSources,Limit,Line,LinearSolve,LineBreak,List,%
      ListContourPlot,ListDensityPlot,ListPlot,ListPlot3D,Literal,Log,%
      LogicalExpand,LogIntegral,MainSolve,Map,MapAll,MapAt,MatchQ,%
      MatrixForm,MatrixQ,Max,MaxBend,MaxMemoryUsed,MemberQ,%
      MemoryConstrained,MemoryInUse,Mesh,Message,MessageName,Messages,%
      Min,Minors,Minus,Mod,Modulus,MoebiusMu,Multinomial,N,NameQ,Names,%
      NBernoulliB,Needs,Negative,Nest,NestList,NIntegrate,%
      NonCommutativeMultiply,NonConstants,NonNegative,Normal,Not,%
      NProduct,NSum,NullSpace,Number,NumberForm,NumberPoint,NumberQ,%
      NumberSeparator,Numerator,O,OddQ,Off,On,OpenAppend,OpenRead,%
      OpenTemporary,OpenWrite,Operate,Optional,Options,Or,Order,%
      OrderedQ,Out,Outer,OutputForm,PageHeight,PageWidth,%
      ParametricPlot,ParametricPlot3D,Part,Partition,PartitionsP,%
      PartitionsQ,Pattern,Permutations,Plot,Plot3D,PlotDivision,%
      PlotJoined,PlotLabel,PlotPoints,PlotRange,PlotStyle,Pochhammer,%
      Plus,Point,PointSize,PolyGamma,Polygon,PolyLog,PolynomialQ,%
      PolynomialQuotient,PolynomialRemainder,Position,Positive,Postfix,%
      Power,PowerMod,PrecedenceForm,Precision,PreDecrement,Prefix,%
      PreIncrement,Prepend,PrependTo,Prime,PrimeQ,Print,PrintForm,%
      Product,Protect,PseudoInverse,Put,PutAppend,Quartics,Quit,%
      Quotient,Random,Range,Rational,Rationalize,Raw,Re,Read,ReadList,%
      Real,Rectangle,Reduce,Remove,RenderAll,Repeated,RepeatedNull,%
      Replace,ReplaceAll,ReplaceRepeated,Rest,Resultant,Return,Reverse,%
      RGBColor,Roots,RotateLeft,RotateRight,Round,RowReduce,Rule,%
      RuleDelayed,Run,RunThrough,SameQ,Save,Scaled,Scan,ScientificForm,%
      Sec,Sech,SeedRandom,Select,Sequence,SequenceForm,Series,%
      SeriesData,Set,SetAttributes,SetDelayed,SetOptions,Shading,Share,%
      Short,Show,Sign,Signature,Simplify,Sin,SingularValues,Sinh,%
      Skeleton,Slot,SlotSequence,Solve,SolveAlways,Sort,%
      SphericalHarmonicY,Splice,Sqrt,StirlingS1,StirlingS2,String,%
      StringBreak,StringForm,StringJoin,StringLength,StringMatchQ,%
      StringSkeleton,Subscript,Subscripted,Subtract,SubtractForm,Sum,%
      Superscript,SurfaceGraphics,Switch,Symbol,Table,TableForm,TagSet,%
      TagSetDelayed,TagUnset,Take,Tan,Tanh,ToString,TensorRank,TeXForm,%
      Text,TextForm,Thickness,Thread,Through,Throw,Ticks,%
      TimeConstrained,Times,TimesBy,Timing,ToExpression,Together,%
      ToRules,ToString,TotalHeight,TotalWidth,Transpose,TreeForm,TrueQ,%
      Unequal,Union,Unique,Unprotect,Unset,Update,UpSet,UpSetDelayed,%
      ValueQ,Variables,VectorQ,ViewPoint,WeierstrassP,%
      WeierstrassPPrime,Which,While,WorkingPrecision,Write,WriteString,%
      Xor,ZeroTest,Zeta},%
   morendkeywords={All,Automatic,Catalan,ComplexInfinity,Constant,%
      Degree,E,EndOfFile,EulerGamma,False,Flat,GoldenRatio,HoldAll,%
      HoldFirst,HoldRest,I,Indeterminate,Infinity,Listable,Locked,%
      Modular,None,Null,OneIdentity,Orderless,Pi,Protected,%
      ReadProtected,True,$CommandLine,$Context,$ContextPath,$Display,%
      $DisplayFunction,$Echo,$Epilog,$IgnoreEOF,$Line,$Messages,%
      $Output,$Path,$Post,$Pre,$PrePrint,$RecursionLimit,$System,%
      $Urgent,$Version},%
   sensitive,%
   morecomment=[s]{(*}{*)},%
   morestring=[d]"%
  }[keywords,comments,strings]%
%%
%% Octave definition (c) 2001,2002 Ulrich G. Wortmann
%%                                 <uliw@erdw.ethz.ch>
%%
\lst@definelanguage{Octave}%
  {morekeywords={gt,lt,gt,lt,amp,abs,acos,acosh,acot,acoth,acsc,acsch,%
      all,angle,ans,any,asec,asech,asin,asinh,atan,atan2,atanh,auread,%
      auwrite,axes,axis,balance,bar,bessel,besselk,bessely,beta,%
      betainc,betaln,blanks,bone,break,brighten,capture,cart2pol,%
      cart2sph,caxis,cd,cdf2rdf,cedit,ceil,chol,cla,clabel,clc,clear,%
      clf,clock,close,colmmd,Colon,colorbar,colormap,ColorSpec,colperm,%
      comet,comet3,compan,compass,computer,cond,condest,conj,contour,%
      contour3,contourc,contrast,conv,conv2,cool,copper,corrcoef,cos,%
      cosh,cot,coth,cov,cplxpair,cputime,cross,csc,csch,csvread,%
      csvwrite,cumprod,cumsum,cylinder,date,dbclear,dbcont,dbdown,%
      dbquit,dbstack,dbstatus,dbstep,dbstop,dbtype,dbup,ddeadv,ddeexec,%
      ddeinit,ddepoke,ddereq,ddeterm,ddeunadv,deblank,dec2hex,deconv,%
      del2,delete,demo,det,diag,diary,diff,diffuse,dir,disp,dlmread,%
      dlmwrite,dmperm,dot,drawnow,echo,eig,ellipj,ellipke,else,elseif,%
      end,engClose,engEvalString,engGetFull,engGetMatrix,engOpen,%
      engOutputBuffer,engPutFull,engPutMatrix,engSetEvalCallback,%
      engSetEvalTimeout,engWinInit,eps,erf,erfc,erfcx,erfinv,%
      errorbar,etime,etree,eval,exist,exp,expint,expm,expo,eye,fclose,%
      feather,feof,ferror,feval,fft,fft2,fftshift,fgetl,fgets,figure,%
      fill,fill3,filter,filter2,find,findstr,finite,fix,flag,fliplr,%
      flipud,floor,flops,fmin,fmins,fopen,for,format,fplot,fprintf,%
      fread,frewind,fscanf,fseek,ftell,full,function,funm,fwrite,fzero,%
      gallery,gamma,gammainc,gammaln,gca,gcd,gcf,gco,get,getenv,%
      getframe,ginput,global,gplot,gradient,gray,graymon,grid,griddata,%
      gtext,hadamard,hankel,help,hess,hex2dec,hex2num,hidden,hilb,hist,%
      hold,home,hostid,hot,hsv,hsv2rgb,if,ifft,ifft2,imag,image,%
      imagesc,Inf,info,input,int2str,interp1,interp2,interpft,inv,%
      invhilb,isempty,isglobal,ishold,isieee,isinf,isletter,isnan,%
      isreal,isspace,issparse,isstr,jet,keyboard,kron,lasterr,lcm,%
      legend,legendre,length,lin2mu,line,linspace,load,log,log10,log2,%
      loglog,logm,logspace,lookfor,lower,ls,lscov,lu,magic,matClose,%
      matDeleteMatrix,matGetDir,matGetFp,matGetFull,matGetMatrix,%
      matGetNextMatrix,matGetString,matlabrc,matlabroot,matOpen,%
      matPutFull,matPutMatrix,matPutString,max,mean,median,menu,mesh,%
      meshc,meshgrid,meshz,mexAtExit,mexCallMATLAB,mexdebug,%
      mexErrMsgTxt,mexEvalString,mexFunction,mexGetFull,mexGetMatrix,%
      mexGetMatrixPtr,mexPrintf,mexPutFull,mexPutMatrix,mexSetTrapFlag,%
      min,more,movie,moviein,mu2lin,mxCalloc,mxCopyCharacterToPtr,%
      mxCopyComplex16ToPtr,mxCopyInteger4ToPtr,mxCopyPtrToCharacter,%
      mxCopyPtrToComplex16,mxCopyPtrToInteger4,mxCopyPtrToReal8,%
      mxCopyReal8ToPtr,mxCreateFull,mxCreateSparse,mxCreateString,%
      mxFree,mxFreeMatrix,mxGetIr,mxGetJc,mxGetM,mxGetN,mxGetName,%
      mxGetNzmax,mxGetPi,mxGetPr,mxGetScalar,mxGetString,mxIsComplex,%
      mxIsFull,mxIsNumeric,mxIsSparse,mxIsString,mxIsTypeDouble,%
      mxSetIr,mxSetJc,mxSetM,mxSetN,mxSetName,mxSetNzmax,mxSetPi,%
      mxSetPr,NaN,nargchk,nargin,nargout,newplot,nextpow2,nnls,nnz,%
      nonzeros,norm,normest,null,num2str,nzmax,ode23,ode45,orient,orth,%
      pack,pascal,patch,path,pause,pcolor,pi,pink,pinv,plot,plot3,%
      pol2cart,polar,poly,polyder,polyeig,polyfit,polyval,polyvalm,%
      pow2,print,printopt,prism,prod,pwd,qr,qrdelete,qrinsert,quad,%
      quad8,quit,quiver,qz,rand,randn,randperm,rank,rat,rats,rbbox,%
      rcond,real,realmax,realmin,refresh,rem,reset,reshape,residue,%
      return,rgb2hsv,rgbplot,rootobject,roots,rose,rosser,rot90,rotate,%
      round,rref,rrefmovie,rsf2csf,save,saxis,schur,sec,sech,semilogx,%
      semilogy,set,setstr,shading,sign,sin,sinh,size,slice,sort,sound,%
      spalloc,sparse,spaugment,spconvert,spdiags,specular,speye,spfun,%
      sph2cart,sphere,spinmap,spline,spones,spparms,sprandn,sprandsym,%
      sprank,sprintf,spy,sqrt,sqrtm,sscanf,stairs,startup,std,stem,%
      str2mat,str2num,strcmp,strings,strrep,strtok,subplot,subscribe,%
      subspace,sum,surf,surface,surfc,surfl,surfnorm,svd,symbfact,%
      symmmd,symrcm,tan,tanh,tempdir,tempname,terminal,text,tic,title,%
      toc,toeplitz,trace,trapz,tril,triu,type,uicontrol,uigetfile,%
      uimenu,uiputfile,unix,unwrap,upper,vander,ver,version,view,%
      viewmtx,waitforbuttonpress,waterfall,wavread,wavwrite,what,%
      whatsnew,which,while,white,whitebg,who,whos,wilkinson,wk1read,%
      stderr,stdout,plot,set,endif,wk1write,xlabel,xor,ylabel,zeros,%
      zlabel,zoom,endwhile,endfunction},%
   sensitive=f,%
   morecomment=[l]\#,%
   morecomment=[l]\#\#,%
   morestring=[m]',%
   morestring=[m]"%
  }[keywords,comments,strings]%
\lst@definelanguage[XSC]{Pascal}[Standard]{Pascal}
  {deletekeywords={alfa,byte,pack,unpack},% 1998 Andreas Stephan
   morekeywords={dynamic,external,forward,global,module,nil,operator,%
      priority,sum,type,use,dispose,mark,page,release,cimatrix,%
      cinterval,civector,cmatrix,complex,cvector,dotprecision,imatrix,%
      interval,ivector,rmatrix,rvector,string,im,inf,re,sup,chr,comp,%
      eof,eoln,expo,image,ival,lb,lbound,length,loc,mant,maxlength,odd,%
      ord,pos,pred,round,rval,sign,substring,succ,trunc,ub,ubound}%
  }%
\lst@definelanguage[Borland6]{Pascal}[Standard]{Pascal}
  {morekeywords={asm,constructor,destructor,implementation,inline,%
      interface,nil,object,shl,shr,string,unit,uses,xor},%
   morendkeywords={Abs,Addr,ArcTan,Chr,Concat,Copy,Cos,CSeg,DiskFree,%
      DiskSize,DosExitCode,DosVersion,DSeg,EnvCount,EnvStr,Eof,Eoln,%
      Exp,FExpand,FilePos,FileSize,Frac,FSearch,GetBkColor,GetColor,%
      GetDefaultPalette,GetDriverName,GetEnv,GetGraphMode,GetMaxMode,%
      GetMaxX,GetMaxY,GetModeName,GetPaletteSize,GetPixel,GetX,GetY,%
      GraphErrorMsg,GraphResult,Hi,ImageSize,InstallUserDriver,%
      InstallUserFont,Int,IOResult,KeyPressed,Length,Lo,MaxAvail,%
      MemAvail,MsDos,Odd,Ofs,Ord,OvrGetBuf,OvrGetRetry,ParamCount,%
      ParamStr,Pi,Pos,Pred,Ptr,Random,ReadKey,Round,SeekEof,SeekEoln,%
      Seg,SetAspectRatio,Sin,SizeOf,Sound,SPtr,Sqr,Sqrt,SSeg,Succ,%
      Swap,TextHeight,TextWidth,Trunc,TypeOf,UpCase,WhereX,WhereY,%
      Append,Arc,Assign,AssignCrt,Bar,Bar3D,BlockRead,BlockWrite,ChDir,%
      Circle,ClearDevice,ClearViewPort,Close,CloseGraph,ClrEol,ClrScr,%
      Dec,Delay,Delete,DelLine,DetectGraph,Dispose,DrawPoly,Ellipse,%
      Erase,Exec,Exit,FillChar,FillEllipse,FillPoly,FindFirst,FindNext,%
      FloodFill,Flush,FreeMem,FSplit,GetArcCoords,GetAspectRatio,%
      GetDate,GetDefaultPalette,GetDir,GetCBreak,GetFAttr,%
      GetFillSettings,GetFTime,GetImage,GetIntVec,GetLineSettings,%
      GetMem,GetPalette,GetTextSettings,GetTime,GetVerify,%
      GetViewSettings,GoToXY,Halt,HighVideo,Inc,InitGraph,Insert,%
      InsLine,Intr,Keep,Line,LineRel,LineTo,LowVideo,Mark,MkDir,Move,%
      MoveRel,MoveTo,MsDos,New,NormVideo,NoSound,OutText,OutTextXY,%
      OvrClearBuf,OvrInit,OvrInitEMS,OvrSetBuf,PackTime,PieSlice,%
      PutImage,PutPixel,Randomize,Rectangle,Release,Rename,%
      RestoreCrtMode,RmDir,RunError,Sector,Seek,SetActivePage,%
      SetAllPalette,SetBkColor,SetCBreak,SetColor,SetDate,SetFAttr,%
      SetFillPattern,SetFillStyle,SetFTime,SetGraphBufSize,%
      SetGraphMode,SetIntVec,SetLineStyle,SetPalette,SetRGBPalette,%
      SetTextBuf,SetTextJustify,SetTextStyle,SetTime,SetUserCharSize,%
      SetVerify,SetViewPort,SetVisualPage,SetWriteMode,Sound,Str,%
      SwapVectors,TextBackground,TextColor,TextMode,Truncate,%
      UnpackTime,Val,Window}%
  }%
\lst@definelanguage[Standard]{Pascal}%
  {morekeywords={alfa,and,array,begin,boolean,byte,case,char,const,div,%
      do,downto,else,end,false,file,for,function,get,goto,if,in,%
      integer,label,maxint,mod,new,not,of,or,pack,packed,page,program,%
      put,procedure,read,readln,real,record,repeat,reset,rewrite,set,%
      text,then,to,true,type,unpack,until,var,while,with,write,%
      writeln},%
   sensitive=f,%
   morecomment=[s]{(*}{*)},%
   morecomment=[s]{\{}{\}},%
   morestring=[d]'%
  }[keywords,comments,strings]%
\lst@definelanguage{Perl}%
  {morekeywords={abs,accept,alarm,atan2,bind,binmode,bless,caller,%
      chdir,chmod,chomp,chop,chown,chr,chroot,close,closedir,connect,%
      continue,cos,crypt,dbmclose,dbmopen,defined,delete,die,do,dump,%
      each,else,elsif,endgrent,endhostent,endnetent,endprotoent,%
      endpwent,endservent,eof,eval,exec,exists,exit,exp,fcntl,fileno,%
      flock,for,foreach,fork,format,formline,getc,getgrent,getgrgid,%
      getgrnam,gethostbyaddr,gethostbyname,gethostent,getlogin,%
      getnetbyaddr,getnetbyname,getnetent,getpeername,getpgrp,%
      getppid,getpriority,getprotobyname,getprotobynumber,getprotoent,%
      getpwent,getpwnam,getpwuid,getservbyname,getservbyport,%
      getservent,getsockname,getsockopt,glob,gmtime,goto,grep,hex,if,%
      import,index,int,ioctl,join,keys,kill,last,lc,lcfirst,length,%
      link,listen,local,localtime,log,lstat,m,map,mkdir,msgctl,msgget,%
      msgrcv,msgsnd,my,next,no,oct,open,opendir,ord,pack,package,pipe,%
      pop,pos,print,printf,prototype,push,q,qq,quotemeta,qw,qx,rand,%
      read,readdir,readlink,recv,redo,ref,rename,require,reset,return,%
      reverse,rewinddir,rindex,rmdir,s,scalar,seek,seekdir,select,%
      semctl,semget,semop,send,setgrent,sethostent,setnetent,setpgrp,%
      setpriority,setprotoent,setpwent,setservent,setsockopt,shift,%
      shmctl,shmget,shmread,shmwrite,shutdown,sin,sleep,socket,%
      socketpair,sort,splice,split,sprintf,sqrt,srand,stat,study,sub,%
      substr,symlink,syscall,sysopen,sysread,system,syswrite,tell,%
      telldir,tie,tied,time,times,tr,truncate,uc,ucfirst,umask,undef,%
      unless,unlink,unpack,unshift,untie,until,use,utime,values,vec,%
      wait,waitpid,wantarray,warn,while,write,y},%
   sensitive,%
   morecomment=[l]\#,%
   morestring=[b]",%
   morestring=[b]',%
   MoreSelectCharTable=%
      \lst@ReplaceInput{\$\#}{\lst@ProcessOther\$\lst@ProcessOther\#}%
  }[keywords,comments,strings]%
%%
%% POV definition (c) 1999 Berthold H\"ollmann
%%                         <bhoel@starship.python.net>
%%
\lst@definelanguage{POV}%
  {morekeywords={abs,absorption,acos,acosh,adaptive,adc_bailout,agate,%
      agate_turb,all,alpha,ambient,ambient_light,angle,aperture,append,%
      arc_angle,area_light,array,asc,asin,asinh,assumed_gamma,atan,%
      atan2,atanh,average,background,bezier_spline,bicubic_patch,%
      black_hole,blob,blue,blur_samples,bounded_by,box,boxed,bozo,%
      break,brick,brick_size,brightness,brilliance,bumps,bump_map,%
      bump_size,camera,case,caustics,ceil,checker,chr,clipped_by,clock,%
      clock_delta,color,color_map,colour,colour_map,component,%
      composite,concat,cone,confidence,conic_sweep,control0,control1,%
      cos,cosh,count,crackle,crand,cube,cubic,cubic_spline,cubic_wave,%
      cylinder,cylindrical,debug,declare,default,defined,degrees,%
      density,density_file,density_map,dents,difference,diffuse,%
      dimensions,dimension_size,direction,disc,distance,%
      distance_maximum,div,eccentricity,else,emission,end,error,%
      error_bound,exp,extinction,fade_distance,fade_power,falloff,%
      falloff_angle,false,fclose,file_exists,filter,finish,fisheye,%
      flatness,flip,floor,focal_point,fog,fog_alt,fog_offset,fog_type,%
      fopen,frequency,gif,global_settings,gradient,granite,%
      gray_threshold,green,height_field,hexagon,hf_gray_16,hierarchy,%
      hollow,hypercomplex,if,ifdef,iff,ifndef,image_map,include,int,%
      interior,interpolate,intersection,intervals,inverse,ior,irid,%
      irid_wavelength,jitter,julia_fractal,lambda,lathe,leopard,%
      light_source,linear_spline,linear_sweep,local,location,log,%
      looks_like,look_at,low_error_factor,macro,mandel,map_type,marble,%
      material,material_map,matrix,max,max_intersections,max_iteration,%
      max_trace_level,media,media_attenuation,media_interaction,merge,%
      mesh,metallic,min,minimum_reuse,mod,mortar,nearest_count,no,%
      normal,normal_map,no_shadow,number_of_waves,object,octaves,off,%
      offset,omega,omnimax,on,once,onion,open,orthographic,panoramic,%
      perspective,pgm,phase,phong,phong_size,pi,pigment,pigment_map,%
      planar,plane,png,point_at,poly,polygon,poly_wave,pot,pow,ppm,%
      precision,prism,pwr,quadratic_spline,quadric,quartic,quaternion,%
      quick_color,quick_colour,quilted,radial,radians,radiosity,radius,%
      rainbow,ramp_wave,rand,range,ratio,read,reciprocal,%
      recursion_limit,red,reflection,reflection_exponent,refraction,%
      render,repeat,rgb,rgbf,rgbft,rgbt,right,ripples,rotate,roughness,%
      samples,scale,scallop_wave,scattering,seed,shadowless,sin,%
      sine_wave,sinh,sky,sky_sphere,slice,slope_map,smooth,%
      smooth_triangle,sor,specular,sphere,spherical,spiral1,spiral2,%
      spotlight,spotted,sqr,sqrt,statistics,str,strcmp,strength,strlen,%
      strlwr,strupr,sturm,substr,superellipsoid,switch,sys,t,tan,tanh,%
      text,texture,texture_map,tga,thickness,threshold,tightness,tile2,%
      tiles,torus,track,transform,translate,transmit,triangle,%
      triangle_wave,true,ttf,turbulence,turb_depth,type,u,%
      ultra_wide_angle,undef,union,up,use_color,use_colour,use_index,%
      u_steps,v,val,variance,vaxis_rotate,vcross,vdot,version,vlength,%
      vnormalize,vrotate,v_steps,warning,warp,water_level,waves,while,%
      width,wood,wrinkles,write,x,y,yes,z},%
   moredirectives={break,case,debug,declare,default,else,end,fclose,%
      fopen,local,macro,read,render,statistics,switch,undef,version,%
      warning,write},%
   sensitive,%
   morecomment=[l]//,%
   morecomment=[s]{/*}{*/},%
   morestring=[d]",%
  }[keywords,directives,comments,strings]%
%%
%% Python definition (c) 1998 Michael Weber
%%                            <mweber@informatik.hu-berlin.de>
%%
\lst@definelanguage{Python}%
  {morekeywords={access,and,break,class,continue,def,del,elif,else,%
      except,exec,finally,for,from,global,if,import,in,is,lambda,not,%
      or,pass,print,raise,return,try,while},%
   sensitive=true,%
   morecomment=[l]\#,%
   morecomment=[s]{'''}{'''},% used for documentation text
   morecomment=[s]{"""}{"""},% added by Philipp Matthias Hahn
   morestring=[b]',%
   morestring=[b]"%
  }%
%%
%% SQL definition (c) 1998 Christian Haul
%%                         <haul@dvs1.informatik.tu-darmstadt.de>
%%            and (c) 2002 Neil Conway <nconway@klamath.dyndns.org>
%%
\lst@definelanguage{SQL}%
  {morekeywords={ABSOLUTE,ACTION,ADD,ALLOCATE,ALTER,ARE,AS,ASSERTION,%
      AT,BETWEEN,BIT,BIT_LENGTH,BOTH,BY,CASCADE,CASCADED,CASE,CAST,%
      CATALOG,CHAR,CHAR_LENGTH,CHARACTER_LENGTH,CLUSTER,COALESCE,%
      COLLATE,COLLATION,COLUMN,CONNECT,CONNECTION,CONSTRAINT,%
      CONSTRAINTS,CONVERT,CORRESPONDING,CREATE,CROSS,CURRENT_DATE,%
      CURRENT_TIME,CURRENT_TIMESTAMP,CURRENT_USER,DATE,DAY,DEALLOCATE,%
      DEC,DECIMAL,DEFERRABLE,DEFERED,DESCRIBE,DESCRIPTOR,DIAGNOSTICS,%
      DISCONNECT,DOMAIN,DROP,ELSE,END,EXEC,EXCEPT,EXCEPTION,EXECUTE,%
      EXTERNAL,EXTRACT,FALSE,FIRST,FLOAT,FOREIGN,FROM,FULL,GET,GLOBAL,%
      GRAPHIC,HAVING,HOUR,IDENTITY,IMMEDIATE,INDEX,INITIALLY,INNER,%
      INPUT,INSENSITIVE,INSERT,INT,INTO,INTEGER,INTERSECT,INTERVAL,%
      ISOLATION,JOIN,KEY,LAST,LEADING,LEFT,LEVEL,LIMIT,LOCAL,LOWER,%
      MATCH,MINUTE,MONTH,NAMES,NATIONAL,NATURAL,NCHAR,NEXT,NO,NOT,NULL,%
      NULLIF,OCTET_LENGTH,ON,ONLY,ORDER,ORDERED,OUTER,OUTPUT,OVERLAPS,%
      PAD,PARTIAL,POSITION,PREPARE,PRESERVE,PRIMARY,PRIOR,READ,%
      RELATIVE,RESTRICT,REVOKE,RIGHT,ROWS,SCROLL,SECOND,SELECT,SESSION,%
      SESSION_USER,SIZE,SMALLINT,SPACE,SQLSTATE,SUBSTRING,SYSTEM_USER,%
      TABLE,TEMPORARY,THEN,TIME,TIMESTAMP,TIMEZONE_HOUR,%
      TIMEZONE_MINUTE,TRAILING,TRANSACTION,TRANSLATE,TRANSLATION,TRIM,%
      TRUE,UNIQUE,UNKNOWN,UPPER,USAGE,USING,VALUE,VALUES,VARCHAR,%
      VARGRAPHIC,VARYING,WHEN,WHERE,WRITE,YEAR,ZONE},%
   sensitive,%
   morecomment=[l]--,%
   morecomment=[s]{/*}{*/},%
   morestring=[d]',%
   morestring=[d]"%
  }[keywords,comments,strings]%
%%
%% VHDL definition (c) 1997 Kai Wollenweber <kai@ece.wpi.edu>
%%
\lst@definelanguage{VHDL}%
  {morekeywords={ALL,ARCHITECTURE,ABS,AND,ASSERT,ARRAY,AFTER,ALIAS,%
      ACCESS,ATTRIBUTE,BEGIN,BODY,BUS,BLOCK,BUFFER,CONSTANT,CASE,%
      COMPONENT,CONFIGURATION,DOWNTO,ELSE,ELSIF,END,ENTITY,EXIT,%
      FUNCTION,FOR,FILE,GENERIC,GENERATE,GUARDED,GROUP,IF,IN,INOUT,IS,%
      INERTIAL,IMPURE,LIBRARY,LOOP,LABEL,LITERAL,LINKAGE,MAP,MOD,NOT,%
      NOR,NAND,NULL,NEXT,NEW,OUT,OF,OR,OTHERS,ON,OPEN,PROCESS,PORT,%
      PACKAGE,PURE,PROCEDURE,POSTPONED,RANGE,REM,ROL,ROR,REPORT,RECORD,%
      RETURN,REGISTER,REJECT,SIGNAL,SUBTYPE,SLL,SRL,SLA,SRA,SEVERITY,%
      SELECT,THEN,TYPE,TRANSPORT,TO,USE,UNITS,UNTIL,VARIABLE,WHEN,WAIT,%
      WHILE,XOR,XNOR},%
   sensitive=f,% 1998 Gaurav Aggarwal
   morecomment=[l]--,%
   morestring=[d]{"}%
  }[keywords,comments,strings]%
%%
%% VHDL-AMS definition (c) Steffen Klupsch
%%
\lst@definelanguage[AMS]{VHDL}[]{VHDL}%
  {morekeywords={ACROSS,ARRAY,BREAK,DISCONNECT,NATURE,NOISE,PORT,%
      PROCEDURAL,QUANTITY,SHARED,SPECTRUM,SUBNATURE,TERMINAL,THROUGH,%
      TOLERANCE,UNAFFACTED,UNITS}}
\lst@definelanguage{XML}%
  {keywords={,CDATA,DOCTYPE,ATTLIST,termdef,ELEMENT,EMPTY,ANY,ID,%
      IDREF,IDREFS,ENTITY,ENTITIES,NMTOKEN,NMTOKENS,NOTATION,%
      INCLUDE,IGNORE,SYSTEM,PUBLIC,NDATA,PUBLIC,%
      PCDATA,REQUIRED,IMPLIED,FIXED,%%% preceded by #
      xml,xml:space,xml:lang,version,standalone,default,preserve},%
   alsoother=$,%
   alsoletter=:,%
   keywordsinside=<>,%
   morestring=[d]",% ??? doubled
   morestring=[d]',% ??? doubled
   MoreSelectCharTable=%
      \lst@CArgX--\relax\lst@DefDelimB{}{}%
          {\ifnum\lst@mode=\lst@insidemode\else
               \expandafter\@gobblethree
           \fi}%
          \lst@BeginComment\lst@commentmode{{\lst@commentstyle}}%
      \lst@CArgX--\relax\lst@DefDelimE{}{}{}%
          \lst@EndComment\lst@commentmode
      \lst@CArgX[CDATA[\relax\lst@CDef{}%
          {\ifnum\lst@mode=\lst@insidemode
               \expandafter\lst@BeginCDATA
           \else \expandafter\lst@CArgEmpty
           \fi}%
          \@empty
      \lst@CArgX]]\relax\lst@CDef{}%
          {\ifnum\lst@mode=\lst@GPmode
               \expandafter\lst@EndComment
           \else \expandafter\lst@CArgEmpty
           \fi}%
          \@empty
  }[keywords,comments,strings,html]%
\endinput
%%
%% End of file `lstlang1.sty'.
