Page MenuHomePhabricator

Performance issues with SyntaxHighlight under HHVM
Closed, ResolvedPublic

Description

This is not a bug, SyntaxHighlight works just fine but we where optimizing our wiki to increase performance and found out during testing that SyntaxHighlight on its own adds +/- 0.5 seconds of loading time on a wiki page. The average load time for the Main Page with the "default content" after install goes from +/- 1.1 seconds to +/- 1.6 seconds when SyntaxHighlight is enabled. It probably depends on the hardware used. This was tested on a clean wiki with only SyntaxHighlight enabled. Tested with chromium with disabled browser cache. Is this normal behavior in combination with HHVM or is the SyntaxHighlight making HHVM unhappy with non "optimized" code? Has this anything to do with HHVM? Did not test it under Zend OPCache yet.

Tested on:

  • Ubuntu Server 14.04 LTS
  • Apache 2.4.7 (Ubuntu)
  • PHP 5.5.9-lubuntu4.5 (cli)
  • MW 1.24.1
  • MySQL 5.5.41
  • HHVM 3.5.0 (srv)
  • SyntaxHighlight 1.0.8.12 (49044 ad) 13:49, 5 January 2015

Event Timeline

Jongfeli raised the priority of this task from to Needs Triage.
Jongfeli updated the task description. (Show Details)
Jongfeli added a project: SyntaxHighlight.
Jongfeli subscribed.

Has this been brought up yet on its talk page or on a mailing list?
Is there any performance graph/chart available from the browser's development tools that provide more insight to compare?

ori triaged this task as High priority.
ori set Security to None.

It has not been brought op on the talk page as far as I know. I have access to our production wiki tomorrow and will do the same test and post the result here, when time permits. But when this is really happening it should be relatively easy to reproduce on any "test" wiki. It would be a good thing if somebody else can confirm the same behaviour.

Small update. What triggered me was the fact that HHVM is faster then any other caching solution we used before. We are running our wiki on a windows server so HHVM is not happening at the moment. To compare and build a case to switch to a Linux OS I compared the different solutions to show what an impact it can have. On a clean wiki HHVM is faster then XCache with object caching enabled but when SyntaxHighlight is enabled this changes dramatically. Posted the results from yesterday in my sandbox.

Added one more test on the same hardware comparing the same setups but with and without SytaxHighlight enabled on an otherwise "empty" wiki (see: sandbox). It is not a specific HHVM "problem", it affects all solutions except XCache with object caching enabled. It seems that the "cause" is javascript that takes a relatively long time to load (see below).

MW_1_24_1_Only_SyntaxHighlight_HHVM_3_5_0.png (525×956 px, 112 KB)

Without SyntaxHighlight:

