// see prettify.js for copyright, license and expanded version
window[
'PR_SHOULD_USE_CONTINUATION' ]=
true ;
var prettyPrintOne;
var prettyPrint;(
function (){
var win=window;
var FLOW_CONTROL_KEYWORDS=[
"break,continue,do,else,for,if,return,while" ];
var C_KEYWORDS=[FLOW_CONTROL_KEYWORDS,
"auto,case,char,const,default," +
"double,enum,extern,float,goto,int,long,register,short,signed,sizeof,module," +
"static,struct,switch,typedef,union,unsigned,void,volatile" ];
var COMMON_KEYWORDS=[C_K
EYWORDS,"catch,class,delete,false,import," +"new,operator,private,protected,public,this,throw,true,try,typeof" ];var CPP_KEYWORDS=[COMMON_KEYWORDS,"alignof,align_union,asm,axiom,bool," +"concept,concept_map,const_cast,constexpr,decltype," +"dynamic_cast,explicit,export,friend,inline,late_check," +"mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast," +"template,typeid,typename,using,virtual,where,request_req" ];var JAVA_KEYWORDS=[COMMON_KEYWORDS,"abstract,boolean,byte,extends,final,finally,implements,import," +"instanceof,null,native,package,strictfp,super,synchronized,throws," +"transient" ];var CSHARP_KEYWORDS=[JAVA_KEYWORDS,"as,base,by,checked,decimal,delegate,descending,dynamic,event," +"fixed,foreach,from,group,implicit,in,interface,internal,into,is,let," +"lock,object,out,override,orderby,params,partial,readonly,ref,sbyte," +"sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort," +"var,virtual,where" ];var COFFEE_KEYWORDS="all,and,by,catch,class,else,extends,false,finally," +"for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then," +"throw,true,try,unless,until,when,while,yes" ;var JSCRIPT_KEYWORDS=[COMMON_KEYWORDS,"debugger,eval,export,function,get,null,set,undefined,var,with," +"Infinity,NaN" ];var PERL_KEYWORDS="caller,delete,die,do,dump,else,elsif,eval,exit,foreach,for," +"goto,if,import,last,local,my,next,no,our,print,printf,package,redo,require," +"sub,undef,unless,until,use,wantarray,while,BEGIN,END" ;var PHP_KEYWORDS="abstract,and,array,as,break,case,catch,cfunction,class," +"clone,const,continue,declare,default,do,else,elseif,enddeclare,endfor," +"endforeach,endif,endswitch,endwhile,extends,final,for,foreach,function," +"global,goto,if,implements,interface,instanceof,namespace,new,old_function," +"or,private,protected,public,static,switch,throw,try,use,var,while,xor," +"die,echo,empty,exit,eval,include,include_once,isset,list,require," +"require_once,return,print,unset" ;var PYTHON_KEYWORDS=[FLOW_CONTROL_KEYWORDS,"and,as,assert,class,def,del," +"elif,except,exec,finally,from,global,import,in,is,lambda," +"nonlocal,not,or,pass,print,raise,try,with,yield," +"False,True,None" ];var RUBY_KEYWORDS=[FLOW_CONTROL_KEYWORDS,"alias,and,begin,case,class," +"def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo," +"rescue,retry,self,super,then,true,undef,unless,until,when,yield," +"BEGIN,END" ];var SH_KEYWORDS=[FLOW_CONTROL_KEYWORDS,"case,done,elif,esac,eval,fi," +"function,in,local,set,then,until,echo" ];var CONFIG_ENVS=["User-Agent,HTTP_USER_AGENT,HTTP_REFERER,HTTP_COOKIE,HTTP_FORWARDED,HTTP_HOST,HTTP_PROXY_CONNECTION,HTTP_ACCEPT,REMOTE_ADDR,REMOTE_HOST,REMOTE_PORT,REMOTE_USER,REMOTE_IDENT,REQUEST_METHOD,SCRIPT_FILENAME,PATH_INFO,QUERY_STRING,AUTH_TYPE,DOCUMENT_ROOT,SERVER_ADMIN,SERVER_NAME,SERVER_ADDR,SERVER_PORT,SERVER_PROTOCOL,SERVER_SOFTWARE,TIME_YEAR,TIME_MON,TIME_DAY,TIME_HOUR,TIME_MIN,TIME_SEC,TIME_WDAY,TIME,API_VERSION,THE_REQUEST,REQUEST_URI,REQUEST_FILENAME,IS_SUBREQ,HTTPS,REQUEST_SCHEME" ];var CONFIG_KEYWORDS=["AcceptFilter,AcceptPathInfo,AccessFileName,Action,AddAlt,AddAltByEncoding,AddAltByType,AddCharset,AddDefaultCharset,AddDescription,AddEncoding,AddHandler,AddIcon,AddIconByEncoding,AddIconByType,AddInputFilter,AddLanguage,AddModuleInfo,AddOutputFilter,AddOutputFilterByType,AddType,Alias,AliasMatch,Allow,AllowCONNECT,AllowEncodedSlashes,AllowMethods,AllowOverride,AllowOverrideList,Anonymous,Anonymous_LogEmail,Anonymous_MustGiveEmail,Anonymous_NoUserID,Anonymous_VerifyEmail,AsyncRequestWorkerFactor,AuthBasicAuthoritative,AuthBasicFake,AuthBasicProvider,AuthBasicUseDigestAlgorithm,AuthDBDUserPWQuery,AuthDBDUserRealmQuery,AuthDBMGroupFile,AuthDBMType,AuthDBMUserFile,AuthDigestAlgorithm,AuthDigestDomain,AuthDigestNonceLifetime,AuthDigestProvider,AuthDigestQop,AuthDigestShmemSize,AuthFormAuthoritative,AuthFormBody,AuthFormDisableNoStore,AuthFormFakeBasicAuth,AuthFormLocation,AuthFormLoginRequiredLocation,AuthFormLoginSuccessLocation,AuthFormLogoutLocation,AuthFormMethod,AuthFormMimetype,AuthFormPassword,AuthFormProvider,AuthFormSitePassphrase,AuthFormSize,AuthFormUsername,AuthGroupFile,AuthLDAPAuthorizePrefix,AuthLDAPBindAuthoritative,AuthLDAPBindDN,AuthLDAPBindPassword,AuthLDAPCharsetConfig,AuthLDAPCompareAsUser,AuthLDAPCompareDNOnServer,AuthLDAPDereferenceAliases,AuthLDAPGroupAttribute,AuthLDAPGroupAttributeIsDN,AuthLDAPInitialBindAsUser,AuthLDAPInitialBindPattern,AuthLDAPMaxSubGroupDepth,AuthLDAPRemoteUserAttribute,AuthLDAPRemoteUserIsDN,AuthLDAPSearchAsUser,AuthLDAPSubGroupAttribute,AuthLDAPSubGroupClass,AuthLDAPURL,AuthMerging,AuthName,AuthnCacheContext,AuthnCacheEnable,AuthnCacheProvideFor,AuthnCacheSOCache,AuthnCacheTimeout,,AuthnzFcgiCheckAuthnProvider,AuthnzFcgiDefineProvider,AuthType,AuthUserFile,AuthzDBDLoginToReferer,AuthzDBDQuery,AuthzDBDRedirectQuery,AuthzDBMType,,AuthzSendForbiddenOnFailure,BalancerGrowth,BalancerInherit,BalancerMember,BalancerPersist,BrotliAlterETag,BrotliCompressionMaxInputBlock,BrotliCompressionQuality,BrotliCompressionWindow,BrotliFilterNote,BrowserMatch,BrowserMatchNoCase,BufferedLogs,BufferSize,CacheDefaultExpire,CacheDetailHeader,CacheDirLength,CacheDirLevels,CacheDisable,CacheEnable,CacheFile,CacheHeader,CacheIgnoreCacheControl,CacheIgnoreHeaders,CacheIgnoreNoLastMod,CacheIgnoreQueryString,CacheIgnoreURLSessionIdentifiers,CacheKeyBaseURL,CacheLastModifiedFactor,CacheLock,CacheLockMaxAge,CacheLockPath,CacheMaxExpire,CacheMaxFileSize,CacheMinExpire,CacheMinFileSize,CacheNegotiatedDocs,CacheQuickHandler,CacheReadSize,CacheReadTime,CacheRoot,CacheSocache,CacheSocacheMaxSize,CacheSocacheMaxTime,CacheSocacheMinTime,CacheSocacheReadSize,CacheSocacheReadTime,CacheStaleOnError,CacheStoreExpired,CacheStoreNoStore,CacheStorePrivate,CGIDScriptTimeout,CGIMapExtension,CGIPassAuth,CGIScriptTimeout,CGIVar,CharsetDefault,CharsetOptions,CharsetSourceEnc,CheckBasenameMatch,CheckCaseOnly,CheckSpelling,ChrootDir,ContentDigest,CookieDomain,CookieExpires,CookieHTTPOnly,CookieName,CookieSameSite,CookieSecure,CookieStyle,CookieTracking,CoreDumpDirectory,CustomLog,Dav,DavBasePath,DavDepthInfinity,DavGenericLockDB,DavLockDB,DavLockDiscovery,DavMinTimeout,DBDExptime,DBDInitSQL,DBDKeep,DBDMax,DBDMin,DBDParams,DBDPersist,DBDPrepareSQL,DBDriver,DefaultIcon,DefaultLanguage,DefaultRuntimeDir,DefaultType,Define,DeflateAlterETag,DeflateBufferSize,DeflateCompressionLevel,DeflateFilterNote,DeflateInflateLimitRequestBody,DeflateInflateRatioBurst,DeflateInflateRatioLimit,DeflateMemLevel,DeflateWindowSize,Deny,,DirectoryCheckHandler,DirectoryIndex,DirectoryIndexRedirect,,DirectorySlash,DocumentRoot,DTracePrivileges,DumpIOInput,DumpIOOutput,,,EnableExceptionHook,EnableMMAP,EnableSendfile,Error,ErrorDocument,ErrorLog,ErrorLogFormat,Example,ExpiresActive,ExpiresByType,ExpiresDefault,ExtendedStatus,ExtFilterDefine,ExtFilterOptions,FallbackResource,FileETag,,,FilterChain,FilterDeclare,FilterProtocol,FilterProvider,FilterTrace,FlushMaxPipelined,FlushMaxThreshold,ForceLanguagePriority,ForceType,ForensicLog,GlobalLog,GprofDir,GracefulShutdownTimeout,Group,H2CopyFiles,H2Direct,H2EarlyHint,H2EarlyHints,H2MaxDataFrameLen,H2MaxSessionStreams,H2MaxWorkerIdleSeconds,H2MaxWorkers,H2MinWorkers,H2ModernTLSOnly,H2OutputBuffering,H2Padding,H2ProxyRequests,H2Push,H2PushDiarySize,H2PushPriority,H2PushResource,H2SerializeHeaders,H2StreamMaxMemSize,H2StreamTimeout,H2TLSCoolDownSecs,H2TLSWarmUpSize,H2Upgrade,H2WebSockets,H2WindowSize,Header,HeaderName,HeartbeatAddress,HeartbeatListen,HeartbeatMaxServers,HeartbeatStorage,HeartbeatStorage,HostnameLookups,HttpProtocolOptions,IdentityCheck,IdentityCheckTimeout,,,,,,,,ImapBase,ImapDefault,ImapMenu,Include,IncludeOptional,IndexHeadInsert,IndexIgnore,IndexIgnoreReset,IndexOptions,IndexOrderDefault,IndexStyleSheet,InputSed,ISAPIAppendLogToErrors,ISAPIAppendLogToQuery,ISAPICacheFile,ISAPIFakeAsync,ISAPILogNotSupported,ISAPIReadAheadBuffer,KeepAlive,KeepAliveTimeout,KeptBodySize,LanguagePriority,LDAPCacheEntries,LDAPCacheTTL,LDAPConnectionPoolTTL,LDAPConnectionTimeout,LDAPLibraryDebug,LDAPOpCacheEntries,LDAPOpCacheTTL,LDAPReferralHopLimit,LDAPReferrals,LDAPRetries,LDAPRetryDelay,LDAPSharedCacheFile,LDAPSharedCacheSize,LDAPTimeout,LDAPTrustedClientCert,LDAPTrustedGlobalCert,LDAPTrustedMode,LDAPVerifyServerCert,,,LimitInternalRecursion,LimitRequestBody,LimitRequestFields,LimitRequestFieldSize,LimitRequestLine,LimitXMLRequestBody,Listen,ListenBackLog,ListenCoresBucketsRatio,LoadFile,LoadModule,,,LogFormat,LogIOTrackTTFB,LogLevel,LogMessage,LuaAuthzProvider,LuaCodeCache,LuaHookAccessChecker,LuaHookAuthChecker,LuaHookCheckUserID,LuaHookFixups,LuaHookInsertFilter,LuaHookLog,LuaHookMapToStorage,LuaHookPreTranslate,LuaHookTranslateName,LuaHookTypeChecker,LuaInherit,LuaInputFilter,LuaMapHandler,LuaOutputFilter,LuaPackageCPath,LuaPackagePath,LuaQuickHandler,LuaRoot,LuaScope,,MaxConnectionsPerChild,MaxKeepAliveRequests,MaxMemFree,MaxRangeOverlaps,MaxRangeReversals,MaxRanges,MaxRequestWorkers,MaxSpareServers,MaxSpareThreads,MaxThreads,MDActivationDelay,MDBaseServer,MDCAChallenges,MDCertificateAgreement,MDCertificateAuthority,MDCertificateCheck,MDCertificateFile,MDCertificateKeyFile,MDCertificateMonitor,MDCertificateProtocol,MDCertificateStatus,MDChallengeDns01,MDChallengeDns01Version,MDContactEmail,MDDriveMode,MDExternalAccountBinding,MDHttpProxy,MDMatchNames,MDMember,MDMembers,MDMessageCmd,MDMustStaple,MDNotifyCmd,MDomain,,MDPortMap,MDPrivateKeys,MDRenewMode,MDRenewWindow,MDRequireHttps,MDRetryDelay,MDRetryFailover,MDServerStatus,MDStapleOthers,MDStapling,MDStaplingKeepResponse,MDStaplingRenewWindow,MDStoreDir,MDStoreLocks,MDWarnWindow,MemcacheConnTTL,MergeSlashes,MergeTrailers,MetaDir,MetaFiles,MetaSuffix,MimeMagicFile,MinSpareServers,MinSpareThreads,MMapFile,ModemStandard,ModMimeUsePathInfo,MultiviewsMatch,Mutex,NameVirtualHost,NoProxy,NWSSLTrustedCerts,NWSSLUpgradeable,Options,Order,OutputSed,PassEnv,PidFile,PrivilegesMode,Protocol,ProtocolEcho,Protocols,ProtocolsHonorOrder,,Proxy100Continue,ProxyAddHeaders,ProxyBadHeader,ProxyBlock,ProxyDomain,ProxyErrorOverride,ProxyExpressDBMFile,ProxyExpressDBMType,ProxyExpressEnable,ProxyFCGIBackendType,ProxyFCGISetEnvIf,ProxyFtpDirCharset,ProxyFtpEscapeWildcards,ProxyFtpListOnWildcard,ProxyHCExpr,ProxyHCTemplate,ProxyHCTPsize,ProxyHTMLBufSize,ProxyHTMLCharsetOut,ProxyHTMLDocType,ProxyHTMLEnable,ProxyHTMLEvents,ProxyHTMLExtended,ProxyHTMLFixups,ProxyHTMLInterp,ProxyHTMLLinks,ProxyHTMLMeta,ProxyHTMLStripComments,ProxyHTMLURLMap,ProxyIOBufferSize,,ProxyMaxForwards,ProxyPass,ProxyPassInherit,ProxyPassInterpolateEnv,ProxyPassMatch,ProxyPassReverse,ProxyPassReverseCookieDomain,ProxyPassReverseCookiePath,ProxyPreserveHost,ProxyReceiveBufferSize,ProxyRemote,ProxyRemoteMatch,ProxyRequests,ProxySCGIInternalRedirect,ProxySCGISendfile,ProxySet,ProxySourceAddress,ProxyStatus,ProxyTimeout,ProxyVia,ProxyWebsocketFallbackToProxyHttp,QualifyRedirectURL,ReadBufferSize,ReadmeName,ReceiveBufferSize,Redirect,RedirectMatch,RedirectPermanent,RedirectRelative,RedirectTemp,RedisConnPoolTTL,RedisTimeout,ReflectorHeader,RegexDefaultOptions,RegisterHttpMethod,RemoteIPHeader,RemoteIPInternalProxy,RemoteIPInternalProxyList,RemoteIPProxiesHeader,RemoteIPProxyProtocol,RemoteIPProxyProtocolExceptions,RemoteIPTrustedProxy,RemoteIPTrustedProxyList,RemoveCharset,RemoveEncoding,RemoveHandler,RemoveInputFilter,RemoveLanguage,RemoveOutputFilter,RemoveType,RequestHeader,RequestReadTimeout,Require,,,,RewriteBase,RewriteCond,RewriteEngine,RewriteMap,RewriteOptions,RewriteRule,RLimitCPU,RLimitMEM,RLimitNPROC,Satisfy,ScoreBoardFile,Script,ScriptAlias,ScriptAliasMatch,ScriptInterpreterSource,ScriptLog,ScriptLogBuffer,ScriptLogLength,ScriptSock,SecureListen,SeeRequestTail,SendBufferSize,ServerAdmin,ServerAlias,ServerLimit,ServerName,ServerPath,ServerRoot,ServerSignature,ServerTokens,Session,SessionCookieName,SessionCookieName2,SessionCookieRemove,SessionCryptoCipher,SessionCryptoDriver,SessionCryptoPassphrase,SessionCryptoPassphraseFile,SessionDBDCookieName,SessionDBDCookieName2,SessionDBDCookieRemove,SessionDBDDeleteLabel,SessionDBDInsertLabel,SessionDBDPerUser,SessionDBDSelectLabel,SessionDBDUpdateLabel,SessionEnv,SessionExclude,SessionExpiryUpdateInterval,SessionHeader,SessionInclude,SessionMaxAge,SetEnv,SetEnvIf,SetEnvIfExpr,SetEnvIfNoCase,SetHandler,SetInputFilter,SetOutputFilter,SSIEndTag,SSIErrorMsg,SSIETag,SSILastModified,SSILegacyExprParser,SSIStartTag,SSITimeFormat,SSIUndefinedEcho,SSLCACertificateFile,SSLCACertificatePath,SSLCADNRequestFile,SSLCADNRequestPath,SSLCARevocationCheck,SSLCARevocationFile,SSLCARevocationPath,SSLCertificateChainFile,SSLCertificateFile,SSLCertificateKeyFile,SSLCipherSuite,SSLCompression,SSLCryptoDevice,SSLEngine,SSLFIPS,SSLHonorCipherOrder,SSLInsecureRenegotiation,SSLOCSPDefaultResponder,SSLOCSPEnable,SSLOCSPNoverify,SSLOCSPOverrideResponder,SSLOCSPProxyURL,SSLOCSPResponderCertificateFile,SSLOCSPResponderTimeout,SSLOCSPResponseMaxAge,SSLOCSPResponseTimeSkew,SSLOCSPUseRequestNonce,SSLOpenSSLConfCmd,SSLOptions,SSLPassPhraseDialog,SSLProtocol,SSLProxyCACertificateFile,SSLProxyCACertificatePath,SSLProxyCARevocationCheck,SSLProxyCARevocationFile,SSLProxyCARevocationPath,SSLProxyCheckPeerCN,SSLProxyCheckPeerExpire,SSLProxyCheckPeerName,SSLProxyCipherSuite,SSLProxyEngine,SSLProxyMachineCertificateChainFile,SSLProxyMachineCertificateFile,SSLProxyMachineCertificatePath,SSLProxyProtocol,SSLProxyVerify,SSLProxyVerifyDepth,SSLRandomSeed,SSLRenegBufferSize,SSLRequire,SSLRequireSSL,SSLSessionCache,SSLSessionCacheTimeout,SSLSessionTicketKeyFile,SSLSessionTickets,SSLSRPUnknownUserSeed,SSLSRPVerifierFile,SSLStaplingCache,SSLStaplingErrorCacheTimeout,SSLStaplingFakeTryLater,SSLStaplingForceURL,SSLStaplingResponderTimeout,SSLStaplingResponseMaxAge,SSLStaplingResponseTimeSkew,SSLStaplingReturnResponderErrors,SSLStaplingStandardCacheTimeout,SSLStrictSNIVHostCheck,SSLUserName,SSLUseStapling,SSLVerifyClient,SSLVerifyDepth,StartServers,StartThreads,StrictHostCheck,Substitute,SubstituteInheritBefore,SubstituteMaxLineLength,Suexec,SuexecUserGroup,ThreadLimit,ThreadsPerChild,ThreadStackSize,TimeOut,TraceEnable,TransferLog,TypesConfig,UNCList,UnDefine,UndefMacro,UnsetEnv,Use,UseCanonicalName,UseCanonicalPhysicalPort,User,UserDir,VHostCGIMode,VHostCGIPrivs,VHostGroup,VHostPrivs,VHostSecure,VHostUser,VirtualDocumentRoot,VirtualDocumentRootIP,,VirtualScriptAlias,VirtualScriptAliasIP,WatchdogInterval,XBitHack,xml2EncAlias,xml2EncDefault,xml2StartParse" ];var CONFIG_OPTIONS=/^[\\+\\-]?(AuthConfig|IncludesNOEXEC|ExecCGI|FollowSymLinks|MultiViews|Includes|Indexes|SymLinksIfOwnerMatch)\b/i;var ALL_KEYWORDS=[CPP_KEYWORDS,CSHARP_KEYWORDS,JSCRIPT_KEYWORDS,PERL_KEYWORDS+
PYTHON_KEYWORDS,RUBY_KEYWORDS,SH_KEYWORDS,CONFIG_KEYWORDS,PHP_KEYWORDS];var C_TYPES=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int |float |char |void |const |static |struct)\d*(_t)?\b)|[a-z_]+_rec|cmd_parms\b/;var PR_STRING='str' ;var PR_KEYWORD='kwd' ;var PR_COMMENT='com' ;var PR_TYPE='typ' ;var PR_LITERAL='lit' ;var PR_PUNCTUATION='pun' ;var PR_PLAIN='pln' ;var PR_TAG='tag' ;var PR_DECLARATION='dec' ;var PR_SOURCE='src' ;var PR_ATTRIB_NAME='atn' ;var PR_ATTRIB_VALUE='atv' ;var PR_NOCODE='nocode' ;var REGEXP_PRECEDER_PATTERN='(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*' ;function combinePrefixPatterns(regexs){var capturedGroupIndex=0;var needToFoldCase=false ;var ignoreCase=false ;for (var i=0,n=regexs.length;i<n;++i){var regex=regexs[i];if (regex.ignoreCase){ignoreCase=true ;}else if (/[a-z]/i.test(regex.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,'' ))){needToFoldCase=true ;ignoreCase=false ;break ;}}
var escapeCharToCodeUnit={'b' :8,'t' :9,'n' :0xa,'v' :0xb,'f' :0xc,'r' :0xd};function decodeEscape(charsetPart){var cc0=charsetPart.charCodeAt(0);if (cc0!==92){return cc0;}
var c1=charsetPart.charAt(1);cc0=escapeCharToCodeUnit[c1];if (cc0){return cc0;}else if ('0' <=c1&&c1<='7' ){return parseInt(charsetPart.substring(1),8);}else if (c1==='u' ||c1==='x' ){return parseInt(charsetPart.substring(2),16);}else {return charsetPart.charCodeAt(1);}}
function encodeEscape(charCode){if (charCode<0x20){return (charCode<0x10?'\\x0' :'\\x' )+charCode.toString(16);}
var ch=String.fromCharCode(charCode);return (ch==='\\' ||ch==='-' ||ch===']' ||ch==='^' )?"\\" +ch:ch;}
function caseFoldCharset(charSet){var charsetParts=charSet.substring(1,charSet.length-1).match(new RegExp('\\\\u[0-9A-Fa-f]{4}'
+'|\\\\x[0-9A-Fa-f]{2}'
+'|\\\\[0-3][0-7]{0,2}'
+'|\\\\[0-7]{1,2}'
+'|\\\\[\\s\\S]'
+'|-'
+'|[^-\\\\]' ,'g' ));var ranges=[];var inverse=charsetParts[0]==='^' ;var out=['[' ];if (inverse){out.push('^' );}
for (var i=inverse?1:0,n=charsetParts.length;i<n;++i){var p=charsetParts[i];if (/\\[bdsw]/i.test(p)){out.push(p);}else {var start=decodeEscape(p);var end;if (i+2<n&&'-' ===charsetParts[i+1]){end=decodeEscape(charsetParts[i+2]);i+=2;}else {end=start;}
ranges.push([start,end]);if (!(end<65||start>122)){if (!(end<65||start>90)){ranges.push([Math.max(65,start)|32,Math.min(end,90)|32]);}
if (!(end<97||start>122)){ranges.push([Math.max(97,start)&~32,Math.min(end,122)&~32]);}}}}
ranges.sort(function (a,b){return (a[0]-b[0])||(b[1]-a[1]);});var consolidatedRanges=[];var lastRange=[];for (var i=0;i<ranges.length;++i){var range=ranges[i];if (range[0]<=lastRange[1]+1){lastRange[1]=Math.max(lastRange[1],range[1]);}else {consolidatedRanges.push(lastRange=range);}}
for (var i=0;i<consolidatedRanges.length;++i){var range=consolidatedRanges[i];out.push(encodeEscape(range[0]));if (range[1]>range[0]){if (range[1]+1>range[0]){out.push('-' );}
out.push(encodeEscape(range[1]));}}
out.push(']' );return out.join('' );}
function allowAnywhereFoldCaseAndRenumberGroups(regex){var parts=regex.source.match(new RegExp('(?:'
+'\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]'
+'|\\\\u[A-Fa-f0-9]{4}'
+'|\\\\x[A-Fa-f0-9]{2}'
+'|\\\\[0-9]+'
+'|\\\\[^ux0-9]'
+'|\\(\\?[:!=]'
+'|[\\(\\)\\^]'
+'|[^\\x5B\\x5C\\(\\)\\^]+'
+')' ,'g' ));var n=parts.length;var capturedGroups=[];for (var i=0,groupIndex=0;i<n;++i){var p=parts[i];if (p==='(' ){++groupIndex;}else if ('\\' ===p.charAt(0)){var decimalValue=+p.substring(1);if (decimalValue){if (decimalValue<=groupIndex){capturedGroups[decimalValue]=-1;}else {parts[i]=encodeEscape(decimalValue);}}}}
for (var i=1;i<capturedGroups.length;++i){if (-1===capturedGroups[i]){capturedGroups[i]=++capturedGroupIndex;}}
for (var i=0,groupIndex=0;i<n;++i){var p=parts[i];if (p==='(' ){++groupIndex;if (!capturedGroups[groupIndex]){parts[i]='(?:' ;}}else if ('\\' ===p.charAt(0)){var decimalValue=+p.substring(1);if (decimalValue&&decimalValue<=groupIndex){parts[i]='\\' +capturedGroups[decimalValue];}}}
for (var i=0;i<n;++i){if ('^' ===parts[i]&&'^' !==parts[i+1]){parts[i]='' ;}}
if (regex.ignoreCase&&needToFoldCase){for (var i=0;i<n;++i){var p=parts[i];var ch0=p.charAt(0);if (p.length>=2&&ch0==='[' ){parts[i]=caseFoldCharset(p);}else if (ch0!=='\\' ){parts[i]=p.replace(/[a-zA-Z]/g,function (ch){var cc=ch.charCodeAt(0);return '[' +String.fromCharCode(cc&~32,cc|32)+']' ;});}}}
return parts.join('' );}
var rewritten=[];for (var i=0,n=regexs.length;i<n;++i){var regex=regexs[i];if (regex.global||regex.multiline){throw new Error('' +regex);}
rewritten.push('(?:' +allowAnywhereFoldCaseAndRenumberGroups(regex)+')' );}
return new RegExp(rewritten.join('|' ),ignoreCase?'gi' :'g' );}
function extractSourceSpans(node,isPreformatted){var nocode=/(?:^|\s)nocode(?:\s|$)/;var chunks=[];var length=0;var spans=[];var k=0;function walk(node){switch (node.nodeType){case 1:if (nocode.test(node.className)){return ;}
for (var child=node.firstChild;child;child=child.nextSibling){walk(child);}
var nodeName=node.nodeName.toLowerCase();if ('br' ===nodeName||'li' ===nodeName){chunks[k]='\n' ;spans[k<<1]=length++;spans[(k++<<1)|1]=node;}
break ;case 3:case 4:var text=node.nodeValue;if (text.length){if (!isPreformatted){text=text.replace(/[ \t\r\n]+/g,' ' );}else {text=text.replace(/\r\n?/g,'\n' );text=text.replace(/^(\r?\n\s*)+/g,'' );text=text.replace(/^\s*/g,'' );text=text.replace(/(\r?\n\s*)+$/g,'' );}
chunks[k]=text;spans[k<<1]=length;length+=text.length;spans[(k++<<1)|1]=node;}
break ;}}
walk(node);return {sourceCode:chunks.join('' ).replace(/\n$/,'' ),spans:spans};}
function appendDecorations(basePos,sourceCode,langHandler,out){if (!sourceCode){return ;}
var job={sourceCode:sourceCode,basePos:basePos};langHandler(job);out.push.apply(out,job.decorations);}
var notWs=/\S/;function childContentWrapper(element){var wrapper=undefined;for (var c=element.firstChild;c;c=c.nextSibling){var type=c.nodeType;wrapper=(type===1)?(wrapper?element:c):(type===3)?(notWs.test(c.nodeValue)?element:wrapper):wrapper;}
return wrapper===element?undefined:wrapper;}
function createSimpleLexer(shortcutStylePatterns,fallthroughStylePatterns){var shortcuts={};var tokenizer;(function (){var allPatterns=shortcutStylePatterns.concat(fallthroughStylePatterns);var allRegexs=[];var regexKeys={};for (var i=0,n=allPatterns.length;i<n;++i){var patternParts=allPatterns[i];var shortcutChars=patternParts[3];if (shortcutChars){for (var c=shortcutChars.length;--c>=0;){shortcuts[shortcutChars.charAt(c)]=patternParts;}}
var regex=patternParts[1];var k='' +regex;if (!regexKeys.hasOwnProperty(k)){allRegexs.push(regex);regexKeys[k]=null ;}}
allRegexs.push(/[\0-\uffff]/);tokenizer=combinePrefixPatterns(allRegexs);})();var nPatterns=fallthroughStylePatterns.length;var decorate=function (job){var sourceCode=job.sourceCode,basePos=job.basePos;var decorations=[basePos,PR_PLAIN];var pos=0;var tokens=sourceCode.match(tokenizer)||[];var styleCache={};for (var ti=0,nTokens=tokens.length;ti<nTokens;++ti){var token=tokens[ti];var style=styleCache[token];var match=void 0;var isEmbedded;if (typeof style==='string' ){isEmbedded=false ;}else {var patternParts=shortcuts[token.charAt(0)];if (patternParts){match=token.match(patternParts[1]);style=patternParts[0];}else {for (var i=0;i<nPatterns;++i){patternParts=fallthroughStylePatterns[i];match=token.match(patternParts[1]);if (match){style=patternParts[0];break ;}}
if (!match){style=PR_PLAIN;}}
isEmbedded=style.length>=5&&'lang-' ===style.substring(0,5);if (isEmbedded&&!(match&&typeof match[1]==='string' )){isEmbedded=false ;style=PR_SOURCE;}
if (!isEmbedded){styleCache[token]=style;}}
var tokenStart=pos;pos+=token.length;if (!isEmbedded){decorations.push(basePos+tokenStart,style);}else {var embeddedSource=match[1];var embeddedSourceStart=token.indexOf(embeddedSource);var embeddedSourceEnd=embeddedSourceStart+embeddedSource.length;if (match[2]){embeddedSourceEnd=token.length-match[2].length;embeddedSourceStart=embeddedSourceEnd-embeddedSource.length;}
var lang=style.substring(5);appendDecorations(basePos+tokenStart,token.substring(0,embeddedSourceStart),decorate,decorations);appendDecorations(basePos+tokenStart+embeddedSourceStart,embeddedSource,langHandlerForExtension(lang,embeddedSource),decorations);appendDecorations(basePos+tokenStart+embeddedSourceEnd,token.substring(embeddedSourceEnd),decorate,decorations);}}
job.decorations=decorations;};return decorate;}
function sourceDecorator(options){var shortcutStylePatterns=[],fallthroughStylePatterns=[];if (options['tripleQuotedStrings' ]){shortcutStylePatterns.push([PR_STRING,/^(?:\'\' \'(?:[^\' \\]|\\[\s\S]|\'{1,2}(?=[^\' ]))*(?:\'\' \'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\' (?:[^\\\']|\\[\s\S])*(?:\' |$)|\"(?:[^\\\" ]|\\[\s\S])*(?:\"|$))/,null,'\'" ']);}else if(options[' multiLineStrings']){shortcutStylePatterns.push([PR_STRING,/^(?:\' (?:[^\\\']|\\[\s\S])*(?:\' |$)|\"(?:[^\\\" ]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,'\'" `']);}else{shortcutStylePatterns.push([PR_STRING,/^(?:\' (?:[^\\\'\r\n]|\\.)*(?:\' |$)|\"(?:[^\\\" \r\n]|\\.)*(?:\"|$))/,null,'" \'' ]);}
if (options['verbatimStrings' ]){fallthroughStylePatterns.push([PR_STRING,/^@\"(?:[^\" ]|\"\" )*(?:\"|$)/,null]);}
var hc=options['hashComments' ];if (hc){if (options['cStyleComments' ]){if (hc>1){shortcutStylePatterns.push([PR_COMMENT,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null ,'#' ]);}else {shortcutStylePatterns.push([PR_COMMENT,/^#(?:(?:define|elif|else |endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null ,'#' ]);}
fallthroughStylePatterns.push([PR_STRING,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/,null ]);}else {shortcutStylePatterns.push([PR_COMMENT,/^#[^\r\n]*/,null ,'#' ]);}}
if (options['cStyleComments' ]){fallthroughStylePatterns.push([PR_COMMENT,/^\/\/[^\r\n]*/,null ]);fallthroughStylePatterns.push([PR_COMMENT,/^\/\*[\s\S]*?(?:\*\/|$)/,null ]);}
if (options['regexLiterals' ]){var REGEX_LITERAL=('/(?=[^/*])'
+'(?:[^/\\x5B\\x5C]'
+'|\\x5C[\\s\\S]'
+'|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+'
+'/' );fallthroughStylePatterns.push(['lang-regex' ,new RegExp('^' +REGEXP_PRECEDER_PATTERN+'(' +REGEX_LITERAL+')' )]);}
var types=options['types' ];if (types){fallthroughStylePatterns.push([PR_TYPE,types]);}
if (options['strings' ]){var strings=("" +options['strings' ]).replace(/^ | $/g,'' ).replace(/-/g,'\\-' );fallthroughStylePatterns.push([PR_STRING,new RegExp('(?:' +strings.replace(/[\s,]+/g,'|' )+')' ),,null ]);}
var keywords=("" +options['keywords' ]).replace(/^ | $/g,'' );if (keywords.length){fallthroughStylePatterns.push([PR_KEYWORD,new RegExp('^(?:' +keywords.replace(/[\s,]+/g,'|' )+')\\b' ),null ]);}
shortcutStylePatterns.push([PR_PLAIN,/^\s+/,null ,' \r\n\t\xA0' ]);if (options['httpdComments' ]){fallthroughStylePatterns.push([PR_PLAIN,/^.*\S.*#/i,null ]);}
fallthroughStylePatterns.push([PR_LITERAL,/^@[a-z_$][a-z_$@0-9]*|\bNULL\b/i,null ],[PR_LITERAL,CONFIG_OPTIONS,null ],[PR_TAG,/^\b(AuthnProviderAlias|AuthzProviderAlias|Directory|DirectoryMatch|Else |ElseIf|Files|FilesMatch|If |IfDefine|IfDirective|IfFile|IfModule|IfSection|IfVersion|Limit|LimitExcept|Location|LocationMatch|Macro|MDomainSet|Proxy|ProxyMatch|RequireAll|RequireAny|RequireNone|VirtualHost)\b/,null ],[PR_TYPE,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_(t|req|module)\b)/,null ],[PR_TAG,/^apr_[a-z_0-9]+|ap_[a-z_0-9]+/i,null ],[PR_PLAIN,/^[a-z_$][a-z_$@0-9\-]*/i,null ],[PR_LITERAL,new RegExp('^(?:'
+'0x[a-f0-9]+'
+'|[a-f0-9:]+:[a-f0-9:]+:[a-f0-9:]+:[a-f0-9:]+:[a-f0-9:]+:[a-f0-9:]+'
+'|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)'
+'(?:e[+\\-]?\\d+)?'
+')'
+'[a-z]*' ,'i' ),null ,'0123456789' ],[PR_PLAIN,/^\\[\s\S]?/,null ],[PR_PUNCTUATION,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]);return createSimpleLexer(shortcutStylePatterns,fallthroughStylePatterns);}
var decorateSource=sourceDecorator({'keywords' :ALL_KEYWORDS,'hashComments' :true ,'cStyleComments' :true ,'multiLineStrings' :true ,'regexLiterals' :true });function numberLines(node,opt_startLineNum,isPreformatted){var nocode=/(?:^|\s)nocode(?:\s|$)/;var lineBreak=/\r\n?|\n/;var document=node.ownerDocument;var li=document.createElement('li' );while (node.firstChild){li.appendChild(node.firstChild);}
var listItems=[li];function walk(node){switch (node.nodeType){case 1:if (nocode.test(node.className)){break ;}
if ('br' ===node.nodeName){breakAfter(node);if (node.parentNode){node.parentNode.removeChild(node);}}else {for (var child=node.firstChild;child;child=child.nextSibling){walk(child);}}
break ;case 3:case 4:if (isPreformatted){var text=node.nodeValue;var match=text.match(lineBreak);if (match){var firstLine=text.substring(0,match.index);node.nodeValue=firstLine;var tail=text.substring(match.index+match[0].length);if (tail){var parent=node.parentNode;parent.insertBefore(document.createTextNode(tail),node.nextSibling);}
breakAfter(node);if (!firstLine){node.parentNode.removeChild(node);}}}
break ;}}
function breakAfter(lineEndNode){while (!lineEndNode.nextSibling){lineEndNode=lineEndNode.parentNode;if (!lineEndNode){return ;}}
function breakLeftOf(limit,copy){var rightSide=copy?limit.cloneNode(false ):limit;var parent=limit.parentNode;if (parent){var parentClone=breakLeftOf(parent,1);var next=limit.nextSibling;parentClone.appendChild(rightSide);for (var sibling=next;sibling;sibling=next){next=sibling.nextSibling;parentClone.appendChild(sibling);}}
return rightSide;}
var copiedListItem=breakLeftOf(lineEndNode.nextSibling,0);for (var parent;(parent=copiedListItem.parentNode)&&parent.nodeType===1;){copiedListItem=parent;}
listItems.push(copiedListItem);}
for (var i=0;i<listItems.length;++i){walk(listItems[i]);}
if (opt_startLineNum===(opt_startLineNum|0)){listItems[0].setAttribute('value' ,opt_startLineNum);}
var ol=document.createElement('ol' );ol.className='linenums' ;var offset=Math.max(0,((opt_startLineNum-1))|0)||0;for (var i=0,n=listItems.length;i<n;++i){li=listItems[i];li.className='L' +((i+offset)%1);if (!li.firstChild){li.appendChild(document.createTextNode('\xA0' ));}
ol.appendChild(li);}
node.appendChild(ol);}
function recombineTagsAndDecorations(job){var isIE8OrEarlier=/\bMSIE\s(\d+)/.exec(navigator.userAgent);isIE8OrEarlier=isIE8OrEarlier&&+isIE8OrEarlier[1]<=8;var newlineRe=/\n/g;var source=job.sourceCode;var sourceLength=source.length;var sourceIndex=0;var spans=job.spans;var nSpans=spans.length;var spanIndex=0;var decorations=job.decorations;var nDecorations=decorations.length;var decorationIndex=0;decorations[nDecorations]=sourceLength;var decPos,i;for (i=decPos=0;i<nDecorations;){if (decorations[i]!==decorations[i+2]){decorations[decPos++]=decorations[i++];decorations[decPos++]=decorations[i++];}else {i+=2;}}
nDecorations=decPos;for (i=decPos=0;i<nDecorations;){var startPos=decorations[i];var startDec=decorations[i+1];var end=i+2;while (end+2<=nDecorations&&decorations[end+1]===startDec){end+=2;}
decorations[decPos++]=startPos;decorations[decPos++]=startDec;i=end;}
nDecorations=decorations.length=decPos;var sourceNode=job.sourceNode;var oldDisplay;if (sourceNode){oldDisplay=sourceNode.style.display;sourceNode.style.display='none' ;}
try {var decoration=null ;var X=0;while (spanIndex<nSpans){X=X+1;if (X>5000){break ;}
var spanStart=spans[spanIndex];var spanEnd=spans[spanIndex+2]||sourceLength;var decEnd=decorations[decorationIndex+2]||sourceLength;var end=Math.min(spanEnd,decEnd);var textNode=spans[spanIndex+1];var styledText;if (textNode.nodeType!==1&&(styledText=source.substring(sourceIndex,end))){if (isIE8OrEarlier){styledText=styledText.replace(newlineRe,'\r' );}
textNode.nodeValue=styledText;var document=textNode.ownerDocument;var span=document.createElement('span' );span.className=decorations[decorationIndex+1];var parentNode=textNode.parentNode;parentNode.replaceChild(span,textNode);span.appendChild(textNode);if (sourceIndex<spanEnd){spans[spanIndex+1]=textNode=document.createTextNode(source.substring(end,spanEnd));parentNode.insertBefore(textNode,span.nextSibling);}}
sourceIndex=end;if (sourceIndex>=spanEnd){spanIndex+=2;}
if (sourceIndex>=decEnd){decorationIndex+=2;}}}finally {if (sourceNode){sourceNode.style.display=oldDisplay;}}}
var langHandlerRegistry={};function registerLangHandler(handler,fileExtensions){for (var i=fileExtensions.length;--i>=0;){var ext=fileExtensions[i];if (!langHandlerRegistry.hasOwnProperty(ext)){langHandlerRegistry[ext]=handler;}else if (win['console' ]){console['warn' ]('cannot override language handler %s' ,ext);}}}
function langHandlerForExtension(extension,source){if (!(extension&&langHandlerRegistry.hasOwnProperty(extension))){extension=/^\s*</.test(source)?'default-markup' :'default-code' ;}
return langHandlerRegistry[extension];}
registerLangHandler(decorateSource,['default-code' ]);registerLangHandler(createSimpleLexer([],[[PR_PLAIN,/^[^<?]+/],[PR_DECLARATION,/^<!\w[^>]*(?:>|$)/],[PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],['lang-' ,/^<\?([\s\S]+?)(?:\?>|$)/],['lang-' ,/^<%([\s\S]+?)(?:%>|$)/],[PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],['lang-' ,/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],['lang-js' ,/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],['lang-css' ,/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],['lang-in.tag' ,/^(<\/?[a-z][^<>]*>)/i]]),['default-markup' ,'htm' ,'html' ,'mxml' ,'xhtml' ,'xml' ,'xsl' ]);registerLangHandler(createSimpleLexer([[PR_PLAIN,/^[\s]+/,null ,' \t\r\n' ],[PR_ATTRIB_VALUE,/^(?:\"[^\" ]*\"?|\'[^\']*\'?)/,null,'\" \'' ]],[[PR_TAG,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[PR_ATTRIB_NAME,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],['lang-uq.val' ,/^=\s*([^>\'\"\s]*(?:[^>\' \"\s\/]|\/(?=\s)))/],[PR_PUNCTUATION,/^[=<>\/]+/],['lang-js',/^on\w+\s*=\s*\" ([^\"]+)\" /i],['lang-js' ,/^on\w+\s*=\s*\'([^\' ]+)\'/i],[' lang-js',/^on\w+\s*=\s*([^\"\' >\s]+)/i],['lang-css' ,/^style\s*=\s*\"([^\" ]+)\"/i],['lang-css',/^style\s*=\s*\'([^\']+)\'/i],['lang-css',/^style\s*=\s*([^\" \'>\s]+)/i]]),[' in.tag']);registerLangHandler(createSimpleLexer([],[[PR_ATTRIB_VALUE,/^[\s\S]+/]]),[' uq.val']);registerLangHandler(sourceDecorator({' keywords':CPP_KEYWORDS,' hashComments':true,' cStyleComments':true,' types':C_TYPES}),[' c',' cc',' cpp',' cxx',' cyc',' m']);registerLangHandler(sourceDecorator({' keywords':PHP_KEYWORDS,' hashComments':false,' cStyleComments':true,' multiLineStrings':true,' regexLiterals':true}),[' php',' phtml',' inc']);registerLangHandler(sourceDecorator({' keywords':' null ,true ,false '}),[' json']);registerLangHandler(sourceDecorator({' keywords':CSHARP_KEYWORDS,' hashComments':true,' cStyleComments':true,' verbatimStrings':true,' types':C_TYPES}),[' cs']);registerLangHandler(sourceDecorator({' keywords':JAVA_KEYWORDS,' cStyleComments':true}),[' java']);registerLangHandler(sourceDecorator({' keywords':SH_KEYWORDS,' hashComments':true,' multiLineStrings':true}),[' bsh',' csh',' sh']);registerLangHandler(sourceDecorator({' keywords':PYTHON_KEYWORDS,' hashComments':true,' multiLineStrings':true,' tripleQuotedStrings':true}),[' cv',' py']);registerLangHandler(sourceDecorator({' keywords':PERL_KEYWORDS,' hashComments':true,' multiLineStrings':true,' regexLiterals':true}),[' perl',' pl',' pm']);registerLangHandler(sourceDecorator({' keywords':RUBY_KEYWORDS,' hashComments':true,' multiLineStrings':true,' regexLiterals':true}),[' rb']);registerLangHandler(sourceDecorator({' keywords':JSCRIPT_KEYWORDS,' cStyleComments':true,' regexLiterals':true}),[' js']);registerLangHandler(sourceDecorator({' keywords':COFFEE_KEYWORDS,' hashComments':3,' cStyleComments':true,' multilineStrings':true,' tripleQuotedStrings':true,' regexLiterals':true}),[' coffee']);registerLangHandler(createSimpleLexer([],[[PR_STRING,/^[\s\S]+/]]),[' regex']);registerLangHandler(sourceDecorator({' keywords':CONFIG_KEYWORDS,' literals':CONFIG_OPTIONS,' strings':CONFIG_ENVS,' hashComments':true,' cStyleComments':false,' multiLineStrings':false,' regexLiterals':false,' httpdComments':true}),[' config']);function applyDecorator(job){var opt_langExtension=job.langExtension;try{var sourceAndSpans=extractSourceSpans(job.sourceNode,job.pre);var source=sourceAndSpans.sourceCode;job.sourceCode=source;job.spans=sourceAndSpans.spans;job.basePos=0;langHandlerForExtension(opt_langExtension,source)(job);recombineTagsAndDecorations(job);}catch(e){if(win[' console']){console[' log'](e&&e[' stack']?e[' stack']:e);}}}
function prettyPrintOne(sourceCodeHtml,opt_langExtension,opt_numberLines){var container=document.createElement('pre' );container.innerHTML=sourceCodeHtml;if (opt_numberLines){numberLines(container,opt_numberLines,true );}
var job={langExtension:opt_langExtension,numberLines:opt_numberLines,sourceNode:container,pre:1};applyDecorator(job);return container.innerHTML;}
function prettyPrint(opt_whenDone){function byTagName(tn){return document.getElementsByTagName(tn);}
var codeSegments=[byTagName('pre' ),byTagName('code' ),byTagName('xmp' )];var elements=[];for (var i=0;i<codeSegments.length;++i){for (var j=0,n=codeSegments[i].length;j<n;++j){elements.push(codeSegments[i][j]);}}
codeSegments=null ;var clock=Date;if (!clock['now' ]){clock={'now' :function (){return +(new Date);}};}
var k=0;var prettyPrintingJob;var langExtensionRe=/\blang(?:uage)?-([\w.]+)(?!\S)/;var prettyPrintRe=/\bprettyprint\b/;var prettyPrintedRe=/\bprettyprinted\b/;var preformattedTagNameRe=/pre|xmp/i;var codeRe=/^code$/i;var preCodeXmpRe=/^(?:pre|code|xmp)$/i;function doWork(){var endTime=(win['PR_SHOULD_USE_CONTINUATION' ]?clock['now' ]()+250:Infinity);for (;k<elements.length&&clock['now' ]()<endTime;k++){var cs=elements[k];var className=cs.className;if (prettyPrintRe.test(className)&&!prettyPrintedRe.test(className)){var nested=false ;for (var p=cs.parentNode;p;p=p.parentNode){var tn=p.tagName;if (preCodeXmpRe.test(tn)&&p.className&&prettyPrintRe.test(p.className)){nested=true ;break ;}}
if (!nested){cs.className+=' prettyprinted' ;var langExtension=className.match(langExtensionRe);var wrapper;if (!langExtension&&(wrapper=childContentWrapper(cs))&&codeRe.test(wrapper.tagName)){langExtension=wrapper.className.match(langExtensionRe);}
if (langExtension){langExtension=langExtension[1];}
var preformatted;if (preformattedTagNameRe.test(cs.tagName)){preformatted=1;}else {var currentStyle=cs['currentStyle' ];var whitespace=(currentStyle?currentStyle['whiteSpace' ]:(document.defaultView&&document.defaultView.getComputedStyle)?document.defaultView.getComputedStyle(cs,null ).getPropertyValue('white-space' ):0);preformatted=whitespace&&'pre' ===whitespace.substring(0,3);}
var lineNums=cs.className.match(/\blinenums\b(?::(\d+))?/);lineNums=lineNums?lineNums[1]&&lineNums[1].length?+lineNums[1]:true :false ;if (lineNums){numberLines(cs,lineNums,preformatted);}
prettyPrintingJob={langExtension:langExtension,sourceNode:cs,numberLines:lineNums,pre:preformatted};applyDecorator(prettyPrintingJob);}}}
if (k<elements.length){setTimeout(doWork,250);}else if (opt_whenDone){opt_whenDone();}}
doWork();}
var PR=win['PR' ]={'createSimpleLexer' :createSimpleLexer,'registerLangHandler' :registerLangHandler,'sourceDecorator' :sourceDecorator,'PR_ATTRIB_NAME' :PR_ATTRIB_NAME,'PR_ATTRIB_VALUE' :PR_ATTRIB_VALUE,'PR_COMMENT' :PR_COMMENT,'PR_DECLARATION' :PR_DECLARATION,'PR_KEYWORD' :PR_KEYWORD,'PR_LITERAL' :PR_LITERAL,'PR_NOCODE' :PR_NOCODE,'PR_PLAIN' :PR_PLAIN,'PR_PUNCTUATION' :PR_PUNCTUATION,'PR_SOURCE' :PR_SOURCE,'PR_STRING' :PR_STRING,'PR_TAG' :PR_TAG,'PR_TYPE' :PR_TYPE,'prettyPrintOne' :win['prettyPrintOne' ]=prettyPrintOne,'prettyPrint' :win['prettyPrint' ]=prettyPrint};PR['registerLangHandler' ](PR['createSimpleLexer' ]([[PR['PR_PLAIN' ],/^[\t\n\r \xA0]+/,null ,'\t\n\r \xA0' ],[PR['PR_STRING' ],/^(?:\"(?:[^\" \\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])*(?:\'|$))/,null,'" \'' ]],[[PR['PR_COMMENT' ],/^--(?:\[(=*)\[[\s\S]*?(?:\]\1\]|$)|[^\r\n]*)/],[PR['PR_TYPE' ],/^nil|false |true /],[PR['PR_STRING' ],/^\[(=*)\[[\s\S]*?(?:\]\1\]|$)/],[PR['PR_KEYWORD' ],/^(?:and|break |do |else |elseif|end|for |function |if |in|local|not|or|repeat|require|return |then|until|while )\b/,null ],[PR['PR_LITERAL' ],/^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],[PR['PR_PLAIN' ],/^[a-z_]\w*/i],[PR['PR_PUNCTUATION' ],/^[^\w\t\n\r \xA0][^\w\t\n\r \xA0\"\'\-\+=]*/]]),['lua']);if(typeof define===" function "&&define['amd']){define(" google-code-prettify",[],function(){return PR;});}})();
Messung V0.5 C=99 H=82 G=90
¤ Dauer der Verarbeitung: 0.1 Sekunden
(vorverarbeitet)
¤
*© Formatika GbR, Deutschland