From 8501c9bb1baf6cf9341130b41dedcb5866c8a6a3 Mon Sep 17 00:00:00 2001 From: David Edmondson Date: Sat, 4 Sep 2021 17:45:30 -0700 Subject: [PATCH 1/2] Revert swc change due to prod crash --- dist/engine.bundle.js | 4 +- dist/engineStyle.bundle.js | 2 +- dist/vendor.bundle.js | 75 +++++++++++++++++++++++++------------- webpack.config.js | 22 +---------- 4 files changed, 55 insertions(+), 48 deletions(-) diff --git a/dist/engine.bundle.js b/dist/engine.bundle.js index 5eb0e7f4f..fe07c4742 100644 --- a/dist/engine.bundle.js +++ b/dist/engine.bundle.js @@ -1,4 +1,4 @@ -!function(e){function t(t){for(var a,o,s=t[0],c=t[1],l=t[2],m=0,h=[];m
In this game you control a set of Nodes and use them to try and defeat an enemy. Your Nodes are colored blue, while the enemy's are red. There are also other nodes on the map colored gray that initially belong to neither you nor the enemy. The goal of the game is to capture all of the enemy's Database nodes within the time limit. If you fail to do this, you will lose.

Each Node has three stats: Attack, Defense, and HP. There are five different actions that a Node can take:

Attack - Targets an enemy Node and lowers its HP. The effectiveness is determined by the owner's Attack, the Player's hacking level, and the enemy's defense.

Scan - Targets an enemy Node and lowers its Defense. The effectiveness is determined by the owner's Attack, the Player's hacking level, and the enemy's defense.

Weaken - Targets an enemy Node and lowers its Attack. The effectiveness is determined by the owner's Attack, the Player's hacking level, and the enemy's defense.

Fortify - Raises the Node's Defense. The effectiveness is determined by your hacking level.

Overflow - Raises the Node's Attack but lowers its Defense. The effectiveness is determined by your hacking level.

Note that when determining the effectiveness of the above actions, the TOTAL Attack or Defense of the team is used, not just the Attack/Defense of the individual Node that is performing the action.

To capture a Node, you must lower its HP down to 0.

There are six different types of Nodes:

CPU Core - These are your main Nodes that are used to perform actions. Capable of performing every action

Firewall - Nodes with high defense. These Nodes can 'Fortify'

Database - A special type of Node. The player's objective is to conquer all of the enemy's Database Nodes within the time limit. These Nodes cannot perform any actions

Spam - Conquering one of these Nodes will slow the enemy's trace, giving the player additional time to complete the mission. These Nodes cannot perform any actions

Transfer - Conquering one of these nodes will increase the Attack of all of your CPU Cores by a small fixed percentage. These Nodes are capable of performing every action except the 'Attack' action

Shield - Nodes with high defense. These Nodes can 'Fortify'

To assign an action to a Node, you must first select one of your Nodes. This can be done by simply clicking on it. Double-clicking a node will select all of your Nodes of the same type (e.g. select all CPU Core Nodes or all Transfer Nodes). Note that only Nodes that can perform actions (CPU Core, Transfer, Shield, Firewall) can be selected. Selected Nodes will be denoted with a white highlight. After selecting a Node or multiple Nodes, select its action using the Action Buttons near the top of the screen. Every action also has a corresponding keyboard shortcut.

For certain actions such as attacking, scanning, and weakening, the Node performing the action must have a target. To target another node, simply click-and-drag from the 'source' Node to a target. A Node can only have one target, and you can target any Node that is adjacent to one of your Nodes (immediately above, below, or to the side. NOT diagonal). Furthermore, only CPU Cores and Transfer Nodes can target, since they are the only ones that can perform the related actions. To remove a target, you can simply click on the line that represents the connection between one of your Nodes and its target. Alternatively, you can select the 'source' Node and click the 'Drop Connection' button, or press 'd'.

Other Notes:

-Whenever a miscellenaous Node (not owned by the player or enemy) is conquered, the defense of all remaining miscellaneous Nodes that are not actively being targeted will increase by a fixed percentage.

-Whenever a Node is conquered, its stats are significantly reduced

-Miscellaneous Nodes slowly raise their defense over time

-Nodes slowly regenerate health over time.",MillisecondsPer20Hours:72e6,GameCyclesPer20Hours:36e4,MillisecondsPer10Hours:36e6,GameCyclesPer10Hours:18e4,MillisecondsPer8Hours:288e5,GameCyclesPer8Hours:144e3,MillisecondsPer4Hours:144e5,GameCyclesPer4Hours:72e3,MillisecondsPer2Hours:72e5,GameCyclesPer2Hours:36e3,MillisecondsPerHour:36e5,GameCyclesPerHour:18e3,MillisecondsPerHalfHour:18e5,GameCyclesPerHalfHour:9e3,MillisecondsPerQuarterHour:9e5,GameCyclesPerQuarterHour:4500,MillisecondsPerFiveMinutes:3e5,GameCyclesPerFiveMinutes:1500,FactionWorkHacking:"Faction Hacking Work",FactionWorkField:"Faction Field Work",FactionWorkSecurity:"Faction Security Work",WorkTypeCompany:"Working for Company",WorkTypeCompanyPartTime:"Working for Company part-time",WorkTypeFaction:"Working for Faction",WorkTypeCreateProgram:"Working on Create a Program",WorkTypeStudyClass:"Studying or Taking a class at university",WorkTypeCrime:"Committing a crime",ClassStudyComputerScience:"studying Computer Science",ClassDataStructures:"taking a Data Structures course",ClassNetworks:"taking a Networks course",ClassAlgorithms:"taking an Algorithms course",ClassManagement:"taking a Management course",ClassLeadership:"taking a Leadership course",ClassGymStrength:"training your strength at a gym",ClassGymDefense:"training your defense at a gym",ClassGymDexterity:"training your dexterity at a gym",ClassGymAgility:"training your agility at a gym",ClassDataStructuresBaseCost:40,ClassNetworksBaseCost:80,ClassAlgorithmsBaseCost:320,ClassManagementBaseCost:160,ClassLeadershipBaseCost:320,ClassGymBaseCost:120,ClassStudyComputerScienceBaseExp:.5,ClassDataStructuresBaseExp:1,ClassNetworksBaseExp:2,ClassAlgorithmsBaseExp:4,ClassManagementBaseExp:2,ClassLeadershipBaseExp:4,CrimeShoplift:"shoplift",CrimeRobStore:"rob a store",CrimeMug:"mug someone",CrimeLarceny:"commit larceny",CrimeDrugs:"deal drugs",CrimeBondForgery:"forge corporate bonds",CrimeTraffickArms:"traffick illegal arms",CrimeHomicide:"commit homicide",CrimeGrandTheftAuto:"commit grand theft auto",CrimeKidnap:"kidnap someone for ransom",CrimeAssassination:"assassinate a high-profile target",CrimeHeist:"pull off the ultimate heist",CodingContractBaseFactionRepGain:2500,CodingContractBaseCompanyRepGain:4e3,CodingContractBaseMoneyGain:75e6,TotalNumBitNodes:24,LatestUpdate:"\n v0.52.9 - 2021-08-27 Less lag! (hydroflame & community)\n -------------------------------------------\n\n ** Active Scripts page **\n\n * Now less laggy, has pagination.\n\n ** File diagnostic ** \n\n * Added a popup found under options that shows the files you own and how\n large they are. This help find bugs and leftover massive logs files.\n\n ** Corporation **\n\n * Added safeguard against a very specific bug that causes NaN money. I'm\n still not sure what the root cause is but it should prevent corp from\n breaking.\n\n ** Netscript ** \n\n * tprintf is a new function that doesn't print the filename.\n\n ** Misc. **\n\n * Infiltration kills you if you try to automate it. (@threehams)\n * Fix beautify button not working\n * Added bladeburner_analysis_mult to getPlayer() (@brusby)\n * Fixed joining bladeburner via netscript functions. (@omuretsu)\n * All bladeburner actions are click-to-copy\n * nerf noodle bar\n"}},function(e,t,n){"use strict";n.d(t,"a",function(){return a});var a={HackingLevelMultiplier:1,StrengthLevelMultiplier:1,DefenseLevelMultiplier:1,DexterityLevelMultiplier:1,AgilityLevelMultiplier:1,CharismaLevelMultiplier:1,ServerGrowthRate:1,ServerMaxMoney:1,ServerStartingMoney:1,ServerStartingSecurity:1,ServerWeakenRate:1,HomeComputerRamCost:1,PurchasedServerCost:1,PurchasedServerLimit:1,PurchasedServerMaxRam:1,CompanyWorkMoney:1,CrimeMoney:1,HacknetNodeMoney:1,ManualHackMoney:1,ScriptHackMoney:1,ScriptHackMoneyGain:1,CodingContractMoney:1,ClassGymExpGain:1,CompanyWorkExpGain:1,CrimeExpGain:1,FactionWorkExpGain:1,HackExpGain:1,FactionPassiveRepGain:1,FactionWorkRepGain:1,RepToDonateToFaction:1,AugmentationMoneyCost:1,AugmentationRepCost:1,InfiltrationMoney:1,InfiltrationRep:1,FourSigmaMarketDataCost:1,FourSigmaMarketDataApiCost:1,CorporationValuation:1,BladeburnerRank:1,BladeburnerSkillCost:1,DaedalusAugsRequirement:1,GangKarmaRequirement:1}},function(e,t,n){"use strict";var a;n.d(t,"a",function(){return a}),function(e){e.Aevum="Aevum",e.Chongqing="Chongqing",e.Ishima="Ishima",e.NewTokyo="New Tokyo",e.Sector12="Sector-12",e.Volhaven="Volhaven",e.AevumAeroCorp="AeroCorp",e.AevumBachmanAndAssociates="Bachman & Associates",e.AevumClarkeIncorporated="Clarke Incorporated",e.AevumCrushFitnessGym="Crush Fitness Gym",e.AevumECorp="ECorp",e.AevumFulcrumTechnologies="Fulcrum Technologies",e.AevumGalacticCybersystems="Galactic Cybersystems",e.AevumNetLinkTechnologies="NetLink Technologies",e.AevumPolice="Aevum Police Headquarters",e.AevumRhoConstruction="Rho Construction",e.AevumSnapFitnessGym="Snap Fitness Gym",e.AevumSummitUniversity="Summit University",e.AevumWatchdogSecurity="Watchdog Security",e.AevumCasino="Iker Molina Casino",e.ChongqingKuaiGongInternational="KuaiGong International",e.ChongqingSolarisSpaceSystems="Solaris Space Systems",e.Sector12AlphaEnterprises="Alpha Enterprises",e.Sector12BladeIndustries="Blade Industries",e.Sector12CIA="Central Intelligence Agency",e.Sector12CarmichaelSecurity="Carmichael Security",e.Sector12CityHall="Sector-12 City Hall",e.Sector12DeltaOne="DeltaOne",e.Sector12FoodNStuff="FoodNStuff",e.Sector12FourSigma="Four Sigma",e.Sector12IcarusMicrosystems="Icarus Microsystems",e.Sector12IronGym="Iron Gym",e.Sector12JoesGuns="Joe's Guns",e.Sector12MegaCorp="MegaCorp",e.Sector12NSA="National Security Agency",e.Sector12PowerhouseGym="Powerhouse Gym",e.Sector12RothmanUniversity="Rothman University",e.Sector12UniversalEnergy="Universal Energy",e.NewTokyoDefComm="DefComm",e.NewTokyoGlobalPharmaceuticals="Global Pharmaceuticals",e.NewTokyoNoodleBar="Noodle Bar",e.NewTokyoVitaLife="VitaLife",e.IshimaNovaMedical="Nova Medical",e.IshimaOmegaSoftware="Omega Software",e.IshimaStormTechnologies="Storm Technologies",e.VolhavenCompuTek="CompuTek",e.VolhavenHeliosLabs="Helios Labs",e.VolhavenLexoCorp="LexoCorp",e.VolhavenMilleniumFitnessGym="Millenium Fitness Gym",e.VolhavenNWO="NWO",e.VolhavenOmniTekIncorporated="OmniTek Incorporated",e.VolhavenOmniaCybersystems="Omnia Cybersystems",e.VolhavenSysCoreSecurities="SysCore Securities",e.VolhavenZBInstituteOfTechnology="ZB Institute of Technology",e.Hospital="Hospital",e.Slums="The Slums",e.TravelAgency="Travel Agency",e.WorldStockExchange="World Stock Exchange",e.Void="The Void"}(a||(a={}))},function(e,t,n){"use strict";n.d(t,"a",function(){return c});var a=n(21),r=n(14),i=n(0),o=n.n(i);function s(e){return o.a.createElement(o.a.Fragment,null,e.content)}function c(e,t){var n=void 0!==t&&t,i="popup-"+Array.from(Array(16)).map(function(){return"".concat(Object(r.a)(0,9))}).join("");"string"==typeof e?n?Object(a.a)(i,s,{content:o.a.createElement("pre",{dangerouslySetInnerHTML:{__html:e}})}):Object(a.a)(i,s,{content:o.a.createElement("p",{dangerouslySetInnerHTML:{__html:e.replace(/(?:\r\n|\r|\n)/g,"
")}})}):Object(a.a)(i,s,{content:e})}},function(e,t,n){"use strict";n.d(t,"c",function(){return i}),n.d(t,"f",function(){return o}),n.d(t,"a",function(){return s}),n.d(t,"b",function(){return c}),n.d(t,"e",function(){return l}),n.d(t,"d",function(){return u});var a=n(142),r=n(117);function i(e){u(e)}function o(e){u("ERROR: ".concat(e),{color:"#ff2929"})}function s(e){u(e,{id:"hack-progress-bar"})}function c(e){u(e,{id:"hack-progress"})}function l(e){u(Object(a.renderToStaticMarkup)(e))}function u(e,t){var n=void 0===t?{}:t,a="color: ".concat(null!=n.color?n.color:"var(--my-font-color)","; background-color:var(--my-background-color);").concat(void 0===n.id?" white-space:pre-wrap;":""),i='').concat(e,"");Object(r.a)("terminal-input").insertAdjacentHTML("beforebegin",i),function(){var e=Object(r.a)("terminal-container");e.scrollTop=e.scrollHeight}()}},function(e,t,n){"use strict";n.d(t,"a",function(){return r}),n.d(t,"b",function(){return i}),n.d(t,"c",function(){return o});var a=function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e},r={ScriptBaseRamCost:1.6,ScriptDomRamCost:25,ScriptHackRamCost:.1,ScriptHackAnalyzeRamCost:1,ScriptGrowRamCost:.15,ScriptGrowthAnalyzeRamCost:1,ScriptWeakenRamCost:.15,ScriptScanRamCost:.2,ScriptPortProgramRamCost:.05,ScriptRunRamCost:1,ScriptExecRamCost:1.3,ScriptSpawnRamCost:2,ScriptScpRamCost:.6,ScriptKillRamCost:.5,ScriptHasRootAccessRamCost:.05,ScriptGetHostnameRamCost:.05,ScriptGetHackingLevelRamCost:.05,ScriptGetMultipliersRamCost:4,ScriptGetServerRamCost:.1,ScriptGetServerMaxRam:.05,ScriptGetServerUsedRam:.05,ScriptFileExistsRamCost:.1,ScriptIsRunningRamCost:.1,ScriptHacknetNodesRamCost:4,ScriptHNUpgLevelRamCost:.4,ScriptHNUpgRamRamCost:.6,ScriptHNUpgCoreRamCost:.8,ScriptGetStockRamCost:2,ScriptBuySellStockRamCost:2.5,ScriptGetPurchaseServerRamCost:.25,ScriptPurchaseServerRamCost:2.25,ScriptGetPurchasedServerLimit:.05,ScriptGetPurchasedServerMaxRam:.05,ScriptRoundRamCost:.05,ScriptReadWriteRamCost:1,ScriptArbScriptRamCost:1,ScriptGetScriptRamCost:.1,ScriptGetRunningScriptRamCost:.3,ScriptGetHackTimeRamCost:.05,ScriptGetFavorToDonate:.1,ScriptCodingContractBaseRamCost:10,ScriptSleeveBaseRamCost:4,ScriptSingularityFn1RamCost:2,ScriptSingularityFn2RamCost:3,ScriptSingularityFn3RamCost:5,ScriptGangApiBaseRamCost:4,ScriptBladeburnerApiBaseRamCost:4},i={hacknet:{numNodes:function(){return 0},purchaseNode:function(){return 0},getPurchaseNodeCost:function(){return 0},getNodeStats:function(){return 0},upgradeLevel:function(){return 0},upgradeRam:function(){return 0},upgradeCore:function(){return 0},upgradeCache:function(){return 0},getLevelUpgradeCost:function(){return 0},getRamUpgradeCost:function(){return 0},getCoreUpgradeCost:function(){return 0},getCacheUpgradeCost:function(){return 0},numHashes:function(){return 0},hashCost:function(){return 0},spendHashes:function(){return 0}},sprintf:function(){return 0},vsprintf:function(){return 0},scan:function(){return r.ScriptScanRamCost},hack:function(){return r.ScriptHackRamCost},hackAnalyzeThreads:function(){return r.ScriptHackAnalyzeRamCost},hackAnalyzePercent:function(){return r.ScriptHackAnalyzeRamCost},hackChance:function(){return r.ScriptHackAnalyzeRamCost},sleep:function(){return 0},grow:function(){return r.ScriptGrowRamCost},growthAnalyze:function(){return r.ScriptGrowthAnalyzeRamCost},weaken:function(){return r.ScriptWeakenRamCost},print:function(){return 0},tprint:function(){return 0},clearLog:function(){return 0},disableLog:function(){return 0},enableLog:function(){return 0},isLogEnabled:function(){return 0},getScriptLogs:function(){return 0},nuke:function(){return r.ScriptPortProgramRamCost},brutessh:function(){return r.ScriptPortProgramRamCost},ftpcrack:function(){return r.ScriptPortProgramRamCost},relaysmtp:function(){return r.ScriptPortProgramRamCost},httpworm:function(){return r.ScriptPortProgramRamCost},sqlinject:function(){return r.ScriptPortProgramRamCost},run:function(){return r.ScriptRunRamCost},exec:function(){return r.ScriptExecRamCost},spawn:function(){return r.ScriptSpawnRamCost},kill:function(){return r.ScriptKillRamCost},killall:function(){return r.ScriptKillRamCost},exit:function(){return 0},scp:function(){return r.ScriptScpRamCost},ls:function(){return r.ScriptScanRamCost},ps:function(){return r.ScriptScanRamCost},hasRootAccess:function(){return r.ScriptHasRootAccessRamCost},getIp:function(){return r.ScriptGetHostnameRamCost},getHostname:function(){return r.ScriptGetHostnameRamCost},getHackingLevel:function(){return r.ScriptGetHackingLevelRamCost},getHackingMultipliers:function(){return r.ScriptGetMultipliersRamCost},getHacknetMultipliers:function(){return r.ScriptGetMultipliersRamCost},getBitNodeMultipliers:function(){return r.ScriptGetMultipliersRamCost},getServer:function(){return r.ScriptGetMultipliersRamCost/2},getServerMoneyAvailable:function(){return r.ScriptGetServerRamCost},getServerSecurityLevel:function(){return r.ScriptGetServerRamCost},getServerBaseSecurityLevel:function(){return r.ScriptGetServerRamCost},getServerMinSecurityLevel:function(){return r.ScriptGetServerRamCost},getServerRequiredHackingLevel:function(){return r.ScriptGetServerRamCost},getServerMaxMoney:function(){return r.ScriptGetServerRamCost},getServerGrowth:function(){return r.ScriptGetServerRamCost},getServerNumPortsRequired:function(){return r.ScriptGetServerRamCost},getServerRam:function(){return r.ScriptGetServerRamCost},getServerMaxRam:function(){return r.ScriptGetServerMaxRam},getServerUsedRam:function(){return r.ScriptGetServerUsedRam},serverExists:function(){return r.ScriptGetServerRamCost},fileExists:function(){return r.ScriptFileExistsRamCost},isRunning:function(){return r.ScriptIsRunningRamCost},getStockSymbols:function(){return r.ScriptGetStockRamCost},getStockPrice:function(){return r.ScriptGetStockRamCost},getStockAskPrice:function(){return r.ScriptGetStockRamCost},getStockBidPrice:function(){return r.ScriptGetStockRamCost},getStockPosition:function(){return r.ScriptGetStockRamCost},getStockMaxShares:function(){return r.ScriptGetStockRamCost},getStockPurchaseCost:function(){return r.ScriptGetStockRamCost},getStockSaleGain:function(){return r.ScriptGetStockRamCost},buyStock:function(){return r.ScriptBuySellStockRamCost},sellStock:function(){return r.ScriptBuySellStockRamCost},shortStock:function(){return r.ScriptBuySellStockRamCost},sellShort:function(){return r.ScriptBuySellStockRamCost},placeOrder:function(){return r.ScriptBuySellStockRamCost},cancelOrder:function(){return r.ScriptBuySellStockRamCost},getOrders:function(){return r.ScriptBuySellStockRamCost},getStockVolatility:function(){return r.ScriptBuySellStockRamCost},getStockForecast:function(){return r.ScriptBuySellStockRamCost},purchase4SMarketData:function(){return r.ScriptBuySellStockRamCost},purchase4SMarketDataTixApi:function(){return r.ScriptBuySellStockRamCost},getPurchasedServerLimit:function(){return r.ScriptGetPurchasedServerLimit},getPurchasedServerMaxRam:function(){return r.ScriptGetPurchasedServerMaxRam},getPurchasedServerCost:function(){return r.ScriptGetPurchaseServerRamCost},purchaseServer:function(){return r.ScriptPurchaseServerRamCost},deleteServer:function(){return r.ScriptPurchaseServerRamCost},getPurchasedServers:function(){return r.ScriptPurchaseServerRamCost},write:function(){return r.ScriptReadWriteRamCost},tryWrite:function(){return r.ScriptReadWriteRamCost},read:function(){return r.ScriptReadWriteRamCost},peek:function(){return r.ScriptReadWriteRamCost},clear:function(){return r.ScriptReadWriteRamCost},getPortHandle:function(){return 10*r.ScriptReadWriteRamCost},rm:function(){return r.ScriptReadWriteRamCost},scriptRunning:function(){return r.ScriptArbScriptRamCost},scriptKill:function(){return r.ScriptArbScriptRamCost},getScriptName:function(){return 0},getScriptRam:function(){return r.ScriptGetScriptRamCost},getHackTime:function(){return r.ScriptGetHackTimeRamCost},getGrowTime:function(){return r.ScriptGetHackTimeRamCost},getWeakenTime:function(){return r.ScriptGetHackTimeRamCost},getScriptIncome:function(){return r.ScriptGetScriptRamCost},getScriptExpGain:function(){return r.ScriptGetScriptRamCost},getRunningScript:function(){return r.ScriptGetRunningScriptRamCost},nFormat:function(){return 0},getTimeSinceLastAug:function(){return r.ScriptGetHackTimeRamCost},prompt:function(){return 0},wget:function(){return 0},getFavorToDonate:function(){return r.ScriptGetFavorToDonate},universityCourse:function(){return r.ScriptSingularityFn1RamCost},gymWorkout:function(){return r.ScriptSingularityFn1RamCost},travelToCity:function(){return r.ScriptSingularityFn1RamCost},purchaseTor:function(){return r.ScriptSingularityFn1RamCost},purchaseProgram:function(){return r.ScriptSingularityFn1RamCost},getCurrentServer:function(){return r.ScriptSingularityFn1RamCost},connect:function(){return r.ScriptSingularityFn1RamCost},manualHack:function(){return r.ScriptSingularityFn1RamCost},installBackdoor:function(){return r.ScriptSingularityFn1RamCost},getStats:function(){return r.ScriptSingularityFn1RamCost/4},getCharacterInformation:function(){return r.ScriptSingularityFn1RamCost/4},getPlayer:function(){return r.ScriptSingularityFn1RamCost/4},hospitalize:function(){return r.ScriptSingularityFn1RamCost/4},isBusy:function(){return r.ScriptSingularityFn1RamCost/4},stopAction:function(){return r.ScriptSingularityFn1RamCost/2},upgradeHomeRam:function(){return r.ScriptSingularityFn2RamCost},getUpgradeHomeRamCost:function(){return r.ScriptSingularityFn2RamCost/2},workForCompany:function(){return r.ScriptSingularityFn2RamCost},applyToCompany:function(){return r.ScriptSingularityFn2RamCost},getCompanyRep:function(){return r.ScriptSingularityFn2RamCost/3},getCompanyFavor:function(){return r.ScriptSingularityFn2RamCost/3},getCompanyFavorGain:function(){return r.ScriptSingularityFn2RamCost/4},checkFactionInvitations:function(){return r.ScriptSingularityFn2RamCost},joinFaction:function(){return r.ScriptSingularityFn2RamCost},workForFaction:function(){return r.ScriptSingularityFn2RamCost},getFactionRep:function(){return r.ScriptSingularityFn2RamCost/3},getFactionFavor:function(){return r.ScriptSingularityFn2RamCost/3},getFactionFavorGain:function(){return r.ScriptSingularityFn2RamCost/4},donateToFaction:function(){return r.ScriptSingularityFn3RamCost},createProgram:function(){return r.ScriptSingularityFn3RamCost},commitCrime:function(){return r.ScriptSingularityFn3RamCost},getCrimeChance:function(){return r.ScriptSingularityFn3RamCost},getCrimeStats:function(){return r.ScriptSingularityFn3RamCost},getOwnedAugmentations:function(){return r.ScriptSingularityFn3RamCost},getOwnedSourceFiles:function(){return r.ScriptSingularityFn3RamCost},getAugmentationsFromFaction:function(){return r.ScriptSingularityFn3RamCost},getAugmentationPrereq:function(){return r.ScriptSingularityFn3RamCost},getAugmentationCost:function(){return r.ScriptSingularityFn3RamCost},getAugmentationStats:function(){return r.ScriptSingularityFn3RamCost},purchaseAugmentation:function(){return r.ScriptSingularityFn3RamCost},softReset:function(){return r.ScriptSingularityFn3RamCost},installAugmentations:function(){return r.ScriptSingularityFn3RamCost},gang:{createGang:function(){return r.ScriptGangApiBaseRamCost/4},inGang:function(){return r.ScriptGangApiBaseRamCost/4},getMemberNames:function(){return r.ScriptGangApiBaseRamCost/4},getGangInformation:function(){return r.ScriptGangApiBaseRamCost/2},getOtherGangInformation:function(){return r.ScriptGangApiBaseRamCost/2},getMemberInformation:function(){return r.ScriptGangApiBaseRamCost/2},canRecruitMember:function(){return r.ScriptGangApiBaseRamCost/4},recruitMember:function(){return r.ScriptGangApiBaseRamCost/2},getTaskNames:function(){return r.ScriptGangApiBaseRamCost/4},getTaskStats:function(){return r.ScriptGangApiBaseRamCost/4},setMemberTask:function(){return r.ScriptGangApiBaseRamCost/2},getEquipmentNames:function(){return r.ScriptGangApiBaseRamCost/4},getEquipmentCost:function(){return r.ScriptGangApiBaseRamCost/2},getEquipmentType:function(){return r.ScriptGangApiBaseRamCost/2},getEquipmentStats:function(){return r.ScriptGangApiBaseRamCost/2},purchaseEquipment:function(){return r.ScriptGangApiBaseRamCost},ascendMember:function(){return r.ScriptGangApiBaseRamCost},setTerritoryWarfare:function(){return r.ScriptGangApiBaseRamCost/2},getChanceToWinClash:function(){return r.ScriptGangApiBaseRamCost},getBonusTime:function(){return 0}},bladeburner:{getContractNames:function(){return r.ScriptBladeburnerApiBaseRamCost/10},getOperationNames:function(){return r.ScriptBladeburnerApiBaseRamCost/10},getBlackOpNames:function(){return r.ScriptBladeburnerApiBaseRamCost/10},getBlackOpRank:function(){return r.ScriptBladeburnerApiBaseRamCost/2},getGeneralActionNames:function(){return r.ScriptBladeburnerApiBaseRamCost/10},getSkillNames:function(){return r.ScriptBladeburnerApiBaseRamCost/10},startAction:function(){return r.ScriptBladeburnerApiBaseRamCost},stopBladeburnerAction:function(){return r.ScriptBladeburnerApiBaseRamCost/2},getCurrentAction:function(){return r.ScriptBladeburnerApiBaseRamCost/4},getActionTime:function(){return r.ScriptBladeburnerApiBaseRamCost},getActionEstimatedSuccessChance:function(){return r.ScriptBladeburnerApiBaseRamCost},getActionRepGain:function(){return r.ScriptBladeburnerApiBaseRamCost},getActionCountRemaining:function(){return r.ScriptBladeburnerApiBaseRamCost},getActionMaxLevel:function(){return r.ScriptBladeburnerApiBaseRamCost},getActionCurrentLevel:function(){return r.ScriptBladeburnerApiBaseRamCost},getActionAutolevel:function(){return r.ScriptBladeburnerApiBaseRamCost},setActionAutolevel:function(){return r.ScriptBladeburnerApiBaseRamCost},setActionLevel:function(){return r.ScriptBladeburnerApiBaseRamCost},getRank:function(){return r.ScriptBladeburnerApiBaseRamCost},getSkillPoints:function(){return r.ScriptBladeburnerApiBaseRamCost},getSkillLevel:function(){return r.ScriptBladeburnerApiBaseRamCost},getSkillUpgradeCost:function(){return r.ScriptBladeburnerApiBaseRamCost},upgradeSkill:function(){return r.ScriptBladeburnerApiBaseRamCost},getTeamSize:function(){return r.ScriptBladeburnerApiBaseRamCost},setTeamSize:function(){return r.ScriptBladeburnerApiBaseRamCost},getCityEstimatedPopulation:function(){return r.ScriptBladeburnerApiBaseRamCost},getCityEstimatedCommunities:function(){return r.ScriptBladeburnerApiBaseRamCost},getCityChaos:function(){return r.ScriptBladeburnerApiBaseRamCost},getCity:function(){return r.ScriptBladeburnerApiBaseRamCost},switchCity:function(){return r.ScriptBladeburnerApiBaseRamCost},getStamina:function(){return r.ScriptBladeburnerApiBaseRamCost},joinBladeburnerFaction:function(){return r.ScriptBladeburnerApiBaseRamCost},joinBladeburnerDivision:function(){return r.ScriptBladeburnerApiBaseRamCost},getBonusTime:function(){return 0}},codingcontract:{attempt:function(){return r.ScriptCodingContractBaseRamCost},getContractType:function(){return r.ScriptCodingContractBaseRamCost/2},getData:function(){return r.ScriptCodingContractBaseRamCost/2},getDescription:function(){return r.ScriptCodingContractBaseRamCost/2},getNumTriesRemaining:function(){return r.ScriptCodingContractBaseRamCost/5}},sleeve:{getNumSleeves:function(){return r.ScriptSleeveBaseRamCost},setToShockRecovery:function(){return r.ScriptSleeveBaseRamCost},setToSynchronize:function(){return r.ScriptSleeveBaseRamCost},setToCommitCrime:function(){return r.ScriptSleeveBaseRamCost},setToUniversityCourse:function(){return r.ScriptSleeveBaseRamCost},travel:function(){return r.ScriptSleeveBaseRamCost},setToCompanyWork:function(){return r.ScriptSleeveBaseRamCost},setToFactionWork:function(){return r.ScriptSleeveBaseRamCost},setToGymWorkout:function(){return r.ScriptSleeveBaseRamCost},getSleeveStats:function(){return r.ScriptSleeveBaseRamCost},getTask:function(){return r.ScriptSleeveBaseRamCost},getInformation:function(){return r.ScriptSleeveBaseRamCost},getSleeveAugmentations:function(){return r.ScriptSleeveBaseRamCost},getSleevePurchasableAugs:function(){return r.ScriptSleeveBaseRamCost},purchaseSleeveAug:function(){return r.ScriptSleeveBaseRamCost}},heart:{break:function(){return 0}}};function o(){for(var e=arguments.length,t=new Array(e),n=0;n0&&(h+="".concat(r," days ")),o>0&&(h+="".concat(o," hours ")),c>0&&(h+="".concat(c," minutes ")),h+="".concat(m," seconds")}function o(e){if(!s(e))return"";if(0===e.length)return"";for(var t=e.concat().sort(),n=t[0],a=t[t.length-1],r=n.length,i=0,o=function(e,t){return e.toUpperCase()===t.toUpperCase()};i0&&(ge._lastUpdate=e-n,R.a.lastUpdate=e-n,ge.updateGame(t)),window.requestAnimationFrame(ge.idleTimer)},updateGame:function(e){var t=void 0===e?1:e,n=t*ge._idleSpeed;null==R.a.totalPlaytime&&(R.a.totalPlaytime=0),null==R.a.playtimeSinceLastAug&&(R.a.playtimeSinceLastAug=0),null==R.a.playtimeSinceLastBitnode&&(R.a.playtimeSinceLastBitnode=0),R.a.totalPlaytime+=n,R.a.playtimeSinceLastAug+=n,R.a.playtimeSinceLastBitnode+=n,!0===K.a.actionStarted&&(ge._totalActionTime=K.a.actionTime,ge._actionTimeLeft=K.a.actionTime,ge._actionInProgress=!0,ge._actionProgressBarCount=1,ge._actionProgressStr="[ ]",ge._actionTimeStr="Time left: ",K.a.actionStarted=!1),R.a.isWorking&&(R.a.workType==d.a.WorkTypeFaction?R.a.workForFaction(t):R.a.workType==d.a.WorkTypeCreateProgram?R.a.createProgramWork(t):R.a.workType==d.a.WorkTypeStudyClass?R.a.takeClass(t):R.a.workType==d.a.WorkTypeCrime?R.a.commitCrime(t):R.a.workType==d.a.WorkTypeCompanyPartTime?R.a.workPartTime(t):R.a.work(t)),R.a.hasWseAccount&&Object(G.j)(t),R.a.inGang()&&R.a.gang.process(t,R.a),M.c&&M.b&&M.b.process(t),fe(R.a.corporation,p.a)&&R.a.corporation.storeCycles(t),fe(R.a.bladeburner,c.a)&&R.a.bladeburner.storeCycles(t);for(var a=0;a0?(t.innerHTML=e,t.setAttribute("class","notification-on")):(t.innerHTML="",t.setAttribute("class","notification-off")),ge.Counters.createProgramNotifications=10}if(ge.Counters.augmentationsNotifications<=0){e=R.a.queuedAugmentations.length,t=document.getElementById("augmentations-notification");e>0?(t.innerHTML=e,t.setAttribute("class","notification-on")):(t.innerHTML="",t.setAttribute("class","notification-off")),ge.Counters.augmentationsNotifications=10}if(ge.Counters.checkFactionInvitations<=0){var n=R.a.checkForFactionInvitations();if(n.length>0){!1===R.a.firstFacInvRecvd&&(R.a.firstFacInvRecvd=!0,document.getElementById("factions-tab").style.display="list-item",document.getElementById("character-menu-header").click(),document.getElementById("character-menu-header").click());var a=n[Math.floor(Math.random()*n.length)];Object(g.d)(a)}e=R.a.factionInvitations.length,t=document.getElementById("factions-notification");e>0?(t.innerHTML=e,t.setAttribute("class","notification-on")):(t.innerHTML="",t.setAttribute("class","notification-off")),ge.Counters.checkFactionInvitations=100}if(ge.Counters.passiveFactionGrowth<=0){var i=Math.floor(5-ge.Counters.passiveFactionGrowth);Object(g.f)(i),ge.Counters.passiveFactionGrowth=5}if(ge.Counters.messages<=0&&(Object(x.b)(),r.a[o.a.TheRedPill].owned?ge.Counters.messages=4500:ge.Counters.messages=150),ge.Counters.mechanicProcess<=0){if(fe(R.a.corporation,p.a)&&R.a.corporation.process(R.a),fe(R.a.bladeburner,c.a))try{R.a.bladeburner.process(R.a)}catch(e){Object(ce.a)("Exception caught in Bladeburner.process(): "+e)}ge.Counters.mechanicProcess=5}ge.Counters.contractGeneration<=0&&(Math.random()<=.25&&Object(m.b)(),ge.Counters.contractGeneration=3e3)},_totalActionTime:0,_actionTimeLeft:0,_actionTimeStr:"Time left: ",_actionProgressStr:"[ ]",_actionProgressBarCount:1,_actionInProgress:!1,updateHackProgress:function(e){var t=(void 0===e?1:e)*ge._idleSpeed;ge._actionTimeLeft-=t/1e3,ge._actionTimeLeft=Math.max(ge._actionTimeLeft,0);for(var n=Math.round(100*(1-ge._actionTimeLeft/ge._totalActionTime));2*ge._actionProgressBarCount<=n;)ge._actionProgressStr=Object(a.f)(ge._actionProgressStr,ge._actionProgressBarCount,"|"),ge._actionProgressBarCount+=1;ge._actionTimeStr="Time left: "+Math.max(0,Math.round(ge._actionTimeLeft)).toString()+"s",document.getElementById("hack-progress").innerHTML=ge._actionTimeStr,document.getElementById("hack-progress-bar").innerHTML=ge._actionProgressStr.replace(/ /g," "),n>=100&&(ge._actionInProgress=!1,K.a.finishAction())},closeMainMenuHeader:function(e){for(var t=0;ts.a.ServerMaxGrowthRate&&(a=s.a.ServerMaxGrowthRate);var r=e.serverGrowth/100;return Math.log(t)/(Math.log(a)*n.hacking_grow_mult*r*o.a.ServerGrowthRate)}function d(e,t,n,a){var r=void 0===a?1:a,o=Object(i.a)(e,t,n,r);o<1&&(console.warn("serverGrowth calculated to be less than 1"),o=1);var c=e.moneyAvailable;if(e.moneyAvailable*=o,Object(u.a)(e.moneyMax)&&isNaN(e.moneyAvailable)&&(e.moneyAvailable=e.moneyMax),Object(u.a)(e.moneyMax)&&e.moneyAvailable>e.moneyMax&&(e.moneyAvailable=e.moneyMax),c!==e.moneyAvailable){var l=p(e,e.moneyAvailable/c,n);l=Math.max(0,l),e.fortify(2*s.a.ServerFortifyAmount*Math.ceil(l))}return e.moneyAvailable/c}function f(e){var t=e.programs.includes(c.a.BitFlume.name);e.programs.length=0,e.runningScripts=[],e.serversOnNetwork=[],e.isConnectedTo=!0,e.ramUsed=0,e.programs.push(c.a.NukeProgram.name),t&&e.programs.push(c.a.BitFlume.name),e.scripts.forEach(function(t){t.updateRamUsage(e.scripts)}),e.messages.length=0,e.messages.push(l.a.HackersStartingHandbook)}function y(e){for(var t in a.b)if(a.b.hasOwnProperty(t)&&a.b[t].hostname==e)return a.b[t];return null}function g(e){return Object(m.a)(e)?void 0!==a.b[e]?a.b[e]:null:y(e)}function b(e,t){return t>e.serversOnNetwork.length?(console.error("Tried to get server on network that was out of range"),null):a.b[e.serversOnNetwork[t]]}function _(e){return"backdoorInstalled"in e&&e.backdoorInstalled}},function(e,t,n){"use strict";n.d(t,"a",function(){return i}),n.d(t,"b",function(){return o});var a=n(60),r=function(){var e=document.createElement("div");if(null===e)throw new Error("unable to create empty div element");return e}(),i={Terminal:r,ScriptEditor:r,ActiveScripts:r,CreateProgram:r,Stats:r,Factions:r,Augmentations:r,HacknetNodes:r,Sleeves:r,City:r,Travel:r,Job:r,StockMarket:r,Bladeburner:r,Corporation:r,Gang:r,Milestones:r,Tutorial:r,Options:r,DevMenu:r};function o(){try{var e=function(e){var t=Object(a.a)(e);if(null==t)throw new Error("clearEventListeners() failed for element with id: ".concat(e));return t};i.Terminal=e("terminal-menu-link"),i.ScriptEditor=e("create-script-menu-link"),i.ActiveScripts=e("active-scripts-menu-link"),i.CreateProgram=e("create-program-menu-link"),i.Stats=e("stats-menu-link"),i.Factions=e("factions-menu-link"),i.Augmentations=e("augmentations-menu-link"),i.HacknetNodes=e("hacknet-nodes-menu-link"),i.Sleeves=e("sleeves-menu-link"),i.City=e("city-menu-link"),i.Travel=e("travel-menu-link"),i.Job=e("job-menu-link"),i.StockMarket=e("stock-market-menu-link"),i.Bladeburner=e("bladeburner-menu-link"),i.Corporation=e("corporation-menu-link"),i.Gang=e("gang-menu-link"),i.Milestones=e("milestones-menu-link"),i.Tutorial=e("tutorial-menu-link");var t=document.getElementById("options-menu-link");if(null===t)throw new Error('Could not find element with id: "options-menu-link"');return i.Options=t,i.DevMenu=e("dev-menu-link"),!0}catch(e){return console.error("Failed to initialize Main Menu Links: ".concat(e)),!1}}},,function(e,t,n){"use strict";n.d(t,"a",function(){return i});var a=n(648),r=n(647),i={},o=!0,s=!1,c=void 0;try{for(var l,u=r.a[Symbol.iterator]();!(o=(l=u.next()).done);o=!0){var m=l.value;i[m.key]=new a.a(m.name,m.create)}}catch(e){s=!0,c=e}finally{try{o||null==u.return||u.return()}finally{if(s)throw c}}},function(e,t,n){"use strict";n.d(t,"h",function(){return C}),n.d(t,"m",function(){return w}),n.d(t,"i",function(){return S}),n.d(t,"b",function(){return T}),n.d(t,"c",function(){return x}),n.d(t,"f",function(){return M}),n.d(t,"g",function(){return P}),n.d(t,"e",function(){return A}),n.d(t,"d",function(){return R}),n.d(t,"o",function(){return I}),n.d(t,"p",function(){return D}),n.d(t,"l",function(){return N}),n.d(t,"k",function(){return j}),n.d(t,"q",function(){return L}),n.d(t,"a",function(){return B}),n.d(t,"j",function(){return F}),n.d(t,"r",function(){return U}),n.d(t,"n",function(){return G});var a,r=n(376),i=n(146),o=n(124),s=n(29),c=n(90),l=n(207),u=n(162),m=n(206),h=n(56),p=n(1),d=n(22),f=n(33),y=n(44),g=n(20),b=n(0),_=n.n(b),v=n(32),E=n.n(v),k=n(309);function O(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?t[Symbol.hasInstance](e):e instanceof t}function C(){return 9===p.a.bitNodeN||y.a[9]>0}function w(){if(h.a.isRunning){if(h.a.currStep!==h.d.HacknetNodesIntroduction)return;Object(h.b)()}var e=p.a.hacknetNodes.length;if(C()){var t=x();if(isNaN(t))throw new Error("Calculated cost of purchasing HacknetServer is NaN");return p.a.canAfford(t)?(p.a.loseMoney(t),p.a.createHacknetServer(),U(),e):-1}t=T();if(isNaN(t))throw new Error("Calculated cost of purchasing HacknetNode is NaN");if(!p.a.canAfford(t))return-1;var n="hacknet-node-"+e,a=new r.a(n,p.a.hacknet_node_money_mult);return p.a.loseMoney(t),p.a.hacknetNodes.push(a),e}function S(){return C()&&p.a.hacknetNodes.length>=s.b.MaxServers}function T(){return Object(i.d)(p.a.hacknetNodes.length+1,p.a.hacknet_node_purchase_cost_mult)}function x(){return Object(o.f)(p.a.hacknetNodes.length+1,p.a.hacknet_node_purchase_cost_mult)}function M(e,t){if(null==t)throw new Error("getMaxNumberLevelUpgrades() called without maxLevel arg");if(p.a.money.lt(e.calculateLevelUpgradeCost(1,p.a.hacknet_node_level_cost_mult)))return 0;var n=1,a=t-1,r=t-e.level;if(p.a.money.gt(e.calculateLevelUpgradeCost(r,p.a.hacknet_node_level_cost_mult)))return r;for(;n<=a;){var i=(n+a)/2|0;if(i!==t&&p.a.money.gt(e.calculateLevelUpgradeCost(i,p.a.hacknet_node_level_cost_mult))&&p.a.money.lt(e.calculateLevelUpgradeCost(i+1,p.a.hacknet_node_level_cost_mult)))return Math.min(r,i);if(p.a.money.lt(e.calculateLevelUpgradeCost(i,p.a.hacknet_node_level_cost_mult)))a=i-1;else{if(!p.a.money.gt(e.calculateLevelUpgradeCost(i,p.a.hacknet_node_level_cost_mult)))return Math.min(r,i);n=i+1}}return 0}function P(e,t){if(null==t)throw new Error("getMaxNumberRamUpgrades() called without maxLevel arg");if(p.a.money.lt(e.calculateRamUpgradeCost(1,p.a.hacknet_node_ram_cost_mult)))return 0;var n;if(n=O(e,c.a)?Math.round(Math.log2(t/e.maxRam)):Math.round(Math.log2(t/e.ram)),p.a.money.gt(e.calculateRamUpgradeCost(n,p.a.hacknet_node_ram_cost_mult)))return n;for(var a=n-1;a>=0;--a)if(p.a.money.gt(e.calculateRamUpgradeCost(a,p.a.hacknet_node_ram_cost_mult)))return a;return 0}function A(e,t){if(null==t)throw new Error("getMaxNumberCoreUpgrades() called without maxLevel arg");if(p.a.money.lt(e.calculateCoreUpgradeCost(1,p.a.hacknet_node_core_cost_mult)))return 0;var n=1,a=t-1,r=t-e.cores;if(p.a.money.gt(e.calculateCoreUpgradeCost(r,p.a.hacknet_node_core_cost_mult)))return r;for(;n<=a;){var i=(n+a)/2|0;if(i!=t&&p.a.money.gt(e.calculateCoreUpgradeCost(i,p.a.hacknet_node_core_cost_mult))&&p.a.money.lt(e.calculateCoreUpgradeCost(i+1,p.a.hacknet_node_core_cost_mult)))return Math.min(r,i);if(p.a.money.lt(e.calculateCoreUpgradeCost(i,p.a.hacknet_node_core_cost_mult)))a=i-1;else{if(!p.a.money.gt(e.calculateCoreUpgradeCost(i,p.a.hacknet_node_core_cost_mult)))return Math.min(r,i);n=i+1}}return 0}function R(e,t){if(null==t)throw new Error("getMaxNumberCacheUpgrades() called without maxLevel arg");if(!p.a.canAfford(e.calculateCacheUpgradeCost(1)))return 0;var n=1,a=t-1,r=t-e.cache;if(p.a.canAfford(e.calculateCacheUpgradeCost(r)))return r;for(;n<=a;){var i=(n+a)/2|0;if(i!=t&&p.a.canAfford(e.calculateCacheUpgradeCost(i))&&!p.a.canAfford(e.calculateCacheUpgradeCost(i+1)))return Math.min(r,i);if(p.a.canAfford(e.calculateCacheUpgradeCost(i))){if(!p.a.canAfford(e.calculateCacheUpgradeCost(i)))return Math.min(r,i);n=i+1}else a=i-1}return 0}function I(e,t){var n=void 0===t?1:t,a=Math.round(n),r=e.calculateLevelUpgradeCost(a,p.a.hacknet_node_level_cost_mult);if(isNaN(r)||r<=0||a<0)return!1;var i=O(e,c.a);return!(e.level>=(i?s.b.MaxLevel:s.a.MaxLevel))&&(e.level+a>(i?s.b.MaxLevel:s.a.MaxLevel)?I(e,Math.max(0,(i?s.b.MaxLevel:s.a.MaxLevel)-e.level)):!!p.a.canAfford(r)&&(p.a.loseMoney(r),e.upgradeLevel(a,p.a.hacknet_node_money_mult),!0))}function D(e,t){var n=void 0===t?1:t,a=Math.round(n),r=e.calculateRamUpgradeCost(a,p.a.hacknet_node_ram_cost_mult);if(isNaN(r)||r<=0||a<0)return!1;var i=O(e,c.a);if(e.ram>=(i?s.b.MaxRam:s.a.MaxRam))return!1;if(i){if(e.maxRam*Math.pow(2,a)>s.b.MaxRam)return D(e,Math.max(0,Math.log2(Math.round(s.b.MaxRam/e.maxRam))))}else if(e.ram*Math.pow(2,a)>s.a.MaxRam)return D(e,Math.max(0,Math.log2(Math.round(s.a.MaxRam/e.ram))));return!!p.a.canAfford(r)&&(p.a.loseMoney(r),e.upgradeRam(a,p.a.hacknet_node_money_mult),!0)}function N(e,t){var n=void 0===t?1:t,a=Math.round(n),r=e.calculateCoreUpgradeCost(a,p.a.hacknet_node_core_cost_mult);if(isNaN(r)||r<=0||a<0)return!1;var i=O(e,c.a);return!(e.cores>=(i?s.b.MaxCores:s.a.MaxCores))&&(e.cores+a>(i?s.b.MaxCores:s.a.MaxCores)?N(e,Math.max(0,(i?s.b.MaxCores:s.a.MaxCores)-e.cores)):!!p.a.canAfford(r)&&(p.a.loseMoney(r),e.upgradeCore(a,p.a.hacknet_node_money_mult),!0))}function j(e,t){var n=void 0===t?1:t,a=Math.round(n),r=e.calculateCacheUpgradeCost(a);return!(isNaN(r)||r<=0||a<0)&&(O(e,c.a)?e.cache+a>s.b.MaxCache?j(e,Math.max(0,s.b.MaxCache-e.cache)):!!p.a.canAfford(r)&&(p.a.loseMoney(r),e.upgradeCache(a),!0):(console.warn("purchaseCacheUpgrade() called for a non-HacknetNode"),!1))}function L(){g.b.isOn(g.a.HacknetNodes)&&E.a.render(_.a.createElement(k.a,null),a)}function B(){O(a,HTMLElement)&&E.a.unmountComponentAtNode(a),a.style.display="none"}function F(e){return 0===p.a.hacknetNodes.length?0:C()?function(e){if(!O(p.a.hashManager,l.a))throw new Error("Player does not have a HashManager (should be in 'hashManager' prop)");for(var t=0,n=0;nd.Start&&(f.currStep-=1);g()}(),!1}),Object(l.a)("interactive-tutorial-next").addEventListener("click",function(){return b(),!1}),g()}function g(){if(!f.isRunning)return;const e=Object(l.a)("terminal-menu-link"),t=Object(l.a)("stats-menu-link"),n=Object(l.a)("active-scripts-menu-link"),r=Object(l.a)("hacknet-nodes-menu-link"),i=Object(l.a)("city-menu-link"),o=Object(l.a)("tutorial-menu-link");e.removeAttribute("class"),t.removeAttribute("class"),n.removeAttribute("class"),r.removeAttribute("class"),i.removeAttribute("class"),o.removeAttribute("class");const s=document.getElementById("interactive-tutorial-next");switch(f.currStep){case d.Start:a.Engine.loadTerminalContent(),E("Welcome to Bitburner, a cyberpunk-themed incremental RPG! The game takes place in a dark, dystopian future... The year is 2077...

This tutorial will show you the basics of the game. You may skip the tutorial at any time."),s.style.display="inline-block";break;case d.GoToCharacterPage:a.Engine.loadTerminalContent(),E("Let's start by heading to the Stats page. Click the Stats tab on the main navigation menu (left-hand side of the screen)"),s.style.display="none",t.setAttribute("class","flashing-button"),t.addEventListener("click",function(){return a.Engine.loadCharacterContent(),b(),!1});break;case d.CharacterPage:a.Engine.loadCharacterContent(),E("The Stats page shows a lot of important information about your progress, such as your skills, money, and bonuses. "),s.style.display="inline-block";break;case d.CharacterGoToTerminalPage:a.Engine.loadCharacterContent(),E("Let's head to your computer's terminal by clicking the Terminal tab on the main navigation menu."),s.style.display="none",e.setAttribute("class","flashing-button"),e.addEventListener("click",function(){return a.Engine.loadTerminalContent(),b(),!1});break;case d.TerminalIntro:a.Engine.loadTerminalContent(),E("The Terminal is used to interface with your home computer as well as all of the other machines around the world."),s.style.display="inline-block";break;case d.TerminalHelp:a.Engine.loadTerminalContent(),E("Let's try it out. Start by entering the help command into the Terminal (Don't forget to press Enter after typing the command)"),s.style.display="none";break;case d.TerminalLs:a.Engine.loadTerminalContent(),E("The help command displays a list of all available Terminal commands, how to use them, and a description of what they do.

Let's try another command. Enter the ls command."),s.style.display="none";break;case d.TerminalScan:a.Engine.loadTerminalContent(),E(" ls is a basic command that shows files on the computer. Right now, it shows that you have a program called NUKE.exe on your computer. We'll get to what this does later.

Using your home computer's terminal, you can connect to other machines throughout the world. Let's do that now by first entering the scan command."),s.style.display="none";break;case d.TerminalScanAnalyze1:a.Engine.loadTerminalContent(),E("The scan command shows all available network connections. In other words, it displays a list of all servers that can be connected to from your current machine. A server is identified by its hostname.

That's great and all, but there's so many servers. Which one should you go to? The scan-analyze command gives some more detailed information about servers on the network. Try it now!"),s.style.display="none";break;case d.TerminalScanAnalyze2:a.Engine.loadTerminalContent(),E("You just ran scan-analyze with a depth of one. This command shows more detailed information about each server that you can connect to (servers that are a distance of one node away).

It is also possible to run scan-analyze with a higher depth. Let's try a depth of two with the following command: scan-analyze 2."),s.style.display="none";break;case d.TerminalConnect:a.Engine.loadTerminalContent(),E("Now you can see information about all servers that are up to two nodes away, as well as figure out how to navigate to those servers through the network. You can only connect to a server that is one node away. To connect to a machine, use the connect [hostname] command.

From the results of the scan-analyze command, we can see that the n00dles server is only one node away. Let's connect so it now using: connect n00dles"),s.style.display="none";break;case d.TerminalAnalyze:a.Engine.loadTerminalContent(),E("You are now connected to another machine! What can you do now? You can hack it!

In the year 2077, currency has become digital and decentralized. People and corporations store their money on servers and computers. Using your hacking abilities, you can hack servers to steal money and gain experience.

Before you try to hack a server, you should run diagnostics using the analyze command."),s.style.display="none";break;case d.TerminalNuke:a.Engine.loadTerminalContent(),E("When the analyze command finishes running it will show useful information about hacking the server.

For this server, the required hacking skill is only 1, which means you can hack it right now. However, in order to hack a server you must first gain root access. The NUKE.exe program that we saw earlier on your home computer is a virus that will grant you root access to a machine if there are enough open ports.

The analyze results shows that there do not need to be any open ports on this machine for the NUKE virus to work, so go ahead and run the virus using the run NUKE.exe command."),s.style.display="none";break;case d.TerminalManualHack:a.Engine.loadTerminalContent(),E("You now have root access! You can hack the server using the hack command. Try doing that now."),s.style.display="none";break;case d.TerminalHackingMechanics:a.Engine.loadTerminalContent(),E("You are now attempting to hack the server. Performing a hack takes time and only has a certain percentage chance of success. This time and success chance is determined by a variety of factors, including your hacking skill and the server's security level.

If your attempt to hack the server is successful, you will steal a certain percentage of the server's total money. This percentage is affected by your hacking skill and the server's security level.

The amount of money on a server is not limitless. So, if you constantly hack a server and deplete its money, then you will encounter diminishing returns in your hacking."),s.style.display="inline-block";break;case d.TerminalCreateScript:a.Engine.loadTerminalContent(),E("Hacking is the core mechanic of the game and is necessary for progressing. However, you don't want to be hacking manually the entire time. You can automate your hacking by writing scripts!

To create a new script or edit an existing one, you can use the nano command. Scripts must end with the .script extension. Let's make a script now by entering nano n00dles.script after the hack command finishes running (Sidenote: Pressing ctrl + c will end a command like hack early)"),s.style.display="none";break;case d.TerminalTypeScript:a.Engine.loadScriptEditorContent("n00dles.script",""),E("This is the script editor. You can use it to program your scripts. Scripts are written in a simplified version of javascript. Copy and paste the following code into the script editor:

while(true) {\n  hack('n00dles');\n}
For anyone with basic programming experience, this code should be straightforward. This script will continuously hack the n00dles server.

To save and close the script editor, press the button in the bottom left, or press ctrl + b."),s.style.display="none";break;case d.TerminalFree:a.Engine.loadTerminalContent(),E("Now we'll run the script. Scripts require a certain amount of RAM to run, and can be run on any machine which you have root access to. Different servers have different amounts of RAM. You can also purchase more RAM for your home server.

To check how much RAM is available on this machine, enter the free command."),s.style.display="none";break;case d.TerminalRunScript:a.Engine.loadTerminalContent(),E("We have 4GB of free RAM on this machine, which is enough to run our script. Let's run our script using run n00dles.script."),s.style.display="none";break;case d.TerminalGoToActiveScriptsPage:a.Engine.loadTerminalContent(),E("Your script is now running! It will continuously run in the background and will automatically stop if the code ever completes (the n00dles.script will never complete because it runs an infinite loop).

These scripts can passively earn you income and hacking experience. Your scripts will also earn money and experience while you are offline, although at a slightly slower rate.

Let's check out some statistics for our running scripts by clicking the Active Scripts link in the main navigation menu."),s.style.display="none",n.setAttribute("class","flashing-button"),n.addEventListener("click",function(){return a.Engine.loadActiveScriptsContent(),b(),!1});break;case d.ActiveScriptsPage:a.Engine.loadActiveScriptsContent(),E("This page displays information about all of your scripts that are running across every server. You can use this to gauge how well your scripts are doing. Let's go back to the Terminal"),s.style.display="none",e.setAttribute("class","flashing-button"),e.addEventListener("click",function(){return a.Engine.loadTerminalContent(),b(),!1});break;case d.ActiveScriptsToTerminal:a.Engine.loadTerminalContent(),E("One last thing about scripts, each active script contains logs that detail what it's doing. We can check these logs using the tail command. Do that now for the script we just ran by typing tail n00dles.script"),s.style.display="none";break;case d.TerminalTailScript:a.Engine.loadTerminalContent(),E("The log for this script won't show much right now (it might show nothing at all) because it just started running...but check back again in a few minutes!

This covers the basics of hacking. To learn more about writing scripts, select the Tutorial link in the main navigation menu to look at the documentation. If you are an experienced JavaScript developer, I would highly suggest you check out the section on NetscriptJS/Netscript 2.0, it's faster and more powerful.

For now, let's move on to something else!"),s.style.display="inline-block";break;case d.GoToHacknetNodesPage:a.Engine.loadTerminalContent(),E("Hacking is not the only way to earn money. One other way to passively earn money is by purchasing and upgrading Hacknet Nodes. Let's go to the Hacknet page through the main navigation menu now."),s.style.display="none",r.setAttribute("class","flashing-button"),r.addEventListener("click",function(){return a.Engine.loadHacknetNodesContent(),b(),!1});break;case d.HacknetNodesIntroduction:a.Engine.loadHacknetNodesContent(),E("here you can purchase new Hacknet Nodes and upgrade your existing ones. Let's purchase a new one now."),s.style.display="none";break;case d.HacknetNodesGoToWorldPage:a.Engine.loadHacknetNodesContent(),E("You just purchased a Hacknet Node! This Hacknet Node will passively earn you money over time, both online and offline. When you get enough money, you can upgrade your newly-purchased Hacknet Node below.

Let's go to the City page through the main navigation menu."),s.style.display="none",i.setAttribute("class","flashing-button"),i.addEventListener("click",function(){return a.Engine.loadLocationContent(),b(),!1});break;case d.WorldDescription:a.Engine.loadLocationContent(),E("This page lists all of the different locations you can currently travel to. Each location has something that you can do. There's a lot of content out in the world, make sure you explore and discover!

Lastly, click on the Tutorial link in the main navigation menu."),s.style.display="none",o.setAttribute("class","flashing-button"),o.addEventListener("click",function(){return a.Engine.loadTutorialContent(),b(),!1});break;case d.TutorialPageInfo:a.Engine.loadTutorialContent(),E("This page contains a lot of different documentation about the game's content and mechanics. I know it's a lot, but I highly suggest you read (or at least skim) through this before you start playing. That's the end of the tutorial. Hope you enjoy the game!"),s.style.display="inline-block",s.innerHTML="Finish Tutorial";break;case d.End:_();break;default:throw new Error("Invalid tutorial step")}!0===f.stepIsDone[f.currStep]&&(s.style.display="inline-block")}function b(){f.currStep===d.GoToCharacterPage&&document.getElementById("stats-menu-link").removeAttribute("class"),f.currStep===d.CharacterGoToTerminalPage&&document.getElementById("terminal-menu-link").removeAttribute("class"),f.currStep===d.TerminalGoToActiveScriptsPage&&document.getElementById("active-scripts-menu-link").removeAttribute("class"),f.currStep===d.ActiveScriptsPage&&document.getElementById("terminal-menu-link").removeAttribute("class"),f.currStep===d.GoToHacknetNodesPage&&document.getElementById("hacknet-nodes-menu-link").removeAttribute("class"),f.currStep===d.HacknetNodesGoToWorldPage&&document.getElementById("city-menu-link").removeAttribute("class"),f.currStep===d.WorldDescription&&document.getElementById("tutorial-menu-link").removeAttribute("class"),f.stepIsDone[f.currStep]=!0,f.currStep
Getting Started GuideDocumentation

The Beginner's Guide to Hacking was added to your home computer! It contains some tips/pointers for starting out with the game. To read it, go to Terminal and enter

cat "+s.a.HackersStartingHandbook}),n=Object(u.a)("a",{class:"a-link-button",float:"right",padding:"6px",innerText:"Got it!",clickListener:()=>{Object(h.a)(e)}});Object(m.a)(e,[t,n]),r.a.getHomeComputer().messages.push(s.a.HackersStartingHandbook)}let v=null;function E(e){v.innerHTML=e,v.parentElement.scrollTop=0}!function(){document.addEventListener("DOMContentLoaded",function e(){v=document.getElementById("interactive-tutorial-text"),document.removeEventListener("DOMContentLoaded",e)})}()},function(e,t,n){"use strict";n.d(t,"a",function(){return r});var a=n(6),r={};r[a.a.AevumECorp]="ECP",r[a.a.Sector12MegaCorp]="MGCP",r[a.a.Sector12BladeIndustries]="BLD",r[a.a.AevumClarkeIncorporated]="CLRK",r[a.a.VolhavenOmniTekIncorporated]="OMTK",r[a.a.Sector12FourSigma]="FSIG",r[a.a.ChongqingKuaiGongInternational]="KGI",r[a.a.AevumFulcrumTechnologies]="FLCM",r[a.a.IshimaStormTechnologies]="STM",r[a.a.NewTokyoDefComm]="DCOMM",r[a.a.VolhavenHeliosLabs]="HLS",r[a.a.NewTokyoVitaLife]="VITA",r[a.a.Sector12IcarusMicrosystems]="ICRS",r[a.a.Sector12UniversalEnergy]="UNV",r[a.a.AevumAeroCorp]="AERO",r[a.a.VolhavenOmniaCybersystems]="OMN",r[a.a.ChongqingSolarisSpaceSystems]="SLRS",r[a.a.NewTokyoGlobalPharmaceuticals]="GPH",r[a.a.IshimaNovaMedical]="NVMD",r[a.a.AevumWatchdogSecurity]="WDS",r[a.a.VolhavenLexoCorp]="LXO",r[a.a.AevumRhoConstruction]="RHOC",r[a.a.Sector12AlphaEnterprises]="APHE",r[a.a.VolhavenSysCoreSecurities]="SYSC",r[a.a.VolhavenCompuTek]="CTK",r[a.a.AevumNetLinkTechnologies]="NTLK",r[a.a.IshimaOmegaSoftware]="OMGA",r[a.a.Sector12FoodNStuff]="FNS",r["Sigma Cosmetics"]="SGC",r["Joes Guns"]="JGN",r["Catalyst Ventures"]="CTYS",r["Microdyne Technologies"]="MDYN",r["Titan Laboratories"]="TITN"},function(e,t,n){"use strict";n.d(t,"a",function(){return r});var a=n(31);function r(e,t){var n=void 0===t?"":t;return""===n&&(n=e),Object(a.a)("option",{text:e,value:n})}},function(e,t,n){"use strict";var a;n.d(t,"a",function(){return a}),function(e){e[e.Idle=0]="Idle",e[e.Company=1]="Company",e[e.Faction=2]="Faction",e[e.Crime=3]="Crime",e[e.Class=4]="Class",e[e.Gym=5]="Gym",e[e.Recovery=6]="Recovery",e[e.Synchro=7]="Synchro"}(a||(a={}))},function(e,t,n){"use strict";n.d(t,"a",function(){return r});var a=n(117);function r(e){try{var t,n=(t="string"==typeof e?Object(a.a)(e):e).cloneNode(!0);return null!==t.parentNode&&t.parentNode.replaceChild(n,t),n}catch(e){return console.error(e),null}}},function(e,t,n){"use strict";n.d(t,"a",function(){return O}),n.d(t,"b",function(){return C}),n.d(t,"i",function(){return w}),n.d(t,"c",function(){return S}),n.d(t,"h",function(){return T}),n.d(t,"d",function(){return x}),n.d(t,"f",function(){return M}),n.d(t,"g",function(){return P}),n.d(t,"j",function(){return R}),n.d(t,"e",function(){return j});var a=n(113),r=n(372),i=n(185),o=n(82),s=n(332),c=n(604),l=n(66),u=n(46),m=n(57),h=n(603),p=n(4),d=n(1),f=n(239),y=n(20),g=n(2),b=n(7),_=n(12),v=n(0),E=n(32);function k(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?t[Symbol.hasInstance](e):e instanceof t}var O={},C={};function w(e,t,n,a,s,c){var l=void 0===c?null:c;if(!k(e,o.a))return l?l.log("placeOrder","Invalid stock: '".concat(e,"'")):Object(b.a)("ERROR: Invalid stock passed to placeOrder() function"),!1;if("number"!=typeof t||"number"!=typeof n)return l?l.log("placeOrder","Invalid arguments: shares='".concat(t,"' price='").concat(n,"'")):Object(b.a)("ERROR: Invalid numeric value provided for either 'shares' or 'price' argument"),!1;var u=new r.a(e.symbol,t,n,a,s);if(null==O.Orders){var m={};for(var h in O){var p=O[h];k(p,o.a)&&(m[p.symbol]=[])}O.Orders=m}O.Orders[e.symbol].push(u);var d={rerenderFn:j,stockMarket:O,symbolToStockMap:C};return Object(i.a)(e,u.type,u.pos,d),j(),!0}function S(e,t){var n=void 0===t?null:t;if(null==O.Orders)return!1;if(e.order&&k(e.order,r.a)){for(var a=e.order,i=O.Orders[a.stockSymbol],s=0;s=c.cap&&(h=.1,c.b=!1),isNaN(h)&&(h=.5);var p=Math.random(),d={rerenderFn:j,stockMarket:O,symbolToStockMap:C};p1?1:i<0?0:i}function o(e,t){null==e.baseDifficulty&&(e.baseDifficulty=e.hackDifficulty);var n=3;return(n+=e.baseDifficulty*t.hacking_exp_mult*.3)*a.a.HackExpGain}function s(e,t){var n=(100-e.hackDifficulty)/100*((t.hacking_skill-(e.requiredHackingSkill-1))/t.hacking_skill)*t.hacking_money_mult/240;return n<0?0:n>1?1:n*a.a.ScriptHackMoney}function c(e,t){var n=2.5*(e.requiredHackingSkill*e.hackDifficulty)+500;return 5*(n/=t.hacking_skill+50)/(t.hacking_speed_mult*Object(r.a)(t.intelligence,1))}function l(e,t){return 3.2*c(e,t)}function u(e,t){return 4*c(e,t)}},function(e,t,n){"use strict";n.d(t,"d",function(){return x}),n.d(t,"e",function(){return M}),n.d(t,"a",function(){return A}),n.d(t,"h",function(){return R}),n.d(t,"c",function(){return I}),n.d(t,"g",function(){return D}),n.d(t,"b",function(){return N}),n.d(t,"f",function(){return j});var a=n(0),r=n.n(a),i=n(32),o=n.n(i),s=n(646),c=n(15),l=n(95),u=n(204),m=n(3),h=n(5),p=n(4),d=n(24),f=n(102),y=n(18),g=n(97),b=n(1),_=n(28),v=n(136),E=n(44),k=n(20),O=n(7),C=n(629),w=n(10),S=n(47);function T(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?t[Symbol.hasInstance](e):e instanceof t}function x(e){_.a.SuppressFactionInvites?(e.alreadyInvited=!0,b.a.factionInvitations.push(e.name),k.b.isOn(k.a.Factions)&&d.Engine.loadFactionsContent()):Object(C.a)(e)}function M(e){if(!e.isMember){e.isMember=!0,b.a.factions.push(e.name);var t=e.getInfo();for(var n in t.enemies){var a=t.enemies[n];T(y.a[a],f.a)&&(y.a[a].isBanned=!0)}for(var r=0;r0)for(var n=0;n
Filename: "+(e.fileName||"UNKNOWN FILE NAME")+"

Line Number: "+(e.lineNumber||"UNKNOWN LINE NUMBER")+"

This is a bug, please report to game developer with this message as well as details about how to reproduce the bug.

If you want to be safe, I suggest refreshing the game WITHOUT saving so that your safe doesn't get corrupted",!1)}},function(e,t,n){"use strict";n.d(t,"a",function(){return s}),n.d(t,"b",function(){return c});var a=n(208),r=n(337);function i(e){var t=a.a[e];if(null==t)throw new Error("Invalid research name: ".concat(e));return new r.a({text:t.name,cost:t.cost})}function o(){var e=i("Hi-Tech R&D Laboratory"),t=i("AutoBrew"),n=i("AutoPartyManager"),a=i("Automatic Drug Administration"),r=i("Bulk Purchasing"),o=i("CPH4 Injections"),s=i("Drones"),c=i("Drones - Assembly"),l=i("Drones - Transport"),u=i("Go-Juice"),m=i("HRBuddy-Recruitment"),h=i("HRBuddy-Training"),p=i("JoyWire"),d=i("Market-TA.I"),f=i("Market-TA.II"),y=i("Overclock"),g=i("Self-Correcting Assemblers"),b=i("Sti.mu");return a.addChild(u),a.addChild(o),s.addChild(c),s.addChild(l),m.addChild(h),d.addChild(f),y.addChild(b),e.addChild(t),e.addChild(n),e.addChild(a),e.addChild(r),e.addChild(s),e.addChild(m),e.addChild(p),e.addChild(d),e.addChild(y),e.addChild(g),e}function s(){var e=new r.b;return e.setRoot(o()),e}function c(){var e=new r.b,t=o(),n=i("uPgrade: Fulcrum"),a=i("uPgrade: Capacity.I"),s=i("uPgrade: Capacity.II"),c=i("uPgrade: Dashboard");return a.addChild(s),n.addChild(a),n.addChild(c),t.addChild(n),e.setRoot(t),e}},function(e,t,n){"use strict";function a(e){return e.startsWith("/")?e.slice(1):e}function r(e){return e.endsWith("/")?e.slice(0,-1):e}function i(e){return null!=e.match(/^[.a-zA-Z0-9_-]+[.][a-zA-Z0-9]+(?:-\d+(?:\.\d*)?%-INC)?$/)}function o(e){return null!=e.match(/^.?[a-zA-Z0-9_-]+$/)}function s(e){var t=e;if(0===t.length)return!1;if(1===t.length)return"/"===t;if(!t.startsWith("/"))return!1;var n=(t=r(t=t.slice(1))).split("/"),a=!0,i=!1,s=void 0;try{for(var c,l=n[Symbol.iterator]();!(a=(c=l.next()).done);a=!0){var u=c.value;if("."!==u&&".."!==u&&!o(u))return!1}}catch(e){i=!0,s=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw s}}return!0}function c(e){if(null==e||"string"!=typeof e)return!1;var t=e;if(t.length<3)return!1;if(t.endsWith("/"))return!1;var n=t.lastIndexOf("/");if(-1===n)return i(t);var a=t.slice(n+1);return s(t.slice(0,n+1))&&i(a)}function l(e){var t=e;if(-1===(t=r(t=a(t))).lastIndexOf("/"))return"/";var n=t.split("/");return 0===n.length?"/":n[0]+"/"}function u(e){var t=e,n=t.lastIndexOf("/");return-1===n?"":t.slice(0,n+1)}function m(e){return!!c(e)&&(null!=e&&0!==e.length&&e.lastIndexOf("/")<=0)}function h(e,t){var n=e;if(n.startsWith("/")||null==t||(n=t+(t.endsWith("/")?"":"/")+n),!s(n))return null;var i=(n=r(n=a(n))).split("/"),o=[],c=!0,l=!1,u=void 0;try{for(var m,h=i[Symbol.iterator]();!(c=(m=h.next()).done);c=!0){var p=m.value;if("."!==p)if(".."===p){if(null==o.pop())return null}else o.push(p)}}catch(e){l=!0,u=e}finally{try{c||null==h.return||h.return()}finally{if(l)throw u}}return"/"+o.join("/")}function p(e,t){var n=e;if(n.startsWith("/")||null==t||(n=t+(t.endsWith("/")?"":"/")+n),!c(n))return null;var r=(n=a(n)).split("/"),i=[],o=!0,s=!1,l=void 0;try{for(var u,m=r[Symbol.iterator]();!(o=(u=m.next()).done);o=!0){var h=u.value;if("."!==h)if(".."===h){if(null==i.pop())return null}else i.push(h)}}catch(e){s=!0,l=e}finally{try{o||null==m.return||m.return()}finally{if(s)throw l}}return"/"+i.join("/")}n.d(t,"h",function(){return a}),n.d(t,"i",function(){return r}),n.d(t,"f",function(){return s}),n.d(t,"g",function(){return c}),n.d(t,"d",function(){return l}),n.d(t,"c",function(){return u}),n.d(t,"e",function(){return m}),n.d(t,"a",function(){return h}),n.d(t,"b",function(){return p})},,function(e,t,n){"use strict";n.d(t,"a",function(){return a});var a={}},function(e,t,n){"use strict";n.d(t,"a",function(){return s}),n.d(t,"b",function(){return c}),n.d(t,"c",function(){return l}),n.d(t,"d",function(){return u}),n.d(t,"f",function(){return m}),n.d(t,"e",function(){return h}),n.d(t,"g",function(){return f}),n.d(t,"h",function(){return y});var a,r,i=n(8);function o(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t0){if("unalias"===t[0]||"alias"===t[0])return t.join(" ");for(var n=!0,i=0;n&&i<10;){i++,n=!1,null!=(l=null===(c=p(t[0]))||void 0===c?void 0:c.split(" "))&&(n=!0,(a=t).splice.apply(a,[0,1].concat(o(l))));for(var s=0;s100?this.otlkMagForecast=100:this.otlkMagForecast<0&&(this.otlkMagForecast=0)}},{key:"changePrice",value:function(e){this.lastPrice=this.price,this.price=e}},{key:"cycleForecast",value:function(e){var t=void 0===e?.1:e,n=this.getForecastIncreaseChance();Math.random()5&&(this.otlkMag=Math.max(5,this.otlkMag-e))}},{key:"influenceForecastForecast",value:function(e){this.otlkMagForecast>50?(this.otlkMagForecast-=e,this.otlkMagForecast=Math.max(50,this.otlkMagForecast)):this.otlkMagForecast<50&&(this.otlkMagForecast+=e,this.otlkMagForecast=Math.min(50,this.otlkMagForecast))}},{key:"toJSON",value:function(){return Object(a.b)("Stock",this)}}],[{key:"fromJSON",value:function(t){return Object(a.a)(e,t.data)}}]),e}();a.c.constructors.Stock=l},,function(e,t,n){"use strict";n.d(t,"a",function(){return m});var a=n(184),r=n(103),i=n(156),o=n(201),s=n(22),c=n(176),l=n(221);function u(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?t[Symbol.hasInstance](e):e instanceof t}function m(e,t,n){if(null!=n&&"boolean"==typeof n||(n=!0),u(e,a.a))return p(e),!0;if(u(e,o.a)&&"string"==typeof t){var i=h(e.pid,n);if(i)return i;var s=!0,l=!1,m=void 0;try{for(var d,f=r.a.values()[Symbol.iterator]();!(s=(d=f.next()).done);s=!0){var y=d.value;if(y.name==e.filename&&y.serverIp==t&&Object(c.a)(y.args,e.args))return p(y,n),!0}}catch(e){l=!0,m=e}finally{try{s||null==f.return||f.return()}finally{if(l)throw m}}return!1}return"number"==typeof e?h(e,n):(console.error("killWorkerScript() called with invalid argument:"),console.error(e),!1)}function h(e,t){var n=void 0===t||t,i=r.a.get(e);return!!u(i,a.a)&&(p(i,n),!0)}function p(e,t){var n=void 0===t||t;e.env.stopFlag=!0,function(e){u(e,a.a)&&e.delay&&(clearTimeout(e.delay),e.delayResolve&&e.delayResolve())}(e),function(e,t){var n=void 0===t||t;if(!u(e,a.a))return console.error("Invalid argument passed into removeWorkerScript():"),void console.error(e);var o=e.serverIp,m=e.name,h=s.b[o];if(null==h)return void console.error("Could not find server on which this script is running: ".concat(o));h.ramUsed=Object(l.a)(h.ramUsed-e.ramUsage),h.ramUsed<0&&(console.warn("Server (".concat(h.hostname,") RAM usage went negative (if it's due to floating pt imprecision, it's okay): ").concat(h.ramUsed)),h.ramUsed=0);for(var p=0;p{t.delay=null,n()},e),t.delayResolve=n})}function s(e,t,n=null){var a="";null!=n&&(a=" (Line "+function(e,t){var n=t.scriptRef.codeCode();try{return((n=n.substring(0,e.start)).match(/\n/g)||[]).length+1}catch(e){return-1}}(n,e)+")");const r=i.b[e.serverIp];if(null==r)throw new Error(`WorkerScript constructed with invalid server ip: ${this.serverIp}`);return"|"+r.hostname+"|"+e.name+"|"+t+a}function c(e,t,n){const a=e.scriptRef.threads;if(!n)return isNaN(a)||a<1?1:a;const r=0|n;if(isNaN(n)||r<1)throw s(e,`Invalid thread count passed to ${t}: ${n}. Threads must be a positive number.`);if(n>a)throw s(e,`Too many threads requested by ${t}. Requested: ${n}. Has: ${a}.`);return r}function l(e){if(!Object(r.a)(e))return!1;return 4==e.split("|").length}},function(e,t,n){"use strict";n.d(t,"a",function(){return a});var a=function e(t,n,a){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.title=t,this.fn=n,this.txt=a}},function(e,t,n){"use strict";n.d(t,"a",function(){return f});var a=n(4),r=n(312),i=n(29),o=n(124),s=n(177),c=n(12);function l(e,t){for(var n=0;n["+(_Fconf_FconfSettings__WEBPACK_IMPORTED_MODULE_13__.a.ENABLE_TIMESTAMPS?Object(_utils_helpers_getTimestamp__WEBPACK_IMPORTED_MODULE_38__.a)()+" ":"")+_Player__WEBPACK_IMPORTED_MODULE_23__.a.getCurrentServer().hostname+" ~".concat(a,"]> ").concat(n)),n.length>0&&(Terminal.resetTerminalInput(),Terminal.executeCommands(n))}if(e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.C&&e.ctrlKey&&(_engine__WEBPACK_IMPORTED_MODULE_12__.Engine._actionInProgress?(Object(_ui_postToTerminal__WEBPACK_IMPORTED_MODULE_41__.c)("Cancelling..."),_engine__WEBPACK_IMPORTED_MODULE_12__.Engine._actionInProgress=!1,Terminal.finishAction(!0)):_Fconf_FconfSettings__WEBPACK_IMPORTED_MODULE_13__.a.ENABLE_BASH_HOTKEYS&&Terminal.resetTerminalInput()),e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.L&&e.ctrlKey&&(e.preventDefault(),Terminal.executeCommand("clear")),e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.UPARROW||_Fconf_FconfSettings__WEBPACK_IMPORTED_MODULE_13__.a.ENABLE_BASH_HOTKEYS&&e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.P&&e.ctrlKey){if(_Fconf_FconfSettings__WEBPACK_IMPORTED_MODULE_13__.a.ENABLE_BASH_HOTKEYS&&e.preventDefault(),null==t)return;var r=Terminal.commandHistoryIndex;if(0==(o=Terminal.commandHistory.length))return;(r<0||r>o)&&(Terminal.commandHistoryIndex=o),0!=r&&--Terminal.commandHistoryIndex;var i=Terminal.commandHistory[Terminal.commandHistoryIndex];t.value=i,Object(_utils_SetTimeoutRef__WEBPACK_IMPORTED_MODULE_33__.a)(function(){t.selectionStart=t.selectionEnd=1e4},10)}if(e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.DOWNARROW||_Fconf_FconfSettings__WEBPACK_IMPORTED_MODULE_13__.a.ENABLE_BASH_HOTKEYS&&e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.M&&e.ctrlKey){if(_Fconf_FconfSettings__WEBPACK_IMPORTED_MODULE_13__.a.ENABLE_BASH_HOTKEYS&&e.preventDefault(),null==t)return;var o;r=Terminal.commandHistoryIndex;if(0==(o=Terminal.commandHistory.length))return;if((r<0||r>o)&&(Terminal.commandHistoryIndex=o),r==o||r==o-1)Terminal.commandHistoryIndex=o,t.value="";else{++Terminal.commandHistoryIndex;i=Terminal.commandHistory[Terminal.commandHistoryIndex];t.value=i}}if(e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.TAB){if(e.preventDefault(),null==t)return;var s=t.value;if(""==s)return;var c=s.lastIndexOf(";");-1!==c&&(s=s.slice(c+1));var l=(s=(s=s.trim()).replace(/\s\s+/g," ")).split(" "),u=l.length-2;u<-1&&(u=0);var m=Object(_Terminal_determineAllPossibilitiesForTabCompletion__WEBPACK_IMPORTED_MODULE_2__.a)(_Player__WEBPACK_IMPORTED_MODULE_23__.a,s,u,Terminal.currDir);if(0==m.length)return;var h="";n="";if(0==l.length)return;1==l.length?n=l[0]:2==l.length?(n=l[0],h=l[1]):3==l.length?(n=l[0]+" "+l[1],h=l[2]):(h=l.pop(),n=l.join(" ")),Object(_Terminal_tabCompletion__WEBPACK_IMPORTED_MODULE_4__.a)(n,h,m),t.focus()}_Fconf_FconfSettings__WEBPACK_IMPORTED_MODULE_13__.a.ENABLE_BASH_HOTKEYS&&(e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.A&&e.ctrlKey&&(e.preventDefault(),Terminal.moveTextCursor("home")),e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.E&&e.ctrlKey&&(e.preventDefault(),Terminal.moveTextCursor("end")),e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.B&&e.ctrlKey&&(e.preventDefault(),Terminal.moveTextCursor("prevchar")),e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.B&&e.altKey&&(e.preventDefault(),Terminal.moveTextCursor("prevword")),e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.F&&e.ctrlKey&&(e.preventDefault(),Terminal.moveTextCursor("nextchar")),e.keyCode===_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.F&&e.altKey&&(e.preventDefault(),Terminal.moveTextCursor("nextword")),e.keyCode!==_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.H&&e.keyCode!==_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.D||!e.ctrlKey||(Terminal.modifyInput("backspace"),e.preventDefault()))}});var terminalCtrlPressed=!1,shiftKeyPressed=!1;$(document).ready(function(){_ui_navigationTracking__WEBPACK_IMPORTED_MODULE_34__.b.isOn(_ui_navigationTracking__WEBPACK_IMPORTED_MODULE_34__.a.Terminal)&&$(".terminal-input").focus()}),$(document).keydown(function(e){if(_ui_navigationTracking__WEBPACK_IMPORTED_MODULE_34__.b.isOn(_ui_navigationTracking__WEBPACK_IMPORTED_MODULE_34__.a.Terminal))if(e.which==_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.CTRL)terminalCtrlPressed=!0;else if(e.shiftKey)shiftKeyPressed=!0;else if(terminalCtrlPressed||shiftKeyPressed);else{var t=document.getElementById("terminal-input-text-box");null!=t&&t.focus(),terminalCtrlPressed=!1,shiftKeyPressed=!1}}),$(document).keyup(function(e){_ui_navigationTracking__WEBPACK_IMPORTED_MODULE_34__.b.isOn(_ui_navigationTracking__WEBPACK_IMPORTED_MODULE_34__.a.Terminal)&&(e.which==_utils_helpers_keyCodes__WEBPACK_IMPORTED_MODULE_36__.a.CTRL&&(terminalCtrlPressed=!1),e.shiftKey&&(shiftKeyPressed=!1))});var Terminal={hackFlag:!1,backdoorFlag:!1,analyzeFlag:!1,actionStarted:!1,actionTime:0,commandHistory:[],commandHistoryIndex:0,currDir:"/",resetTerminalInput:function(e){var t="";void 0!==e&&e&&(t=getTerminalInput());var n=Terminal.currDir;_Fconf_FconfSettings__WEBPACK_IMPORTED_MODULE_13__.a.WRAP_INPUT?(document.getElementById("terminal-input-td").innerHTML="
[".concat(_Player__WEBPACK_IMPORTED_MODULE_23__.a.getCurrentServer().hostname," ~").concat(n,"]$
")+'",d.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue,t.innerHTML="",d.option=!!t.lastChild}();var dt={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function mt(t,e){var n;return n=void 0!==t.getElementsByTagName?t.getElementsByTagName(e||"*"):void 0!==t.querySelectorAll?t.querySelectorAll(e||"*"):[],void 0===e||e&&S(t,e)?H.merge([t],n):n}function yt(t,e){for(var n=0,r=t.length;n",""]);var gt=/<|&#?\w+;/;function vt(t,e,n,r,i){for(var o,a,s,u,l,Q,c=e.createDocumentFragment(),T=[],h=0,f=t.length;h-1)i&&i.push(o);else if(l=at(o),a=mt(c.appendChild(o),"script"),l&&yt(a),n)for(Q=0;o=a[Q++];)pt.test(o.type||"")&&n.push(o);return c}var Lt=/^key/,bt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ht=/^([^.]*)(?:\.(.+)|)/;function xt(){return!0}function _t(){return!1}function Et(t,e){return t===function(){try{return g.activeElement}catch(t){}}()==("focus"===e)}function wt(t,e,n,r,i,o){var a,s;if("object"==typeof e){for(s in"string"!=typeof n&&(r=r||n,n=void 0),e)wt(t,s,n,r,e[s],o);return t}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=_t;else if(!i)return t;return 1===o&&(a=i,(i=function(t){return H().off(t),a.apply(this,arguments)}).guid=a.guid||(a.guid=H.guid++)),t.each(function(){H.event.add(this,e,i,r,n)})}function Ct(t,e,n){n?($.set(t,e,!1),H.event.add(t,e,{namespace:!1,handler:function(t){var r,i,o=$.get(this,e);if(1&t.isTrigger&&this[e]){if(o.length)(H.event.special[e]||{}).delegateType&&t.stopPropagation();else if(o=s.call(arguments),$.set(this,e,o),r=n(this,e),this[e](),o!==(i=$.get(this,e))||r?$.set(this,e,!1):i={},o!==i)return t.stopImmediatePropagation(),t.preventDefault(),i.value}else o.length&&($.set(this,e,{value:H.event.trigger(H.extend(o[0],H.Event.prototype),o.slice(1),this)}),t.stopImmediatePropagation())}})):void 0===$.get(t,e)&&H.event.add(t,e,xt)}H.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,Q,c,T,h,f,p,d=$.get(t);if(q(t))for(n.handler&&(n=(o=n).handler,i=o.selector),i&&H.find.matchesSelector(ot,i),n.guid||(n.guid=H.guid++),(u=d.events)||(u=d.events=Object.create(null)),(a=d.handle)||(a=d.handle=function(e){return void 0!==H&&H.event.triggered!==e.type?H.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(j)||[""]).length;l--;)h=p=(s=Ht.exec(e[l])||[])[1],f=(s[2]||"").split(".").sort(),h&&(c=H.event.special[h]||{},h=(i?c.delegateType:c.bindType)||h,c=H.event.special[h]||{},Q=H.extend({type:h,origType:p,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&H.expr.match.needsContext.test(i),namespace:f.join(".")},o),(T=u[h])||((T=u[h]=[]).delegateCount=0,c.setup&&!1!==c.setup.call(t,r,f,a)||t.addEventListener&&t.addEventListener(h,a)),c.add&&(c.add.call(t,Q),Q.handler.guid||(Q.handler.guid=n.guid)),i?T.splice(T.delegateCount++,0,Q):T.push(Q),H.event.global[h]=!0)},remove:function(t,e,n,r,i){var o,a,s,u,l,Q,c,T,h,f,p,d=$.hasData(t)&&$.get(t);if(d&&(u=d.events)){for(l=(e=(e||"").match(j)||[""]).length;l--;)if(h=p=(s=Ht.exec(e[l])||[])[1],f=(s[2]||"").split(".").sort(),h){for(c=H.event.special[h]||{},T=u[h=(r?c.delegateType:c.bindType)||h]||[],s=s[2]&&new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=T.length;o--;)Q=T[o],!i&&p!==Q.origType||n&&n.guid!==Q.guid||s&&!s.test(Q.namespace)||r&&r!==Q.selector&&("**"!==r||!Q.selector)||(T.splice(o,1),Q.selector&&T.delegateCount--,c.remove&&c.remove.call(t,Q));a&&!T.length&&(c.teardown&&!1!==c.teardown.call(t,f,d.handle)||H.removeEvent(t,h,d.handle),delete u[h])}else for(h in u)H.event.remove(t,h+e[l],n,r,!0);H.isEmptyObject(u)&&$.remove(t,"handle events")}},dispatch:function(t){var e,n,r,i,o,a,s=new Array(arguments.length),u=H.event.fix(t),l=($.get(this,"events")||Object.create(null))[u.type]||[],Q=H.event.special[u.type]||{};for(s[0]=u,e=1;e=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==t.type||!0!==l.disabled)){for(o=[],a={},n=0;n-1:H.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u\s*$/g;function Vt(t,e){return S(t,"table")&&S(11!==e.nodeType?e:e.firstChild,"tr")&&H(t).children("tbody")[0]||t}function At(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function kt(t){return"true/"===(t.type||"").slice(0,5)?t.type=t.type.slice(5):t.removeAttribute("type"),t}function Dt(t,e){var n,r,i,o,a,s;if(1===e.nodeType){if($.hasData(t)&&(s=$.get(t).events))for(i in $.remove(e,"handle events"),s)for(n=0,r=s[i].length;n1&&"string"==typeof f&&!d.checkClone&&Ot.test(f))return t.each(function(i){var o=t.eq(i);p&&(e[0]=f.call(this,i,o.html())),jt(o,e,n,r)});if(T&&(o=(i=vt(e,t[0].ownerDocument,!1,t,r)).firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(a=H.map(mt(i,"script"),At)).length;c0&&yt(a,!u&&mt(t,"script")),s},cleanData:function(t){for(var e,n,r,i=H.event.special,o=0;void 0!==(n=t[o]);o++)if(q(n)){if(e=n[$.expando]){if(e.events)for(r in e.events)i[r]?H.event.remove(n,r):H.removeEvent(n,r,e.handle);n[$.expando]=void 0}n[Y.expando]&&(n[Y.expando]=void 0)}}}),H.fn.extend({detach:function(t){return Nt(this,t,!0)},remove:function(t){return Nt(this,t)},text:function(t){return z(this,function(t){return void 0===t?H.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)})},null,t,arguments.length)},append:function(){return jt(this,arguments,function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Vt(this,t).appendChild(t)})},prepend:function(){return jt(this,arguments,function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=Vt(this,t);e.insertBefore(t,e.firstChild)}})},before:function(){return jt(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this)})},after:function(){return jt(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)})},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(H.cleanData(mt(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map(function(){return H.clone(this,t,e)})},html:function(t){return z(this,function(t){var e=this[0]||{},n=0,r=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!St.test(t)&&!dt[(ft.exec(t)||["",""])[1].toLowerCase()]){t=H.htmlPrefilter(t);try{for(;n3,ot.removeChild(t)),s}}))}();var Wt=["Webkit","Moz","ms"],Ut=g.createElement("div").style,Gt={};function Xt(t){var e=H.cssProps[t]||Gt[t];return e||(t in Ut?t:Gt[t]=function(t){for(var e=t[0].toUpperCase()+t.slice(1),n=Wt.length;n--;)if((t=Wt[n]+e)in Ut)return t}(t)||t)}var qt=/^(none|table(?!-c[ea]).+)/,Kt=/^--/,$t={position:"absolute",visibility:"hidden",display:"block"},Yt={letterSpacing:"0",fontWeight:"400"};function Jt(t,e,n){var r=rt.exec(e);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):e}function te(t,e,n,r,i,o){var a="width"===e?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=H.css(t,n+it[a],!0,i)),r?("content"===n&&(u-=H.css(t,"padding"+it[a],!0,i)),"margin"!==n&&(u-=H.css(t,"border"+it[a]+"Width",!0,i))):(u+=H.css(t,"padding"+it[a],!0,i),"padding"!==n?u+=H.css(t,"border"+it[a]+"Width",!0,i):s+=H.css(t,"border"+it[a]+"Width",!0,i));return!r&&o>=0&&(u+=Math.max(0,Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-o-u-s-.5))||0),u}function ee(t,e,n){var r=Rt(t),i=(!d.boxSizingReliable()||n)&&"border-box"===H.css(t,"boxSizing",!1,r),o=i,a=Zt(t,e,r),s="offset"+e[0].toUpperCase()+e.slice(1);if(It.test(a)){if(!n)return a;a="auto"}return(!d.boxSizingReliable()&&i||!d.reliableTrDimensions()&&S(t,"tr")||"auto"===a||!parseFloat(a)&&"inline"===H.css(t,"display",!1,r))&&t.getClientRects().length&&(i="border-box"===H.css(t,"boxSizing",!1,r),(o=s in t)&&(a=t[s])),(a=parseFloat(a)||0)+te(t,e,n||(i?"border":"content"),o,r,a)+"px"}function ne(t,e,n,r,i){return new ne.prototype.init(t,e,n,r,i)}H.extend({cssHooks:{opacity:{get:function(t,e){if(e){var n=Zt(t,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(t,e,n,r){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var i,o,a,s=X(e),u=Kt.test(e),l=t.style;if(u||(e=Xt(s)),a=H.cssHooks[e]||H.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(t,!1,r))?i:l[e];"string"===(o=typeof n)&&(i=rt.exec(n))&&i[1]&&(n=lt(t,e,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(H.cssNumber[s]?"":"px")),d.clearCloneStyle||""!==n||0!==e.indexOf("background")||(l[e]="inherit"),a&&"set"in a&&void 0===(n=a.set(t,n,r))||(u?l.setProperty(e,n):l[e]=n))}},css:function(t,e,n,r){var i,o,a,s=X(e);return Kt.test(e)||(e=Xt(s)),(a=H.cssHooks[e]||H.cssHooks[s])&&"get"in a&&(i=a.get(t,!0,n)),void 0===i&&(i=Zt(t,e,r)),"normal"===i&&e in Yt&&(i=Yt[e]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),H.each(["height","width"],function(t,e){H.cssHooks[e]={get:function(t,n,r){if(n)return!qt.test(H.css(t,"display"))||t.getClientRects().length&&t.getBoundingClientRect().width?ee(t,e,r):Bt(t,$t,function(){return ee(t,e,r)})},set:function(t,n,r){var i,o=Rt(t),a=!d.scrollboxSize()&&"absolute"===o.position,s=(a||r)&&"border-box"===H.css(t,"boxSizing",!1,o),u=r?te(t,e,r,s,o):0;return s&&a&&(u-=Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-parseFloat(o[e])-te(t,e,"border",!1,o)-.5)),u&&(i=rt.exec(n))&&"px"!==(i[3]||"px")&&(t.style[e]=n,n=H.css(t,e)),Jt(0,n,u)}}}),H.cssHooks.marginLeft=zt(d.reliableMarginLeft,function(t,e){if(e)return(parseFloat(Zt(t,"marginLeft"))||t.getBoundingClientRect().left-Bt(t,{marginLeft:0},function(){return t.getBoundingClientRect().left}))+"px"}),H.each({margin:"",padding:"",border:"Width"},function(t,e){H.cssHooks[t+e]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[t+it[r]+e]=o[r]||o[r-2]||o[0];return i}},"margin"!==t&&(H.cssHooks[t+e].set=Jt)}),H.fn.extend({css:function(t,e){return z(this,function(t,e,n){var r,i,o={},a=0;if(Array.isArray(e)){for(r=Rt(t),i=e.length;a1)}}),H.Tween=ne,ne.prototype={constructor:ne,init:function(t,e,n,r,i,o){this.elem=t,this.prop=n,this.easing=i||H.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=r,this.unit=o||(H.cssNumber[n]?"":"px")},cur:function(){var t=ne.propHooks[this.prop];return t&&t.get?t.get(this):ne.propHooks._default.get(this)},run:function(t){var e,n=ne.propHooks[this.prop];return this.options.duration?this.pos=e=H.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):ne.propHooks._default.set(this),this}},ne.prototype.init.prototype=ne.prototype,ne.propHooks={_default:{get:function(t){var e;return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(e=H.css(t.elem,t.prop,""))&&"auto"!==e?e:0},set:function(t){H.fx.step[t.prop]?H.fx.step[t.prop](t):1!==t.elem.nodeType||!H.cssHooks[t.prop]&&null==t.elem.style[Xt(t.prop)]?t.elem[t.prop]=t.now:H.style(t.elem,t.prop,t.now+t.unit)}}},ne.propHooks.scrollTop=ne.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},H.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},H.fx=ne.prototype.init,H.fx.step={};var re,ie,oe=/^(?:toggle|show|hide)$/,ae=/queueHooks$/;function se(){ie&&(!1===g.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(se):n.setTimeout(se,H.fx.interval),H.fx.tick())}function ue(){return n.setTimeout(function(){re=void 0}),re=Date.now()}function le(t,e){var n,r=0,i={height:t};for(e=e?1:0;r<4;r+=2-e)i["margin"+(n=it[r])]=i["padding"+n]=t;return e&&(i.opacity=i.width=t),i}function Qe(t,e,n){for(var r,i=(ce.tweeners[e]||[]).concat(ce.tweeners["*"]),o=0,a=i.length;o1)},removeAttr:function(t){return this.each(function(){H.removeAttr(this,t)})}}),H.extend({attr:function(t,e,n){var r,i,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===t.getAttribute?H.prop(t,e,n):(1===o&&H.isXMLDoc(t)||(i=H.attrHooks[e.toLowerCase()]||(H.expr.match.bool.test(e)?Te:void 0)),void 0!==n?null===n?void H.removeAttr(t,e):i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:(t.setAttribute(e,n+""),n):i&&"get"in i&&null!==(r=i.get(t,e))?r:null==(r=H.find.attr(t,e))?void 0:r)},attrHooks:{type:{set:function(t,e){if(!d.radioValue&&"radio"===e&&S(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}},removeAttr:function(t,e){var n,r=0,i=e&&e.match(j);if(i&&1===t.nodeType)for(;n=i[r++];)t.removeAttribute(n)}}),Te={set:function(t,e,n){return!1===e?H.removeAttr(t,n):t.setAttribute(n,n),n}},H.each(H.expr.match.bool.source.match(/\w+/g),function(t,e){var n=he[e]||H.find.attr;he[e]=function(t,e,r){var i,o,a=e.toLowerCase();return r||(o=he[a],he[a]=i,i=null!=n(t,e,r)?a:null,he[a]=o),i}});var fe=/^(?:input|select|textarea|button)$/i,pe=/^(?:a|area)$/i;function de(t){return(t.match(j)||[]).join(" ")}function me(t){return t.getAttribute&&t.getAttribute("class")||""}function ye(t){return Array.isArray(t)?t:"string"==typeof t&&t.match(j)||[]}H.fn.extend({prop:function(t,e){return z(this,H.prop,t,e,arguments.length>1)},removeProp:function(t){return this.each(function(){delete this[H.propFix[t]||t]})}}),H.extend({prop:function(t,e,n){var r,i,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&H.isXMLDoc(t)||(e=H.propFix[e]||e,i=H.propHooks[e]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:t[e]=n:i&&"get"in i&&null!==(r=i.get(t,e))?r:t[e]},propHooks:{tabIndex:{get:function(t){var e=H.find.attr(t,"tabindex");return e?parseInt(e,10):fe.test(t.nodeName)||pe.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),d.optSelected||(H.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null},set:function(t){var e=t.parentNode;e&&(e.selectedIndex,e.parentNode&&e.parentNode.selectedIndex)}}),H.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){H.propFix[this.toLowerCase()]=this}),H.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){H(this).addClass(t.call(this,e,me(this)))});if((e=ye(t)).length)for(;n=this[u++];)if(i=me(n),r=1===n.nodeType&&" "+de(i)+" "){for(a=0;o=e[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=de(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){H(this).removeClass(t.call(this,e,me(this)))});if(!arguments.length)return this.attr("class","");if((e=ye(t)).length)for(;n=this[u++];)if(i=me(n),r=1===n.nodeType&&" "+de(i)+" "){for(a=0;o=e[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");i!==(s=de(r))&&n.setAttribute("class",s)}return this},toggleClass:function(t,e){var n=typeof t,r="string"===n||Array.isArray(t);return"boolean"==typeof e&&r?e?this.addClass(t):this.removeClass(t):m(t)?this.each(function(n){H(this).toggleClass(t.call(this,n,me(this),e),e)}):this.each(function(){var e,i,o,a;if(r)for(i=0,o=H(this),a=ye(t);e=a[i++];)o.hasClass(e)?o.removeClass(e):o.addClass(e);else void 0!==t&&"boolean"!==n||((e=me(this))&&$.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===t?"":$.get(this,"__className__")||""))})},hasClass:function(t){var e,n,r=0;for(e=" "+t+" ";n=this[r++];)if(1===n.nodeType&&(" "+de(me(n))+" ").indexOf(e)>-1)return!0;return!1}});var ge=/\r/g;H.fn.extend({val:function(t){var e,n,r,i=this[0];return arguments.length?(r=m(t),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?t.call(this,n,H(this).val()):t)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=H.map(i,function(t){return null==t?"":t+""})),(e=H.valHooks[this.type]||H.valHooks[this.nodeName.toLowerCase()])&&"set"in e&&void 0!==e.set(this,i,"value")||(this.value=i))})):i?(e=H.valHooks[i.type]||H.valHooks[i.nodeName.toLowerCase()])&&"get"in e&&void 0!==(n=e.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(ge,""):null==n?"":n:void 0}}),H.extend({valHooks:{option:{get:function(t){var e=H.find.attr(t,"value");return null!=e?e:de(H.text(t))}},select:{get:function(t){var e,n,r,i=t.options,o=t.selectedIndex,a="select-one"===t.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r-1)&&(n=!0);return n||(t.selectedIndex=-1),o}}}}),H.each(["radio","checkbox"],function(){H.valHooks[this]={set:function(t,e){if(Array.isArray(e))return t.checked=H.inArray(H(t).val(),e)>-1}},d.checkOn||(H.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})}),d.focusin="onfocusin"in n;var ve=/^(?:focusinfocus|focusoutblur)$/,Le=function(t){t.stopPropagation()};H.extend(H.event,{trigger:function(t,e,r,i){var o,a,s,u,l,Q,c,T,f=[r||g],p=h.call(t,"type")?t.type:t,d=h.call(t,"namespace")?t.namespace.split("."):[];if(a=T=s=r=r||g,3!==r.nodeType&&8!==r.nodeType&&!ve.test(p+H.event.triggered)&&(p.indexOf(".")>-1&&(p=(d=p.split(".")).shift(),d.sort()),l=p.indexOf(":")<0&&"on"+p,(t=t[H.expando]?t:new H.Event(p,"object"==typeof t&&t)).isTrigger=i?2:3,t.namespace=d.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),e=null==e?[t]:H.makeArray(e,[t]),c=H.event.special[p]||{},i||!c.trigger||!1!==c.trigger.apply(r,e))){if(!i&&!c.noBubble&&!y(r)){for(u=c.delegateType||p,ve.test(u+p)||(a=a.parentNode);a;a=a.parentNode)f.push(a),s=a;s===(r.ownerDocument||g)&&f.push(s.defaultView||s.parentWindow||n)}for(o=0;(a=f[o++])&&!t.isPropagationStopped();)T=a,t.type=o>1?u:c.bindType||p,(Q=($.get(a,"events")||Object.create(null))[t.type]&&$.get(a,"handle"))&&Q.apply(a,e),(Q=l&&a[l])&&Q.apply&&q(a)&&(t.result=Q.apply(a,e),!1===t.result&&t.preventDefault());return t.type=p,i||t.isDefaultPrevented()||c._default&&!1!==c._default.apply(f.pop(),e)||!q(r)||l&&m(r[p])&&!y(r)&&((s=r[l])&&(r[l]=null),H.event.triggered=p,t.isPropagationStopped()&&T.addEventListener(p,Le),r[p](),t.isPropagationStopped()&&T.removeEventListener(p,Le),H.event.triggered=void 0,s&&(r[l]=s)),t.result}},simulate:function(t,e,n){var r=H.extend(new H.Event,n,{type:t,isSimulated:!0});H.event.trigger(r,null,e)}}),H.fn.extend({trigger:function(t,e){return this.each(function(){H.event.trigger(t,e,this)})},triggerHandler:function(t,e){var n=this[0];if(n)return H.event.trigger(t,e,n,!0)}}),d.focusin||H.each({focus:"focusin",blur:"focusout"},function(t,e){var n=function(t){H.event.simulate(e,t.target,H.event.fix(t))};H.event.special[e]={setup:function(){var r=this.ownerDocument||this.document||this,i=$.access(r,e);i||r.addEventListener(t,n,!0),$.access(r,e,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,i=$.access(r,e)-1;i?$.access(r,e,i):(r.removeEventListener(t,n,!0),$.remove(r,e))}}});var be=n.location,He={guid:Date.now()},xe=/\?/;H.parseXML=function(t){var e;if(!t||"string"!=typeof t)return null;try{e=(new n.DOMParser).parseFromString(t,"text/xml")}catch(t){e=void 0}return e&&!e.getElementsByTagName("parsererror").length||H.error("Invalid XML: "+t),e};var _e=/\[\]$/,Ee=/\r?\n/g,we=/^(?:submit|button|image|reset|file)$/i,Ce=/^(?:input|select|textarea|keygen)/i;function Se(t,e,n,r){var i;if(Array.isArray(e))H.each(e,function(e,i){n||_e.test(t)?r(t,i):Se(t+"["+("object"==typeof i&&null!=i?e:"")+"]",i,n,r)});else if(n||"object"!==b(e))r(t,e);else for(i in e)Se(t+"["+i+"]",e[i],n,r)}H.param=function(t,e){var n,r=[],i=function(t,e){var n=m(e)?e():e;r[r.length]=encodeURIComponent(t)+"="+encodeURIComponent(null==n?"":n)};if(null==t)return"";if(Array.isArray(t)||t.jquery&&!H.isPlainObject(t))H.each(t,function(){i(this.name,this.value)});else for(n in t)Se(n,t[n],e,i);return r.join("&")},H.fn.extend({serialize:function(){return H.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=H.prop(this,"elements");return t?H.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!H(this).is(":disabled")&&Ce.test(this.nodeName)&&!we.test(t)&&(this.checked||!ht.test(t))}).map(function(t,e){var n=H(this).val();return null==n?null:Array.isArray(n)?H.map(n,function(t){return{name:e.name,value:t.replace(Ee,"\r\n")}}):{name:e.name,value:n.replace(Ee,"\r\n")}}).get()}});var Oe=/%20/g,Me=/#.*$/,Ve=/([?&])_=[^&]*/,Ae=/^(.*?):[ \t]*([^\r\n]*)$/gm,ke=/^(?:GET|HEAD)$/,De=/^\/\//,Pe={},je={},Ne="*/".concat("*"),Ie=g.createElement("a");function Re(t){return function(e,n){"string"!=typeof e&&(n=e,e="*");var r,i=0,o=e.toLowerCase().match(j)||[];if(m(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(t[r]=t[r]||[]).unshift(n)):(t[r]=t[r]||[]).push(n)}}function Be(t,e,n,r){var i={},o=t===je;function a(s){var u;return i[s]=!0,H.each(t[s]||[],function(t,s){var l=s(e,n,r);return"string"!=typeof l||o||i[l]?o?!(u=l):void 0:(e.dataTypes.unshift(l),a(l),!1)}),u}return a(e.dataTypes[0])||!i["*"]&&a("*")}function Fe(t,e){var n,r,i=H.ajaxSettings.flatOptions||{};for(n in e)void 0!==e[n]&&((i[n]?t:r||(r={}))[n]=e[n]);return r&&H.extend(!0,t,r),t}Ie.href=be.href,H.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:be.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(be.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Ne,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":H.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?Fe(Fe(t,H.ajaxSettings),e):Fe(H.ajaxSettings,t)},ajaxPrefilter:Re(Pe),ajaxTransport:Re(je),ajax:function(t,e){"object"==typeof t&&(e=t,t=void 0),e=e||{};var r,i,o,a,s,u,l,Q,c,T,h=H.ajaxSetup({},e),f=h.context||h,p=h.context&&(f.nodeType||f.jquery)?H(f):H.event,d=H.Deferred(),m=H.Callbacks("once memory"),y=h.statusCode||{},v={},L={},b="canceled",x={readyState:0,getResponseHeader:function(t){var e;if(l){if(!a)for(a={};e=Ae.exec(o);)a[e[1].toLowerCase()+" "]=(a[e[1].toLowerCase()+" "]||[]).concat(e[2]);e=a[t.toLowerCase()+" "]}return null==e?null:e.join(", ")},getAllResponseHeaders:function(){return l?o:null},setRequestHeader:function(t,e){return null==l&&(t=L[t.toLowerCase()]=L[t.toLowerCase()]||t,v[t]=e),this},overrideMimeType:function(t){return null==l&&(h.mimeType=t),this},statusCode:function(t){var e;if(t)if(l)x.always(t[x.status]);else for(e in t)y[e]=[y[e],t[e]];return this},abort:function(t){var e=t||b;return r&&r.abort(e),_(0,e),this}};if(d.promise(x),h.url=((t||h.url||be.href)+"").replace(De,be.protocol+"//"),h.type=e.method||e.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(j)||[""],null==h.crossDomain){u=g.createElement("a");try{u.href=h.url,u.href=u.href,h.crossDomain=Ie.protocol+"//"+Ie.host!=u.protocol+"//"+u.host}catch(t){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=H.param(h.data,h.traditional)),Be(Pe,h,e,x),l)return x;for(c in(Q=H.event&&h.global)&&0==H.active++&&H.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!ke.test(h.type),i=h.url.replace(Me,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(Oe,"+")):(T=h.url.slice(i.length),h.data&&(h.processData||"string"==typeof h.data)&&(i+=(xe.test(i)?"&":"?")+h.data,delete h.data),!1===h.cache&&(i=i.replace(Ve,"$1"),T=(xe.test(i)?"&":"?")+"_="+He.guid+++T),h.url=i+T),h.ifModified&&(H.lastModified[i]&&x.setRequestHeader("If-Modified-Since",H.lastModified[i]),H.etag[i]&&x.setRequestHeader("If-None-Match",H.etag[i])),(h.data&&h.hasContent&&!1!==h.contentType||e.contentType)&&x.setRequestHeader("Content-Type",h.contentType),x.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+Ne+"; q=0.01":""):h.accepts["*"]),h.headers)x.setRequestHeader(c,h.headers[c]);if(h.beforeSend&&(!1===h.beforeSend.call(f,x,h)||l))return x.abort();if(b="abort",m.add(h.complete),x.done(h.success),x.fail(h.error),r=Be(je,h,e,x)){if(x.readyState=1,Q&&p.trigger("ajaxSend",[x,h]),l)return x;h.async&&h.timeout>0&&(s=n.setTimeout(function(){x.abort("timeout")},h.timeout));try{l=!1,r.send(v,_)}catch(t){if(l)throw t;_(-1,t)}}else _(-1,"No Transport");function _(t,e,a,u){var c,T,g,v,L,b=e;l||(l=!0,s&&n.clearTimeout(s),r=void 0,o=u||"",x.readyState=t>0?4:0,c=t>=200&&t<300||304===t,a&&(v=function(t,e,n){for(var r,i,o,a,s=t.contents,u=t.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=t.mimeType||e.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||t.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(h,x,a)),!c&&H.inArray("script",h.dataTypes)>-1&&(h.converters["text script"]=function(){}),v=function(t,e,n,r){var i,o,a,s,u,l={},Q=t.dataTypes.slice();if(Q[1])for(a in t.converters)l[a.toLowerCase()]=t.converters[a];for(o=Q.shift();o;)if(t.responseFields[o]&&(n[t.responseFields[o]]=e),!u&&r&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),u=o,o=Q.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],Q.unshift(s[1]));break}if(!0!==a)if(a&&t.throws)e=a(e);else try{e=a(e)}catch(t){return{state:"parsererror",error:a?t:"No conversion from "+u+" to "+o}}}return{state:"success",data:e}}(h,v,x,c),c?(h.ifModified&&((L=x.getResponseHeader("Last-Modified"))&&(H.lastModified[i]=L),(L=x.getResponseHeader("etag"))&&(H.etag[i]=L)),204===t||"HEAD"===h.type?b="nocontent":304===t?b="notmodified":(b=v.state,T=v.data,c=!(g=v.error))):(g=b,!t&&b||(b="error",t<0&&(t=0))),x.status=t,x.statusText=(e||b)+"",c?d.resolveWith(f,[T,b,x]):d.rejectWith(f,[x,b,g]),x.statusCode(y),y=void 0,Q&&p.trigger(c?"ajaxSuccess":"ajaxError",[x,h,c?T:g]),m.fireWith(f,[x,b]),Q&&(p.trigger("ajaxComplete",[x,h]),--H.active||H.event.trigger("ajaxStop")))}return x},getJSON:function(t,e,n){return H.get(t,e,n,"json")},getScript:function(t,e){return H.get(t,void 0,e,"script")}}),H.each(["get","post"],function(t,e){H[e]=function(t,n,r,i){return m(n)&&(i=i||r,r=n,n=void 0),H.ajax(H.extend({url:t,type:e,dataType:i,data:n,success:r},H.isPlainObject(t)&&t))}}),H.ajaxPrefilter(function(t){var e;for(e in t.headers)"content-type"===e.toLowerCase()&&(t.contentType=t.headers[e]||"")}),H._evalUrl=function(t,e,n){return H.ajax({url:t,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(t){H.globalEval(t,e,n)}})},H.fn.extend({wrapAll:function(t){var e;return this[0]&&(m(t)&&(t=t.call(this[0])),e=H(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&e.insertBefore(this[0]),e.map(function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t}).append(this)),this},wrapInner:function(t){return m(t)?this.each(function(e){H(this).wrapInner(t.call(this,e))}):this.each(function(){var e=H(this),n=e.contents();n.length?n.wrapAll(t):e.append(t)})},wrap:function(t){var e=m(t);return this.each(function(n){H(this).wrapAll(e?t.call(this,n):t)})},unwrap:function(t){return this.parent(t).not("body").each(function(){H(this).replaceWith(this.childNodes)}),this}}),H.expr.pseudos.hidden=function(t){return!H.expr.pseudos.visible(t)},H.expr.pseudos.visible=function(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)},H.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(t){}};var Ze={0:200,1223:204},ze=H.ajaxSettings.xhr();d.cors=!!ze&&"withCredentials"in ze,d.ajax=ze=!!ze,H.ajaxTransport(function(t){var e,r;if(d.cors||ze&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];for(a in t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)s.setRequestHeader(a,i[a]);e=function(t){return function(){e&&(e=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===t?s.abort():"error"===t?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Ze[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=e(),r=s.onerror=s.ontimeout=e("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout(function(){e&&r()})},e=e("abort");try{s.send(t.hasContent&&t.data||null)}catch(t){if(e)throw t}},abort:function(){e&&e()}}}),H.ajaxPrefilter(function(t){t.crossDomain&&(t.contents.script=!1)}),H.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return H.globalEval(t),t}}}),H.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")}),H.ajaxTransport("script",function(t){var e,n;if(t.crossDomain||t.scriptAttrs)return{send:function(r,i){e=H("