var mediaWikiLoadStart=(new Date()).getTime();function isCompatible(ua){if(ua===undefined){ua=navigator.userAgent;}return!((ua.indexOf('MSIE')!==-1&&parseFloat(ua.split('MSIE')[1])<8)||(ua.indexOf('Firefox/')!==-1&&parseFloat(ua.split('Firefox/')[1])<3)||(ua.indexOf('Opera/')!==-1&&(ua.indexOf('Version/')===-1?parseFloat(ua.split('Opera/')[1])<10:parseFloat(ua.split('Version/')[1])<12))||(ua.indexOf('Opera ')!==-1&&parseFloat(ua.split(' Opera ')[1])<10)||ua.match(/BlackBerry[^\/]*\/[1-5]\./)||ua.match(/webOS\/1\.[0-4]/)||ua.match(/PlayStation/i)||ua.match(/SymbianOS|Series60/)||ua.match(/NetFront/)||ua.match(/Opera Mini/)||ua.match(/S40OviBrowser/)||(ua.match(/Glass/)&&ua.match(/Android/)));}var startUp=function(){mw.config=new mw.Map(true);mw.loader.addSource({"local":"/homewiki/load.php"});mw.loader.register([["site","1422296752",[],"site"],["noscript","1422296752",[],"noscript"],["filepage","1422296752"],["user.groups","1422296752",[],"user"],["user","1422296752",[],"user"],[
"user.cssprefs","1422296752",["mediawiki.user"],"private"],["user.options","1422296752",[],"private"],["user.tokens","1422296752",[],"private"],["mediawiki.language.data","1422296752",["mediawiki.language.init"]],["mediawiki.skinning.elements","1422296752"],["mediawiki.skinning.content","1422296752"],["mediawiki.skinning.interface","1422296752"],["mediawiki.skinning.content.parsoid","1422296752"],["mediawiki.skinning.content.externallinks","1422296752"],["jquery.accessKeyLabel","1422296756",["jquery.client","jquery.mwExtension"]],["jquery.appear","1422296752"],["jquery.arrowSteps","1422296752"],["jquery.async","1422296752"],["jquery.autoEllipsis","1422296752",["jquery.highlightText"]],["jquery.badge","1422296752",["mediawiki.language"]],["jquery.byteLength","1422296752"],["jquery.byteLimit","1422296752",["jquery.byteLength"]],["jquery.checkboxShiftClick","1422296752"],["jquery.chosen","1422296752"],["jquery.client","1422296752"],["jquery.color","1422296752",["jquery.colorUtil"]],[
"jquery.colorUtil","1422296752"],["jquery.confirmable","1422296752",["mediawiki.jqueryMsg"]],["jquery.cookie","1422296752"],["jquery.expandableField","1422296752"],["jquery.farbtastic","1422296752",["jquery.colorUtil"]],["jquery.footHovzer","1422296752"],["jquery.form","1422296752"],["jquery.fullscreen","1422296752"],["jquery.getAttrs","1422296752"],["jquery.hidpi","1422296752"],["jquery.highlightText","1422296752",["jquery.mwExtension"]],["jquery.hoverIntent","1422296752"],["jquery.json","1422296752"],["jquery.localize","1422296752"],["jquery.makeCollapsible","1422296756"],["jquery.mockjax","1422296752"],["jquery.mw-jump","1422296752"],["jquery.mwExtension","1422296752"],["jquery.placeholder","1422296752"],["jquery.qunit","1422296752"],["jquery.qunit.completenessTest","1422296752",["jquery.qunit"]],["jquery.spinner","1422296752"],["jquery.jStorage","1422296752",["json"]],["jquery.suggestions","1422296752",["jquery.highlightText"]],["jquery.tabIndex","1422296752"],["jquery.tablesorter"
,"1422296752",["jquery.mwExtension","mediawiki.language.months"]],["jquery.textSelection","1422296752",["jquery.client"]],["jquery.throttle-debounce","1422296752"],["jquery.validate","1422296752"],["jquery.xmldom","1422296752"],["jquery.tipsy","1422296752"],["jquery.ui.core","1422296752",[],"jquery.ui"],["jquery.ui.accordion","1422296752",["jquery.ui.core","jquery.ui.widget"],"jquery.ui"],["jquery.ui.autocomplete","1422296752",["jquery.ui.menu"],"jquery.ui"],["jquery.ui.button","1422296752",["jquery.ui.core","jquery.ui.widget"],"jquery.ui"],["jquery.ui.datepicker","1422296752",["jquery.ui.core"],"jquery.ui"],["jquery.ui.dialog","1422296752",["jquery.ui.button","jquery.ui.draggable","jquery.ui.position","jquery.ui.resizable"],"jquery.ui"],["jquery.ui.draggable","1422296752",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.droppable","1422296752",["jquery.ui.draggable"],"jquery.ui"],["jquery.ui.menu","1422296752",["jquery.ui.core","jquery.ui.position","jquery.ui.widget"],
"jquery.ui"],["jquery.ui.mouse","1422296752",["jquery.ui.widget"],"jquery.ui"],["jquery.ui.position","1422296752",[],"jquery.ui"],["jquery.ui.progressbar","1422296752",["jquery.ui.core","jquery.ui.widget"],"jquery.ui"],["jquery.ui.resizable","1422296752",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.selectable","1422296752",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.slider","1422296752",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.sortable","1422296752",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.spinner","1422296752",["jquery.ui.button"],"jquery.ui"],["jquery.ui.tabs","1422296752",["jquery.ui.core","jquery.ui.widget"],"jquery.ui"],["jquery.ui.tooltip","1422296752",["jquery.ui.core","jquery.ui.position","jquery.ui.widget"],"jquery.ui"],["jquery.ui.widget","1422296752",[],"jquery.ui"],["jquery.effects.core","1422296752",[],"jquery.ui"],["jquery.effects.blind","1422296752",["jquery.effects.core"],"jquery.ui"],[
"jquery.effects.bounce","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.clip","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.drop","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.explode","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.fade","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.fold","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.highlight","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.pulsate","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.scale","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.shake","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.slide","1422296752",["jquery.effects.core"],"jquery.ui"],["jquery.effects.transfer","1422296752",["jquery.effects.core"],"jquery.ui"],["json","1422296752",[],null,"local",
"return!!(window.JSON\u0026\u0026JSON.stringify\u0026\u0026JSON.parse);"],["moment","1422296752"],["mediawiki.api","1422296752",["mediawiki.util"]],["mediawiki.api.category","1422296752",["mediawiki.Title","mediawiki.api"]],["mediawiki.api.edit","1422296752",["mediawiki.Title","mediawiki.api","user.tokens"]],["mediawiki.api.login","1422296752",["mediawiki.api"]],["mediawiki.api.parse","1422296752",["mediawiki.api"]],["mediawiki.api.watch","1422296752",["mediawiki.api","user.tokens"]],["mediawiki.content.json","1422296752"],["mediawiki.debug","1422296752",["jquery.footHovzer","jquery.tipsy"]],["mediawiki.debug.init","1422296752",["mediawiki.debug"]],["mediawiki.feedback","1422296752",["jquery.ui.dialog","mediawiki.api.edit","mediawiki.jqueryMsg"]],["mediawiki.hidpi","1422296752",["jquery.hidpi"],null,"local","return'srcset'in new Image();"],["mediawiki.hlist","1422296752",["jquery.client"]],["mediawiki.htmlform","1422296765",["jquery.mwExtension"]],["mediawiki.icon","1422296752"],[
"mediawiki.inspect","1422296752",["jquery.byteLength","json"]],["mediawiki.notification","1422296752",["mediawiki.page.startup"]],["mediawiki.notify","1422296752"],["mediawiki.pager.tablePager","1422296752"],["mediawiki.searchSuggest","1422296756",["jquery.placeholder","jquery.suggestions","mediawiki.api"]],["mediawiki.Title","1422296752",["jquery.byteLength","mediawiki.util"]],["mediawiki.toc","1422296752",["jquery.cookie"]],["mediawiki.Uri","1422296752",["mediawiki.util"]],["mediawiki.user","1422296752",["jquery.cookie","mediawiki.api","user.options","user.tokens"]],["mediawiki.util","1422296752",["jquery.accessKeyLabel","mediawiki.notify"]],["mediawiki.cookie","1422296752",["jquery.cookie"]],["mediawiki.action.edit","1422296752",["jquery.byteLimit","jquery.textSelection","mediawiki.action.edit.styles","mediawiki.action.edit.toolbar"]],["mediawiki.action.edit.styles","1422296752"],["mediawiki.action.edit.toolbar","1422296752"],["mediawiki.action.edit.collapsibleFooter","1422296752",[
"jquery.cookie","jquery.makeCollapsible","mediawiki.icon"]],["mediawiki.action.edit.preview","1422296752",["jquery.form","jquery.spinner","mediawiki.action.history.diff"]],["mediawiki.action.history","1422296752",[],"mediawiki.action.history"],["mediawiki.action.history.diff","1422296752",[],"mediawiki.action.history"],["mediawiki.action.view.dblClickEdit","1422296752",["mediawiki.page.startup"]],["mediawiki.action.view.metadata","1422296752"],["mediawiki.action.view.postEdit","1422296758",["mediawiki.cookie","mediawiki.jqueryMsg"]],["mediawiki.action.view.redirect","1422296752",["jquery.client"]],["mediawiki.action.view.redirectPage","1422296752"],["mediawiki.action.view.rightClickEdit","1422296752"],["mediawiki.action.edit.editWarning","1422296760",["jquery.textSelection","mediawiki.jqueryMsg"]],["mediawiki.language","1422296758",["mediawiki.cldr","mediawiki.language.data"]],["mediawiki.cldr","1422296752",["mediawiki.libs.pluralruleparser"]],["mediawiki.libs.pluralruleparser",
"1422296752"],["mediawiki.language.init","1422296752"],["mediawiki.jqueryMsg","1422296752",["mediawiki.language","mediawiki.util"]],["mediawiki.language.months","1422296752",["mediawiki.language"]],["mediawiki.language.names","1422296752",["mediawiki.language.init"]],["mediawiki.libs.jpegmeta","1422296752"],["mediawiki.page.gallery","1422296752"],["mediawiki.page.ready","1422296752",["jquery.accessKeyLabel","jquery.checkboxShiftClick","jquery.makeCollapsible","jquery.mw-jump","jquery.placeholder"]],["mediawiki.page.startup","1422296752",["mediawiki.util"]],["mediawiki.page.patrol.ajax","1422296758",["jquery.spinner","mediawiki.Title","mediawiki.api","mediawiki.page.startup","user.tokens"]],["mediawiki.page.watch.ajax","1422296757",["mediawiki.api.watch","mediawiki.page.startup"]],["mediawiki.page.image.pagination","1422296752",["jquery.spinner","mediawiki.Uri"]],["mediawiki.special","1422296752"],["mediawiki.special.block","1422296752",["mediawiki.util"]],[
"mediawiki.special.changeemail","1422296752",["mediawiki.util"]],["mediawiki.special.changeslist","1422296752"],["mediawiki.special.changeslist.legend","1422296752"],["mediawiki.special.changeslist.legend.js","1422296752",["jquery.cookie","jquery.makeCollapsible"]],["mediawiki.special.changeslist.enhanced","1422296752"],["mediawiki.special.import","1422296752"],["mediawiki.special.movePage","1422296752",["jquery.byteLimit"]],["mediawiki.special.pageLanguage","1422296752"],["mediawiki.special.pagesWithProp","1422296752"],["mediawiki.special.preferences","1422296765",["mediawiki.language"]],["mediawiki.special.recentchanges","1422296752",["mediawiki.special"]],["mediawiki.special.search","1422296752"],["mediawiki.special.undelete","1422296752"],["mediawiki.special.upload","1422296752",["jquery.spinner","mediawiki.Title","mediawiki.api","mediawiki.libs.jpegmeta"]],["mediawiki.special.userlogin.common.styles","1422296752"],["mediawiki.special.userlogin.signup.styles","1422296752"],[
"mediawiki.special.userlogin.login.styles","1422296752"],["mediawiki.special.userlogin.common.js","1422296752"],["mediawiki.special.userlogin.signup.js","1422296752",["jquery.throttle-debounce","mediawiki.api","mediawiki.jqueryMsg"]],["mediawiki.special.unwatchedPages","1422296752",["mediawiki.Title","mediawiki.api.watch"]],["mediawiki.special.javaScriptTest","1422296752",["jquery.qunit"]],["mediawiki.special.version","1422296752"],["mediawiki.legacy.config","1422296752"],["mediawiki.legacy.ajax","1422296752",["mediawiki.legacy.wikibits"]],["mediawiki.legacy.commonPrint","1422296752"],["mediawiki.legacy.protect","1422296752",["jquery.byteLimit"]],["mediawiki.legacy.shared","1422296752"],["mediawiki.legacy.oldshared","1422296752"],["mediawiki.legacy.wikibits","1422296752",["mediawiki.util"]],["mediawiki.ui","1422296752"],["mediawiki.ui.checkbox","1422296752"],["mediawiki.ui.anchor","1422296752"],["mediawiki.ui.button","1422296752"],["mediawiki.ui.input","1422296752"],["es5-shim",
"1422296752",[],null,"local","return(function(){'use strict';return!this\u0026\u0026!!Function.prototype.bind;}());"],["oojs","1422296752",["es5-shim","json"]],["oojs-ui","1422296752",["oojs"]],["skins.vector.styles","1422296752"],["skins.vector.js","1422296752",["jquery.tabIndex","jquery.throttle-debounce"]]]);mw.config.set({"wgLoadScript":"/homewiki/load.php","debug":false,"skin":"vector","stylepath":"/homewiki/skins","wgUrlProtocols":"bitcoin\\:|ftp\\:\\/\\/|ftps\\:\\/\\/|geo\\:|git\\:\\/\\/|gopher\\:\\/\\/|http\\:\\/\\/|https\\:\\/\\/|irc\\:\\/\\/|ircs\\:\\/\\/|magnet\\:|mailto\\:|mms\\:\\/\\/|news\\:|nntp\\:\\/\\/|redis\\:\\/\\/|sftp\\:\\/\\/|sip\\:|sips\\:|sms\\:|ssh\\:\\/\\/|svn\\:\\/\\/|tel\\:|telnet\\:\\/\\/|urn\\:|worldwind\\:\\/\\/|xmpp\\:|\\/\\/","wgArticlePath":"/homewiki/index.php/$1","wgScriptPath":"/homewiki","wgScriptExtension":".php","wgScript":"/homewiki/index.php","wgSearchType":null,"wgVariantArticlePath":false,"wgActionPaths":{},"wgServer":"https://192.168.1.119",
"wgServerName":"192.168.1.119","wgUserLanguage":"en","wgContentLanguage":"en","wgVersion":"1.24.1","wgEnableAPI":true,"wgEnableWriteAPI":true,"wgMainPageTitle":"Main Page","wgFormattedNamespaces":{"-2":"Media","-1":"Special","0":"","1":"Talk","2":"User","3":"User talk","4":"Test","5":"Test talk","6":"File","7":"File talk","8":"MediaWiki","9":"MediaWiki talk","10":"Template","11":"Template talk","12":"Help","13":"Help talk","14":"Category","15":"Category talk"},"wgNamespaceIds":{"media":-2,"special":-1,"":0,"talk":1,"user":2,"user_talk":3,"test":4,"test_talk":5,"file":6,"file_talk":7,"mediawiki":8,"mediawiki_talk":9,"template":10,"template_talk":11,"help":12,"help_talk":13,"category":14,"category_talk":15,"image":6,"image_talk":7,"project":4,"project_talk":5},"wgContentNamespaces":[0],"wgSiteName":"Test","wgFileExtensions":["png","gif","jpg","jpeg"],"wgDBname":"test","wgFileCanRotate":true,"wgAvailableSkins":{"vector":"Vector","fallback":"Fallback"},"wgExtensionAssetsPath":
"/homewiki/extensions","wgCookiePrefix":"test","wgCookieDomain":"","wgCookiePath":"/","wgCookieExpiration":15552000,"wgResourceLoaderMaxQueryLength":-1,"wgCaseSensitiveNamespaces":[],"wgLegalTitleChars":" %!\"$\u0026'()*,\\-./0-9:;=?@A-Z\\\\\\^_`a-z~+\\u0080-\\uFFFF","wgResourceLoaderStorageVersion":1,"wgResourceLoaderStorageEnabled":false});};if(isCompatible()){document.write("\u003Cscript src=\"/homewiki/load.php?debug=false\u0026amp;lang=en\u0026amp;modules=jquery%2Cmediawiki\u0026amp;only=scripts\u0026amp;skin=vector\u0026amp;version=20150125T171606Z\"\u003E\u003C/script\u003E");};
/* cache key: test:resourceloader:filter:minify-js:7:680f3b0b72de62a638b68fb148e2d61a */

With SyntaxHighlight:

var mediaWikiLoadStart=(new Date()).getTime();function isCompatible(ua){if(ua===undefined){ua=navigator.userAgent;}return!((ua.indexOf('MSIE')!==-1&&parseFloat(ua.split('MSIE')[1])<8)||(ua.indexOf('Firefox/')!==-1&&parseFloat(ua.split('Firefox/')[1])<3)||(ua.indexOf('Opera/')!==-1&&(ua.indexOf('Version/')===-1?parseFloat(ua.split('Opera/')[1])<10:parseFloat(ua.split('Version/')[1])<12))||(ua.indexOf('Opera ')!==-1&&parseFloat(ua.split(' Opera ')[1])<10)||ua.match(/BlackBerry[^\/]*\/[1-5]\./)||ua.match(/webOS\/1\.[0-4]/)||ua.match(/PlayStation/i)||ua.match(/SymbianOS|Series60/)||ua.match(/NetFront/)||ua.match(/Opera Mini/)||ua.match(/S40OviBrowser/)||(ua.match(/Glass/)&&ua.match(/Android/)));}var startUp=function(){mw.config=new mw.Map(true);mw.loader.addSource({"local":"/homewiki/load.php"});mw.loader.register([["site","1422296824",[],"site"],["noscript","1422296824",[],"noscript"],["filepage","1422296824"],["user.groups","1422296824",[],"user"],["user","1422296824",[],"user"],[
"user.cssprefs","1422296824",["mediawiki.user"],"private"],["user.options","1422296824",[],"private"],["user.tokens","1422296824",[],"private"],["mediawiki.language.data","1422296824",["mediawiki.language.init"]],["mediawiki.skinning.elements","1422296824"],["mediawiki.skinning.content","1422296824"],["mediawiki.skinning.interface","1422296824"],["mediawiki.skinning.content.parsoid","1422296824"],["mediawiki.skinning.content.externallinks","1422296824"],["jquery.accessKeyLabel","1422296906",["jquery.client","jquery.mwExtension"]],["jquery.appear","1422296824"],["jquery.arrowSteps","1422296824"],["jquery.async","1422296824"],["jquery.autoEllipsis","1422296824",["jquery.highlightText"]],["jquery.badge","1422296824",["mediawiki.language"]],["jquery.byteLength","1422296824"],["jquery.byteLimit","1422296824",["jquery.byteLength"]],["jquery.checkboxShiftClick","1422296824"],["jquery.chosen","1422296824"],["jquery.client","1422296824"],["jquery.color","1422296824",["jquery.colorUtil"]],[
"jquery.colorUtil","1422296824"],["jquery.confirmable","1422296824",["mediawiki.jqueryMsg"]],["jquery.cookie","1422296824"],["jquery.expandableField","1422296824"],["jquery.farbtastic","1422296824",["jquery.colorUtil"]],["jquery.footHovzer","1422296824"],["jquery.form","1422296824"],["jquery.fullscreen","1422296824"],["jquery.getAttrs","1422296824"],["jquery.hidpi","1422296824"],["jquery.highlightText","1422296824",["jquery.mwExtension"]],["jquery.hoverIntent","1422296824"],["jquery.json","1422296824"],["jquery.localize","1422296824"],["jquery.makeCollapsible","1422296906"],["jquery.mockjax","1422296824"],["jquery.mw-jump","1422296824"],["jquery.mwExtension","1422296824"],["jquery.placeholder","1422296824"],["jquery.qunit","1422296824"],["jquery.qunit.completenessTest","1422296824",["jquery.qunit"]],["jquery.spinner","1422296824"],["jquery.jStorage","1422296824",["json"]],["jquery.suggestions","1422296824",["jquery.highlightText"]],["jquery.tabIndex","1422296824"],["jquery.tablesorter"
,"1422296824",["jquery.mwExtension","mediawiki.language.months"]],["jquery.textSelection","1422296824",["jquery.client"]],["jquery.throttle-debounce","1422296824"],["jquery.validate","1422296824"],["jquery.xmldom","1422296824"],["jquery.tipsy","1422296824"],["jquery.ui.core","1422296824",[],"jquery.ui"],["jquery.ui.accordion","1422296824",["jquery.ui.core","jquery.ui.widget"],"jquery.ui"],["jquery.ui.autocomplete","1422296824",["jquery.ui.menu"],"jquery.ui"],["jquery.ui.button","1422296824",["jquery.ui.core","jquery.ui.widget"],"jquery.ui"],["jquery.ui.datepicker","1422296824",["jquery.ui.core"],"jquery.ui"],["jquery.ui.dialog","1422296824",["jquery.ui.button","jquery.ui.draggable","jquery.ui.position","jquery.ui.resizable"],"jquery.ui"],["jquery.ui.draggable","1422296824",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.droppable","1422296824",["jquery.ui.draggable"],"jquery.ui"],["jquery.ui.menu","1422296824",["jquery.ui.core","jquery.ui.position","jquery.ui.widget"],
"jquery.ui"],["jquery.ui.mouse","1422296824",["jquery.ui.widget"],"jquery.ui"],["jquery.ui.position","1422296824",[],"jquery.ui"],["jquery.ui.progressbar","1422296824",["jquery.ui.core","jquery.ui.widget"],"jquery.ui"],["jquery.ui.resizable","1422296824",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.selectable","1422296824",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.slider","1422296824",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.sortable","1422296824",["jquery.ui.core","jquery.ui.mouse"],"jquery.ui"],["jquery.ui.spinner","1422296824",["jquery.ui.button"],"jquery.ui"],["jquery.ui.tabs","1422296824",["jquery.ui.core","jquery.ui.widget"],"jquery.ui"],["jquery.ui.tooltip","1422296824",["jquery.ui.core","jquery.ui.position","jquery.ui.widget"],"jquery.ui"],["jquery.ui.widget","1422296824",[],"jquery.ui"],["jquery.effects.core","1422296824",[],"jquery.ui"],["jquery.effects.blind","1422296824",["jquery.effects.core"],"jquery.ui"],[
"jquery.effects.bounce","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.clip","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.drop","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.explode","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.fade","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.fold","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.highlight","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.pulsate","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.scale","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.shake","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.slide","1422296824",["jquery.effects.core"],"jquery.ui"],["jquery.effects.transfer","1422296824",["jquery.effects.core"],"jquery.ui"],["json","1422296824",[],null,"local",
"return!!(window.JSON\u0026\u0026JSON.stringify\u0026\u0026JSON.parse);"],["moment","1422296824"],["mediawiki.api","1422296824",["mediawiki.util"]],["mediawiki.api.category","1422296824",["mediawiki.Title","mediawiki.api"]],["mediawiki.api.edit","1422296824",["mediawiki.Title","mediawiki.api","user.tokens"]],["mediawiki.api.login","1422296824",["mediawiki.api"]],["mediawiki.api.parse","1422296824",["mediawiki.api"]],["mediawiki.api.watch","1422296824",["mediawiki.api","user.tokens"]],["mediawiki.content.json","1422296824"],["mediawiki.debug","1422296824",["jquery.footHovzer","jquery.tipsy"]],["mediawiki.debug.init","1422296824",["mediawiki.debug"]],["mediawiki.feedback","1422296824",["jquery.ui.dialog","mediawiki.api.edit","mediawiki.jqueryMsg"]],["mediawiki.hidpi","1422296824",["jquery.hidpi"],null,"local","return'srcset'in new Image();"],["mediawiki.hlist","1422296824",["jquery.client"]],["mediawiki.htmlform","1422296824",["jquery.mwExtension"]],["mediawiki.icon","1422296824"],[
"mediawiki.inspect","1422296824",["jquery.byteLength","json"]],["mediawiki.notification","1422296824",["mediawiki.page.startup"]],["mediawiki.notify","1422296824"],["mediawiki.pager.tablePager","1422296824"],["mediawiki.searchSuggest","1422296906",["jquery.placeholder","jquery.suggestions","mediawiki.api"]],["mediawiki.Title","1422296824",["jquery.byteLength","mediawiki.util"]],["mediawiki.toc","1422296824",["jquery.cookie"]],["mediawiki.Uri","1422296824",["mediawiki.util"]],["mediawiki.user","1422296824",["jquery.cookie","mediawiki.api","user.options","user.tokens"]],["mediawiki.util","1422296824",["jquery.accessKeyLabel","mediawiki.notify"]],["mediawiki.cookie","1422296824",["jquery.cookie"]],["mediawiki.action.edit","1422296824",["jquery.byteLimit","jquery.textSelection","mediawiki.action.edit.styles","mediawiki.action.edit.toolbar"]],["mediawiki.action.edit.styles","1422296824"],["mediawiki.action.edit.toolbar","1422296824"],["mediawiki.action.edit.collapsibleFooter","1422296824",[
"jquery.cookie","jquery.makeCollapsible","mediawiki.icon"]],["mediawiki.action.edit.preview","1422296824",["jquery.form","jquery.spinner","mediawiki.action.history.diff"]],["mediawiki.action.history","1422296824",[],"mediawiki.action.history"],["mediawiki.action.history.diff","1422296824",[],"mediawiki.action.history"],["mediawiki.action.view.dblClickEdit","1422296824",["mediawiki.page.startup"]],["mediawiki.action.view.metadata","1422296824"],["mediawiki.action.view.postEdit","1422296824",["mediawiki.cookie","mediawiki.jqueryMsg"]],["mediawiki.action.view.redirect","1422296824",["jquery.client"]],["mediawiki.action.view.redirectPage","1422296824"],["mediawiki.action.view.rightClickEdit","1422296824"],["mediawiki.action.edit.editWarning","1422296824",["jquery.textSelection","mediawiki.jqueryMsg"]],["mediawiki.language","1422296824",["mediawiki.cldr","mediawiki.language.data"]],["mediawiki.cldr","1422296824",["mediawiki.libs.pluralruleparser"]],["mediawiki.libs.pluralruleparser",
"1422296824"],["mediawiki.language.init","1422296824"],["mediawiki.jqueryMsg","1422296824",["mediawiki.language","mediawiki.util"]],["mediawiki.language.months","1422296824",["mediawiki.language"]],["mediawiki.language.names","1422296824",["mediawiki.language.init"]],["mediawiki.libs.jpegmeta","1422296824"],["mediawiki.page.gallery","1422296824"],["mediawiki.page.ready","1422296824",["jquery.accessKeyLabel","jquery.checkboxShiftClick","jquery.makeCollapsible","jquery.mw-jump","jquery.placeholder"]],["mediawiki.page.startup","1422296824",["mediawiki.util"]],["mediawiki.page.patrol.ajax","1422296824",["jquery.spinner","mediawiki.Title","mediawiki.api","mediawiki.page.startup","user.tokens"]],["mediawiki.page.watch.ajax","1422296906",["mediawiki.api.watch","mediawiki.page.startup"]],["mediawiki.page.image.pagination","1422296824",["jquery.spinner","mediawiki.Uri"]],["mediawiki.special","1422296824"],["mediawiki.special.block","1422296824",["mediawiki.util"]],[
"mediawiki.special.changeemail","1422296824",["mediawiki.util"]],["mediawiki.special.changeslist","1422296824"],["mediawiki.special.changeslist.legend","1422296824"],["mediawiki.special.changeslist.legend.js","1422296824",["jquery.cookie","jquery.makeCollapsible"]],["mediawiki.special.changeslist.enhanced","1422296824"],["mediawiki.special.import","1422296824"],["mediawiki.special.movePage","1422296824",["jquery.byteLimit"]],["mediawiki.special.pageLanguage","1422296824"],["mediawiki.special.pagesWithProp","1422296824"],["mediawiki.special.preferences","1422296824",["mediawiki.language"]],["mediawiki.special.recentchanges","1422296824",["mediawiki.special"]],["mediawiki.special.search","1422296824"],["mediawiki.special.undelete","1422296824"],["mediawiki.special.upload","1422296824",["jquery.spinner","mediawiki.Title","mediawiki.api","mediawiki.libs.jpegmeta"]],["mediawiki.special.userlogin.common.styles","1422296824"],["mediawiki.special.userlogin.signup.styles","1422296824"],[
"mediawiki.special.userlogin.login.styles","1422296824"],["mediawiki.special.userlogin.common.js","1422296824"],["mediawiki.special.userlogin.signup.js","1422296824",["jquery.throttle-debounce","mediawiki.api","mediawiki.jqueryMsg"]],["mediawiki.special.unwatchedPages","1422296824",["mediawiki.Title","mediawiki.api.watch"]],["mediawiki.special.javaScriptTest","1422296824",["jquery.qunit"]],["mediawiki.special.version","1422296824"],["mediawiki.legacy.config","1422296824"],["mediawiki.legacy.ajax","1422296824",["mediawiki.legacy.wikibits"]],["mediawiki.legacy.commonPrint","1422296824"],["mediawiki.legacy.protect","1422296824",["jquery.byteLimit"]],["mediawiki.legacy.shared","1422296824"],["mediawiki.legacy.oldshared","1422296824"],["mediawiki.legacy.wikibits","1422296824",["mediawiki.util"]],["mediawiki.ui","1422296824"],["mediawiki.ui.checkbox","1422296824"],["mediawiki.ui.anchor","1422296824"],["mediawiki.ui.button","1422296824"],["mediawiki.ui.input","1422296824"],["es5-shim",
"1422296824",[],null,"local","return(function(){'use strict';return!this\u0026\u0026!!Function.prototype.bind;}());"],["oojs","1422296824",["es5-shim","json"]],["oojs-ui","1422296824",["oojs"]],["ext.geshi.language.4cs","1422296824"],["ext.geshi.language.6502acme","1422296824"],["ext.geshi.language.6502kickass","1422296824"],["ext.geshi.language.6502tasm","1422296824"],["ext.geshi.language.68000devpac","1422296824"],["ext.geshi.language.abap","1422296824"],["ext.geshi.language.actionscript","1422296824"],["ext.geshi.language.actionscript3","1422296824"],["ext.geshi.language.ada","1422296824"],["ext.geshi.language.algol68","1422296824"],["ext.geshi.language.apache","1422296824"],["ext.geshi.language.applescript","1422296824"],["ext.geshi.language.arm","1422296824"],["ext.geshi.language.asm","1422296824"],["ext.geshi.language.asp","1422296824"],["ext.geshi.language.asymptote","1422296824"],["ext.geshi.language.autoconf","1422296824"],["ext.geshi.language.autohotkey","1422296824"],[
"ext.geshi.language.autoit","1422296824"],["ext.geshi.language.avisynth","1422296824"],["ext.geshi.language.awk","1422296824"],["ext.geshi.language.bascomavr","1422296824"],["ext.geshi.language.bash","1422296824"],["ext.geshi.language.basic4gl","1422296824"],["ext.geshi.language.bf","1422296824"],["ext.geshi.language.bibtex","1422296824"],["ext.geshi.language.blitzbasic","1422296824"],["ext.geshi.language.bnf","1422296824"],["ext.geshi.language.boo","1422296824"],["ext.geshi.language.c","1422296824"],["ext.geshi.language.caddcl","1422296824"],["ext.geshi.language.cadlisp","1422296824"],["ext.geshi.language.cfdg","1422296824"],["ext.geshi.language.cfm","1422296824"],["ext.geshi.language.chaiscript","1422296824"],["ext.geshi.language.cil","1422296824"],["ext.geshi.language.clojure","1422296824"],["ext.geshi.language.cmake","1422296824"],["ext.geshi.language.cobol","1422296824"],["ext.geshi.language.coffeescript","1422296824"],["ext.geshi.language.cpp","1422296824"],[
"ext.geshi.language.csharp","1422296824"],["ext.geshi.language.css","1422296824"],["ext.geshi.language.cuesheet","1422296824"],["ext.geshi.language.d","1422296824"],["ext.geshi.language.dcl","1422296824"],["ext.geshi.language.dcpu16","1422296824"],["ext.geshi.language.dcs","1422296824"],["ext.geshi.language.delphi","1422296824"],["ext.geshi.language.diff","1422296824"],["ext.geshi.language.div","1422296824"],["ext.geshi.language.dos","1422296824"],["ext.geshi.language.dot","1422296824"],["ext.geshi.language.e","1422296824"],["ext.geshi.language.ecmascript","1422296824"],["ext.geshi.language.eiffel","1422296824"],["ext.geshi.language.email","1422296824"],["ext.geshi.language.epc","1422296824"],["ext.geshi.language.erlang","1422296824"],["ext.geshi.language.euphoria","1422296824"],["ext.geshi.language.f1","1422296824"],["ext.geshi.language.falcon","1422296824"],["ext.geshi.language.fo","1422296824"],["ext.geshi.language.fortran","1422296824"],["ext.geshi.language.freebasic","1422296824"]
,["ext.geshi.language.freeswitch","1422296824"],["ext.geshi.language.fsharp","1422296824"],["ext.geshi.language.gambas","1422296824"],["ext.geshi.language.gdb","1422296824"],["ext.geshi.language.genero","1422296824"],["ext.geshi.language.genie","1422296824"],["ext.geshi.language.gettext","1422296824"],["ext.geshi.language.glsl","1422296824"],["ext.geshi.language.gml","1422296824"],["ext.geshi.language.gnuplot","1422296824"],["ext.geshi.language.go","1422296824"],["ext.geshi.language.groovy","1422296824"],["ext.geshi.language.gwbasic","1422296824"],["ext.geshi.language.haskell","1422296824"],["ext.geshi.language.haxe","1422296824"],["ext.geshi.language.hicest","1422296824"],["ext.geshi.language.hq9plus","1422296824"],["ext.geshi.language.html4strict","1422296824"],["ext.geshi.language.html5","1422296824"],["ext.geshi.language.icon","1422296824"],["ext.geshi.language.idl","1422296824"],["ext.geshi.language.ini","1422296824"],["ext.geshi.language.inno","1422296824"],[
"ext.geshi.language.intercal","1422296824"],["ext.geshi.language.io","1422296824"],["ext.geshi.language.j","1422296824"],["ext.geshi.language.java","1422296824"],["ext.geshi.language.java5","1422296824"],["ext.geshi.language.javascript","1422296824"],["ext.geshi.language.jquery","1422296824"],["ext.geshi.language.kixtart","1422296824"],["ext.geshi.language.klonec","1422296824"],["ext.geshi.language.klonecpp","1422296824"],["ext.geshi.language.latex","1422296824"],["ext.geshi.language.lb","1422296824"],["ext.geshi.language.ldif","1422296824"],["ext.geshi.language.lisp","1422296824"],["ext.geshi.language.llvm","1422296824"],["ext.geshi.language.locobasic","1422296824"],["ext.geshi.language.logtalk","1422296824"],["ext.geshi.language.lolcode","1422296824"],["ext.geshi.language.lotusformulas","1422296824"],["ext.geshi.language.lotusscript","1422296824"],["ext.geshi.language.lscript","1422296824"],["ext.geshi.language.lsl2","1422296824"],["ext.geshi.language.lua","1422296824"],[
"ext.geshi.language.m68k","1422296824"],["ext.geshi.language.magiksf","1422296824"],["ext.geshi.language.make","1422296824"],["ext.geshi.language.mapbasic","1422296824"],["ext.geshi.language.matlab","1422296824"],["ext.geshi.language.mirc","1422296824"],["ext.geshi.language.mmix","1422296824"],["ext.geshi.language.modula2","1422296824"],["ext.geshi.language.modula3","1422296824"],["ext.geshi.language.mpasm","1422296824"],["ext.geshi.language.mxml","1422296824"],["ext.geshi.language.mysql","1422296824"],["ext.geshi.language.nagios","1422296824"],["ext.geshi.language.netrexx","1422296824"],["ext.geshi.language.newlisp","1422296824"],["ext.geshi.language.nsis","1422296824"],["ext.geshi.language.oberon2","1422296824"],["ext.geshi.language.objc","1422296824"],["ext.geshi.language.objeck","1422296824"],["ext.geshi.language.ocaml","1422296824"],["ext.geshi.language.octave","1422296824"],["ext.geshi.language.oobas","1422296824"],["ext.geshi.language.oorexx","1422296824"],[
"ext.geshi.language.oracle11","1422296824"],["ext.geshi.language.oracle8","1422296824"],["ext.geshi.language.oxygene","1422296824"],["ext.geshi.language.oz","1422296824"],["ext.geshi.language.parasail","1422296824"],["ext.geshi.language.parigp","1422296824"],["ext.geshi.language.pascal","1422296824"],["ext.geshi.language.pcre","1422296824"],["ext.geshi.language.per","1422296824"],["ext.geshi.language.perl","1422296824"],["ext.geshi.language.perl6","1422296824"],["ext.geshi.language.pf","1422296824"],["ext.geshi.language.php","1422296824"],["ext.geshi.language.pic16","1422296824"],["ext.geshi.language.pike","1422296824"],["ext.geshi.language.pixelbender","1422296824"],["ext.geshi.language.pli","1422296824"],["ext.geshi.language.plsql","1422296824"],["ext.geshi.language.postgresql","1422296824"],["ext.geshi.language.povray","1422296824"],["ext.geshi.language.powerbuilder","1422296824"],["ext.geshi.language.powershell","1422296824"],["ext.geshi.language.proftpd","1422296824"],[
"ext.geshi.language.progress","1422296824"],["ext.geshi.language.prolog","1422296824"],["ext.geshi.language.properties","1422296824"],["ext.geshi.language.providex","1422296824"],["ext.geshi.language.purebasic","1422296824"],["ext.geshi.language.pycon","1422296824"],["ext.geshi.language.pys60","1422296824"],["ext.geshi.language.python","1422296824"],["ext.geshi.language.q","1422296824"],["ext.geshi.language.qbasic","1422296824"],["ext.geshi.language.rails","1422296824"],["ext.geshi.language.rebol","1422296824"],["ext.geshi.language.reg","1422296824"],["ext.geshi.language.rexx","1422296824"],["ext.geshi.language.robots","1422296824"],["ext.geshi.language.rpmspec","1422296824"],["ext.geshi.language.rsplus","1422296824"],["ext.geshi.language.ruby","1422296824"],["ext.geshi.language.sas","1422296824"],["ext.geshi.language.scala","1422296824"],["ext.geshi.language.scheme","1422296824"],["ext.geshi.language.scilab","1422296824"],["ext.geshi.language.sdlbasic","1422296824"],[
"ext.geshi.language.smalltalk","1422296824"],["ext.geshi.language.smarty","1422296824"],["ext.geshi.language.spark","1422296824"],["ext.geshi.language.sparql","1422296824"],["ext.geshi.language.sql","1422296824"],["ext.geshi.language.stonescript","1422296824"],["ext.geshi.language.systemverilog","1422296824"],["ext.geshi.language.tcl","1422296824"],["ext.geshi.language.teraterm","1422296824"],["ext.geshi.language.text","1422296824"],["ext.geshi.language.thinbasic","1422296824"],["ext.geshi.language.tsql","1422296824"],["ext.geshi.language.typoscript","1422296824"],["ext.geshi.language.unicon","1422296824"],["ext.geshi.language.upc","1422296824"],["ext.geshi.language.urbi","1422296824"],["ext.geshi.language.uscript","1422296824"],["ext.geshi.language.vala","1422296824"],["ext.geshi.language.vb","1422296824"],["ext.geshi.language.vbnet","1422296824"],["ext.geshi.language.vedit","1422296824"],["ext.geshi.language.verilog","1422296824"],["ext.geshi.language.vhdl","1422296824"],[
"ext.geshi.language.vim","1422296824"],["ext.geshi.language.visualfoxpro","1422296824"],["ext.geshi.language.visualprolog","1422296824"],["ext.geshi.language.whitespace","1422296824"],["ext.geshi.language.whois","1422296824"],["ext.geshi.language.winbatch","1422296824"],["ext.geshi.language.xbasic","1422296824"],["ext.geshi.language.xml","1422296824"],["ext.geshi.language.xpp","1422296824"],["ext.geshi.language.yaml","1422296824"],["ext.geshi.language.z80","1422296824"],["ext.geshi.language.zxbasic","1422296824"],["skins.vector.styles","1422296824"],["skins.vector.js","1422296824",["jquery.tabIndex","jquery.throttle-debounce"]],["ext.geshi.local","1422296824"]]);mw.config.set({"wgLoadScript":"/homewiki/load.php","debug":false,"skin":"vector","stylepath":"/homewiki/skins","wgUrlProtocols":
"bitcoin\\:|ftp\\:\\/\\/|ftps\\:\\/\\/|geo\\:|git\\:\\/\\/|gopher\\:\\/\\/|http\\:\\/\\/|https\\:\\/\\/|irc\\:\\/\\/|ircs\\:\\/\\/|magnet\\:|mailto\\:|mms\\:\\/\\/|news\\:|nntp\\:\\/\\/|redis\\:\\/\\/|sftp\\:\\/\\/|sip\\:|sips\\:|sms\\:|ssh\\:\\/\\/|svn\\:\\/\\/|tel\\:|telnet\\:\\/\\/|urn\\:|worldwind\\:\\/\\/|xmpp\\:|\\/\\/","wgArticlePath":"/homewiki/index.php/$1","wgScriptPath":"/homewiki","wgScriptExtension":".php","wgScript":"/homewiki/index.php","wgSearchType":null,"wgVariantArticlePath":false,"wgActionPaths":{},"wgServer":"https://192.168.1.119","wgServerName":"192.168.1.119","wgUserLanguage":"en","wgContentLanguage":"en","wgVersion":"1.24.1","wgEnableAPI":true,"wgEnableWriteAPI":true,"wgMainPageTitle":"Main Page","wgFormattedNamespaces":{"-2":"Media","-1":"Special","0":"","1":"Talk","2":"User","3":"User talk","4":"Test","5":"Test talk","6":"File","7":"File talk","8":"MediaWiki","9":"MediaWiki talk","10":"Template","11":"Template talk","12":"Help","13":"Help talk","14":
"Category","15":"Category talk"},"wgNamespaceIds":{"media":-2,"special":-1,"":0,"talk":1,"user":2,"user_talk":3,"test":4,"test_talk":5,"file":6,"file_talk":7,"mediawiki":8,"mediawiki_talk":9,"template":10,"template_talk":11,"help":12,"help_talk":13,"category":14,"category_talk":15,"image":6,"image_talk":7,"project":4,"project_talk":5},"wgContentNamespaces":[0],"wgSiteName":"Test","wgFileExtensions":["png","gif","jpg","jpeg"],"wgDBname":"test","wgFileCanRotate":true,"wgAvailableSkins":{"vector":"Vector","fallback":"Fallback"},"wgExtensionAssetsPath":"/homewiki/extensions","wgCookiePrefix":"test","wgCookieDomain":"","wgCookiePath":"/","wgCookieExpiration":15552000,"wgResourceLoaderMaxQueryLength":-1,"wgCaseSensitiveNamespaces":[],"wgLegalTitleChars":" %!\"$\u0026'()*,\\-./0-9:;=?@A-Z\\\\\\^_`a-z~+\\u0080-\\uFFFF","wgResourceLoaderStorageVersion":1,"wgResourceLoaderStorageEnabled":false});};if(isCompatible()){document.write(
"\u003Cscript src=\"/homewiki/load.php?debug=false\u0026amp;lang=en\u0026amp;modules=jquery%2Cmediawiki\u0026amp;only=scripts\u0026amp;skin=vector\u0026amp;version=20150125T171606Z\"\u003E\u003C/script\u003E");};
/* cache key: test:resourceloader:filter:minify-js:7:187e47afca8febc9ed3f0335e8ea2e1f */

SyntaxHighlight version from April 2014 works like expected, it has basically no impact on performance. Below that version compared to Master without any caching enabled. It adds +/- 600 ms to loading times.

MW-1.24.1_No_Caching_SyntaxHighlight_April_2014.png (1×1 px, 185 KB)

MW-1.24.1_No_Caching_SyntaxHighlight_MASTER.png (1×1 px, 199 KB)

@ori: Do you know if anyone is investigating / anybody should be assigned to this task?

@Jongfeli: Are you OK with using the version from April 2014 for now? I'll prioritize this accordingly.

@ori yes I am OK with that, no problem. The problem was that the latest version was in the tar download for MW 1.24.1 but that does not seem to be the case anymore.